Java 安全:如果你不是作弊的,你就不是在尝试
快速阅读: 据《Cyber Scoop 独家新闻》称,网络安全领域缺乏明确规则,导致防御者常处被动。Java作为关键应用支柱,面临巨大攻击风险。传统防御系统难以应对新型威胁,如软件依赖和运行时漏洞。防御者需采用新方法,自动化实时防护,改变现有规则,提前中和威胁。唯有创新才能在竞争中占据优势。
大多数行业都有自己的规则。在体育中,有裁判。在商业中,有法规。在政府中,有罗伯特议事规则。网络安全与众不同。虽然有法规,但这些法规并不限制我们能防御到何种程度。它们侧重于合规性、漏洞报告和风险管理,而不是规定我们用来阻止攻击者的策略。与此同时,攻击者不受任何此类约束。当然,黑客行为是违法的,但如果对手把规则手册扔掉并操纵游戏,那么交战规则就无关紧要了。攻击者没有行为准则来告诉他们不能自动化侦察、利用零日漏洞或在圣诞节凌晨三点攻击关键系统。他们不会等待合规检查或预算审批。他们不按我们同样的规则行事,当然也不会等着防守方赶上。这就是网络安全军备竞赛的问题所在——这是一个循环,使被动防御者始终落后于主动攻击者一步。检测、开发补丁、部署补丁、重复。我们总是在应对上一次威胁时,而攻击者已经转向下一个目标。
即使红队也需要遵循一些规则。红队的职责是比攻击者更早发现漏洞,但也有一些业务功能是他们绝对不允许干涉的。防御者需要采取主动——领先于游戏并打破这个循环。这意味着找到作弊的方法——用解决方案在威胁被利用之前中和它们,从而在我们的优势下堆叠牌局。
网络安全军备竞赛是一场不公平的比赛。在网络安全部门,防御者必须每次都正确,而攻击者只需要有一次幸运的机会。这使得防御Java应用程序成为一项艰巨任务。Java是金融服务、企业应用和政府基础设施的支柱。它是一个巨大的攻击面,有多种途径可以访问开源库。我们无法承担如此复杂系统被动防御的风险。然而,大多数组织正是这样做的。他们的安全堆栈是为不同的时代构建的,包括防火墙、WAF和端点检测系统,旨在保护边界,而攻击者却能溜进来。软件依赖关系、错误配置和运行时行为中存在漏洞——这些都是传统防御系统从未设计来处理的东西。如果攻击者可以通过窗户爬进来,他们就不需要强行突破前门。现实世界中没有比Log4j事件更好的例子了。当Log4Shell漏洞(CVE-2021-44228)被披露时,安全团队急忙修补它,知道延迟意味着暴露于大规模利用。但是打补丁需要时间。安全团队不得不测试兼容性,等待计划中的停机时间,并确保业务连续性。仅在第一周,在野外就有超过84万次的利用尝试记录。对攻击者而言,Log4Shell如同一份礼物——数千个未修补的易受攻击系统成了他们的免费射击场。他们不需要等待团队打补丁。他们不需要处理繁琐的手续。他们只是行动。
因此,防御者需要新的方法。目标不仅仅是更快地打补丁——而是停止按照攻击者几十年来一直忽视的规则书行事。最好的防御者会研究攻击者的策略。攻击者不只是寻找已知漏洞。他们寻找机会——执行中的弱点、依赖关系、内存处理和逻辑缺陷。他们利用许多安全解决方案只用于检测而非预防的事实。最好的防御不仅是建造更高的围墙——更是彻底改变战场。攻击者假设他们会找到一个弱点,因为大多数防御只有在坏事发生后才会反应。当他们进入一个环境,攻击在开始前就失败了会发生什么?
通过从被动安全立场转变为积极安全立场,防御者可以决定交战条款,使攻击者成功变得更加困难。网络犯罪分子自动化所有步骤——扫描弱点、测试攻击、甚至发起整个攻击活动——因为他们知道手动防御速度太慢,无法阻止他们。防御者也应该这样做。不,这并不意味着只采用AI驱动的安全工具来“预测”攻击。很多安全人员(正确地)不放心让完全自主的系统在不知情的情况下更改他们的配置。但是自动化并不一定意味着AI。一种更聪明的方法是:使用在运行时中立化漏洞的不可变规则,防止它们被利用。有了正确的安全控制措施,攻击者可能会绕过防火墙,逃避检测,进入应用程序。但一旦进入,他们就会遇到一个主动与他们作对的运行时环境——一个自动中和攻击、阻止恶意代码执行、防止内存破坏攻击而无需补丁、停机或人工干预的环境。这不仅是一层额外的防御。它是一个陷阱,设计成在攻击者行动的那一刻使他们的努力失效。
以《星际迷航II:可汗怒吼》为例。在电影中,企业号飞船因为假定接近的星舰Reliant是友好的而措手不及。可汗利用这种虚假的安全感,在柯克和他的船员反应过来之前发动了一场毁灭性的攻击。网络攻击也是这样——直到为时已晚才显得合法。攻击者并不总是强行突破防御;他们悄然潜入,利用信任和预期的行为。恶意请求可能看起来像常规API调用,小小的内存覆盖可能导致整个系统的妥协,依赖关系更新可能引入未被注意到的后门。如果防御者只在出问题后才做出反应,他们就是在玩可汗的游戏——在真正的战斗开始之前就被击败了。
赢得胜利的关键不仅仅在于检测攻击。而是在设计环境中,使攻击本身永远不起作用。在游戏改变你之前,先改变游戏。Java安全在过去二十年里一直在防守——打补丁、过滤输入、监控可疑活动。它并不是为现代威胁设计的。用过去二十年的方式防御Java应用程序是注定失败的战略。世界已经变了。攻击者已经进化了。是时候让安全措施也进化了。网络犯罪分子不按规矩出牌。他们自动化侦察,立即武器化漏洞,并且比防御者更快地调整战术。所以不要按规矩出牌。重写规则。自动化。作弊。因为在网络安全领域,唯一获胜的方式就是让自己占据优势。毕竟,谁会阻止你呢?
道格·恩尼斯是Waratek公司的首席执行官,该公司在保护Java应用程序方面处于领先地位。
(以上内容均由Ai生成)