香港高速VIP云机房火爆上线啦!无需备案,开通即用!配套《巅云自助建站系统3.0》将带给您飞一般的可视化拖拽建站体验,欢迎免费体验。

建站新闻

【企业网页制作】Java 反序列化安全实例解析- 企业巅云建站官方网站
一佰互联网站建设(www.yinxi.net) 发布时间:2019-05-25 11:44:40 浏览数: 169
0

构造恶意的序列化对象发送给目标主机:

执行系统命令:

RedHat 发布JBoss相关产品的解决方案:

https://access.redhat.com/solutions/2045023

受影响的JBoss产品有:

Environment

Red Hat JBossA-MQ 6.x

Red Hat JBossBPM Suite (BPMS) 6.x

Red Hat JBossBRMS 6.x

Red Hat JBossBRMS 5.x

Red Hat JBossData Grid (JDG) 6.x

Red Hat JBossData Virtualization (JDV) 6.x

Red Hat JBossData Virtualization (JDV) 5.x

Red Hat JBossEnterprise Application Platform 6.x

Red Hat JBossEnterprise Application Platform 5.x

Red Hat JBossEnterprise Application Platform 4.3.x

Red Hat JBossFuse 6.x

Red Hat JBossFuse Service Works (FSW) 6.x

Red Hat JBossOperations Network (JBoss ON) 3.x

Red Hat JBossPortal 6.x

Red Hat JBossSOA Platform (SOA-P) 5.x

Red Hat JBossWeb Server (JWS) 3.x

案例三: Jenkins Remoting的相关API是用于实现分布式环境中master和slave节点或者master和CLI的访问,API没有身份认证并且支持序列化对象。

CVE-2016-0788通过Jenkins Remoting巧妙地开启JRMP,JRMP触发反序列化操作,从而进行漏洞的利用。作者已经提供了完整利用POC:

在远程服务器开启JRMI端口:


连接远程服务端口,发送恶意序列化数据包:


这样在Jenkins的根目录就会生成一个pwned文件。

受影响的版本:

All Jenkins main line releases up to and including 1.649

All Jenkins LTS releases up to and including 1.642.1

漏洞防御

1 、反序列化对象白名单控制,在 resolveClass 方法中校验对象名字。

public class LookAheadObjectInputStream extends

ObjectInputStream {

public

LookAheadObjectInputStream(InputStreaminputStream)

throws

IOException{

super

(inputStream);

}

/**

* Only deserializeinstances of our expected Bicycle class

*/

@Override

protected Class resolveClass(ObjectStreamClass desc) throws

IOException,

ClassNotFoundException {

if (!desc.getName().equals(Bicycle. class

.getName())) {

throw new

InvalidClassException(

"Unauthorized deserializationattempt"

,desc.getName());

}

return super

.resolveClass(desc);

}

}

2 、序列化数据采用对称加密进行传输,接口调用增加身份认证。 ( 此种方法仅仅能提升攻击成本 )

3 、因为序列化机制不能保证数据的完整和和保密性,如果类中存在敏感数据并且那么这个类还需要序列化,需要在特定对象的一个域上关闭 serialization ,在这个域前加上关键字 transient 即可。

什么是序列化

序列化 (Serialization)是指将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。

简单来说:

序列化 : 将数据结构或对象转换成二进制串的过程。

反序列化 :将在序列化过程中所生成的二进制串转换成数据结构或者对象的过程。

下面是将字符串对象先进行序列化,存储到本地文件,然后再通过反序列化进行恢复的样例代码:

public static void main(String args[]) throws Exception {

String obj ="hello world!";

// 将序列化对象写入文件object.db中

FileOutputStream fos =new FileOutputStream("object.db");

ObjectOutputStream os= new ObjectOutputStream(fos);

os.writeObject(obj);

os.close();

// 从文件object.db中读取数据

FileInputStream fis =new FileInputStream("object.db");

ObjectInputStream ois= new ObjectInputStream(fis);

// 通过反序列化恢复对象obj

String obj2 =(String)ois.readObject();

ois.close();

}

反序列化漏洞原理

反序列化漏洞的本质就是反序列化机制打破了数据和对象的边界,导致攻击者注入的恶意序列化数据在反序列化过程中被还原成对象,控制了对象就可能在目标系统上面执行攻击代码。Java序列化应用于RMI JMX JMS 技术中。

漏洞危害

案例一:Apache ActiveMQ 5.12.0 远程代码执行漏洞(JMS)

Apache ActiveMQ 5.13.0 之前5.x版本中存在安全漏洞,该漏洞源于程序未能限制可在代理中序列化的类。远程攻击者可借助特制的序列化的Java Message Service (JMS) ObjectMessage对象利用该漏洞执行任意代码。

受到影响的消息系统如下:

Apache ActiveMQ 5.12.0 and earlier

HornetQ 2.4.0 and earlier

Oracle OpenMQ 5.1 and earlier

IBM Websphere MQ 8.0.0.4 and earlier

Oracle Weblogic 12c and earlier

Pivotal RabbitMQ JMS client 1.4.6 and earlier

IBM MessageSight MessageSight V1.2 JMSClient and earlier

SwiftMQ JMS client 9.7.3 and earlier

Apache ActiveMQ Artemis client 1.2.0 and earlier

Apache Qpid JMS client 0.9.0 and earlier

Amazon SQS Java Messaging Library 1.0.0 and earlier

案例二:JBoss 反序列化漏洞(JMX)

Jboss 利用的是HTTP协议,可以在任何端口上运行,默认安装在8080端口中。JMX是一个java的管理协议,在Jboss中的JMXInvokerServlet可以使用HTTP协议与其进行通话。这一通信功能依赖于java的序列化类。

本地构造恶意的序列化对象


一佰互联是全国知名建站品牌服务商,我们有九年网站建设、网站制作、网页设计、php开发和域名注册及虚拟主机服务经验,提供的自助建站服务更是全国有名。近年来还整合团队优势自主开发了可视化多用户”巅云建站系统“3.0平台版,拖拽排版网站制作设计,轻松实现pc站、手机微网站、小程序、APP一体化全网营销网站建设 ,已成功的为全国上百家网络公司提供自助建站平台搭建服务。

上一篇:关于自身对现在IE6对网站建设的作用
下一篇: Google推出设计平台Material.io
[返回新闻列表]

相关新闻more

24
05月
庆吉科技最新产品升级公告

尊敬的客户: 您好,庆吉科技最新产品升级公告。 1) 升级增加备注功能,在用户控制中心产品列表,如域名列表、子用户列表、以及代理商管理的子用... >>详情

15
04月
高端网站建设-网站怎样推广才能有较高的访问量

网站推广的最终目的是让更多的客户知道你的网站在什么位置。让尽可能多的潜在用户了解并访问网站,从而利用网站实现向用户传递营销信息的目的,用户通... >>详情

09
05月
企业网站seo营销型网站建设

您的产品或服务的扩展知识 除了常规的网站建设产品知识,您还需要对这些知识进行延伸,您可以通 过专业文章,白皮书等方式,发表您在行业中的造诣... >>详情

05
04月
鄂尔多斯一男子在微信群发这种视频,结果被拘留

简介:近日,伊旗一男子,在微信群转发了一段视频,结果被拘留……简要案情2018年8月13日,伊旗公安局得到线索,有人利用微信群传播暴恐音视频... >>详情

营业执照. cdn加速服务 备案系统认证 网络安全协会 我们的支付方式AAA认证
上海 北京 深圳 广州 天津 杭州 南京 武汉 成都 沈阳 大连 长沙 济南 青岛 苏州 福州 无锡 哈尔滨 宁波 重庆 大庆 厦门 西安 长春 珠海 郑州 海口 昆明 太原 石家庄 温州 合肥 乌鲁木齐 南宁 南通 合肥 兰州 呼和浩特 贵阳 烟台 秦皇岛 包头 唐山 银川 汕头 连云港 威海 西宁 湛江 北海 万州 涪陵 长寿 黔江 永川 丰都 忠县 江津 南川 开县 云阳 万盛 梁平 垫江 巫山 城口 建站宝盒 免费建站 门户网站建设 微信网站 手机网站 门户网站制作

7x24小时服务电话:18581389571 传真:023-85725751 免费建站交流群:236412099 139947842(自助建站交流) E-Mail:post@yinxi.net 网站投诉:
重庆楚捷科技有限公司 一佰互联©版权所有 自助建站(www.yinxi.net,Inc.) 2001-2020 All Rights Reserved 本站程序受法律保护,网站法律顾问:ITLAW-庄毅雄律师
中华人民共和国信息产业部网站备案号:渝ICP备12000592号