[RoarCTF 2019]Easy Java

news/2024/5/19 21:56:26 标签: java, hive, 开发语言, CTF, BUUCTF, web
🍬 博主介绍

👨‍🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~
✨主攻领域:【渗透领域】【应急响应】 【Java、PHP】 【VulnHub靶场复现】【面试分析】
🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋
🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝文末有彩蛋
🙏作者水平有限,欢迎各位大佬指点,相互学习进步!


flag{753b1a2d-673d-4d04-8a57-a58d189cead8}

访问链接,发现是个登录页面,一般我们看到登录页面,我们首先尝试弱口令登录,但是这里我们尝试了,发现失败了,还有就是看到登录框,我们尝试利用sql的特殊字符进行测试是否存在sql注入,但是这里都没有突破。

右击查看源代码,没有发现什么信息,但是发现了一个好像GET传参利用filename读文件

一看,发现是开始界面的help按钮出现的url传参,那么我们就可以利用这个传参看下能读到什么信息,但是发现GET传参一直没有任何的反应。

后来我们干脆利用POST传参,发现下载得到一个word文件,但是这里提示我们说,这个不是flag

然后我尝试下载存有web信息的XML文件,payload:

filename=/WEB-INF/web.xml

后来下载得到下面的关键信息,是跟我们的flag是有联系的

<servlet>
<servlet-name>FlagController</servlet-name>
<servlet-class>com.wm.ctf.FlagController</servlet-class>
</servlet>
  1. <servlet>:这个元素定义了一个 Servlet,用于处理特定的请求和逻辑。在这个例子中,Servlet 的名称是 “FlagController”。
  2. <servlet-name>:这个子元素指定了 Servlet 的名称,即 “FlagController”。这个名称在整个部署描述符中必须是唯一的,用来标识该 Servlet。
  3. <servlet-class>:这个子元素指定了 Servlet 类的完全限定类名,即 “com.wm.ctf.FlagController”。这个类将包含 Servlet 的逻辑代码,用于处理特定的请求。

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:数据库配置文件

其实说明了这个就是JAVA源代码进行编译后所产生的后缀带有.class的东西。于是我们可以下载这个.class文件再利用反编译手段来获得flag。

生成payload:

filename=/WEB-INF/classes/com/wm/ctf/FlagController.class

得到一串base64编码的flag值

解码,得到flag值


http://www.niftyadmin.cn/n/5412920.html

相关文章

堆排序的应用

堆排序(Heap Sort)是一种基于比较的排序算法,它利用堆这种数据结构对一组数据进行排序。堆是一个近似完全二叉树的结构,并同时满足堆积的性质:即子节点的键值或索引总是小于(或者大于)它的父节点。 堆排序算法可以分为两个大的步骤: 建立堆:将无序的输入数据构造成一个…

XXE-XML实体注入漏洞

目录 1.xml基础 1.1什么是xml 1.2xml文档结构 1.3 什么是DTD 1.4 什么是实体 1.5 什么是外部实体 2.xxe漏洞 2.1xxe漏洞基本介绍 2.2xxe漏洞的危害 经典漏洞案例分析 3.xxe漏洞挖掘和利用 3.1. 识别潜在的XML入口 3.2. 检查XML处理逻辑 3.3. 构造试探Payload 常…

安捷伦DSA90254A示波器 AgilentDSA90254A

产品简介&#xff1a; •高性能实验室 •2.5 GHz 带宽 •4 个模拟通道&#xff0c;每个通道的采样率为 20 GSa/s •每个通道的数据速率为 20 Mpts 至 1 Gpts •很低的本底噪声&#xff1a;100 mV/格时为 3.01 mVrms •DSA90000A 系列示波器是以 Infiniium DSO90000A 系列…

pthread_cond_wait内部逻辑

简单介绍 引入 pthread_cond_wait 函数的概念&#xff0c;它是 POSIX 线程库中用于条件变量等待的函数。一下是此函数运行时内部逻辑&#xff1a; 1. pthread_cond_wait 函数的调用过程 描述当程序调用 pthread_cond_wait 函数时会发生什么。包括将执行流放入 PCB 等待队列、解…

【杂言】迟到的 2024 展望

研一下开学已有半月&#xff0c;本来想在家写的新年展望拖到了现在。翻看 2021 年的展望&#xff0c;我发现 flag 基本达成了&#xff08;除了 12 点睡觉&#xff09;&#xff0c;所以给新的一年立下大方向也是很有必要的。也许等到 60 岁我再回看&#xff0c;也是一件趣事吧。…

Docker 的资源控制

目录 Docker 的资源控制为什么需要资源控制&#xff1f;控制内存使用限制 CPU 使用磁盘 I/O 控制网络带宽限制实践建议 Docker 资源控制&#xff1a;保障性能与稳定性1. Docker资源控制概览2. 内存限制3. CPU限制4. 磁盘 I/O 控制5. 网络带宽管理6. 实际应用 Docker 的资源控制…

分段线性化问题探析

目录 1 使用0-1变量将分段函数转换为线性约束 2 连续函数采用分段线性化示例 3 matlab程序测试 4 matlab测试结果说明 5 分段线性化应用 1 使用0-1变量将分段函数转换为线性约束 2 连续函数采用分段线性化示例 3 matlab程序测试 clc;clear all; gn10;tn1; x_pfsdpvar(1, t…

仪酷LabVIEW OD实战(4)——Object Detection+OpenVINO工具包快速实现yolo目标检测

‍‍&#x1f3e1;博客主页&#xff1a; virobotics(仪酷智能)&#xff1a;LabVIEW深度学习、人工智能博主 &#x1f384;所属专栏&#xff1a;『仪酷LabVIEW目标检测工具包实战』 &#x1f4d1;上期文章&#xff1a;『仪酷LabVIEW OD实战(3)——Object Detectiononnx工具包快速…