哪些安全措施没有太大作用
对于 log4j 2 漏洞的问题 , Web Application Firewall(WAF)之类基于网络的防御和工具可能在短期内有一定的效果 , 但通常都没有太大作用 , 而且工作量非常大 。
- 网络防御的效果不大 。 网上流传着一个梗 , 一张经过 PS 的汽车照片 , 其车牌号上包含了一条注入工具 。 这个梗的点就在于 , 开发人员都知道 , 车牌号会通过计算机视觉分析后记录到日志中 。 构成注入的数据并没有出现在网络层 。 同样 , 大多数应用程序使用数据的不同部分 , 解码数据并记录各种信息 。 任何网络工具都无法匹配足够多的模式来检测安全问题 。
- 通过观察和追踪来阻止攻击者 IP 的方法并不是特别有效 。 虽然有些团队可能会维护一张攻击者的列表 , 但 AWS IP 之所以被称为弹性 IP , 是因为这些 IP 会定期变化 , 因此 , 即便你阻止了某个 IP , 过一段时间可能就又解锁了 , 或者很快就会受到不同 IP 的攻击 。

文章图片
图:该图演示了网络层无法检测到的漏洞
系统属性和动态补丁的效果一般
有几个补丁和系统属性可以控制 log4j 2 的行为并阻止攻击 。 有时候 , 有些库无法及时更新 , 或者团队在努力更新依赖项 , 但需要一定的时间 , 在这两种情况下 , 就可以考虑这几个补丁和系统属性 。
相关的 Java 系统属性有两个:
- -Dcom.sun.jndi.rmiobject.trustURLCodebase=false
- -Dcom.sun.jndi.cosnaming.object.trustURLCodebase=false
还有一个动态的补丁 , 它可以连接到正在运行的 JVM 并给其打补丁 。 这个补丁必须在 JVM 每次启动时应用 。 虽然这两种方法有一定的作用 , 但相较而言 , 更新库更简单 。
Java 如何处理日志
Java 开发人员一般可以从多个日志系统和记录方式中进行选择 。 多年来 , 随着社区的发展 , 许多日志框架也可以协同工作了:
- System Logger(2017 年推出 , 推荐)是 JDK 9 中引入的日志系统 。 它改进了 JDK Logger 的 API , 并提供了类似于 SLF4j 的记录方式 , 可以将 JDK 的日志重定向到应用程序团队选择的日志系统 。
- JDK Logger(2004 年推出)是 Java 1.4 中引入的日志系统 。 由于 JDK 中大量使用了该日志系统 , 因此变得很流行 , 但是 API 有点蹩脚 。 虽然这个日志系统也不错 , 但不如其他框架 。
- Log4j 和 Log4j2 是社区推荐的日志系统 , 二者改进了 API , 因此开发团队可以更轻松地控制记录的内容以及各个级别的日志记录数据的方式 。
推荐阅读
- 安全|复旦教授发现400多个Android漏洞 谷“鸽”16个月后才修复
- 限制|多国拒绝禁用“杀手机器人”,潘多拉魔盒还是被打开了?
- Microsoft|Microsoft Defender获得新功能以对抗Log4j高位漏洞
- 技术|厦大研发杀毒仪“秒杀”新冠病毒
- 李均|破解特斯拉漏洞,他教马斯克如何做「安全」
- 网络|深圳高交会上“大咖”开讲,对量子计算不要捧杀也不要棒杀
- Killer|国产贝斯音源 JAC Bass Killer贝斯杀手最详细的视频教程 MZD Studios
- 贝斯|电子金属核演示 Babymetal - Megitsune Cover |野兽鼓+JAC贝斯杀手+野兽IR
- 苹果|智能手机中高端之战,vivo S12可能要杀疯了
- 电子商务|被全网封杀后网红雪梨公司线下停业 因系统出错线上严重超卖