Apache Log4j2 远程代码执行漏洞分析+检测+防护

分析:
Apache Log4j2是一款开源的Java日志框架,被广泛地应用在中间件、开发框架与Web应用中,用来记录日志信息。由于Apache Log4j2某些功能存在递归解析功能,未经身份验证的攻击者通过发送特别构造的数据请求包,可在目标服务器上执行任意代码。漏洞PoC已在网上公开,默认配置即可进行利用,该漏洞影响范围极广,建议相关用户尽快采取措施进行排查与防护。

根据Iog4j的用途和复现的情况来看,攻击入口取决于Iog4j从线上业务的哪些地方取数据放入 logger.error,所以没有固定请求路径。另外由于线上web业务的任何数据都可能写入Iog4j,甚 至一些pre-auth的地方,比如注册、登录,所以这个漏洞的影响可能会被放大到未授权命令执行。  

检测:
人工检测

1、相关用户可根据Java jar解压后是否存在org/apache/logging/log4j相关路径结构,判断是否使用了存在漏洞的组件,若存在相关Java程序包,则很可能存在该漏洞。



2、若程序使用Maven打包,查看项目的pom.xml文件中是否存在下图所示的相关字段,若版本号为小于2.15.0,则存在该漏洞。



3、若程序使用gradle打包,可查看build.gradle编译配置文件,若在dependencies部分存在org.apache.logging.log4j相关字段,且版本号为小于2.15.0,则存在该漏洞。

4、检测Ivy依赖版本是否低于 2.15.0



5、 检测SBT依赖版本是否低于 2.15.0


若没有使用上述工具,那么可以全局搜索log4j的相关jar包。

受影响版本:

Apache Log4j 2.x <= 2.14.1

已知受影响应用及组件:

Apache Solr

Apache Flink

Apache Druid

srping-boot-strater-log4j2

更多组件可参考如下链接:

https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core/usages?p=1

不受影响版本:

Apache log4j-2.15.0-rc1

防护:
1、升级
目前官方已发布测试版本修复该漏洞,受影响用户可先将Apache Log4j2所有相关应用到该版本,下载链接:https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0-rc1
注:由于此版本非正式发行版,可能出现不稳定的情况,建议用户在备份数据后再进行升级。
升级供应链中已知受影响的应用及组件:Apache Solr、Apache Flink、Apache Druid、srping-boot-strater-log4j2

2、流量拦截
rulel (jndi:ldap:// rule2(jndi:rmi://
以上流量特征可能出现在流量中的任何地方,也包括各种类型的请求(GET、POST等),所以需要对 整个请求流量做特征匹配。

以上正则对业务中的正常jndi流量无影响(恶意流量须包含{jndi:rmi或{jndi:ldap,正常 业务jndi流量通常只包含rmi://、 ldap:// ),但是如果你的正常流量也包含上述特征请慎用。

3、临时防护
从官方给的信息和复现情况来看,利用手段是jndi注入无疑,jndi注入无非ldap、rmi,需要外连请 求Idap-server/exp-server,禁止外连能在一定程度上缓解,但是不能防御攻击者已控其他内部服务 器的情况。此外,JDK11.0.1、8u191、7u201、6u211或者更高版本默认是无法利用JNDI注入,网 上的一些bypas s方法也是依赖本地特定的lib(相当于找了新的gadgets),所以总结:

1、禁止使用Iog4j的服务器外连(日志服务器正常不需要外连)

 并在边界对dnslog相关域名访问进行检测。

 部分公共dnslog平台如下:

 ceye.io
 dnslog.link
 dnslog.cn
 dnslog.io
 tu4.org
 awvsscan119.autoverify.cn
 burpcollaborator.net
 s0x.cn

2、建议JDK使用11.0.1、8u191、7u201、6u211及以上的高版本

3、添加jvm启动参数:-Dlog4j2.formatMsgNoLookups=true


4、在应用classpath下添加log4j2.component.properties配置文件,文件内容为:log4j2.formatMsgNoLookups=true

5、将系统环境变量 FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS 设置为 true

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,295评论 6 512
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,928评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,682评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,209评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,237评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,965评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,586评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,487评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,016评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,136评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,271评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,948评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,619评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,139评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,252评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,598评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,267评论 2 358

推荐阅读更多精彩内容