邯郸网站建设品牌公司,建设购物网站需要多少费用,郑州外贸网站建设,海南最新消息今天目录 0x00 前言
0x01 Actuator 泄露及利用
1、Actuator heapdump 内存泄露
2、知道泄露后如何进一步利用
3、如何发现 Actuator 泄露#xff08;白盒/黑盒#xff09;
0x02 Swagger自动化测试
1、什么是Swagger#xff1f;
2、PostmanBurpSuiteXray 联动
3、思考 0x…
目录 0x00 前言
0x01 Actuator 泄露及利用
1、Actuator heapdump 内存泄露
2、知道泄露后如何进一步利用
3、如何发现 Actuator 泄露白盒/黑盒
0x02 Swagger自动化测试
1、什么是Swagger
2、PostmanBurpSuiteXray 联动
3、思考 0x00 前言
希望和各位大佬一起学习如果文章内容有错请多多指正谢谢
个人博客链接CH4SER的个人BLOG – Welcome To Ch4sers Blog
0x01 Actuator 泄露及利用 1、Actuator heapdump 内存泄露 SpringBoot Actuator模块提供了生产级别的功能比如健康检查审计指标收集HTTP跟踪等帮助我们监控和管理Spring Boot应用。 JavaSec 靶场介绍本项目使用JAVA 1.8.0_112 基于Spring boot layuimini 进行开发实现 点击访问后可以看到 Actuator 页面 Actuator 页面是一个用于监控和管理 Spring Boot 应用程序的页面。它提供了一系列的端点endpoints这些端点可以用于获取应用程序的健康状况、性能指标、运行时信息等。 通过访问 Actuator 页面可以方便地查看应用程序的运行状态和性能情况从而帮助开发者监控和调试应用程序。Actuator 页面可以通过浏览器访问一般默认路径是 “/actuator”。 接着访问 env 端点看到了环境变量配置信息如数据库密码但是显示为 * 号这时就要下载 heapdump 文件分析 env 是一个用于查看应用程序的环境变量的端点Endpoint通过访问/actuator/env端点可以获取应用程序当前运行环境的所有环境变量信息。 在开发和调试过程中查看env端点可以帮助开发人员了解应用程序运行时的环境变量配置情况方便进行问题排查和调优。 但是如果因为配置不当将 env 端点暴露可能会造成敏感信息泄露的问题。 访问 heapdump 端点下载 heapdump 文件并使用工具分析 heapdump 是一个用于生成Java堆转储文件的端点Endpoint通过访问/actuator/heapdump端点可以下载当前Java应用程序的堆转储文件。 通俗的讲heapdump 文件就是当前项目的内存文件通过特定工具分析能够造成内存泄露的问题。 使用工具 heapdump_tool.jar 分析如下 java -jar .\heapdump_tool.jar .\heapdump 推荐选择模式 1也就是全局模式然后输入要找的关键字有提示的模板比如 password、shirokey 等这里分析出了我的数据库连接密码。 用其他工具也行比如 JDumpSpider-1.1-SNAPSHOT-full.jar这款工具是直接将分析结果全部呈现出来但是听说有些分析不出来 java -jar .\JDumpSpider-1.1-SNAPSHOT-full.jar .\heapdump 2、知道泄露后如何进一步利用 工具 SpringBootExploit-1.3-SNAPSHOT-all.jar该工具首先检测有无 heapdump 泄露然后根据泄露的信息如项目所加载的类判断有无其他漏洞JNDI 注入导致的 RCE利用的可能 如下点击检测环境后日志显示存在 jolokia logback JNDI RCE 漏洞 既然是 JNDI 注入那么我们就要配置服务器地址也就是远程恶意类存放的地址这里用配套的工具JNDIExploit-1.3-SNAPSHOT.jar具体使用如下 java -jar .\JNDIExploit-1.3-SNAPSHOT.jar -i 127.0.0.1 -l 1389 -p 3456
-i服务器绑定的IP地址
-lLDAP监听端口
-pHTTP监听端口 然后回到工具 SpringBootExploit-1.3-SNAPSHOT-all.jar 这边点击连接看能否连上看到连接成功 选择 jolokia logback JNDI RCE 利用链并检测日志显示漏洞利用失败按理来说应该显示植入冰蝎内存马成功怀疑是 JDK 版本问题但是换了 8u112 也不行。 但是很奇怪的是工具 JNDIExploit-1.3-SNAPSHOT.jar 这边显示成功植入了内存马 最后尝试将 PhpStudy 的 WAMP 全部开启成功植入错误原因之前我只开启了 MySQL 使用冰蝎 4.0 连接成功冰蝎 3.0 不行jolokia logback JNDI RCE 复现完毕。 3、如何发现 Actuator 泄露白盒/黑盒 对于白盒审计有无 Actuator 泄露以下两个条件都要成立 看 pom.xml 或 External Libraries 里有没有用到 Actuator 组件 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-actuator/artifactId
/dependency 看 application.properties 里有没有设置全部暴露 Actuator management.endpoints.web.exposure.include* 对于黑盒发现 Actuator 泄露 首先要找到 SpringBoot 框架的网站可以通过 Fofa 语法bodyWhitelabel Error Page icon_hash116323821即根据报错页面和图标 hash匹配 然后使用 BurpSuite 插件 APIKit 测试有无 Actuator 泄露该插件支持多种 API 接口的指纹识别其中就包括 Actuator并且所有 BurpSuite 的流量都会经过该插件 首先将 APIKit.jar 导入到 BurpSuite 然后开启 BurpSuite 代理鼠标点点点就行了流量会自动经过 APIKit可以看到已经检测到了 Atuator 泄露 0x02 Swagger自动化测试 1、什么是Swagger Swagger是一个用于生成、描述和调用 RESTful 接口的 Web 服务Swagger 能将项目中所有设置暴露的接口展现在页面上。简而言之Swagger就是一个方便开发人员进行接口开发和测试的工具。 基于安全的角度可以利用 Swagger 针对接口进行漏洞测试但接口数量往往是很多的所以我们一般会采用自动化接口漏洞安全测试。 2、PostmanBurpSuiteXray 联动 首先进入靶场炼石计划 RefiningStone的 Swagger 页面 swagger-ui.html观察到有许多接口的测试点而对于自动化联动测试更重要的是图中标红的 API 文档地址等会需要填到 Postman 里 接着打开 Postman粘贴 API 文档的链接地址然后 Continue - Import 即可导入 按照图示操作 Run 就行了建议勾选上 Save Responses 保存响应 Run 之后可能会报错大概率是上个界面的 Variables 变量设置有问题多了两个 // 号去掉然后保存重新 Run 即可 Postman 自动化测试结果如下但很奇怪的是返回码竟然都是 200按理来说 Postman 是没有登录状态的应该有很多 500 才对 现在考虑把 Postman 的流量转到 BurpSuite 上去也就是说要在 Postman 里设置走 BurpSuite 代理我的 BurpSuite 代理默认是本地 8080 端口所以在 Postman 按照如下设置即可 在 Postman 那边重新 Run 之后可以看到 BurpSuite - Proxy - HTTP History 里已经接收到了流量 现在考虑再将 BurpSuite 的流量转发到本地某个端口上去这里我设置的 7777具体设置是在 Settings - Network - Connections 里然后让 Xray 监听 7777 端口并漏扫 BurpSuite Xray 联动参考Xrayburp联动使用被动扫描_xray被动扫描_小小丸子551的博客-CSDN博客 常用操作命令 1、使用基础爬虫爬取并扫描整个网站
.\xray_windows_amd64.exe webscan --basic-crawler http://wordy/ --html-output proxy.html2、windows xray版单个url检测
.\xray_windows_amd64.exe webscan --url http://example.com/?ab3、使用http代理发起被动扫描
.\xray_windows_amd64.exe webscan --listen 127.0.0.1:7777 --html-output test.html4、指定扫描
.\xray_windows_amd64.exe webscan --plugins cmd_injection,sqldet --url http://test.com
.\xray_windows_amd64.exe webscan --plugins cmd_injection,sqldet --proxy 127.0.0.1:8888 这里肯定是使用被动扫描命令如下 .\xray_windows_amd64.exe webscan --listen 127.0.0.1:7777 --html-output test.html 然后重新在 Postman 那边 Run 一下Xray 就能进行漏扫了如此一来实现了 PostmanBurpSuiteXray 的联动 3、思考 观察到 Postman 流量的 User-Agent 带有很明显的 Postman 特征这明显是不合理的后期我会把这个坑给填上 FOFA 语法appSwagger countryCN