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.任意文件读取,发现读取不了

相关推荐
我材不敲代码1 小时前
Python实现打包贪吃蛇游戏
开发语言·python·游戏
身如柳絮随风扬2 小时前
Java中的CAS机制详解
java·开发语言
韩立学长3 小时前
【开题答辩实录分享】以《基于Python的大学超市仓储信息管理系统的设计与实现》为例进行选题答辩实录分享
开发语言·python
风筝在晴天搁浅3 小时前
hot100 78.子集
java·算法
froginwe114 小时前
Scala 循环
开发语言
m0_706653234 小时前
C++编译期数组操作
开发语言·c++·算法
故事和你914 小时前
sdut-Java面向对象-06 继承和多态、抽象类和接口(函数题:10-18题)
java·开发语言·算法·面向对象·基础语法·继承和多态·抽象类和接口
Bruk.Liu4 小时前
(LangChain实战2):LangChain消息(message)的使用
开发语言·langchain
qq_423233905 小时前
C++与Python混合编程实战
开发语言·c++·算法
m0_715575345 小时前
分布式任务调度系统
开发语言·c++·算法