BUUCTF——[RoarCTF 2019]Easy Java

BUUCTF------[RoarCTF 2019]Easy Java

1.既然是登录框嘛,不得随便输入个弱口令,进行尝试

2.使用弱口令爆破了一下,直接就是429,无果

3.查看版本信息

4.帮助文档这里测试啦任意文件读取,无果

5.知道服务器的名称是openresty

6.也没什么思路啦,直接目录扫描一波,扩充一下我的知识面,服了直接就是429

7.思路有问题,当我们打开帮助文档的时候,提示给我了信息

java.io.FileNotFoundException:{help.docx}


压缩包里啥也没有
8.这个提示,隐藏着一个很重要的信息

WEB-INF
WEB-INF主要包含以下文件或目录:
/WEB-INF/web.xmlweb应用程序配置文件,扫描了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:数据库配置文件

9.需要注意的是,使用的请求方式POST方式,访问/WEB-INF/web.xml,返回包中查找flag


10.这里访问找到flagclass文件,重点就是查找文件的路径

    <servlet>
        <servlet-name>FlagController</servlet-name>
        <servlet-class>com.wm.ctf.FlagController</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>FlagController</servlet-name>
        <url-pattern>/Flag</url-pattern>

/com/wm/ctf/FlagController
11.直接尝试拼接
/WEB-INF/classes/com/wm/ctf/FlagController.class

12.回显的数据包中有一段base64编码,直接进行解码得到flag

flag{3f8a91d6-875c-4c82-8543-d2b310024bbc}


13.前面不是说通过WEB-INF可以读取数据库的配置文件,直接尝试一波,发现读取不了

14.任意文件读取,发现读取不了

相关推荐
Rverdoser6 分钟前
RabbitMQ的基本概念和入门
开发语言·后端·ruby
dj24429457079 分钟前
JAVA中的Lamda表达式
java·开发语言
工业3D_大熊23 分钟前
3D可视化引擎HOOPS Luminate场景图详解:形状的创建、销毁与管理
java·c++·3d·docker·c#·制造·数据可视化
szc176726 分钟前
docker 相关命令
java·docker·jenkins
程序媛-徐师姐36 分钟前
Java 基于SpringBoot+vue框架的老年医疗保健网站
java·vue.js·spring boot·老年医疗保健·老年 医疗保健
yngsqq37 分钟前
c#使用高版本8.0步骤
java·前端·c#
流星白龙39 分钟前
【C++习题】10.反转字符串中的单词 lll
开发语言·c++
尘浮生1 小时前
Java项目实战II基于微信小程序的校运会管理系统(开发文档+数据库+源码)
java·开发语言·数据库·微信小程序·小程序·maven·intellij-idea
MessiGo1 小时前
Python 爬虫 (1)基础 | 基础操作
开发语言·python
小白不太白9501 小时前
设计模式之 模板方法模式
java·设计模式·模板方法模式