最近两天被朋友圈的“Apache Log4j2 远程代码执行漏洞”刷屏了,主要是因为组件存在 Java JNDI 注入漏洞:当程序将用户输入的数据记入日志时,攻击者通过构造特殊请求,来触发 Apache Log4j2 中的远程代码执行漏洞,从而利用此漏洞在目标服务器上执行任意代码。

影响范围

Apache Log4j 2.x <= 2.14.1

JNDI(Java Naming and Directory Interface)是Java提供的Java 命名和目录接口。通过调用JNDI的API应用程序可以定位资源和其他程序对象。JNDI是Java EE的重要部分,需要注意的是它并不只是包含了DataSource(JDBC 数据源),JNDI可访问的现有的目录及服务有:JDBC、LDAP、RMI、DNS、NIS、CORBA,摘自百度百科。

网上很多文章说如何修复漏洞和漏洞截图,几乎没有说如何测试项目是否存在该漏洞。Java 使用 Log4j2 主要测试代码如下:

1

2

log.info("${jndi:rmi://127.0.0.1:8100/Main}");

log.info("${jndi:ldap://127.0.0.1:8100/Main}");

简单来说就是 Log4j2 会通过 rmi 或者 ldap 协议访问后面的地址,根据协议的内容解析,有可能执行已经恶意构造的代码。

网上几乎都是通过打开 Windows 系统的计算器来证明漏洞的存在,代码如下:

既然 log4j2 会使用 rmi 或者 ldap 协议访问攻击者的服务器,rmi 和 ldap 协议都是基于 TCP 传输的,那么我们可以直接使用 .NET 监听一个 TCP 端口,如果调用 log4j2 打印日志会访问 .NET 的监听的端口,就证明可能存在漏洞,如果没有访问,就证明安全。

.NET 生成的测试程序非常小 6kb,代码如下:

尝试使用 log4j 组件 2.14.0 版本执行打印,效果图如下:

尝试将 log4j 组件升级成 2.15.0 版本,再次执行,效果图如下:

升级版本后,发现调用打印日志后,Java 程序没有再访问外部端口。

有兴趣的朋友,可以参考如下链接复现漏洞,调起计算器。

https://github.com/ilsubyeega/log4j2-exploits
https://github.com/tangxiaofeng7/CVE-2021-44228-Apache-Log4j-Rce

.NET 程序测试 Java 项目 log4j2 是否存在远程代码执行漏洞相关推荐

  1. 突发,Log4j2 爆出远程代码执行漏洞,各大厂纷纷中招!

    今日推荐 这 9 个 Java 开源项目 yyds,你知道几个?阿里技术专家推荐的20本书,免费送!K8S 部署 SpringBoot 项目(一篇够用)妙用Java 8中的 Function接口 消灭 ...

  2. 快速修复 Log4j2 远程代码执行漏洞步骤

    点击关注公众号,实用技术文章及时了解 来源:blog.csdn.net/weixin_48990070/ article/details/121861553 目录 漏洞说明 修复步骤 下载源码zip包 ...

  3. log4j2远程代码执行漏洞学习总结

    log4j2远程代码执行漏洞学习总结 背景 近期log4j2的漏洞闹得沸沸扬扬,在工作之余也是找了一些资料看一下相关的内容,到现在网上的总结已经很全了,B站上有各种漏洞复现,各大博客类网站关于JNDI ...

  4. 【紧急】Apache Log4j2 远程代码执行漏洞

    0x01 漏洞背景 12月9日,监测到网上披露Apache Log4j2 远程代码执行漏洞,由于Apache Log4j2某些功能存在递归解析功能,未经身份验证的攻击者通过发送特别构造的数据请求包,可 ...

  5. Apache Log4j2远程代码执行漏洞风险紧急通告,腾讯安全支持全面检测拦截

    腾讯安全注意到,一个Apache Log4j2的高危漏洞细节被公开,攻击者利用漏洞可以远程执行代码. 漏洞描述: 腾讯安全注意到,一个Apache Log4j2反序列化远程代码执行漏洞细节已被公开,L ...

  6. 最新log4j2 远程代码执行漏洞(紧急扩散)

    目录 一.问题描述 二.漏洞简介 三.临时解决方案 一.问题描述 在12月9日晚间出现了Apache Log4j2 远程代码执行漏洞攻击代码.该漏洞利用无需特殊配置,经多方验证,Apache Stru ...

  7. 公司停电,程序员去网吧写代码;iPhone 14将于北京时间9月8日发布;GitLab修复一个关键远程代码执行漏洞|极客头条...

    「极客头条」-- 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧. 整理 | 梦依丹 出品 | CSDN(ID:CSDNnews ...

  8. cve-2017-12617 tomcat远程代码执行漏洞复现测试

    0x00前情提要 Apache Tomcat团队10月3日宣布,如果配置了默认servlet,则在9.0.1(Beta),8.5.23,8.0.47和7.0.82之前的所有Tomcat版本都包含所有操 ...

  9. JAVA CGI 远程代码执行_Apache Tomcat CVE-2019-0232 远程代码执行漏洞

    2019年4月10日,Apache Tomcat报告了一个漏洞称在windows上运行的Apache Tomcat存在远程代码执行漏洞,漏洞编号为CVE-2019-0232.在Windows平台,远程 ...

最新文章

  1. mysql安装好需要优化配置一下_Mysql的安装、配置、优化
  2. 区块链概念:Hash 算法
  3. 分布式缓存的选择及问题
  4. 这次我让你彻底弄懂 RESTful
  5. 二手服务器cpu性能,二手服务器cpu当主机
  6. Navicat for mysql导入.sql数据库大小受限制
  7. Emacs之LaTeX环境配置及效果展示
  8. python 内存溢出能捕获吗_Python内存泄漏和内存溢出的解决方案
  9. mysql报错 Row size too large ( 8126)
  10. oracle kill所有plsql developer进程
  11. html 360 浏览器图片自适应,360浏览器看图模式 一键保存高清套图
  12. springboot个人博客项目面试准备
  13. buzz fizz 翻译_【Oxford-2】The Fizz-Buzz
  14. linux 虚拟钢琴程序,用Python制作简单的钢琴程序的教程
  15. 解决 Mounty显示问题:the volume my passport is not mounted currently at the specified path Please remove
  16. 为了不被裁之NVMe-MI oob
  17. amos调节变量怎么画_结构方程模型建模思路及Amos操作--调节变量效果确定(一)(满满都是骚操作)...
  18. 去中心化的区块链如何理解?
  19. matlab 网络分析仪,N5244A网络分析仪安捷伦N5244A
  20. listdir() 方法的使用

热门文章

  1. RabbitMq 安装
  2. Apache用户身份验证
  3. SimMechanics/Second Generation倒立摆模型建立及初步仿真学习
  4. 关于c#调用c编译器
  5. SQL对Xml字段的操作
  6. 如何用C#在Excel中生成图表?
  7. 使用timer控件创建一个简单的报警程序
  8. 计算机答辩答不上来怎么回答,答辩答不上来怎么办
  9. linux 脚本 写更新,用Shell写的游戏客户端更新脚本
  10. php空间限制磁盘限额,ORA-01536:超出表空间XXXX的空间限额