WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE

这篇具有很好参考价值的文章主要介绍了WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

知识点:
1、Java安全-原生反序列化-3大类接口函数&利用
2、Java安全-SpringBoot攻防-泄漏安全&CVE安全

一、演示案例-Java安全-反序列化-原生序列化类函数

1、前言

序列化是将Java对象转换成字节流的过程。而反序列化是将字节流转换成Java对象的过程,java序列化的数据一般会以标记(ac ed 00 05)开头,base64编码的特征为rO0AB

JAVA常见的序列化和反序列化的方法有JAVA 原生序列化JSON 类(fastjson、jackson)序列化两种方式。两种方式做的事情都是一样的,为什么要区分开来?

因为利用起来有所不同
fastjson、jackson等反序列化就用网上给的EXP、POC去测试
java原生类反序列化就会用到专门工具(ysoserial)去生成payload去测试

黑盒发现(流量捕获到特征ac ed 00 05、rO0AB
白盒发现(特征类接口函数)

2、原生序列化类函数

SnakeYaml

完整的YAML1.1规范Processor,支持Java对象的序列化/反序列化
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
需要注意下jndi注入版本问题
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

XMLDecoder

xml语言格式序列化类函数接口
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

ObjectInputStream.readObject

任何类如果想要序列化必须实现
java.io.Serializable接口
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

ysoserial

WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
该项目有个好处就是能看到一些利用链对应的具体版本
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

Yakit

WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
假如不知道对方能用什么利用链生成payload,可以利用万能利用链(URLDNS)进行POC测试
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

SerializedPayloadGenerator

该工具项目搭建地址参考:https://blog.csdn.net/m0_60571842/article/details/134454939
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

3、利用项目

Yakit

https://yaklang.com/ //集成了ysoserial工具,图形化生成,推荐使用

ysoserial

https://github.com/frohoff/ysoserial //命令生成工具,不推荐使用

SerializedPayloadGenerator

https://github.com/NotSoSecure/SerializedPayloadGenerator //集成了ysoserial工具,网页图形化,推荐使用

二、演示案例-Java安全-SpringBoot框架-泄漏&CVE

SpringBoot Actuator模块提供了生产级别的功能,比如健康检查,审计,指标收集,HTTP跟踪等,帮助我们监控和管理Spring Boot应用。

0、检测清单

https://github.com/LandGrey/SpringBootVulExploit
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

1、黑盒发现(人工识别,BP插件)

人工识别

1、网站图片文件是一个绿色的树叶。2、特有的报错信息。3、Whitelabel Error Page关键字
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

BP插件

https://github.com/API-Security/APIKit
打开BurpSuite页面,点击Extender然后选择Extensions,添加APIKit.jar
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
安装好插件后啥都不用管,让数据包经过BP即可触发插件被动扫描
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

2、白盒发现(pom.xml,引用库)

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
配置文件Actuator设置全部暴露

management.endpoints.web.exposure.include=*

WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

3、泄漏安全(内部路由泄露)

一、https://github.com/AabyssZG/SpringBoot-Scan

WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

二、heapdump敏感信息查询工具(配置密码,AK/SK等)

https://github.com/whwlsfb/JDumpSpider(该工具不支持自定义关键字)
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
https://github.com/wyzxxz/heapdump_tool(支持关键字搜索)
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

4、漏洞安全(利用类,CVE漏洞等)

一、针对于框架CVE漏洞

https://github.com/AabyssZG/SpringBoot-Scan
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

二、利用类漏洞来进行RCE攻击

https://github.com/0x727/SpringBootExploit
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
服务器上执行JNDIExploit工具(可以本地、也可以远程VPS上运行)

WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

5、CMS源码审计

一、安装源码

WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

二、源码审计

从pom.xml看有没有调用Actuator库

WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

配置文件中Actuator设置是否为*(全部暴露)
management.endpoints.web.exposure.include=*

WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
漏洞检测
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
泄露安全(heapdump)
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
使用heapdump敏感信息查询工具提取敏感信息
JDumpSpider
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump
WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE,# WEB安全篇,java,spring boot,RCE,CVE,heapdump

6、遇到spring boot框架怎么办?

从两个方面去寻找安全问题:文章来源地址https://www.toymoban.com/news/detail-775915.html

1.泄露安全(是否泄露了内部路由及heapdump)

2.漏洞安全(利用相关框架漏洞检测工具测试是否存在漏洞)

到了这里,关于WEB攻防-Java安全&原生反序列化&SpringBoot攻防&heapdump提取&CVE的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Web攻防--JNDI注入--Log4j漏洞--Fastjson反序列化漏洞

    什么是JNDI JNDI全称为 Java Naming and Directory Interface(Java命名和目录接口),是一组应用程序接口,为开发人员查找和访问各种资源提供了统一的通用接口,可以用来定义用户、网络、机器、对象和服务等各种资源。 JNDI支持的服务主要有:DNS、LDAP、CORBA、RMI等。 简单从安全角度

    2024年02月09日
    浏览(20)
  • Day60:WEB攻防-PHP反序列化&POP链构造&魔术方法流程&漏洞触发条件&属性修改

    目录 PHP-DEMO1-序列化和反序列化 序列化操作 - 即类型转换 序列化案例 PHP-DEMO2-魔术方法触发规则 __construct(): //当对象new的时候会自动调用 __destruct()://当对象被销毁时会被自动调用 __sleep(): //serialize()执行时被自动调用 __wakeup(): //unserialize()时会被自动调用 __invoke(): //把对象当

    2024年04月27日
    浏览(18)
  • 【WEB安全】不安全的反序列化

    序列化和反序列化是指用于将对象或数据结构转换为字节流的过程,以便在不同系统之间进行传输或存储,并在需要时重新构造。 **序列化是指将对象或数据结构转换为字节流的过程。**在序列化过程中,对象的状态和数据被转换为一系列字节,这些字节可以按照一定的协议

    2024年02月16日
    浏览(20)
  • Java代码审计&原生反序列化&CC链跟踪分析

    希望和各位大佬一起学习,如果文章内容有错请多多指正,谢谢!   个人博客链接:CH4SER的个人BLOG – Welcome To Ch4ser\\\'s Blog 在前一篇文章我分析了Commons Collections1链​​​​​​​,其中跟链的顺序是:source=gadget=sink,但如果站在漏洞挖掘的角度顺序是倒过来的:sink=gadget=s

    2024年01月24日
    浏览(21)
  • Java安全基础之Java序列化与反序列化

    目录 ObjectInputStream 和 ObjectOutputStream java.io.Serializable 自定义序列化和反序列化 Java 的序列化(Serialization)是指将对象转换为字节序列的过程,而反序列化(Deserialization)则是将字节序列转换回对象的过程。 序列化和反序列化通常用于在网络上传输对象或者将对象持久化到文

    2024年04月22日
    浏览(19)
  • 反序列化渗透与攻防(三)之Apache Commons Collections反序列化漏洞

    项目地址:Collections – Download Apache Commons Collections 本地复现环境: jdk 1.7.0_80 IDEA Project Structrure——Projrct设置成1.7 IDEA Project Structrure——Moudles设置成1.7 Settings——Build,Execution,Deployment——Compiler——Java Compiler——Target bytecode version设置成7 Apache Commons Collections ≤ 3.2.1 Apache Com

    2023年04月21日
    浏览(19)
  • Android 反序列化漏洞攻防史话

    Java 在历史上出现过许多反序列化的漏洞,但大部分出自 J2EE 的组件。即便是 FastJSON 这种漏洞,似乎也很少看到在 Android 中被实际的触发和利用。本文即为对历史上曾出现过的 Android Java 反序列化漏洞的分析和研究记录。 序列化和反序列化是指将内存数据结构转换为字节流,

    2024年02月03日
    浏览(20)
  • java安全(五)java反序列化

    给个关注?宝儿! 给个关注?宝儿! 给个关注?宝儿! 在调用RMI时,发现接收发送数据都是反序列化数据. 例如JSON和XML等语言,在网络上传递信息,都会用到一些格式化数据,大多数处理方法中,JSON和XML支持的数据类型就是基本数据类型,整型、浮点型、字符串、布尔等,如果

    2024年02月10日
    浏览(25)
  • 【java安全】FastJson反序列化漏洞浅析

    0x00.前言 前面我们学习了RMI和JNDI知识,接下来我们就可以来了解一下FastJson反序列化了 0x01.FastJson概述 FastJson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持 将JavaBean序列化为JSON字符串,也可以将JSON字符串反序列化到JavaBean 0x02.FastJson使用 首先我们需要使用

    2024年02月11日
    浏览(21)
  • 37-WEB漏洞-反序列化之PHP&JAVA全解(上)

    未对用户输入的序列化字符串进行检测,导致攻击者可以控制反序列化过程,从而导致代码执行,SQL 注入,目录遍历等不可控后果。在反序列化的过程中自动触发了某些魔术方法。当进行反序列化的时候就有可能会触发对象中的一些魔术方法。 2.1.1、本地 unserialize2.php flag.

    2024年01月22日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包