实验环境,kali主机IP:172.17.17.131,Web服务器IP:172.17.17.104。(无其他信息可知)
一、获取Web服务器权限
1、测试Web服务器连通性。

2、nmap扫描Web服务器开放端口。(获取到IP后,通常情况下会打开浏览器访问服务或进行端口扫描)

3、浏览器访问Web网站,分析识别网站cms,以及版本号。

4、网络查找cms漏洞。(进行信息搜集,记录相关漏洞信息。一般会重点关注SQL注入、代码执行、文件包含等,之后进行测试)



5、经源码分析,该网站存在文件包含漏洞。
开始漏洞利用
6、打开msf,启用php反弹shell监听。

7、通过信息搜集,网站cms存在后台地址。

8、登录管理后台(搜索引擎可知后台默认用户名admin,密码admin)。

9、msf生成木马。

10、在管理后台添加频道上传文件,发现文件不符合要求。

11、修改木马后缀名。![]()
12、添加频道重新上传文件,进行文件包含漏洞(信息搜集,如无相关信息,需进行代码审计,找到漏洞,并在本地进行复现,之后将复现成果移植到实际攻防中)

将生成的文件名,在频道模型使用文件包含漏洞


13、退出后台,并进入前台,可以在导航栏看到上传的文件,点击访问页面。


14、kali获得meterpreter。

15、查看是否可以利用SUID-find命令提权,不用上传脚本即可提权(之后进行提权,最简单的提权是内核提权)


16、find命令提权

17、读取敏感文件

18、进行密钥破解,后重新创建用户
19、查看root目录

二、获取内网Windows权限
1、ctrl+C退出meterperter

2、msf生成Windows攻击木马

3、修改木马名称(提高攻击成功率)
![]()
4、把木马放到网站根目录或网站前端能够调用的目录
kali启动http服务

重新获取Web服务器meterpreter

下载木马文件到web服务器根目录(由于url中文容易受到影响,因此直接复制粘贴kali http网址)

6、启动msf,开启Windows反弹shell监听

7、访问网站后台,通过友情链接的方式,将木马植入到网站中。友情链接可以通过两种url方式植入木马:网站外url和站内url
站外url

站内url(优先选择)


9、办公区域用户访问网站,下载木马程序

10、Windows用户运行木马文件,msf获得meterpreter,并查看系统信息和权限(通常情况会对木马文件进行免杀处理,木马隐藏,无文件操作)


11、对Windows系统进行UAC提权



12、查找域控(通过arp和dns确认域控IP)确定域控IP地址:192.168.80.102


13、进行端口转发,将Windows的所有流量转发到域控服务器中(隧道技术)(将本地的端口转发到域控服务器端口,怀疑域控服务器开放什么服务,做对应端口的转发。如果通过windows10,上传木马等操作容易被发现)

查看端口转发列表

14、远程连接服务器
首先尝试ssh远程连接服务器(确认DNS服务器是域控服务器还是linux搭建的服务器)

无法连接成功,因此猜测是Windows域控服务器,通过rdesktop远程连接

三、获取内网域控服务器权限
利用kiwi获取Windows10用户的NTLM
1、meterpreter进行进程迁移


2、加载kiwi,列出所有凭证

利用PTH哈希传递攻击拿到域控服务器权限
3、利用smb攻击模块,攻击域控服务器(RHOST、RPORT需要设置为kali主机IP和转发端口,域名通过windows10主机查询得出,LM设置为32个0)



4、通过域控服务器扫描内网其他机器

5、扫描其他网段(实际情况需要扫描整个网段)

四、获取内网DevOps服务器权限
通过添加路由的方法(由于portfwd在三层网络中使用不方便,因此采用添加路由的隧道技术)
1、获取当前机器所在的网段

2、添加目标内网的网段(删除指定的网段路由命令:run autoroute -d -s 192.168.100.0/24)

3、打印当前添加的路由表信息

通过添加路由的方式,可以实现多级代理。
多级代理下的隧道建立
4、将目标指定的内网网段路由添加到指定session上(为了确认操作,另外一种路由添加操作,删除路由命令:route remove 192.168.100.0 255.255.255.0 64)

打印路由信息

5、进行端口扫描,通过端口号可以判断生产主机开放了ssh服务


6、利用ssh爆破进行攻击(通常利用ssh账号爆破模块)
ssh账号爆破模块,需要制作字典

本次实验利用ssh登录模块(真实环境需要进行密码爆破),获取正确的ssh登录用户名和密码


7、登录生产主机



8、进行权限提升
首先查看内核版本

查看sudo版本

查看运维人员是否开启sudo免密登录(可以看出开启了sudo免密登录)

9、查找flag文件(实际渗透过程中,通过find查找一些配置文件或mysql服务等所在为止,或插入后门。穿透出来。连接VPS,以便后续的各种操作)
![]()
五、文件转移
1、进入根目录,查看目录

2、将文件转移到低权限用户文件中
![]()
3、查看系统是否存在python或python3

4、通过python3启动后端运行http

5、返回域控shell

6、通过poweshell将flag文件上传到域控服务器中(由于kali无法与生产服务器通信,因此需要经过域控服务器跳板机下载文件)
进入C盘根目录,查看根目录(方便查找文件)

将flag文件下载到域控服务器C盘根目录

7、返回meterpreter,从域控服务器(跳板机)下载flag文件到本地

查看本地flag文件

使用vscode更改编码打开flag文件

1万+

被折叠的 条评论
为什么被折叠?



