黑客大曝光:恶意软件和Rootkit安全(txt+pdf+epub+mobi电子书下载)


发布时间:2020-05-13 09:07:12

点击下载

作者:(美)MichaelA.Davis

出版社:机械工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

黑客大曝光:恶意软件和Rootkit安全

黑客大曝光:恶意软件和Rootkit安全试读:

前言

内部威胁不再来自于“内部”

现在的每一次安全会议和研究都关注让企业安全管理员和家庭用户理解来自内部的威胁。内部威胁正在增长并且变得更加具有恶意性。内部攻击最大的3个类别是:窃取经济利益、IT蓄意破坏以及商业利益。安全专家认为用户是问题的起因,用户就是威胁。在技术上这么说是正确的,但是对于一个组织而言,实际的用户本身并不总是真正的威胁,真正的威胁是用户所拥有的角色或者访问权限。如果一位秘书具有的权限足以查看网络文件共享上的财务目录,那么感染她的机器的恶意软件也有同样的权限。

当今的恶意软件通过避开外部防护、在机器上执行程序,以及在内部用户账户中运行等手段,接管或者模拟内部角色,使恶意软件能够进行攻击、控制,并且和内部人员一样访问资源。所以在本书中,我们关注当今世界上的恶意软件的功能和所适用的技术。恶意软件是内部人员以及想要保持对这一内部角色控制权的攻击者。现在,我们关注对恶意软件威胁有效及无效的防护,最终也是对内部威胁防护的关注。不管你是家庭用户还是全球百强企业的安全团队成员,都必须要警惕。从个人和专业出发,对恶意软件保持警惕都会给你带来回报。别让你的机器成为恶意软件大军用于“借尸还魂”的又一个工具。导航

本书中,每种攻击技术都用如下的方法突出显示:

这是一个攻击图标

这个图标使得特定的恶意软件类型和方法易于识别。对每种攻击都提出了实用、合适并且实际测试过的解决方案,每种方案都有自己特殊的图标。

这是对策图标

了解修复问题和将攻击者拒之门外的方法。

·特别注意代码列表中加粗显示的用户输入。

·每种攻击都带有一个更新过的危险等级,这个等级的确定是根据作者的经验得出的3部分因素:关于网站

因为恶意软件和Rootkit不断发布,你可以在本书的网站(http://www.malware hackingexposed.com)上找到最新的工具和技术。该网站包含了本书中提到的代码片段和工具,以及附录中讨论的一些从未发布的工具。我们将保留书中提到的所有工具的一份拷贝,你甚至可以在维护者停止编写这些工具之后下载。致谢

感谢编辑Jane,她尽其所能地使本书顺利出版,尽管很多时候这看上去几乎不可能。还要感谢Savid Technologies的杰出团队,他们让我能抽出时间进行写作。——Michael A.Davis

首先,感谢编辑Jane,她给了我们很多积极的反馈和建设性的批评。这是我出版的第一本书,没有她,很多时候我都不知道该怎么办。还要感谢我的年轻朋友Tj Egan,当我的写作遇到困难而需要减轻压力时,他在Forgotten Coast游戏服务器(GO ALLIANCE)上帮[1]助我杀怪兽。我也要感谢Zac Culbertson和Cowboy Café给了我一个在写书时能进行思考的地方。没有比弗吉尼亚州的Arlington更好的地方了,在那里可以在逃离华盛顿的混乱时吃、喝并且思考。——Sean Bodmer

我希望表达对技术编辑Alex Eisen的感谢和赞赏,没有他,我就没有机会写这篇致谢。感谢Alex(直到下次合作)。我还要感谢编辑和合著者给了我这个机会,并且和我一起分担这段痛苦的创作历程。在我的母校密西西比州立大学,没有Ray Vaughn博士和其他卓越的教授的指导,也就没有我今天的成就。如果我没有提到社区中的安全研究者们在过去、现在和未来创造的价值,那是我的失职,他们充满激情的工作造就了这个行业,并且继续对网络安全边界做出新的定义。——Aaron LeMasters[1]这里指的是《魔兽世界》游戏。——译者注作者简介

Michael A.Davis

Michael A.Davis是Savid Technologies公司的CEO,该公司是一家全国性的技术和安全咨询公司。由于Michael将snort、ngrep、dsniff和honeyd这样的安全工具移植到Windows平台,因此他在开源软件安全界声名卓著。作为Honeynet[1]项目成员,他为基于Windows的honeynet(蜜罐)开发了数据和网络控制机制。Michael还是sebek for Windows的开发者,这是一种基于内核的honeynet数据收集和监控工具。Michael曾经在领先的防病毒保护和漏洞管理企业——McAfee公司担任全球威胁高级经理,领导一个研究机密审查和尖端安全的团队。在McAfee工作之前,Michael曾在Foundstone工作过。

Sean M.Bodmer,CISSP,CEH

Sean M.Bodmer是Savid Corporation公司的政府项目主管。Sean是一位活跃的honeynet研究人员,精于分析恶意软件和攻击者的特征、模式和行为。最为引人注目的是,他花费了多年的时间来领导高级入侵检测系统(honeynet)的运作和分析,这一系统能够捕捉和分析入侵者及其工具的动机和目的,从而生成对进一步保护用户网络有价值的信息。在过去的10年中,Sean已经为华盛顿特区的多个联邦政府机构和私人公司负责过各种系统安全工程。Sean在全美国的业界会议,如DEFCON、PhreakNIC、DC3、NW3C、Carnegie Mellon CERT和Pentagon安全论坛上发表过演讲,主题包括对攻击特征和攻击者的剖析,这些剖析能够帮助识别网络攻击的真正动机和意图。

Aaron LeMasters,CISSP,GCIH,CSTP

Aaron LeMasters(乔治·华盛顿大学理科硕士)是一位精通计算机取证、恶意软件分析和漏洞研究的安全研究人员。他在职业生涯的头5年用在保护不设防的国防部网络上,现在他是Raytheon SI的高级软件工程师。Aaron乐于在大的安全会议(如Black Hat)和较小的区域黑客会议(如Outerzone)上分享研究成果。他更愿意关注与Windows内部构件、系统完整性、逆向工程和恶意软件分析相关的高级研究和开发问题。他是一位热心的原型构造者,很喜欢开发增强其研究趣味性的工具。在业余时间,Aaron喜欢打篮球、画素描、摆弄他的Epiphone Les Paul电吉他,以及和妻子一起去纽约旅行。[1]Honeynet是一种学习工具,是一个包含安全缺陷的网络系统。当它受到安全威胁时,入侵信息就会被捕获并接受分析,这样就可以了解黑客的一些情况。——译者注技术编辑简介

Alexander Eisen是FormalTechnologies.com的CEO,高级科技大学(University of Advancing Technology)的副教授,还是一位公务员——国防部的企业架构师。他始终是一位打破传统的实验者,从1999年开始,他在渗透测试、企业事故响应、取证、RE和安全软件评估领域承担了所有的任务——攻击和防守、战术和战略,并获得了由美国国家安全局(NSA)主办的为计算机科学、密码学和法律等多学科研究颁发的“Information Assurance Fellowship”奖,这是对他的工作的肯定。他曾经为美国国防部和所属的组织领导过十几个主[1]要的红队和从事事故响应工作,媒体广泛报道了其中的许多次经历,例如“五角大楼1500台电脑遭到黑客攻击”。作为美国国家网络安全计划的核心成员,他曾经研究大规模企业事故响应和软件保障方法。由于他拥有国防语言学院、抵御网络犯罪中心培训学院、国际信息系统安全核准联盟((ISC)2)以及国家安全系统委员会的认证,所以是InfraGard、AFCEA、IEEE以及各种联邦顾问委员会的积极成员。他曾经在许多国际业界会议(如Black Hat Japan和乌克兰IT节以及五角大楼这样的内部会议)上发表关于新出现的安全问题的演讲,并曾经在商业杂志上发表过关于国家基础设施保护和IPv6的文章。通过执教信息安全课程并且支持高级科技大学的NSA优秀学术中心,他已经转向利用学术界的才能和资源研究开创性的社会经济学技术主题。他热心于通过服务奖学金计划(Scholarship for Service programs)招募有追求的年轻人,并且帮助他们开始职业生涯。[1]红队是政府用于对自己的系统进行攻击测试的专家组。——译者注第一部分恶意软件案例研究:请在季度会议之前进行审核

根据Symantec和GFI 2009年4月发表的最新安全研究,定制和针对性的垃圾邮件和恶意软件攻击数量再次上升。而且,由于恶意软件业界的专业化,这种代码定制已经使安全界的防护和检测率有了明显的下降。Symantec在2008年中检测出近166万种恶意代码威胁,和2007年相比有明显的上升。新的恶意代码特征码同期增长了265%。随着恶意软件制作者持续地开发代码并且确保这些代码在新的环境中工作正常,他们将会不断地调整这些恶意软件以得到最佳的投资回报(ROI)。特洛伊木马占了前50种恶意代码的将近70%,这是因为它们对于日后保持对受害机器的远程访问非常有效。通过创建新的独特恶意代码,结合从网络仿冒得到的定制电子邮件技术和对防病毒软件进行欺骗的新方法,使前述的方案成为可能。

周二下午3点20分,一家中型制造企业的管理层的十位主管收到一封伪造得很逼真的电子邮件,这封邮件似乎来自公司的CEO。这封邮件的标题为“请在我们的会议之前进行审核”,并且要求收信人保存邮件附件并且将文件扩展名从.zip改为.exe,然后运行该程序。这个程序是用于周五的季度会议的插件,对于查看会议中播放的视频来说是必需的。CEO在邮件中提到,因为邮件服务器的安全要求不允许他发送可执行文件,所以主管们必须更改该附件名。

主管们按照得到的指令运行该程序。那些存有疑问的人看到他们的同事都收到相同的邮件,于是觉得这封邮件肯定是合法的。而且,因为这封邮件在这天较晚的时候发送,有些人直到下午5点之前才收到,他们没有时间去证实CEO是否发送了这封邮件。

邮件的附件确实是一个在每台机器上安装击键记录程序的恶意软件。谁会创建这个程序?他们的动机是什么?让我们来认识这位攻击者。

我们遇到的攻击者Bob Fraudster是本地一家小公司的编程人员。他主要使用基于Web的技术(如ASP.NET)进行编程,并制作动态网页和Web应用程序来支持该公司的市场活动。因为经济衰退,Bob刚刚削减了工资,所以他决定获取一些额外的收入。Bob访问Google.com搜索bot程序和僵尸网络(botnet),因为他听说这些工具能给运作者带来许多金钱,他认为这可能是赚取额外收入的一个好的途径。在这一个月中,他加入了IRC,听取其他人的意见,并且了解到在许多在线论坛上可以订购到bot软件,这些程序能够实现单击欺诈(click fraud)并且为他带来一些收入。通过研究,Bob知道大部分防病毒软件能够发现预编译的bot程序,因此他决定获取一份源代码来编译自己的bot。Bob专门订购了一个通过HTTP上的SSL与他租赁的主机通信的bot程序,从而减少了bot出站通信被安全软件拦截的几率。因为Bot使用HTTP上的SSL,bot的所有通信流量将被加密并且能够通过大部分内容过滤技术。Bob在各种搜索引擎上注册了广告经营者(Ad Syndicator),作为广告经营者,他将在自己的网站上显示来自搜索引擎的广告轮换程序(如AdSense)的广告,对于他在网站上的每次广告单击,他可以得到一点小小的收入(几分钱)。

Bob使用一些与bot一同订购的利用程序(exploits),加上一些订购的应用程序级漏洞来入侵全世界的Web服务器。使用标准的Web开发工具,他修改了网站上的HTML或者PHP页面,载入他的广告经营用户名和密码,这样他的广告就代替了网站自己的广告。实际上,Bob强迫他所破解的网站加入广告经营,这样当用户单击这些广告时,就将把钱送给他,而不是实际的网站经营者。这种通过用户单击网站广告赚钱的方法被称为按单击付费广告(pay-per-click,PPC),是Google所有收入的来源。

接下来,Bob使用armadillo packer软件打包恶意软件,使它看上去像来自于公司CEO的一个新PowerPoint幻灯片文件。他编写一封具体的定制电子邮件,让主管们相信附件是合法的并且来自于CEO。

现在主管们必须打开这个文件。Bob大约每过30分钟就向他购买的多个小公司的电子邮件地址发送这个幻灯片的拷贝,这个拷贝实际上安装了他所制作的bot程序。因为Bob曾经做过市场工作,并且实施过一些电子邮件活动,所以知道能够从互联网上的一个公司那里很容易地购买电子邮件地址列表。互联网上可供购买的电子邮件地址多得令人惊讶,Bob将精力集中于较小的公司而不是集团公司的邮件地址,因为他知道许多企业在电子邮件网关上使用防病毒软件,他不想让防病毒软件供应商注意到他的bot。

Bob很聪明,知道许多通过IRC通信的bot程序更容易被发现,所以他购买了一个通过HTTP上的SSL与私人租赁主机通信的bot。使用定制的GET请求,这个bot程序通过向他的Web服务器发送命令和带有具体数据的控制消息来进行交互。由于Bob的bot程序通过HTTP进行通信,所以不用担心所感染的机器上运行的防火墙阻挡bot访问他所租赁的Web服务器,因为大部分防火墙都允许端口443上的出站通信。而且,他也不用担心Web内容过滤,因为传输的数据看上去是无害的。另外,当他打算窃取查看受害者公司集团的PowerPoint幻灯片的财务数据时,只需要将数据加密,这样Web过滤程序就无法看到这些数据。他没有使用大量繁殖的蠕虫来发布他的bot,因此受害者的防病毒软件没有发现这个bot的安装,因为防病毒软件没有这个bot的特征码。

这个bot程序一旦安装,就作为一个浏览器助手对象(Browser Helper Object,BHO)代替Internet Explorer,这使bot程序能访问该公司的所有常规HTTP通信和Internet Explorer的所有功能,例如HTML解析、窗口标题以及访问网页的密码字段。这是Bob的bot程序嗅探发送到公司的信用卡联盟和各种网上银行数据的方法。这个bot开始连接Bob的bot主服务器,并且从服务器上读取已入侵网站的列表,连接到这些网站开始单击广告。

bot程序接收到访问连接列表之后,就会保存这个列表并且等待受害者正常使用Internet Explorer。当受害者浏览CNN.com了解最新的银行援助行动时,bot程序访问列表中的网站寻找可单击的广告。这个bot了解广告网络的工作方式,所以它使用受害者实际查看的网站(例如CNN.com)的引用,使广告的单击看上去像是合法的。这种方法骗过了广告公司的防欺诈软件。bot单击广告并且查看了广告的登录页面之后,就转向列表中的下一个链接。这个bot使用的这种方法使广告公司的服务器中的日志看上去像是一个普通人查看了广告,这降低了Bob的广告账户被标记为欺诈者以及他自己被抓住的可能性。

为了隐藏自己并且尽可能得到更多的收入,Bob让bot程序以较慢的方式在几周内持续单击广告。这能确保受害者不会注意到计算机上额外装入的程序,Bob的bot程序也就不会被发现是个欺诈程序。

Bob成功地使公司的工作站成为自己的提款机,将现金吐到大街上,而他拎着包去捡这些钱。

Bob采用的其他隐身技术确保他的bot服务器用于查找实际数据的搜索引擎不会发现他的欺诈。为了避开检测,bot使用了各种搜索引擎(如Google、Yahoo、AskJeeves等)来实现欺诈。在欺诈方案中使用越多搜索引擎,Bob就能赚越多的钱。

Bob需要使用搜索引擎,因为这是欺诈的渠道。所单击的广告是前几个星期Bob侵入的网站上所放置的。在侵入的网站上所单击的广告只有10%来自Google,其余的来自其他来源,包括其他的搜索引擎。bot程序采用一种随机单击算法,这种算法只在半数时间中单击广告链接,使得搜索引擎公司更难发现。

使用慢速的方法并不意味着Bob需要花费很长的时间赚钱。例如,仅仅使用Google,我们假设Bob的秘密传播(例如,慢慢地传播)恶意软件感染10 000台机器;每台机器最多单击20个广告,而只在50%的时间内单击Google广告,一共单击100 000次。让我们假设Bob显示的广告每个单击产生0.5美元收入。使用这种方法,攻击者得到50 000美元收入(10 000×20×50%×$.50)。对于两周的时间来说,这项工作的价值很不错。

现在我们理解了Bob的动机和计划攻击的方法,让我们回到这个虚构的公司,分析他们如何处理恶意软件的爆发。因为Bob希望保持隐蔽,所以这个恶意软件一经运行,就通过HTTP上的SSL向中心服务器报告,并且请求和发送该公司员工输入到网站的所有用户名和密码的副本。因为Bob使用一个BHO构建bot,不管网站的密码是否加密都能捕获。包括员工的信用卡联盟和网上电子商务供应商(如eBay和Amazon.com)都记录下来,并且发送给Bob租赁的服务器。由于到租赁服务器的通信都通过HTTP上的SSL进行,这个网站不会被公司的代理服务器标记为恶意网站,也不会受到阻塞。

周三上午8点,恶意软件通过将自身发送给接收到相同的CEO信息的主管的企业地址簿上的所有用户而传播。通过利用未打补丁的机器以及IT部门尚未来得及更新的运行旧版本Microsoft Windows的机器上的网络漏洞,这个恶意软件开始感染其他机器。为什么CIO不批准网络安全团队去年提出购买和实施的补丁管理的计划呢?

周三下午4点,现在已经有几百名员工的电脑受到感染,但是IT部门也听到了需要安装电子邮件上的应用程序的消息,于是开始调查。IT部门发现这一文件可能是恶意软件,但是企业防病毒软件和电子邮件防病毒软件不能检测,所以还不能确定这个可执行文件是什么。IT部门对于这个执行程序是否恶意、程序的意图或者恶意软件的操作情况没有任何信息,他们相信安全软件供应商,将样本发送给防病毒软件供应商进行分析。

周四上午10点,IT部门急急忙忙地开始试图使用防病毒供应商前一晚上发送的特殊特征码删除这个病毒。这是个猫捉老鼠的游戏,IT部门很少能够在病毒蔓延之前采取行动。IT部门在前一个晚上关闭公司的所有工作站,包括那些架设在伦敦的、该制造公司必需的订单处理机,这使客户很不高兴。

周四晚上8点,IT部门仍然在试图为工作站杀毒。一位IT工作人员开始自己进行分析,并且发现这段二进制代码可能是一位过去的员工编写的,因为二进制代码中的一些字符串引用了前任CIO和IT部门负责人之间的一次争吵。IT部门联络FBI确定这是不是一次犯罪行动。

周五上午9点,季度会议按照计划应该开始,但是因为CEO用来作报告的机器也受到感染,在IT部门推出新的防病毒软件更新时该机器关闭着,导致病毒尚未被清除,所以会议只能推迟。CEO要求和CIO进行一次紧急会议以确定发生了什么事情。IT部门继续进行网络杀毒并且稳步推进工作。

周六上午11点,IT部门认为已经从网络上完全删除了这个恶意软件。员工们在周一将能够正常工作,但是IT部门仍然有很多工作需要做,病毒感染造成了严重的破坏,致使30台工作站必须重建,因为恶意软件还没有完全地从每台工作站上删除。

下周一下午3点,CIO与CEO会谈,给出了清除这一问题所要花费的成本估算。他们都无法弄清,实际损失的销售额或者受到影响无法正常工作的1500个工人的产出。而且,CIO告诉CEO,由于恶意软件在他们登录网上银行账户时记录击键,所以他们的身份被窃取了。这些受害的员工希望知道公司所能对他们提供的帮助。

上面这样的情况并不少见。每个案例的技术细节可能不一样,但是周一CIO和CEO的会谈内容很相似。这个制造机构中没有人预见到这种情况,但是商业杂志和每份安全报告都提到过这是难以避免的。这个案例中的主要问题是这个公司没有准备。和战争中一样,知识是成功的一半,而大部分的组织都不了解恶意软件,不了解这些软件是如何编写的,又是为什么编写的,这些组织都没有合适的策略和程序来处理bot的全面爆发。因此,在2008年,Symantec的互联网威胁报告称,一个组织因为恶意软件而产生的第二大成本是从网络删除bot程序所花费的成本。在我们的案例研究中,IT用于恢复业务运行所花费的总时间很长,而且还不包括所有因为恶意软件捕捉个人身份信息所引起的可能的通知、违规或者法律成本。第1章传染方法

当今的网络威胁比以往都更具敌意。在仿冒和垃圾邮件方面取得的新进展说明,攻击者的方法已经更趋向于心理学方面而非技术方面。现在,通过电子邮件和Web,用户成为了目标,仿冒网站看上去如此可信,使得许多人没办法看出与真实网站的不同,从而交出自己的敏感信息,例如网上银行的用户名和密码。根据McAfee的网站指南,在他们所做的间谍软件调查问卷(测试中询问受访人一个网站是否安全)中,12万名受访者中的95%错误地认为一个含有恶意软件的网站是安全的。McAfee的调查问卷是用户所面对的问题的绝好实例,他们必须一眼就能看出某些网络内容是否会对自己的机器带来负面的影响。考虑到安全意识的缺失,这个重要的决定类似于让一个4岁的孩子确定他的父亲是不是真的能从耳朵里拿出一个25美分的硬币。一旦攻击者哄骗用户下载了恶意软件,就能够随意地访问网络空间的最新边界——你的工作站,获取机密信息、用户名和密码,还有类似社会保险号码或者银行账户信息等个人身份信息。

你最后一次从当地报纸中了解到严重的病毒爆发是什么时候?两年前?病毒已经成为过去。从2004年Bagle和Netsky病毒爆发以来,蠕虫和病毒对个人用户和公司网络的威胁已经显著减少了。但是,病毒爆发的停止不是因为病毒编写者决定洗手不干,而是因为他们的主要目标——公众注意力,已经不再让他们感兴趣了。病毒编写者想要更多,比如金钱、敏感信息,以及对未授权系统的持续访问以利用这些系统资源,因此他们改变了方法、技术和工具,变得更加谨慎和针对特定目标,以适应新的动机,于是恶意软件和Rootkit的时代开始了。

恶意软件制作者的一些改变是由于安全界提升了安全军备竞赛的水平。未经证明的Microsoft操作系统远程漏洞的减少和边界安全产品的广泛使用迫使攻击者提升自己的水平。1.1 这种安全设施可能确实有用

安全工具和产品一般被看作是降低生产率和浪费资源,或者没有真正的投资回报的东西,但是因为安全是“策略”所以必须实施。许多安全产品本身没有提供价值,而且生产软件的公司的最新改进已经显著减少了漏洞的数量和类型。攻击者利用核心操作系统部件缓冲区溢出来获得远程管理权限的时代一去不复返了。现在的漏洞远比过去复杂,在代码中隐藏得很深,要找到它需要更多的技巧,而且发布的频率也比过去要低得多;发现这些漏洞需要攻击者花费更多的时间。

攻击者花费时间开发漏洞检查工具(fuzzer)和内存分析器这样的工具,用于在补丁这样的新软件发布版本公开发行时寻找漏洞。这种类型的投资需要研究经费或者大量空闲的时间,这就是许多漏洞由McAfee、iDefense和TippingPoint这样的公司发现的原因,这些公司向开发人员而不是独立的个人支付薪水,以寻找新的漏洞。[1]

恶意软件的作者不试图寻找“零日”攻击来传播恶意软件;恰恰相反,他们只是让用户相信安装的恶意软件是合法的,或者等待软件供应商发布补丁,然后对补丁进行逆向工程以开发利用程序。因为许多用户在官方补丁发布了许多天、几个月甚至好几年之后都不进行修补,所以恶意软件作者有很多的时间发布更多的恶意软件变种,感染更多的用户。1.1.1 操作系统漏洞的减少

金钱和数据不是从病毒和蠕虫转向更复杂的恶意软件和Rootkit的唯一动机。2005年以来,攻击者能够远程利用的Microsoft Windows操作系统漏洞数量急剧下降,如图1-1所示。图 1-1 2005~2008年影响客户端应用程序的高危漏洞

而且,作为世界上最大的操作系统供应商,Microsoft在其安全过程上有了巨大的进步,根据2009年IBM X-force报告(见图1-2),Windows在最脆弱系统排名中已经下降到第5位。

安全研究团体的趋势已经转为研究客户端程序漏洞,比如通过装入恶意网页而受到侵害的Web浏览器,或者当用户打开和解释Office文档时Microsoft Office所导致的入侵。Microsoft不是唯一的试图寻找自身桌面产品漏洞的供应商。像Adobe和Skype这样的公司也设立了这样的目标。这种趋势的转变有许多原因,部分原因是安全研究人员已经花费20多年时间来分析在用操作系统的漏洞,操作系统中的漏洞越来越少,研究人员希望探索具有新挑战的新边界。图 1-2 2008年最脆弱的操作系统[1]零日攻击——指在发现漏洞的同一天就进行的攻击。——译者注1.1.2 边界安全

从1999年Melissa病毒爆发以来,边界安全(perimeter security)技术已经得到了惊人的发展。1999年,大部分组织仍然苦于防火墙的部署,而许多已经部署了防火墙的组织苦于防火墙的正确配置。随着越来越多的企业和家庭用户意识到病毒和蠕虫必须连接到脆弱的服务器或者系统才能进行攻击,人们开始利用边界安全产品。

防火墙作为第一种边界安全产品,成为所有存在互联网连接的网络的组织的常规配备,目前它仍然是许多可访问互联网的网络的必备设施。对于家庭网络,Microsoft的XP Service Pack 2包含了一个基本的防火墙,也能帮助一些家庭用户阻挡攻击,但是其作用有限。实施防火墙限制了与未授权的外部设备通信的服务,从而显著地减少了蠕虫用于进入网络的弱点。

许多组织开始为分支机构添加更高速度的互联网连接,代替慢速而昂贵的ATM连接,而且,这些组织不希望在每个分支机构购买或者管理复杂的防火墙,因此虚拟专用网络(Virtual Private Networks,VPN)成熟起来,变得更容易管理,从而开始更多地部署。拥有到集团网络的VPN使公司可以拒绝来自安全和得到验证的VPN之外的数据进出集团办公室。这种网络设计进一步减少了病毒和蠕虫通过互联网接触到的脆弱工作站和服务器的数量。

促进大众注意的病毒和蠕虫向窃取数据的恶意软件转化的最后一种技术是入侵检测系统(IDS)和入侵防御系统(IPS)。许多用户相信防病毒技术是病毒和蠕虫问题的唯一解决方案。但是,IDS和IPS采用了防病毒系统中的技术——特征码,并将它应用到网络边界上的网络层。这种变化避免病毒和蠕虫进入工作站。而且,这些系统为不能深入检查数据的防火墙提供了另一条防线。例如,如果红色代码(Code Red)这样的蠕虫通过IIS的80端口发起攻击,防火墙将不进行检查而放行,而IPS将能够避免这种蠕虫穿越80端口进入服务器。

随着可利用的漏洞的减少和更多边界安全设备防止到机器的远程访问,病毒的传播又回到久经考验的传播方法——电子邮件和Web。1.2 为什么他们想要你的工作站

技术进步和攻击的有效性是攻击者改变方法的因素,但是他们的目标——你最终为他们做出了决定。恶意软件和Rootkit的作者意识到他们能够利用所创建的恶意软件窃取敏感数据(如你的网上银行用户名和密码),实施单击欺诈,将受感染的工作站的远程控制权卖给垃圾邮件制造者作为垃圾邮件中继站,这些都能为他们带来收入。恶意软件作者可能从花费在编写恶意软件的时间上得到确实的回报。你的工作站现在比以前更有价值;因此,攻击者的工具需要适应保持对受感染工作站的控制,并且尽可能地传染更多的工作站。

家庭用户不是恶意软件作者的唯一目标。集团公司的工作站同样有趣和诱人。企业工作站用户通常在本地工作站上保存集团公司机密文档,登录个人账户(如银行账户),登录到包含集团公司知识产权的服务器。所有这些都是攻击者感兴趣的,一般也是恶意软件感染中所收集的内容。“企业”目标的最近实例是巴拉克·奥巴马和约翰·麦凯恩之间的美国总统竞选。两个候选人的竞选活动系统都受到远程攻击者的攻击和渗透。我们只能猜想这些攻击者想要的信息类型,但是他们已经访问到的数据如果公开,可能对竞选活动造成严重的损害。即使一些看上去好像没有用的信息也常常被窃取、出卖或者散布。可能出现在工作场所的个人照片、秘密的风流韵事以及电子邮件也是目标。1.3 难以发现的意图

局面的改变加强了恶意软件作者在技术上的挑战性,但是最大的变化是意图的变化。前面已经提到,许多病毒作者编写病毒纯粹是为了自我满足和向朋友炫耀。病毒编写者是以新技术或者大规模破坏为乐的地下组织的一部分。对“最能干的病毒创作者”称号的角逐致使许多病毒制作者将所创建的程序封装起来并发布,导致了更大的危害。这种行为就像许多糟糕的电影里的情节,两个男孩子在争夺一位高中女生时不断地试图超越对方,等他们清醒过来时,所留下的只是破坏。最终,两个男孩都不能得到那个女孩,并且因为自己的愚蠢而待在牢里。发布病毒正与此相同,在许多国家,编写病毒是违法的,这些病毒制作者被捕并且受到起诉。

有些病毒制作者不是为了自我满足而是为了抗议,比如Onel A.De Guzman的案子。De Guzman就像是菲律宾的罗宾汉。他编写了“我爱你”病毒的一部分,这个病毒窃取人们用于访问互联网的账户和密码,并把这些信息提供给其他人使用。在菲律宾,互联网访问资费每月高达90美元,许多人将他的病毒看做很大的利益。除了De Guzman,保加利亚的病毒制作者Dark Avenger因为声称“这些病毒给了他在保加利亚所不能得到的政治权力和自由”而闻名。恶意软件和Rootkit不是为了自我满足或者抗议,它们的目的是金钱。

恶意软件制作者想要钱,最容易的方法就是从你那里偷。他们编写程序的意图已经有了根本的改变。恶意软件和Rootkit现在是精密的盗窃工具,而不是夸耀自己和向朋友宣扬的广告牌。为什么这种转变很重要呢?

恶意软件制作者意图的转变向保护用户免遭恶意软件侵害的人们传递了一个信号,他们必须改变自己的检测和预防能力。病毒和蠕虫在技术上是异常现象,一般来说,它们的功能不是由普通用户可能运行的常见功能集(比如字处理)组成的;因此,发现和防御这种异常现象要比发现一个用户进行某种恶意行为更容易。发现恶意行为的问题在于谁来定义恶意行为,是防病毒公司还是媒体?不同的计算机用户有不同的风险容忍度,一个人可能容忍一个恶意软件运行以获得它能够提供的好处(我们稍后将了解恶意软件所带来的好处),而其他人可能不能忍受任何恶意软件。

理解一个合法用户行为的意图并非不可能,但是很难。世界各地的政府多年来试图在执法和立法范围内理解人类行为的意图,但是收效甚微。大部分遵循盎格鲁-撒克逊法律体系的国家(比如美国)中的定罪率在40%~80%。如果在世界上存在了几百年的法律系统都很难确定人们的意图,那么我们又有多少机会去阻止恶意软件?我们相信自己能够做到,但是在网络世界中,我们所面对的是前所未有的战斗,这就是本书的其余部分关注于让你掌握恶意软件传播、传染、保持控制和窃取数据的技术知识的原因,掌握了这些信息,你将能够确定运行在你的工作站上的应用程序的意图,并且迈出保护你的网络免遭恶意软件侵害的第一步。1.4 这是桩生意

前面已经提到,恶意软件制作者关注于获得利益。和所有希望赚钱的企业家一样,他们启动各种利用形式的商业活动。最大和最活跃的恶意软件集团是俄罗斯商业网络(Russian Business Network,RBN)。俄罗斯的恶意软件已经兴起多年,许多最著名的病毒和特洛伊木马(如Bagle、MyDoom和Netsky)均出自俄罗斯开发人员之手。

在深入研究RBN的业务之前,让我们先来研究一下这个组织。RBN是一个高伸缩性、冗余而有效的宿主平台,只是偶然地作为恶意软件的宿主,它的主机客户包括赌博、恶意软件和仿冒站点。只要能得到收入,RBN不在意这个主机平台被用于什么目的。

RBN的工作主要面向6个领域:

·仿冒

·恶意软件

·诈骗

·分布式拒绝服务攻击(DDoS)

·色情(包括儿童色情)

·游戏

为了支持这些工作,RBN已经建立和部署一个由主要的需求——带宽组成的主机平台,并且持续地部署恶意的Web服务器、僵尸网络和指挥控制服务器。

2005年RBN开始被看做恶意软件的散布者,当时人们发现CoolWebSearch恶意软件正在由RBN地址空间上的服务器散布。RBN通过使用利用程序(例如2006年中的Microsoft VRML利用程序)来散布和聚集恶意软件。RBN在匿名用户攻击中使用了各种利用和恶意软件,但是留下的痕迹仍然很少。

从2007年开始,随着MPack攻击工具包的发行,RBN开始真正地影响恶意软件市场。尽管MPack实际上可能不是由RBN编写的,但是作者是俄罗斯人,而且许多原始的MPack安装版本,比如著名的恶意软件攻击载荷Torpig,都可以追溯到RBN网络。MPack以500~1000美元的价格销售给攻击者,额外花费300美元还可以包含一个装入程序,帮助开始恶意活动。MPack是RBN走出的重要一步,它包含了10种不同的利用程序,攻击者可以根据所连接的目标选择不同的利用程序。MPack非常高效,并且给了RBN所不曾拥有的东西——性能度量。因为MPack包含了多个利用程序,管理面板详细列出了曾经最成功感染的Web浏览器,该浏览器来自于哪个国家,以及感染率。这些度量使攻击者能够微调他们的攻击,或者根据库存销售特定类型的受感染机器。

RBN持续着狂热的传染,它似乎是印度银行事故的背后黑手,在这次事故中,印度银行的网站散布来自于RBN网络的恶意软件。令人惊讶的是,印度银行网站试图在客户计算机上安装超过20种不同类型的恶意软件。RBN现在在恶意软件散布量上绝对处于领先!

恶意软件的散布是RBN最主要的活动,而网络仿冒紧随其后。大量关于RBN的虚假信息的存在使得人们很难将该网络和具体的仿冒攻击直接联系起来;但是,大量数据显示,RBN网络已经聚集了许多银行业的特洛伊木马和其他能够绕开防病毒软件的服务、仿冒内容网页,并且已经成为了已安装的木马程序发送记录的目的地。

RBN和许多企业一样,已经启动了接受信用卡付款的零售网站,出售虚假的杀毒软件并且已经成为传统黑客们的伙伴,以加快其Web服务器提供恶意流量的脚步。

利用RBN雄厚的组织和基础架构,其所有活动的年收入预计在12亿美元左右。从这样的收入,你可以了解到攻击者从拥有服务器转向拥有身份信息的目的。1.5 重要的恶意软件传播技术

传统上,恶意软件攻击像Microsoft Windows、Linux、Mac OS、Microsoft Office这样的平台和应用程序,以及许多第三方应用程序。有些恶意软件甚至由制造商不知不觉地散布,并且直接嵌入安装光盘上直到几个月后才被发现,这种现象在2008年仍有发生。20世纪90年代两种最流行的传播方式是通过电子邮件和直接文件执行。现在对你们来说这似乎已经不重要,但讲述几次恶意软件的爆发仍然很重要。最重要的是需要理解过去10年中技术的革新和现在常见的技术,并且了解这些方法的起源。我还希望阐明,“熟悉而可靠”的技术仍然和10年前一样管用。安全界通过从使他们遭受挫败的传播技术那里学习到的经验,并发展到今天的水平,但是现在仍然面对着与基于这些技术的攻击斗争和防御的挑战。最后,对于那些刚刚进入这个行业、对这些恶意软件发布认识尚未成熟的读者来说,这是对恶意软件传播技术的一个简单概括。1.5.1 社会工程

历史上,通过网络分发和传播恶意软件的最古老但仍然最有效的方法是侵犯人类的信任关系。社会工程(social engineering)包括编造一个故事,然后将这个故事传递给受害人,希望受害人相信这个故事并且采取想定的步骤以便执行恶意软件。一般来说,尽管有时候这种分发方法或者故事所用的“虚假事实”非常肤浅,但是用户没有意识到实际发生的传染。有时候用户感觉到有些问题,或者某个事件引起用户的怀疑,经过简单的检查,用户发现了整个阴谋。接着,企业安全团队试图删除恶意软件并且防止通过网络的传播。没有社会工程,如果今天的几乎所有恶意软件都无法感染系统,我也就不会和同伴们合著这本书了。下图是一些编造“虚假事实”、希望我单击而被感染或者提供个人信息的恶意屏幕。

下面的简短列表列出了一些模棱两可的文件名,恶意软件编写者用它们诱使那些未起疑心的社会工程受害者打开它,从而开始传染过程:

·ACDSee 9.exe

·Adobe Photoshop 9 full.exe

·Ahead Nero 7.exe

·Matrix 3 Revolution English Subtitles.exe

·Microsoft Office 2003 Crack,Working!.exe

·Microsoft Windows XP,WinXP Crack,working Keygen.exe

·Porno Screensaver.scr

·Serials.txt.exe

·WinAmp 6 New!.exe

·Windows Sourcecode update.doc.exe1.5.2 文件执行

事实上,文件执行是恶意软件传染的最直接方法。用户单击重命名或者嵌入在另一个文件中(例如可执行文件、Microsoft Office文档、Adobe PDF或者压缩文件)的文件。该文件可以通过刚才讨论的社会工程技术或者通过对等(P2P)网络、企业网络文件共享、电子邮件或者非易失性存储设备传递。现在,某些恶意软件能够以可下载的flash游戏的方式传递,在你享受游戏的同时,在后台你的系统已经成为某人的诡计(如StormWorm)的受害者。你所遇到的某些感染只是来自于一个简单的平面设计动画、跳舞熊的PowerPoint幻灯片、甚至一篇爱国主义的故事。这种传播技术——文件执行是所有恶意软件的基础。本质上,如果你不执行恶意软件,那么它就无法感染你的系统。表1-1列出了通过文件执行传递恶意软件的各种基于Windows文件类型的简单实例,图1-3说明最常用于电子邮件的文件类型。

恶意软件的祖先采用的方法是奇特的,而且多半经过精心的思考,并且造成的破坏至多是毁坏计算机本身。这些攻击者更关注于通过发表概念性的代码表现自我和独创性,他们所发表的恶意软件在实现上有多种弱点,例如容易识别的二进制代码、系统入口以及容易发现的传播技术。他们的方法使安全专家在夜里惊醒,提心吊胆地等待着更好的防病毒引擎和网络入侵检测系统开发出来。图1-4提供了入侵检测系统生命周期的时间轴,在20世纪90年代末和21世纪初,这是识别通过网络传播的恶意软件的最佳工具。图 1-3 最常见的电子邮件文件类型图 1-4 入侵检测系统时间轴

表1-2揭示了最臭名昭著的早期恶意软件攻击所使用的传播技术。[1]松弛空间(slack space)——每个分配单元中没有用完的部分空间。——译者注1.6 现代恶意软件的传播技术

由于网络应用程序、网络服务和操作系统功能中具有创造力的进步,对于IDS来说,发现恶意软件的传播已经比以前困难得多了。IDS特征码已经被证明在对抗恶意软件的新版本或者多态的恶意软件时没有什么帮助。在21世纪初,出现了全新的传播技术,这些技术起源于从过去的恶意软件爆发时学习到的经验。

恶意软件已经发展到如此高的水平,以致我们现在只能依赖专家来预测可能出现的恶意软件爆发事件,或者旧的技术在什么地方采用创新的方法造成比过去更大的破坏。新的技术利用操作系统和应用程序的系统改进和功能升级来对付最终用户。表1-3列出了恶意软件传播方法的一些最新进展。

表1-3中描述的蠕虫使用了新的传染和传播方法并且成为近期IT界重要的恶意软件爆发的根源。Downadup蠕虫在不到5天的时间内感染了超过900万台计算机。评估恶意病毒的开发非常重要——从对付组织的针对性恶意软件到执行恶意代码远程控制受害计算机的简单客户端利用程序。尽管在刊物和每个人阅读的报纸上报道的几乎所有流行的实例都是以Microsoft Windows为焦点的恶意软件,但确定所有恶意软件的数量仍然很关键。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载