[RoarCTF 2019]Easy Java

[RoarCTF 2019]Easy Java

写在前面

大一fw没学过java,这题是把叹之师傅的wp看了一遍以后做的。(=w=)

知识点

WEB-INF/web.xml泄露

WEB-INF主要包含一下文件或目录:
/WEB-INF/web.xml:Web应用程序配置文件,描述了 servlet 和其他的应用组件配置及命名规则。
/WEB-INF/classes/:含了站点所有用的 class 文件,包括 servlet class 和非servlet class,他们不能包含在 .jar文件中
/WEB-INF/lib/:存放web应用需要的各种JAR文件,放置仅在这个应用中要求使用的jar文件,如数据库驱动jar文件
/WEB-INF/src/:源码目录,按照包名结构放置各个java文件。
/WEB-INF/database.properties:数据库配置文件
漏洞检测以及利用方法:通过找到web.xml文件,推断class文件的路径,最后直接class文件,在通过反编译class文件,得到网站源码

题解

打开题目是登录框,但是根据题目提示这应该不是SQL注入

点击help用Burpsuite抓包,把GET改为POST

得到报错信息,post传filename值(ps:记得把Referer里的/login删掉)

post:filename=WEB-INF/web.xml

图1

根据知识点中的:漏洞检测以及利用方法;以及下图我们构造payload

filename=WEB-INF/classes/com/wm/ctf/FlagController.class

路径

得到base64源码,解base64的到flag

flag

posted @ 2020-07-14 09:47  Rabbittt  阅读(33)  评论(0编辑  收藏