vulnhub-dc9打靶
环境
vulnhub项目 https://www.vulnhub.com/entry/dc-9,412/
靶机:172.16.17.150
攻击机kali:172.16.17.140
描述
信息收集
nmap扫描靶机,存在22端口,但是状态为filtered,怀疑被knockd保护
扫目录
web指纹
挨个访问扫出来的目录,在访问session.php的时候发现已经登录,在下面提示文件不存在,可能存在文件包含漏洞
猜一下接受参数的变量名,成功读取
上面怀疑ssh被保护,现在用文件包含读取一下
Exploit
sql注入
文件包含没有能继续利用的电,查看其他功能点,发现一处搜索框,post传输数据,有搜索就有数据库交互,抓包fuzz
当语句为’or 1=1 #时,产生注入,丢到sqlmap跑
跑出账号密码
1 | sqlmap -r 1.txt -batch -D users -T 'UserDetails' -C 'password,username' --dump |
knock碰撞ssh
安装knockd
根据刚刚读到的端口,去敲门,逆序端口号,发现ssh已经对我们开放
撞库
利用跑出来的账号密码,拿去撞ssh,跑出三个账号
1 | hydra -L user.txt -P passwords.txt 172.16.17.150 ssh |
相继进入几个账号,翻翻翻*10,最后在janitor找到一个密码文件
复制进passwd文件继续爆破,爆出一个新的账号
提权
登录看看以root权限运行的文件
find查找路径
1 | find / -name test.py -print 2>/dev/null |
分析第一个test.py文件,读取第一个文件的内容,添加到第二个文件的末尾
生成一个密码hash,账号为domon 密码 123456
1 | openssl passwd -1 -salt demon 123456 |
将生成的密码hash写入一个文件
1 | echo 'demon:$1$demon$Mspg7FhbFwGLZ4T2s/qI6/:0:0:root:/bin/bash' >> /tmp/demon |
再利用test命令写入/etc/passwd
1 | sudo /opt/devstuff/dist/test/test ./demon /etc/passwd |
登录demon,拿到flag