黑客|让全世界大厂都手忙脚乱的代码漏洞,是怎么一步步成为噩梦的?( 二 )



黑客|让全世界大厂都手忙脚乱的代码漏洞,是怎么一步步成为噩梦的?
文章图片

咳咳 , 扯远了 。。。
说回这次的漏洞 , 最可怕的地方在于实现起来没什么门槛 , 只要用一串简单的字符 , 就能轻易攻破服务器 , 并在上面运行各种代码 。。。
这别说是窃取个人信息了 , 黑客想要远程挟持、瘫痪企业级的服务器 , 那也是毫无阻碍 。
那黑客到底是怎么样利用漏洞 , 用几串字符就轻松攻破服务器的呢?

黑客|让全世界大厂都手忙脚乱的代码漏洞,是怎么一步步成为噩梦的?
文章图片

要整明白这个问题 , 我们得先搞清楚啥是日志 。
众所周知啊 , 程序员在敲完一段代码之后 , 肯定不可能马上拿来用 , 而要通过反复的测试来验证代码的可行性 。

黑客|让全世界大厂都手忙脚乱的代码漏洞,是怎么一步步成为噩梦的?
文章图片

但代码本身在跑的时候 , 处于一个黑箱状态 , 如果放任它瞎跑的话 , 跑到一半卡住 , 根本不知道是错在哪一步上 。
这就好像是做数学题时候如果没草稿纸 , 在心里算总是没个底 。
这时候 , 日志的作用就体现出来了 , 它就好像是一大张草稿纸 , 能在上面做任何你自己看的懂得步骤和标记 , 方便随时随地验算 。
本质上日志是程序员们经常使用的一个工具 , 它把代码在测试过程中的每一步都给记录下来 , 跑完再回头 Debug 的时候 , 就很有针对性 , 效率也高 。

黑客|让全世界大厂都手忙脚乱的代码漏洞,是怎么一步步成为噩梦的?
文章图片

而 Log4J2, 就是这么一个开源的日志框架 , 它里面整合了不少在修改代码时会用到的常用功能 , 比如 日志管理、输出变量等实用功能 。

黑客|让全世界大厂都手忙脚乱的代码漏洞,是怎么一步步成为噩梦的?
文章图片

这次的高危漏洞就是源于 Log4J2 中一个叫 Lookups 的功能 。
从字面上理解 , 这个功能就是一个用来搜索内容的接口 , 想要搜些啥 , 那就要靠代码去实现了 。

黑客|让全世界大厂都手忙脚乱的代码漏洞,是怎么一步步成为噩梦的?
文章图片

Log4J2 也在 Lookups 的功能下 , 提供了不少实现的途径 , 问题就出在这个叫 JNDI 的途径上 。

黑客|让全世界大厂都手忙脚乱的代码漏洞,是怎么一步步成为噩梦的?
文章图片

JNDI 被 Java 允许通过远程连接的方式来加载文件 , 这个远程地址可以是开发者自己的服务器 , 也可以是外界的服务器 。

黑客|让全世界大厂都手忙脚乱的代码漏洞,是怎么一步步成为噩梦的?

推荐阅读