扫描打点
80
扫不出什么东西
8080
类似论坛之类的东西,可以发表或修改
找到一些可能有用的:
找到个操作文档之类的:
https://flask-jwt-extended.readthedocs.io/en/stable/options/
再扫一下:
大概看了一下,
users
存了用户名和信息registration
要改成POST
,根据提示发送username
和password
来注册用户这里卡了一会,注意需要手动加上
Content-type: application/x-www-form-urlencoded
这是表单默认的提交数据格式,否则识别不到然后用同样的办法进
/login
/secret
的话可能是缺cookie
,但不知道是我的还是要patrick的在文档里面能找到
cookie
的格式然后收不到返回值,可能是格式不对,或者要用patrick的?bp全责,用hackbar能做,但要放到新建的
header
而非cookies
里面,感觉怪怪的拿到
secret:commandexecutionissecret
呃呃,然后被提醒有个
/run
,感觉要换字典了根据提示的数据格式以及
secret_key
的返回值,应该是拿json
传的,但bp又发力了接收不到,用curl
传1
curl -X POST "http://192.168.129.5:8080/run" -H "Content-Type: application/json" -d '{"url":"127.0.0.1:80","secret_key": "commandexecutionissecret"}'
改一改
url
不难发现其被拼接在curl
语句后面,那么考虑截断来做到命令执行
getshell
先搜集下信息
可以注意到
flask
的源码美化一下源码可以找到明文的
jwt_secret_key:NOreasonableDOUBTthisPASSWORDisGOOD
密码复用登
ssh
linux
提权可能是前面有点麻烦,
sudo -l
直接提了
学长的任务罢了12-snakeoil
- 本文链接: http://noone40404.github.io/2025/01/15/学长的任务罢了12:snakeoil/
- 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!