RoarCTF2019-EasyJava
时间:2022-07-23
本文章向大家介绍RoarCTF2019-EasyJava,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
题目地址:buuctf
这道题做起来又是没有一点思路,除了登录和help两个功能也没找到其他的,也没有隐藏的hint之类的,看报错显示的是Apache Tomcat/8.5.24,我搜下了有一个CVE-2018-1305的漏洞,但是好像也没什么用,还是看大佬们的wp吧???
利用点是help功能,点击help之后跳转的是/Download?filename=help.docx,但是报错java.io.FileNotFoundException:{help.docx}
关于这点,看大佬们的博客是因为请求方式的原因,果然改为post请求之后能够正常下载
下载后打开只有一行Are you sure the flag is here? ? ?很显然这也不是flag
接下来就是WEB-INF/web.xml泄露,WEB-INF是Java的WEB应用的安全目录。主要包含以下文件或目录
/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文件,得到网站源码
关于具体的源码泄露参考这个大佬的文章:https://blog.csdn.net/wy_97/article/details/78165051
然后传filename=/WEB-INF/web.xml,下载得到
有一个FlagController,路径/Flag,请求后报错
有路径/com/wm/ctf/FlagController
接下来就是更加看不懂的环节了,推测class文件路径,然后获得class文件,反编译得到flag
payload:
filename=WEB-INF/classes/com/wm/ctf/FlagController.class
有一串base64样式的字符串,解码得到flag
关于这个路径推测,大佬们的博客写的是结合Tomcat的项目存放路径的经验得出的,咱也没经验,咱也不知道?
- Nginx反向代理,负载均衡,redis session共享,keepalived高可用
- 多行图片hover加边框兼容IE7+
- Debian JDK安装及配置
- Python With-As
- 用 TensorFlow 创建自己的 Speech Recognizer
- Shell利剑之xargs和time
- Shell利剑之export、read和history
- css sprite 调整大张图片中小图标的大小
- Learn Git One
- Docker系列教程04-Docker镜像常用命令
- Linux 系统优化
- Spring Cloud Edgware新特性之九:Sleuth使用MQ方式整合Zipkin
- Linux 基础知识
- Spring Cloud Edgware新特性之八:Zuul回退的改进
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释