下载本文的PDF版本 PDF

犯罪代码:网络犯罪分子的形成

托马斯·沃德洛,独立顾问
弗拉德·戈雷利克,SANA SECURITY

注意:这是一个关于恶意软件创建者及其经历的虚构故事。尽管人物是虚构的,但技术和事件是模仿许多不同恶意软件开发团体的真实活动模式。

“去赚钱!”米沙的父亲吼道。“你把所有时间都花在一个愚蠢的比赛上,结果得到了什么?什么都没有!你没有工作,甚至没有赢!你需要停止玩愚蠢的电脑游戏,去赚点钱!”

在世界编程奥林匹克竞赛中获得亚军本应足以让他获得面试机会,但在萨拉托夫没有人招聘程序员。没有工作,就没有面试机会。厌倦了思考这个问题,米沙把更多的时间花在了游戏上。他不满足于仅仅玩游戏,而是利用他的编程技能来检查软件,看看它是如何工作的。有一天,他发现了一款最流行的多人游戏中的一个漏洞,并看到了如何利用它来为自己谋利。他编写了一个小程序,使他能够在游戏中获得特权和权力,并迅速成为那个世界中不可忽视的力量。感觉很好,但他很聪明,没有简单地吹嘘它。他登录了一些内部游戏论坛,并出售了他的程序。

即使是这些简单的交易类型也需要匿名性。米沙设置了一个私人电子邮件和一个在Aurum上的账户,这是一个以黄金为后盾的匿名交易系统,用来收款。他没有等多久就有人回应了。其中一位买家,网名为Les0p0val,对米沙的程序印象特别深刻。他要求米沙做一些“定制”工作,“报酬丰厚”。通过这些互动,不可能知道这些人身在何处。为了保护自己,米沙确保他所有的对话都用俄语——这样他就只需要担心一套法律。

定制工作相当简单。构建一个可以通过IRC消息控制的下载器。正确的命令,经过适当的加密,将激活程序并从互联网上的任何URL下载文件。Les0p0val对结果以及米沙交付的速度印象深刻。米沙的父亲对这笔钱印象深刻,这个事实暗自逗乐了米沙,因为他父亲看到的只是他实际收入的一小部分。

Les0p0val把他指向一个IRC频道,带着一丝诡笑发消息说:“我希望你能跟上!”米沙很快就明白了他的意思。对话快速而激烈,充满了神秘的缩写和当地俚语。很明显,所有参与者都是在萨拉托夫出生和长大的。没有人能听懂他们在说什么!

IRC频道上的人是各种软件和服务的开发者。最初,他并不了解软件的用途,但很快他就意识到这都是关于获取个人信息的。讨论的技术与他在学校高级课程中看到的一样复杂。IRC上的一些人显然拥有强大的计算机科学和数学基础;他们用一些理论基础来阐述问题和解决方案。他们谈论了逃避检测和响应时间。一些代码被编写成在内核中运行,以避免检测。

一旦米沙发布了足够的消息来确立他的信誉,他就开始收到其他发帖者的消息。他学到了很多东西,很快就成为几种技术的权威。

Les0p0val给米沙安排了越来越多的工作。他甚至开始解释软件是如何被使用的,并让米沙弄清楚如何构建它,而不仅仅是给他详细的委托。米沙的教育派上了用场。他将软件分解成模块,并为不同的订单重新组合它们。但是工作量增加了,很明显,这已经超出了一个人能处理的范围。米沙拉了几个学校的朋友进来。

斯拉瓦在他的椅子上坐立不安。米沙只是静静地坐着,抽着烟。过了一会儿,迪马端着一托盘饮料回来了。米沙把饮料递给他们,说:“为我们的小组干杯,我的朋友们!愿我们的项目超出我们的预期。”酒吧里挤满了人,但他们的角落桌子离其他人足够远,以至于难以窃听。米沙喝光了杯子,把它摔在桌子上。他们开始计划——谁来编写哪些组件,如何将它们组合在一起,如何出售它,以及谁会购买它。更多的饮料来了。谈话变得越来越激动,这引起了酒吧另一端一群女孩的注意,当这些家伙注意到这一点时,晚上的主题很快从编码转向了其他事情。

做生意的成本

米沙的父亲绕着汽车走了一圈,检查着它,不放过任何一个角落。这是一辆美国车,一辆光亮的黑色吉普大切诺基,这是米沙的父亲见过的最大的汽车。“付清了吗?”他怀疑地问道。“现金,”米沙得意地笑了笑。“所有这一切,都是玩电脑游戏赚来的……”他的父亲摇着头,难以置信地说。他才刚刚开始怀疑他的儿子到底在做什么。他曾经读到一篇关于xakeps或计算机黑客的报纸文章,西方人就是这样称呼他们的。有些人称他们为罪犯,但正如他的叔叔常说的那样:“如果没被抓住,你就不是小偷!”

那天晚上晚些时候,米沙的父亲在街角的啤酒摊上向他的朋友们炫耀。他告诉他们他儿子的新车,以及他仅仅通过玩电脑就赚了这么多钱。不像过去的日子,一个男人必须努力工作才能养家糊口,汽车对于一个工人来说是遥不可及的梦想。

他们谁也没有注意到站在附近的那个人,他敏锐的耳朵捕捉到了每一个字。

凌晨3点,有人敲门。当米沙打开门时,他被人击倒在地,感到膝盖压在他的脖子上,手臂被扭到背后。他只能看到脚在他的公寓里走动,听到设备破碎的声音。

当地的民兵站是沉闷的蓝色,散发着呕吐物和尿液的味道。检查员说:“我的孩子们只是对你的设备有点过分,你知道的。你知道你不能在没有适当授权的情况下在家里经营‘计算机’业务。我们都是通情达理的人,我们可以合作。”米沙在发抖。检查员继续说道:“不如你回家好好睡一觉——我们知道在哪里找到你。”

早上,在调查了“突袭”造成的破坏后,米沙给Les0p0val发了一条消息。回复简短而简单:“付钱给他们——这只是做生意的成本。” 扩展业务

“保证?你想要保证?”米沙皱着眉头看着屏幕。他通过IRC与kru5h3r的谈判一直进展顺利,直到现在。Kru5h3r想要一个全功能的rootkit,他可以分发它来构建一个僵尸网络。他愿意付钱,但他不希望他的投资付诸东流,如果他的rootkit签名被流行的入侵检测软件发现的话。

“没有人会提供保证,”米沙心想,但当他正要输入回复时,有什么东西让他停了下来。

“没错……我们向他们提供保险!”米沙咧嘴一笑。斯拉瓦难以置信地看着他。“当然,他们为定制rootkit付费,但每月只需额外支付一点费用,我们就为他们提供免受签名数据库攻击的保护。如果他们的工具包被发现并标记,我们将给他们另一个功能相同但与已知签名不匹配的工具包。他们通过Aurum向我们支付订阅费,所以一切都保持匿名。”

后来,他们会发现他们的“保险政策”最好的部分是,他们的rootkit很少被发现,频率足够让人们支付保险费,但又不会频繁到需要经常更换它们。

需求正在增加,远远超出了米沙和他的朋友们满足能力。随着垃圾邮件和网络钓鱼的蓬勃发展,似乎俄罗斯的每个xakep团队和自由职业者都想访问他们的僵尸网络,或者想购买软件来帮助建立自己的僵尸网络。是时候扩展业务了。米沙开始在各种133t论坛上散布消息,很快就聚集了一批准备与他合作的程序员。他将一些核心模块,特别是加密模块,保留为他原始团队的专有模块,以便他能够控制结果。

他通过浏览论坛和利用他的人脉关系来寻找程序员,寻找他可以培养的人才。“脚本小子”,即那些可以使用他人创建的漏洞的人,当然在网上随处可见,但米沙和他的团队对他们只有蔑视。真正的钱在于组织。这不是为了吹嘘或在同龄人眼中看起来很酷。这一切都是为了钱。

生意很好。米沙早就搬出了民兵突袭的小公寓,搬进了一套更加豪华的公寓。他有最好的酒,时髦的衣服,一辆让他的朋友们羡慕的好车,最重要的是,还有美女的关注。他的生活方式并非没有问题,当然也并非没有开销。如果他的父亲知道他每个月要付给民兵多少钱以避免再次突袭,知道保持斯拉瓦和迪马以及公寓门卫和女佣的忠诚度要花多少钱,他一定会震惊的。但是米沙寄给家里的钱,虽然与其他开销相比微不足道,但足以让他的家人安全地远离他的生意。

最近,另一项开销悄然出现,那是米沙藏在书架后面的一种白色粉末。起初,只是为了那些女孩,但偶尔他自己也会享用。那些时候越来越频繁,这是一个他自己也无法真正承认的事实。

背叛

xakep IRC频道上的一个消息引起了米沙的注意。它来自一个名为tachka的僵尸网络牧人,他提供一项服务,以相当于500美元的价格向俄罗斯的每个电子邮件地址发送邮件。tachka的推销方式让他感到有些熟悉。

米沙把自己的想法放在心里,使用了他多年来精心制作的众多假名IRC账户之一,试图联系tachka。最终他成功了,并与他建立了对话。tachka显然是俄罗斯人,可能和他米沙一样来自萨拉托夫。与他发消息就像与他家附近的老朋友交谈一样,这一事实让米沙比安慰他更担心。

tachka的僵尸网络能做的事情也出奇地熟悉。米沙在互联网上建立了一个由被捕获的机器组成的小网络,以查看他的新朋友是否可以用他的代码感染它们。通过另一个假名,他在一个他知道tachka经常光顾的留言板上随意提到了这个网络。

Tachka上钩了,证据确凿。tachka的僵尸网络中的代码包含米沙保留的几个专有模块,这些模块被改编用于这个新目的。只有斯拉瓦和迪马可以访问该代码。他信任了他的合伙人,现在他被背叛了。

他立即开始将他的文件备份到他可以轻松隐藏的闪存模块中。他还开始与tachka进行一系列消息交流,随意询问他的代码库。经过几天的交流,他确信神秘的tachka实际上是他的老朋友迪马。他没有亲自对迪马说什么,但他举止中的某些东西一定让他露馅了。迪马的电话断线了,他停止回复消息或电子邮件,并且在他通常的聚会场所也找不到他了。更令人担忧的是斯拉瓦和Les0p0val的同时失踪。

他们的僵尸网络战争已经足够血腥了,至少在虚拟意义上是这样。它造成了足够的破坏,以至于在世界各地引发了几则新闻报道。米沙试图夺取该组织僵尸网络的唯一控制权的尝试最初是成功的,但他没有考虑到斯拉瓦和迪马精心隐藏在代码中的后门访问。他通过发布几个他自己一直在玩的病毒来反击,这些病毒摧毁了他的前合伙人拥有的相当多的机器,以及全球数千台其他机器。

这引起了操作系统供应商的注意,他们在一个月后发布了一个补丁来关闭涉及的关键漏洞。该补丁在短期内几乎没有效果,因为大多数人一开始都懒得安装它,等到他们安装时,战争已经基本结束了。该组织的主要资产,缓冲区溢出代码和漏洞利用库,加密tricklers和庞大的僵尸网络,以及他们的声誉,都暴露无遗,一片狼藉。

“这只是生意,米什卡,”斯拉瓦说。酒吧里挤满了人,这就是为什么选择这里作为这次会面的地点。他们站得很近,所以没有人能听到他们的谈话。“你对我们越来越疯狂了。我们不得不保护自己,”他直接对着米沙的耳朵说。

“疯狂?你想看看什么是疯狂吗?”米沙嘶嘶地说回去。

“我们想继续前进,”斯拉瓦平静地说,啜饮着他的饮料。“如果你愿意,我们可以继续玩这个游戏,但Les0p0val说要告诉你,从现在开始,如果你想玩,那就来真的。”他从衬衫口袋里掏出一张小照片,是米沙的小妹妹在玩耍。很明显,摄影师已经能够非常靠近这个女孩。照片的含义和斯拉瓦冷冷的微笑都很清楚。如果Les0p0val的朋友选择再次拜访她,他们可以而且会做更多的事情,而不仅仅是拍照。

“翻过来,”斯拉瓦说。照片背面写着一个数字,以美元为单位。“Les0p0val说要告诉你:‘付钱。这只是做生意的成本。’”斯拉瓦喝完剩下的饮料,离开了酒吧。

米沙现在孤身一人,但不幸的是,他的开销几乎和他与老团队在一起时一样多,现在他的储备金几乎用完了。民兵仍然要求付款,他的家人需要越来越多的现金,他的其他女性朋友也是如此。幸运的是,他仍然控制着一些小僵尸网络,可以利用它们来工作。他很快就加入了最近在俄罗斯兴起的“卡贩”网络。有一个非常完善的基础设施,详细说明了如何通过使用他的僵尸网络进行网络钓鱼、木马,甚至古老的社会工程来获取信用卡号码。

一旦他有了信用卡号码,就有很多方法可以将它们变成钱。米沙建立了一个转运商网络——这些人会签收货物,然后将箱子国际转运到其他目的地,在那里它们可以在黑市上出售,甚至直接卖给零售商。许多转运商在美国和欧洲。米沙甚至在美国的一些报纸上刊登广告,提供“促销工作,每处理一批货物支付70-80美元;90天后享受医疗和人寿福利”。当然,转运商很少能坚持90天,然后才发现他们不会得到报酬。或者他们被抓住了。

没过多久,现金又开始涌入米沙的口袋。

绕了一圈

这些天,米沙太忙了,没时间经常玩在线游戏,但一个周末,他放纵自己进行了一整夜的游戏。当他在共享世界中移动时,他惊讶地发现另一个角色似乎非常强大,装备精良,拥有金钱和武器。他没有像学生时代那样挑战他,而是建议结盟。玩家g05ha同意了。

两人在RPG(角色扮演游戏)中开辟了一条道路,米沙注意到他的伙伴在战斗中很少受到太多伤害。他给g05ha发消息询问此事,那个男孩回答说,他已经弄清楚如何在游戏中破解作弊码来给自己优势。他主动提出与米沙分享一些。

“我有一个更好的主意,”他回复道。“你愿意为我做一些编程项目吗?”

米沙要求g05ha为他解决一个问题,特别是如何发布到受验证码保护的网站。理论上,验证码是一种区分人和计算机程序的方法。它显示一些文本的扭曲图像,并要求人们输入在那里看到的文本。其想法是,即使是复杂的计算机视觉系统也无法读取扭曲的文本,只有人才能做到。如果连接到网站的实体可以读取验证码文本,则该实体一定是人。

“你是如何解决验证码的?”米沙问道。

“很简单,”g05ha回复道。“我建立了一个色情网站。它每小时吸引数百名访客。每天都在增加。你想看一些图片,就解决一个验证码!其中一些来自我想登录的网站……”

米沙读完回复后吹了一声口哨,心想这个男孩前途无量。是时候给他另一个项目了……

托马斯·A·沃德洛是一位网络和计算机安全顾问,也是《网络安全过程》(Addison-Wesley Professional,2000年)的作者。

弗拉德·戈雷利克是Sana Security的首席技术官,在过去的几年里,他一直领导该公司努力创建技术来对抗恶意软件。他在软件技术和计算机安全领域拥有多项专利和专利申请。

黑客术语

133t, 1337, leet: 游戏玩家和黑客使用的数字和字母的俚语组合。通常被称为leet语,其中leet的意思是精英。Leet语存在于多种语言中,包括英语、俄语和中文。基本原则是替换某些字母和声音——例如,用ph代替f,如phishing,或用数字代替相似的字母(3代替e,4代替a,5代替s,7代替t等)。

网络钓鱼 (Phishing): 一种电子邮件欺诈形式,攻击者生成看似来自合法企业的电子邮件,要求用户登录或提供某些信息,方法是将他们定向到收集用户数据的虚假网站。许多网络钓鱼电子邮件是由垃圾邮件机器人生成的,垃圾邮件机器人是发送电子邮件的机器人分布式网络。

机器人 (Bot): 一种恶意软件,旨在执行其所有者的远程命令。机器人通常在
受感染的机器上运行,并使用其资源代表其控制者执行任务。机器人通常通过标准通信协议(如IRC(互联网中继聊天)或IM)进行控制。

僵尸网络 (Botnet): 一个机器人网络。这些网络可以增长到包含数十万台机器。僵尸网络可以从所有者那里租用以执行特定任务。一些最常见的例子是垃圾邮件分发和分布式DOS(拒绝服务)攻击。

僵尸网络牧人 (Bot herder): 控制和管理机器人网络的人。

下载器,trickler: 恶意软件的一个组件,它从Web上的某个位置获取其他恶意软件到一台机器上。如果在恶意软件删除期间未从机器中删除下载器或trickler,则很可能相同或新的恶意软件会重新出现在机器上。Trickler也用于定期更新恶意软件,以获得“更好”和更新的版本。

Rootkit: 一种旨在隐藏机器上恶意软件(或其他程序)存在的软件。Rootkit可以隐藏进程、文件、注册表设置,甚至网络连接。现代rootkit使用内核级组件来拦截系统调用或直接操作内核结构,以使资源不可见。

IRC(互联网中继聊天)(Internet Relay Chat): 一个对等网络,多人或计算机可以连接到同一频道并发送和接收文本消息。

Aurum: 一种以黄金为后盾的网络支付方式的化名。它为进行的交易提供高度匿名性。存在几种此类系统的真实示例,并用于匿名、类似现金、不可逆转的交易。

Xakep: 俄语中黑客的单词。

民兵 (Militia): 俄罗斯的当地执法部门。

漏洞利用 (Exploit), sploit: 一种利用系统弱点的黑客行为,通常在软件中(例如,编程错误)。

缓冲区溢出 (Buffer overflow): 一种漏洞利用,它使用未检查的缓冲区或字符串操作来插入新代码并通过控制权传递给正在运行的进程。这是最常见的漏洞利用类型。

卡贩 (Carders): 窃取和货币化信用卡信息的人。

转运商 (Reshippers): 被雇用接收用被盗信用卡购买的商品并将其转发到另一个地点的人。大多数转运商并不知道他们实际上在做任何非法的事情。他们通常通过“在家工作”广告被雇用,并通过网络或电子邮件与雇主沟通。一些转运商也被要求使用他们的个人银行账户作为资金转移的暂存区。在他们雇佣期结束时,转运商的身份也经常被盗。

acmqueue

最初发表于 Queue 第 4 卷,第 9 期
数字图书馆 中评论本文





更多相关文章

保罗·维克西 - 要么静态,要么回家
当前和历史上计算机和网络安全中的大多数问题都归结为一个简单的观察:让其他人控制我们的设备对我们不利。在另一个时间,我将解释我所说的“其他人”和“不利”是什么意思。就本文而言,我将完全专注于我所说的控制是什么意思。我们失去对设备控制的一种方式是外部分布式拒绝服务 (DDoS) 攻击,它用不需要的流量填充网络,为真实的(“需要的”)流量留出空间。其他形式的 DDoS 类似:例如,低轨道离子炮 (LOIC) 的攻击可能不会完全填满网络,但它可以使 Web 服务器忙于回答无用的攻击请求,以至于服务器无法回答任何有用的客户请求。


阿克塞尔·阿恩巴克、哈迪·阿斯加里、米歇尔·范·埃滕、尼科·范·艾克 - HTTPS 市场中的安全崩溃
HTTPS(超文本传输协议安全)已发展成为安全 Web 浏览的事实标准。通过基于证书的身份验证协议,Web 服务和互联网用户首先使用 TLS/SSL 证书相互验证身份(“握手”),端到端加密 Web 通信,并在浏览器中显示挂锁以指示通信是安全的。近年来,HTTPS 已成为保护在线社会、政治和经济活动的重要技术。


莎伦·戈德伯格 - 为什么保护互联网路由需要这么长时间?
BGP(边界网关协议)是将互联网粘合在一起的粘合剂,使不同组织运营的大型网络之间能够进行数据通信。BGP 通过为组织之间的流量设置路由来使互联网通信全球化——例如,从波士顿大学的网络,通过更大的 ISP(互联网服务提供商),如 Level3、巴基斯坦电信和中国电信,然后到住宅网络,如 Comcast 或企业网络,如美国银行。


本·劳里 - 证书透明度
2011 年 8 月 28 日,一个错误颁发的 google.com 通配符 HTTPS 证书被用于对伊朗的多个用户进行中间人攻击。该证书由一家名为 DigiNotar 的荷兰 CA(证书颁发机构)颁发,DigiNotar 是 VASCO Data Security International 的子公司。后来的分析表明,DigiNotar 早在一个多月前(至少从 7 月 19 日起)就意识到了其系统中的漏洞。它还表明,至少已颁发了 531 个欺诈性证书。最终计数可能永远不会知道,因为 DigiNotar 没有所有错误颁发的证书的记录。





© 保留所有权利。

© . All rights reserved.