1.Java 常考点及出题思路: 考点技术:xxe,spel 表达式,反序列化,文件安全,最新框架插件漏洞等。
一般都会设法间接给出源码或相关配置提示文件,间接性源码或直接源码体现等形式,否则单纯黑盒难度比较大。
ctf web信息泄露总结: 参考:https://www.cnblogs.com/xishaonian/p/7628153.html 00x1 .ng 源码泄露 00x2 git 源码泄露 00x3 .DS_Store 文件泄漏 00x4 网站备份压缩文件 00x5 SVN 导致文件泄露 00x6 WEB-INF/web.xml 泄露 00x7 CVS 泄漏
必备知识点: 反编译,基础的 Java 代码认知及审计能力,熟悉相关最新的漏洞,常见漏洞等
2.Java 简单逆向解密-----【buuoReverse】----逆向源码
class文件直接拖到idea反编译一下,分析源码,编写py脚本解密。
3.【RoarCTF-2019-easy_java-buuoj】-配置到源码
首先打开题目发现URL可能存在任意文件下载漏洞,但是却无法以get方式下载请求,必须post请求下载,下载/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下载后了解了目录结构,可以在利用任意文件下载,来下载flag文件的class(路径:com/ctf/FlagControllerfilename=/WEB-INF/classes/com/wm/ctf/FlagController)来反编译,之后加密base64得到flag。
4.网鼎杯 2020----青龙组----filejava----【ctfhub】
上传图片抓包后发现有filename,由此判断可能存在文件上传漏洞。 给到了下载地址,抓包后根据url有filename参数判断可能存在任意文件下载漏洞,抓包发现回显为无法读取,再试试本目录能否读取web.xml文件发现没有该文件,再目录遍历发现可以读取到web.xml文件, 由此根据web.xml的目录结构构造url读取各个文件。 下载到各个文件后,根据题目提示审计uploadservelt文件的源码 看到了: 在另一文件发现 flag 位置,之后审计与搜索关键字、参考文章,判断为xxe漏洞,构造payload: 参考: https://xz.aliyun.com/t/7272 https://www.jianshu.com/p/73cd11d83c30 https://blog.spoock.com/2018/10/23/java-xxe/ https://www.cnblogs.com/tr1ple/p/12522623.html
5.网鼎杯 2020----朱雀组----Web-think_java----直接源码审计
不愧是国家赛事,难度极高,具体可以参考网上文章wp或者视频后半部分讲解。
|