为何Java序列化漏洞并未被修复?

简介:

据我所知,Java序列化漏洞一年多前已被披露,它由一位安全研究人员在PayPal的服务器中发现。那么,这是个什么样的漏洞,为什么它还未被修复?攻击者是如何利用它的?

为何Java序列化漏洞并未被修复?

Nick Lewis:Java序列化漏洞发生在:当输入内容从已经通过互联网提交的格式转换成另一种格式时,随后这种格式会保存在数据库中。当该漏洞存在时,在这个转换过程中处理的数据可被用于在某些易受攻击软件中进行远程代码执行。该漏洞曾被认为只是理论上的,因为其非常难以被利用,但后来FoxGlove Security在博客文章中发布了针对其可广泛使用的软件漏洞利用代码。通过这个漏洞利用代码,Java序列化漏洞成了企业需要应对的问题。

在安全研究人员Mark Litchfield发现这个漏洞后,PayPal工程人员检查了这个特定的Java序列化漏洞,并介绍了他们如何在其系统中修复了这个漏洞。安全研究人员Michael Stepankin也详细探讨了他如何通过这个漏洞在PayPal服务器远程执行代码。

在PayPal工程人员寻找其产品中漏洞代码的过程中我们可了解到,为什么企业(包括PayPal)没有在漏洞利用代码发布前修复这个漏洞:因为如果企业没有中央软件开发资源库,他们非常难以发现这个漏洞代码,他们将需要扫描所有网络应用来寻找易受攻击的系统。

为了抵御这种类型的Java序列化攻击,企业应该将安全整合到其软件开发生命周期中。作为非特权用户运行web服务器而没有在系统执行代码的权限,可减少该漏洞被用于远程代码执行的风险。


作者:Nick Lewis

来源:51CTO

相关文章
|
JSON 网络协议 安全
【Java】(10)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
667 1
|
JSON 网络协议 安全
【Java基础】(1)进程与线程的关系、Tread类;讲解基本线程安全、网络编程内容;JSON序列化与反序列化
几乎所有的操作系统都支持进程的概念,进程是处于运行过程中的程序,并且具有一定的独立功能,进程是系统进行资源分配和调度的一个独立单位一般而言,进程包含如下三个特征。独立性动态性并发性。
594 1
|
JSON Java 数据库连接
|
存储 安全 Java
深入理解Java序列化接口及其实现机制
记住,序列化不仅仅是把对象状态保存下来那么简单,它涉及到类的版本控制、安全性和性能等多个重要方面。正确理解和实现Java序列化机制对于构建高效、安全和可维护的Java应用至关重要。
445 0
|
SQL 安全 Java
JavaSecLab 一款综合Java漏洞平台
JavaSecLab是一款综合型Java漏洞学习平台,涵盖多种漏洞场景,提供漏洞代码、修复示例、安全编码规范及友好UI。适用于安全服务、甲方安全培训、安全研究等领域,助于理解漏洞原理与修复方法。支持跨站脚本、SQL注入等多种漏洞类型……
1054 2
|
存储 安全 Java
🌟Java零基础-反序列化:从入门到精通
【10月更文挑战第21天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
526 5
|
存储 安全 Java
Java编程中的对象序列化与反序列化
【10月更文挑战第22天】在Java的世界里,对象序列化和反序列化是数据持久化和网络传输的关键技术。本文将带你了解如何在Java中实现对象的序列化与反序列化,并探讨其背后的原理。通过实际代码示例,我们将一步步展示如何将复杂数据结构转换为字节流,以及如何将这些字节流还原为Java对象。文章还将讨论在使用序列化时应注意的安全性问题,以确保你的应用程序既高效又安全。
|
存储 缓存 安全
🌟Java零基础:深入解析Java序列化机制
【10月更文挑战第20天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
438 3
|
安全 Java Android开发
JavaWeb解压缩漏洞之ZipSlip与Zip炸弹
JavaWeb解压缩漏洞之ZipSlip与Zip炸弹
1080 5
|
存储 安全 Java
Java编程中的对象序列化与反序列化
【10月更文挑战第3天】在Java编程的世界里,对象序列化与反序列化是实现数据持久化和网络传输的关键技术。本文将深入探讨Java序列化的原理、应用场景以及如何通过代码示例实现对象的序列化与反序列化过程。从基础概念到实践操作,我们将一步步揭示这一技术的魅力所在。