通过一番搜索,能找到原始项目:https://github.com/magic-akari/BookLibrary
diff一下,发现改了一些内容(后面可以发现实际就是故意改出来的洞)
flag1:
robots.txt
flag2:
diff里可以看到validate_old_password中对旧密码的验证被删除了,猜测做了什么手脚,交叉引用找到调用该函数所在类(ChangePasswordForm)的位置,可以在views.py里找到route:change_password_cli和change_password,其中change_password_cli的id是通过 request.args.get
获取的,而非现在登陆的用户,所以直接访问以下网址,就能修改root的密码(通过app.db可以查到root的id)
http://10.0.1.110:18080/change_password_cli/?user_id=1
flag3:
diff可以看到,route:/add/增加了通过yaml添加书籍的功能,在下发的venv中又能发现pyyaml的版本是5.3.1,找网上现成payload绕绕就行,参考