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

相关推荐
AronTing几秒前
分布式缓存架构优化与实战:从设计到落地
java·后端·面试
parade岁月几秒前
Spring Boot配置中YAML文档结构的理解
java·spring boot
掉鱼的猫1 分钟前
把 Java WebApi 快速转为 Mcp-Server(使用 solon-ai-mcp)
java·api·mcp
陈奕昆3 分钟前
6.1腾讯技术岗2025面试趋势前瞻:大模型、云原生与安全隐私新动向
算法·安全·云原生·面试·腾讯
AronTing4 分钟前
分布式锁深度解析:从原理到实战
java·后端·面试
稻草猫.4 分钟前
【Java 数据结构】List,ArrayList与顺序表
java·数据结构·idea
知其然亦知其所以然5 分钟前
Exchanger 到底能干嘛?99% 的程序员都没用过的 Java API!
java·后端·面试
The Chosen One98511 分钟前
C++:类和对象(上)---镜中万象:C++类的抽象之境与对象的具体之象
开发语言·c++
ゞ 正在缓冲99%…15 分钟前
leetcode66.加一
java·数据结构·算法
晓131316 分钟前
第十二章 Python语言-大数据分析PySpark(终)
开发语言·python·数据分析