2019RoarCTF-Easy Java
打开后得到:
点击下面的help后:
参数为filename,明显存在文件下载漏洞
这里提示了{help.docx}
那就尝试filename = {help.docx}
尝试换种请求方式,用POST传参:
得到help.docx:
显然没什么用
Java中的重要文件:
/WEB-INF/web.xml:Web应用程序配置文件,描述了 servlet 和其他的应用组件配置及命名规则
/WEB-INF/classes/:含了站点所有用的 class 文件,包括 servlet class 和非servlet class,他们不能包含在 .jar文件中
/WEB-INF/database.properties:数据库配置文件
web.xml:
得到了映射关系
然后:
filename=/WEB-INF/classes/com/wm/ctf/FlagController.class
下载得到class文件,可以多次尝试
然后直接当做项目拖入IDEA,反编译得到:
ZmxhZ3s0OWE1OTg5OS00NDZiLTQxMDctYjk0Yi0zM2JkODg2OWJkNjV9Cg==
然后base64解码得到:
flag{49a59899-446b-4107-b94b-33bd8869bd65}
收获
1.访问或利用接口有问题时,可以尝试换请求方式,如GET换成POST
2.重要文件和目录:
/WEB-INF/web.xml:Web应用程序配置文件,描述了 servlet 和其他的应用组件配置及命名规则
/WEB-INF/classes/:含了站点所有用的 class 文件,包括 servlet class 和非servlet class,他们不能包含在 .jar文件中
/WEB-INF/database.properties:数据库配置文件
3.IDEA可以反编译