[RoarCTF 2019]Easy Java1

提示

  1. WEB-INF/web.xml泄露

后拿到题目的一般想到的正常思路

  1. sql注入
  2. 弱口令

[RoarCTF 2019]Easy Java1_第1张图片

先信息收集不进行操作

有download,难道是下载文件,访问看看

[RoarCTF 2019]Easy Java1_第2张图片

这里访问抓包试了下,传送后返回码是200,说明应该可以访问,但是看响应包像是报错了

[RoarCTF 2019]Easy Java1_第3张图片

应为我没有javaweb搭建的基础,所以只能凭经验来做

尝试post传输参数filename

这明显有了回显

(用post的原因,为什么get访问返回访问码200说明有这个文件并且允许访问,但为什么没有数据,就想试试post)

[RoarCTF 2019]Easy Java1_第4张图片

应为是java环境又能访问文件,这里尝试看看WEB-INF/web.xml泄露

WEB-INF是JAVA的WEB应用安全目录,如果想在页面中直接访问其中的文件,必须通过web.xml文件对要访问的文件进行相应映射才能访问

一般情况,isp引擎默认都是禁止访问WEB-INF目录的,在一些特定的场合(Nginx配合

Tomcat做均衡负载或集群等情况时,Nginx不会去考虑配置其他类型引擎导致的安全问题而引入到自身的安全规范中来),从而造成源码泄露。

[RoarCTF 2019]Easy Java1_第5张图片

尝试访问WEB-INF/web.xml

这里明显就是WEB-INF/web.xml泄露,并且返回了flag位置

[RoarCTF 2019]Easy Java1_第6张图片

接下来要访问WEB-INF/classes/com/wm/ctf/FlagController.class

因为站点所有用的class文件都在WEB-INF/classes里,查看配置文件只知道了flag的位置

[RoarCTF 2019]Easy Java1_第7张图片

这里出现base64代码

[RoarCTF 2019]Easy Java1_第8张图片

解密获得flag

你可能感兴趣的:(BUUCTF,web题,ctf,java)