HTB-MagicGardens-WP(部分)
使用nmap对ip扫描发现域名,放进hosts中去访问80,还有5000存在docker
打开网站发现是一个卖花的

没什么可用信息,扫一下网站目录

有一个admin,访问查看

存在一个注册页面,查了一下有这个cms,但是具体版本没办法找到,所以先放一放
注册一个账号登录网页看看有没有信息,因为这是个卖花的,所以买一朵花看看

大概意思就是购买成功了,出示二维码可以折扣,我们找一下二维码

找了半天,发现在右上角

进入之后发现有三种卡可以升级

但是我升级的时候发现三张卡是不同的域名,鼠标悬停就可以显示

抓包看一下参数

bank是显示域名,将bank改成本地的IP地址,再用python搭建一个局域网看看有没有访问记录

有回显但是501报错了,用别的方法试一下api

没找到这个域名,那就把这个加进hosts中


这个报错是405,说明请求方式不对,那就改成POST请求

请求方式对了,但是缺少参数,或者是格式有问题,再进行修改,将POST参数加进去

把参数加进去之后回显了402报错,具体报错信息我查了,感觉

到这里我没思路了,大概就是需要触发条件,借鉴了一下大佬的py:猜测是需要某种条件才能接受,使用flask框架写一个简单python服务脚本,这个脚本当客户端以POST方法请求/api/payments/时,服务器会返回一些信息
1 | from flask import Flask, jsonify |

编写好py后直接运行,然后我们将刚刚抓的包,重放一下试试,就会发现可以有正确回显,我们再重新抓包,修改bank地址,改成我们自己的ip,然后发包就会得到一个二维码


我们把二维码保存下来,然后重新去买花,重新购买一朵花,然后回到自己主页,过几秒钟就会得到一个短信通知

大概意思花明天就到,把二维码上传,给我们打折
上传后没什么动静了,我们将二维码解密看看内容

解码后有对应的信息和购买人

回过头发现这个框子可以输入文字,那就试一试XSS看看能不能获取到cookie
ef6572e4cd58bb39a3f4e82fc64fe9f0.0d341bcdc6746f1d452b3f4de32357b9.
将我们要上传的二维码换成攻击的二维码,更换方法

然后我们上传这个二维码,再将xss攻击的语句放在输入框中,进行监听

以为没成功,重新访问了一下,发现好了,获取到cookie了,我们将cookie逆解密得到对应的参数和信息

然后去登录admin

成功进入后台,进入后台之后点击change passwd 发现里面有几个用户

查看morty得到密码

使用脚本快速解密
1 | import concurrent.futures |
使用多线程进行爆破,可以加快速度(kaliCPU核心给的少的慎用!!!!!)

我的已经卡死,没办法用的物理机跑
成功破解出的密码是jonasbrothers,直接使用ssh登录

连上来之后发现没有user.txt,说明还得继续,使用ps查看进程发现另外一个用户也进程存在

查了一下这个东西

这个叫harvest的应用,指定日志文件的存储路径为 /home/alex/.harvest_logs ,-l 选项通常用于设置日志输出的位置。这意味着 harvest 服务器将其活动日志保存到指定的目录中,morty用户有该应用的权限,下载下来,在/usr/local/bin,之后没思路了,这个题目有点难,网上有一种非预期的解法很简单,但是被作者修复了,后面在研究,太菜了








