本文来自嘶吼网,作者/布加迪。
近些年来,Rust编程语言因诸多优点而越来越受欢迎,包括高级控制、内存安全性和灵活性等优点。然而,虽然这些特性使Rust成为开发人员手里的一种强大工具,但也使其成为网络犯罪分子眼里的一种诱人语言。这篇博文将探讨这种语言的阴暗面以及为什么网络犯罪分子日益将其用于恶意目的。
Rust这种系统编程语言旨在提供针对系统资源的低级控制,同时确保内存安全性。这使得它成为一种功能强大的语言,适用于开发需要对系统资源(比如操作系统、网络协议和设备驱动程序)进行严加控制的高性能应用程序。
Rust编程语言的历史
Rust编程语言最初是在2010年由Mozilla引入的,当时只是Mozilla员工Graydon Hoare的个人项目。这种语言的初衷是创建一种有望提供比C和C++等现有语言更好的内存安全性和并发性的语言。其语法深受C和C++的影响,但也结合了其他编程语言的功能,比如Haskell和ML。Rust的开发由贡献者社区推动,并在2012年开放了源代码。
Rust迅速流行起来,它在2016年、2017年和2018年的Stack Overflow开发者调查中均被列为人们偏爱使用的编程语言。它已被用于从网页开发到游戏开发的众多项目,并已被微软、谷歌和Dropbox之类的大公司采用。Rust的成功可以归因于专注于性能、安全性、并发性以及活跃的支持性社区。
Rust被用于恶意目的的例子
Rust越来越多地被网络犯罪分子用来开发众多恶意应用程序。以下是基于Rust的攻击的几个例子:
1.恶意软件开发——Rust为网络犯罪分子提供了开发恶意软件的一种强大工具。Rust的低级控制和内存安全特性使其成为开发隐秘且复杂的恶意软件的理想语言,这些恶意软件可以逃避传统安全措施的检测。
2.僵尸网络——网络犯罪分子正在使用Rust开发僵尸网络,僵尸网络是由受攻击计算机组成的网络,可用于各种恶意目的,包括发送垃圾邮件、实施分布式拒绝服务(DDoS)攻击和挖掘加密货币。Rust的高级控制和灵活性使其成为开发僵尸网络的理想语言,这些僵尸网络可以逃避安全措施的检测。
3.网络钓鱼攻击——Rust可以用来开发复杂的网络钓鱼攻击,可以诱骗用户泄露其个人信息。Rust的易用性和灵活性使其成为开发网络钓鱼工具的理想语言,这类工具可加以定制,以便攻击特定的用户和平台。
4.加密货币挖掘攻击——网络犯罪分子使用Rust开发恶意软件,从而劫持受害者的计算机来挖掘加密货币。Rust的高级控制和内存安全特性使其成为开发隐秘且复杂的加密货币挖掘恶意软件的理想语言。
5.勒索软件攻击——Rust可用于开发复杂的勒索软件攻击,从而加密受害者的数据并要求支付赎金,以换取解锁加密数据的密钥。Rust的低级控制和内存安全特性使得安全研究人员很难检测和消除用Rust开发的勒索软件攻击。
哪些勒索软件组织使用Rust?
用Rust编写的勒索软件持续了整个2022年,2021年底出现的BlackCat组织就采用了这种恶意软件。美国联邦调查局(FBI)分析BlackCat后认为,该组织的高成功率归因于他们使用用Rust编写的勒索软件种类。
BlackCat
它也被称为ALPHV,自从出现以来,SOCRadar已记录的受害者有200多个。这是第一个用Rust开发的勒索软件,也是攻击次数最多的。BlackCat使用RaaS模式。然而,为了在网络犯罪市场中脱颖而出,他们改变了商业模式,对使用其版本进行的攻击提供最高90%的奖励。
Hive
自2021年以来,基于RaaS的Hive勒索软件一直在肆虐。在2022年,它们以第二种Rust恶意软件的面目示人,在其泄露网站上披露了200多个受害者。
然而,Hive勒索软件组织已备受关注。外国执法官员曾在2023年1月成功地端掉了至少两个泄露网站。
Luna
卡巴斯基的研究人员发现了Luna勒索软件。勒索软件组织面向在暗网上说俄语的加盟组织推广Luna。该恶意软件于2022年7月被确认是用Rust编写的恶意软件之一,可以感染所有Windows ESXi和Linux计算机。Luna结合采用了x25519加密和AES加密,进一步加大了逆向工程的难度。
RansomwareExx
RansomwareExx2变种是RansomwareExx家族的成员,于2022年最后几个月被发现。这个恶意软件再次证明了用其他语言编写的变种具有的危险性,因为在最初检测后的两周,VirusTotal的结果都没有将其识别为是有害的恶意软件。
Agenda
研究人员发现,在2022年最后一个月转而采用Rust的组织是Agenda或Qilin组织。它们之前是用Go编写的变种,针对每个受害者量身定制。该组织采用了RaaS模式,对许多国家和行业发动了勒索软件攻击。由Go改为Rust导致了逆向工程更具挑战性,而且检测率比Go变种更低。
网络犯罪分子钟情Rust编程语言的原因
一种名为Rust的比较新的编程语言由于其速度、可靠性和内存安全特性而在开发人员中越来越受欢迎。然而,网络犯罪分子也注意到了Rust在创建恶意软件及其他恶意工具方面具有的潜力。
Rust的内存安全特性使得黑客很难利用内存漏洞,这是一种用于控制系统的常用策略。然而,同样这项特性也使黑客更容易创建难以检测和删除的恶意软件。
Rust的速度和性能使其成为开发可以快速跨网络传播并感染多个系统的恶意软件的一种诱人的选择。它还便于黑客创建更复杂的攻击,规避传统的安全措施。
Rust的开源特性及其不断扩大的开发者社区也为网络犯罪分子提供了轻松访问代码库和资源的机会,这些代码库和资源可用于开发新的、更危险的攻击。
虽然Rust本身并不是恶意的,但它的特性和日益流行使其成为网络犯罪分子的重要工具。随着开发人员继续探究Rust的潜力,安全社区需要保持警惕,并开发新的策略来检测和缓解基于Rust的攻击。
Rust和网络犯罪的未来
Rust在开发人员当中越来越受欢迎,这意味着它也可能成为越来越受网络犯罪分子欢迎的语言。随着Rust越来越受欢迎,可以预料会出现更复杂更隐秘的基于Rust的攻击。
然而,Rust的日益普及也意味着它可能会成为网络安全专业人员的首选语言。随着更多的网络安全专业人员熟悉Rust及其特性,我们预计会看到开发出新的工具和技术来检测和缓解基于Rust的威胁。
值得注意的是,Rust本身并不是天生就是恶意的。像任何编程语言一样,它是一种工具,既可以用于正道,也可以用于歪道。Rust开发人员有责任通过设计安全可靠的应用程序来防止被滥用。
结论
Rust是一种功能强大的编程语言,越来越多地被网络犯罪分子用于恶意目的。其高级控制、内存安全性和灵活性使其成为开发隐秘且复杂的恶意软件、僵尸网络、网络钓鱼攻击、加密货币挖掘恶意软件和勒索软件攻击的理想语言。
将Rust用于恶意目的给网络安全专业人员带来了几个挑战,包括Rust固有的安全特性、与安全工具的兼容性、检测基于Rust的攻击的难度,以及需要专门的技能和知识来防御基于Rust的威胁。
然而,Rust的日益普及也意味着它很可能成为网络安全专业人员的首选语言。随着更多的网络安全专业人员熟悉Rust及其特性,我们预计会看到开发出新的工具和技术来检测和缓解基于Rust的威胁。
本文翻译自:https://informationsecuritybuzz.com/cybercriminals-love-rust-programming/