网络安全基础,您应该了解的内容
目录
第一章;了解网络杀伤链
第二章;前网络威胁
第三章;网络威胁的出现
第四章;僵尸网络和网络犯罪行业
第五章;伪装和备用数据流
第六章;通过 Rootkit 控制目标 第七
章;网络钓鱼和水坑攻击
第八章;了解高级持续性威胁
第九章;勒索软件:一种现代敲诈勒索形式
第十章;硬件植入和其他网络 FUD
第 1 章;了解网络杀伤链
在 20 世纪 90 年代,网络攻击通常与无聊的青少年恶作剧有关,他们只是为了好玩而四处乱窜。然而,通过互联网犯罪的可能性并没有被忽视,利用连接进行情报收集的可能性也没有被忽视。如今,网络攻击主要来自有组织的犯罪分子和国家支持的特工,他们使用定义明确的端到端业务流程。2009 年,洛克希德·马丁网络应急响应小组的一个团队发表了一篇关于网络攻击的开创性论文,名为“通过分析对手活动和入侵杀伤链实现情报驱动的计算机网络防御”。这篇研究论文介绍了现在通常称为网络杀伤链的概念。
网络杀伤链将攻击分为七个阶段:侦察、武器化、交付、利用、安装、指挥和控制以及行动。攻击并不总是从一个步骤进展到下一个步骤。它们通常会重叠,但每个阶段都代表着攻击过程中的一个里程碑。侦察是指找到目标并了解其特征,相当于在网络上对目标进行侦察。个人通常在互联网上拥有一个地址,该地址由其互联网服务提供商分配,而企业可能在其所谓的互联网域中拥有多个地址。
针对企业目标的网络攻击将从已知的网站地址开始,然后扫描该地址周围的互联网空间以查找目标使用的其他系统。企业将此视为对其域中每台主机的响应检查。这称为 IP 地址扫描。当攻击者拥有活动主机列表时,他或她将依次扫描每台主机以找出暴露的入口点。这称为端口扫描。这样做是为了识别潜在的攻击载体并检查这些载体中使用的软件版本。如今的攻击不是手动进行的。
攻击者通常会购买受感染计算机网络上的时间,以运行自动扫描。这些网络称为僵尸网络,可能包含数十万甚至数百万台受感染的计算机。这使得网络攻击可以大规模进行。武器化意味着利用已知漏洞并将其定制为特定目标或目标组,并将其集成以使其能够从自动网络攻击平台运行。武器化的恶意软件可能旨在利用特定版本操作系统中的漏洞,或针对特定的在线银行网站。在黑客作为一项业务的时代,网络犯罪分子通常会从专门的开发人员那里购买武器化的恶意软件,而不是自己开发。传播恶意软件的最常见方式是附加受感染的文档、PDF 图像或其他电子物品,这样当文档被打开时,恶意软件就会自行安装。然后可以通过电子邮件将此文件发送给受害者,这一过程称为网络钓鱼。另一种方法可能是找到一个易受攻击的网站,用恶意软件感染它,并向目标发送电子邮件邀请访问该网站。如果受害者访问该网站,恶意软件就会被下载并感染他们的工作站。
第三种方式可能是使用目标系统软件内置的默认用户 ID 和密码,或者使用窃取的用户 ID 和密码进入目标系统并直接植入恶意软件。还可以找到暴露在互联网上的软件中的漏洞并手动投放恶意软件。实际上,攻击通常需要在暴露在互联网上的主机上建立滩头阵地,然后利用该滩头阵地深入系统以找到真正的目标,而真正的目标可能并未直接连接到互联网。最后,可以使用受感染的闪存驱动器来投放恶意软件,如果目标系统未连接到互联网,这种方法可能非常有效。这要求能够说服或诱骗目标系统的用户使用闪存驱动器。对于电子邮件附件和闪存驱动器攻击,受感染的项目将在文档打开后利用目标软件中的漏洞。受感染的网站可能会类似地下载 HTML 代码,从而利用浏览器漏洞。在远程访问的情况下,利用阶段可能使用数据包流来利用 Internet 暴露服务协议中的漏洞,或者可能只是使用破解或窃取的凭据。利用阶段之后,恶意软件或入侵者可能只是采取行动,直接跳到网络杀伤链的最后阶段。但是,更常见的情况是将有效载荷安装到内存中或目标系统的硬盘上。此外,可以引入某种机制来确保每次重新启动系统时都会重新启动有效载荷。在 Windows 中执行此操作的一种方法是添加注册表项以在系统启动时自动运行有效载荷。有效载荷通常是(或包括)一种保持对命令 shell 的持续访问的方法。系统入侵通常是自动的。安装有效载荷后,它采取的第一个操作是重新连接到命令和控制服务器以注册为受感染主机。然后,攻击者将希望指示植入物采取行动,例如列出子(模糊)文件、提取特定命名的文件、修改或替换软件等。有效载荷的一个重要特性是它可以确定命令和控制服务器的地址,该地址可能会随时间而变化。有效载荷到达目标后具体执行何种操作取决于攻击者的动机。黑客可能想要破坏网站。国家支持的特工可能想要窃取敏感信息,网络罪犯可能想要访问银行账户以窃取资金。然而,共同的主题是,无论采取何种行动,都不太可能符合目标的最佳利益。停下来思考一下本周的时事。您听说过最近的一次攻击吗?您如何将所听到的内容与网络杀伤链联系起来?您可能听说过发生的行动,但没有听说过交付阶段。这可能是如何发生的?
第 2 章:网络威胁前期
在计算机发展的早期,企业面临的安全威胁反映了传统的 IT 欺诈。一种传统的欺诈方法是让不存在的员工进入工资单,并将工资存入他人的账户。
[]
2012 年 1 月,夏威夷一名女子因涉嫌试图通过注册并收取两名虚构员工的工资来从她所在的保安公司挪用资金而被起诉。这起骗局让她净赚 20 多万美元。
[]
第二种方法称为萨拉米香肠欺诈,之所以这样命名是因为它类似于将肉切成薄片。在这种情况下,被削减的是四舍五入计算中去掉的分数,或者通过从交易中减去几美分来更改交易。如果企业处理数百万笔交易,那么这可能会成为重大欺诈。第三种欺诈形式是为不存在的商品付款。当一个人有能力提出采购订单、收到货物并签发支票时,就会发生这种情况。当在线卖家为不存在的商品预收款项,或者通过输入虚假出价来操纵拍卖以抬高价格时,个人也会遇到类似的问题。随着计算机系统的使用增长,威胁也随之增长。出现了更复杂的欺诈形式,在许多情况下,它们利用了 IT 环境中控制的减弱。
[]
在计算机发展的早期,年轻人着迷于使用计算机和调制解调器入侵其他计算机的挑战。青少年黑客时代由此开启。这主要是个人挑战和同伴认可,尽管早期也有一些我们现在所知的网络间谍和网络犯罪的例子。20 世纪 90 年代的典型黑客是凯文·米特尼克 (Kevin Mitnick),又名秃鹰 (Condor)。米特尼克 (Mitnick) 进行了十年的黑客攻击,目的只是为了证明自己有多厉害,最终他被抓获并被判处三年监禁。完整的故事、书籍和电影在“Takedown”网站上有描述。随着网络的使用增长以及信息网站和商业门户网站变得越来越普遍,我们看到无聊的青少年破坏网站并留下“我明白了”的消息。网站破坏也是出于政治动机的攻击的一部分,并被用来在所谓的黑客行动主义中传达政治信息。
[]
随着对 IT 系统的依赖性不断增长,另一个安全威胁是拒绝服务攻击,远程攻击者可以通过利用漏洞或压倒 IT 系统处理信息流的能力来破坏 IT 系统。随着互联网的发展,攻击者能够控制大量计算机(称为僵尸网络),并将它们集中在一个目标上,从而大大放大拒绝服务的影响。这被称为分布式拒绝服务,简称 DDoS。2014 年 2 月发生了一次全球拒绝服务攻击,当时一名未知攻击者对全球各个国家/地区的各种目标发动了一波分布式拒绝服务攻击。攻击规模巨大。攻击利用网络时间协议的特殊功能来放大数据。当数据包到达目标时,它已被放大了 50 倍,相当于约 250,000 次单独的拒绝服务攻击。此次攻击活动中的一家企业遭到了来自 80 多个国家的 4,278 个独立 IP 地址的攻击,攻击持续了大约一小时,每分钟传输超过 100 万个数据包。该图显示了数据从互联网到达该公司的时间线。
第 3 章:网络威胁的出现
到 20 世纪 90 年代末,电子商务已成为经济的重要组成部分,有组织犯罪开始关注通过互联网进行低风险、高收益犯罪的可能性。网络犯罪开始迅速增长,主要目标之一是访问信用卡信息数据库。由于支付卡行业对不遵守网络安全标准的行为实行处罚,信用卡丢失(即数据泄露)成为企业的重大风险。到 2010 年,网络犯罪已成为与非法毒品一样庞大的产业。
[]
过去几年发生了多起数据泄露事件。此数据泄露可视化图显示了上海警方、Syniverse 和 Facebook 的大规模数据泄露事件。Facebook 在过去一年左右的时间里泄露了 5 亿条记录,位居榜首。信用卡并不是唯一可能被泄露的敏感信息。2015 年 6 月,美国政府承认入侵者窃取了人事档案,其中包括 400 多万现任和前任政府雇员的安全许可数据。一段时间以来,政府一直是黑客攻击的受害者,但几乎没有证据能够确定攻击源。2007 年 6 月,美国官员披露黑客通过定向攻击电子邮件系统元素闯入五角大楼,并称这是当时对美国国防部最成功的网络攻击。美国将这次攻击归咎于中国,这是中国对西方政府发动的代号为“泰坦雨”的多次攻击之一。中国否认参与了这些攻击。2010 年,第一起被归咎的网络破坏案件被公开。美国证实,它曾与以色列合作开发和部署 Stuxnet 恶意软件,以攻击伊朗核浓缩计划。它成功了,破坏了伊朗的核生产能力。我们看到了最近一种新的攻击形式,即网络影响行动,克林顿电子邮件攻击的重点是干预选举。(欢快的音乐)花点时间看看世界上最大的数据泄露事件。看看一些较小的攻击,看看你是否能找到精酿啤酒公司 BrewDog 丢失了多少记录。
第 4 章;僵尸网络和网络犯罪行业
从本质上讲,网络犯罪很容易实现自动化。网络犯罪商业生态系统中的恶意软件编写者现在是世界上最熟练的软件编写者之一。但要从网络犯罪中赚钱,需要自动化才能大规模实施攻击。在计算机早期,病毒通过软盘传播。随着互联网的发展,感染开始出现在文件下载中,随着软盘驱动器的淘汰,USB 驱动器取而代之成为感染媒介。受感染的网站开始托管恶意软件,并利用浏览器的弱点来感染访问者。随着病毒的影响从滋扰价值转变为经济收益,犯罪也实现了自动化。通过自动化和利用电子邮件日益普及以及互联网的庞大规模,有组织犯罪能够实现如今已超过非法毒品交易的网络犯罪。网络犯罪的规模通过所谓的僵尸网络来扩大。僵尸网络由一名犯罪分子(称为“僵尸网络主控”)组成,他们运行多个命令和控制系统。僵尸网络主控通常会加密其命令和控制访问权限,并在访问这些系统时将其伪装成正常的网络流量。
[]
合法网站被入侵后用于命令和控制,仅运行一段时间后便会被丢弃,并由新的网站接管。僵尸主机运行命令和控制服务器,每个命令和控制系统又控制大量被后门感染的计算机(称为僵尸)。大型僵尸网络可能控制着数百万台僵尸。僵尸的典型任务是从目标中提取文件,将目标用作垃圾邮件的来源,或发送特制的数据包作为分布式拒绝服务攻击的一部分。
鉴于命令和控制服务器会发生变化,僵尸主机和僵尸都必须能够找到当前服务器,它们使用域生成算法来实现这一点。这允许恶意软件预测未来任何特定时间可能活动的 URL 和/或 IP 地址。域名可能保持不变,IP 地址会发生变化,或者域名和 IP 地址可能会一起变化。最臭名昭著的僵尸网络,以及许多后续变体的鼻祖是 Zeus。Zeus 本身是一个僵尸网络构建工具包,使攻击者能够通过易于使用的桌面应用程序创建自定义的 Zeus 式僵尸网络。该构建工具包提供了一个可选的远程访问木马或 RAT 以及一个命令和控制模块。Zeus 源代码于 2010 年泄露,因此它被许多网络犯罪分子用来进行攻击。它还被用作添加功能和创建新僵尸网络的基础,例如 Citadel、ICE 9 和 Gameover Zeus。 Zeus 的主要目的是窃取在线凭证。它包括自动化功能,例如复制包含互联网密码的受保护存储区域、拦截浏览器中输入的帐户凭证,甚至修改服务器发送的银行网页以添加密码请求。Zeus 可用于针对计算机和智能手机。智能手机感染允许 Zeus 窃取通过短信发送的银行访问代码。网络犯罪是一项复杂且组织严密的业务,涉及有组织的犯罪分子、各种服务推动者、恶意软件生产者,当然还有受害者。犯罪组织决定犯罪活动,并得到运行执行活动所需系统的服务推动者的支持。例如,银行欺诈活动将遵循网络杀伤链。它将通过监视选择易受特定技术攻击的目标。恶意软件开发人员将创建专门针对此攻击的恶意软件,可能将其定制为特定的银行网站。一组测试人员将通过测试确保软件的质量。恶意负载通过僵尸网络交付和安装。犯罪分子通常没有自己的僵尸网络,而是从其他犯罪集团租用一个。如果攻击成功,被盗资金将被转移到为该活动设立的可支配银行账户。然后,他们的目标是将资金以现金形式提取,以打破电子货币踪迹。为了做到这一点,该活动使用了所谓的“钱骡”。这些通常是穷人,他们被招募去从欺诈者的账户中提取资金,并冒着被抓的风险。虽然“钱骡”传统上都是小偷小摸的罪犯或经济困难的人,但一个有趣的发展是出现了专业的雇佣“钱骡”,他们收取所收资金的 40% 左右,提供快速响应的服务。大多数美国城市都有此类服务。据报道,此类服务每天的转账金额在 30,000 到 10 万美元之间。
第 5 章;隐藏和备用数据流
使用恶意软件渗透系统的攻击者在恶意软件进入目标系统后会想方设法将其隐藏起来。如果感染可以逃避检测,则更有可能实现其预期目标。让我们来看看恶意软件可以隐藏的一些方法。第一种方法是使用 Windows 操作系统使用的技术来隐藏其自身活动。隐藏历史文件夹就是一个例子。我在命令 shell 中,我将通过键入 cd appdata \local \microsoft\windows 进入用户应用程序目录中的文件夹。
[]
当我列出目录的内容时,会发现有许多文件和文件夹,但没有历史子目录。我可以使用 dir /ah 列出隐藏文件,但仍然没有历史子目录。然而,事情并不总是像表面上看起来的那样。历史子目录确实存在,但我们就是看不到它。让我们尝试更改目录并进入它。cd history。这很有效。现在让我们看看这里有什么。我们看到了文件 desk.ini。这是 Microsoft 用来隐藏子目录的方法。当我通过输入 desk.ini 查看其中的内容时,我看到它有两个隐藏条目。第一个是 CLSID 行,它阻止子目录包含在基于文件的查找中。第二个是 UICLSID 行,它阻止使用 Windows 资源管理器查看子目录。另一种鲜为人知的磁盘隐藏方法是使用所谓的备用数据流。在早期的 MS-DOS 和 FAT 文件系统中,文件只是数据字符串,应用程序可以逐字节读取。在 NTFS 中,文件是一种复杂的结构。NTF 文件至少包含一个名为 $DATA 的部分,应用程序读取的数据就驻留在其中。这是数据流。但是,文件可能有许多其他部分,每个部分都有自己的名称,每个部分都可以保存信息。这些被称为备用数据流。重要的是,Windows 只识别 $DATA 部分,因此通常无法识别任何备用数据流中的数据。
[]
好的,回到终端,让我们进入临时文件夹,并通过键入以下内容创建一个名为 datafile.txt 的新文件,键入 con,控制台,to datafile.txt。这是一个文本文件,没有什么可隐藏的。它只是保存到磁盘的一串单词。好的,文件已创建,让我们检查一下。键入 datafile.txt,我们可以看到输入的内容。我们还可以检查它的大小。Dir datafile.txt 长 105 字节。我将创建另一个名为 adsfile.txt 的文件。键入 con: to adsfile.txt。这是我的秘密消息,我想将其存储在没有人能找到的地方。现在我将通过键入 adsfile.txt to datafile.txt, colon, hidden.txt 将其插入到 datafile.txt 中的隐藏数据流中。让我们看看 datafile.txt 现在是什么样子。键入 datafile.txt 和 dir。所以没有明显的变化。但是,如果我现在键入 more from datafile.txt colon hidden.txt,我们会看到隐藏的文本。备用数据流也可用于隐藏可执行文件。作为示例,我将 Windows 计算器插入此文本文件。键入 \windows \system32 \calc.exe 到 datafile.txt,我们将其命名为 mycalc.exe 键入 datafile.txt 和 dir,同样,我们看不到任何变化。我们可以使用 Windows 检测工具 wmic 的特殊形式来运行此隐藏的可执行文件。wmic process call create '“C:\temp \datafile.txt: mycalc.exe”
然后我们执行计算器。虽然在 Explorer 中或使用 dir 命令通常看不到备用数据流,但可以使用 dir 命令上的 /r 命令行选项来查看它们。dir datafile.txt /r 现在我们可以看到这个文件确实有两个额外的流。hidden.txt 和 mycalc.exe。
第 6 章;使用进程隐藏
现在让我们通过查看编写为 Windows 进程以拦截所有击键的简单恶意软件函数来了解如何构建使用更复杂隐藏手段的程序。在 Microsoft 中,当按下键盘上的某个键时,会向操作系统发出事件信号。Windows 使用其键盘驱动程序读取已按下的字符并将其作为消息发送到等待该字符的应用程序。但是,Windows 还允许其他处理器在消息通过系统时查看它。这就是热键的工作方式。Windows 通过称为键盘挂钩回调例程的东西来实现这一点。它挂钩已按下的键,然后在处理后回调以将其传递到其原始目的地。此技术可用于编写所谓的简单击键记录器。这只需要几行代码,但功能非常强大。
[]
我准备了一个名为 wmisvc64.cpp 的键盘钩子程序,我们可以在这里看到它。这是一个非常简单的程序。前五行提供了 C++ 程序的标准设置代码。第七行是程序首次启动时执行的代码,用于打开一个名为 Intercept.txt 的输出文件,我们稍后将使用它来存储截取的字符。
[]
接下来的六行指定了一个回调过程。这是按下某个键时执行的代码。Windows 中的事件非常细化。例如,按下一个键涉及两个事件,一个键按下,一个键弹起。我们只需要检查其中一个,因此第 11 行的回调例程只检查 WM Key Up 事件。当它看到这个事件时,它会将与此事件相关的数据(即键盘上按下的字符的内部 Windows 代码)写入输出文件。此例程中的最后一个操作是通过调用链中的下一个钩子传递事件,使用恰当命名的 CallNextHookEx 函数,这将允许消息恢复其到目标应用程序的路径。程序的其余部分是支持回调例程的 Windows 进程的主要控制逻辑。我们不需要详细讨论这一点,但请注意,在第 20 行,我们正在使用 MOD.ALT 和零乘以三九(程序中表示 ALT 九)注册一个 HotKey。按下它时,程序将终止。好的,让我们看看这个程序是如何运行的。我们可以在命令行中输入 cl wmisvc64.cpp 来编译它。好的,它已经编译好了,我们现在可以通过输入 wmisvc64 来运行它,现在我们将关闭命令窗口。让我们做一些简单的取证,看看我们的电脑上正在运行什么。我们将输入 control Alt del,打开任务管理器并查看进程。应用程序列表中没有任何内容显示拦截器正在运行。如果我们向下滚动到后台进程,在最底部,我们可以看到 wmisvc64.exe。它与正在运行的正常 Windows 系统进程几乎没有什么区别。它一目了然,但隐藏得相当好。让我们在记事本文档中输入一些数据。这是我关于编写回调例程来捕获击键的秘密笔记。好的,我将关闭它。我们不会保存它,我将按 ALT 9 来终止拦截。让我们使用 Explorer 检查 Intercept 程序使用的日志文件。在这里我们可以看到程序拦截了什么。拦截包含我们的退出以及我们写的注释。它还包含其他键盘活动,例如 ALT 和 Shift 键,它们显示各种特殊字符。当然,攻击者希望在他们捕获的 Intercept 中看到的是我们的访问系统和银行账户登录信息。这里的教训是,如果对手能够访问计算机并植入恶意软件,即使是一个只有几行并以普通用户身份运行的简单程序,也很难检测到,并且能够读取输入的所有内容,包括访问代码和密码。
第 6 章:通过 Rootkit 控制目标 经验
丰富的调查人员可以检测到使用基本隐藏和伪装技术的恶意软件。因此,更老练的攻击者已经开发出安装恶意软件的技术,这些恶意软件不仅作为应用程序或进程,而且深入操作系统的核心。
这种恶意软件被称为 rootkit。为了部署 rootkit,攻击者必须首先渗透到目标系统,然后使用所谓的 dropper 安装 rootkit,它要么作为有效载荷携带,要么随后下载。dropper 的工作是检查 rootkit 是否已存在于系统中,系统是否在虚拟机内运行,以及进行特殊检查,例如检查其运行所在的国家/地区。一旦确认这是一个合法且可用的目标,它就会将 rootkit 插入系统并确保它可以在系统启动后重新启动并开始运行。
Rootkit 不会利用您的漏洞。它旨在隐藏、操作并使用正常的系统功能执行其任务。同样,Rootkit 不是病毒。它是存在于目标中的植入物,但它本身不会传播。但是,它可以与类似病毒的代码结合,以便在安装到系统中后实现横向传播。Rootkit 旨在绕过入侵检测系统。例如,它可能包含用于查找和禁用某些形式的防病毒或主机入侵检测软件的代码。它还希望避免被取证分析师检测到,而隐藏的最佳位置是操作系统内核。这是操作系统的内核。入侵检测系统无法轻易看到内核内部。进入内核需要将 rootkit 编码为一种特殊形式的程序,称为可加载内核模块或驱动程序。Microsoft 提供了 Windows 驱动程序开发工具包 (DDK) 来开发可加载内核模块。驱动程序使用相当复杂的编码技术,因此我不会深入研究开发和部署驱动程序的过程。简单来说,驱动程序在内核的最深处运行,即所谓的 ring zero,这使它们能够访问所有内核数据结构。除了在内核中,rootkit 还以提升的权限运行。rootkit 几乎无所不能,而且很难被发现。作为内核中的特权进程,rootkit 可以使用直接内核对象修改 (DKOM)。内核使用数据结构来跟踪其环境。一个示例是保存在 EPROCESS 模块中的进程数据结构。这是一个双向链表,这意味着每个条目都有两个指针。前向指针链从列表的头部开始,每个条目指向列表中的下一个条目。后向指针链从列表的末尾开始,每个条目指向前一个条目。
使用这些指针,内核可以跟踪和管理所有活动进程。当用户打开任务管理器时,实际发生的是任务管理器应用程序加载,然后调用内核,请求应用程序和进程列表。内核检查其数据结构,创建列表,然后将其发送回任务管理器进行显示。加载 rootkit 时,它所做的第一件事就是检查 EPROCESS 列表。它遵循前向链来查找自己的进程以及前一个和下一个进程。一旦找到它们,它就可以更改指针,以便前一个进程指向 rootkit 后面的进程,而后面的进程将其后向指针更改为指向 rootkit 之前的进程。第一个已知的执行 DKOM 的 rootkit 出现在 2006 年左右,它就是这样做的。更改 EPROCESS 数据结构中的列表指针以指向其自己的条目。然后,它会向任务管理器和事件调度程序隐藏 rootkit 活动。DKOM 可用于其他数据结构,例如驱动程序列表和开放端口列表。 Rootkit 还会拦截目录和文件列表中的条目并将其删除。提供远程命令和控制的常见方法是通过使用安全 shell 连接创建加密通道。这使攻击者可以远程控制受感染的系统,同时加密可能下载的任何恶意软件,以防止被基于网络的入侵检测系统和监控工具检测到。使用 SSH 的优点是需要输入用户名和密码,从而确保只有对手才能使用后门访问 rootkit。Trojan Downloader 3 或 TDL3 是 Dogma Millions 网络犯罪组织开发的第三代 rootkit,是现实世界 rootkit 的一个例子。rootkit 将自身添加为打印机驱动程序,从而为其提供内核模式驱动程序权限。它安装了一个加密文件系统供自己使用,该系统从硬盘末尾开始,向后扩展到磁盘开头。Windows 只是认为这是没有任何内容的可用空间,这意味着传统扫描技术无法检测到它。 TDL3 采用按安装成本模型,记录何时安装在目标上以及谁购买了此源版本。TDL3 rootkit 用于下载、安装和隐藏恶意负载模块,然后这些模块可以进行按键监控、进行分布式拒绝服务攻击以及许多其他操作。
第 7 章;网络钓鱼和水坑攻击
随着操作应用程序界面安全性的提高,直接渗透目标变得更加困难。因此,网络犯罪分子开始寻找其他方式将恶意软件植入目标。在工作站上,最薄弱的环节当然是使用计算机的人,因此我们成为目标。攻击者利用用户的第一个方法是所谓的网络钓鱼。这涉及向许多用户发送带有恶意附件或恶意网站链接的电子邮件,希望至少有一个用户会上钩并打开附件或点击链接。此时,恶意软件会下载到目标系统中并开始执行。网络钓鱼电子邮件将尽可能地诱使收件人打开恶意附件或点击链接。在早期,这可能是一种相当粗暴的贪婪诉求,暗示收件人中了他们没有参加的彩票。但如今,更好的网络钓鱼攻击要复杂得多。电子邮件可能假装对当前新闻话题进行了最新分析。它可能看起来像是一封官方银行电子邮件,讽刺的是,它要求您检查您的安全或帐户设置。它可能看起来像一封邮政电子邮件,通知您包裹已准备好取件。附件总是可疑的,将鼠标悬停在所谓的政府超链接上并发现它链接到 GF65mmjy.com 肯定会暴露身份。有时,网络钓鱼攻击不是通过向大量收件人列表发送电子邮件来进行的,而是旨在诱捕特定人员。这些被称为鱼叉式网络钓鱼电子邮件。
在这种情况下,攻击者会花费大量时间研究目标,并会精心设计一封电子邮件,该电子邮件可能声称来自公司内部的同事并使用常见的商业术语。这些电子邮件不一定更难被检测为网络钓鱼电子邮件,但它们的目的是让收件人放松警惕。回想一下您过去一周或一个月的电子邮件。您收到过网络钓鱼电子邮件吗?您做了什么?您打开了它还是删除了它?它是相当粗糙还是看起来很有说服力?如今,许多网络钓鱼电子邮件可能相当复杂,很难被检测为陷阱。已经发现了一些特殊形式的网络钓鱼活动。
一些网络钓鱼活动针对移动用户,而另一些则针对 IP 语音服务用户,这种攻击也称为网络钓鱼。网络钓鱼攻击与任何网络攻击一样,代价高昂。2013 年至 2015 年间,网络攻击者通过网络钓鱼电子邮件从 Facebook 和 Google 骗取了超过一亿美元。水坑攻击是另一种针对用户的攻击。在这种攻击中,针对特定用户群体(例如医生)的网站受到攻击。该网站通常是该团体常用的网站,当他们随后访问该网站时,他们的恶意软件就会被下载。攻击者希望用户在他们的商务电脑上执行此操作,从而能够访问他们的组织。2020 年,卡巴斯基发现了一次针对宗教慈善机构的水坑攻击。该活动被称为圣水,通过诱骗访问者下载包含恶意软件的 Adobe 更新来实施。攻击者尚未被确认。 2022 年 FIFA 世界杯是事件如何引发网络钓鱼攻击的一个很好的例子,在赛事前夕,针对中东的网络钓鱼攻击增加了一倍。正如我们在此处看到的,许多电子邮件看起来像是来自 FIFA 帮助台。这些网络钓鱼攻击的目标包括金融欺诈、获取凭证、窃取信息和监视。许多电子邮件都集中在对世界杯的投注上,使攻击者能够获得可以重复使用的凭证。
第 8 章;了解高级持续性威胁
近年来,人们越来越认识到民族国家使用高度复杂的恶意软件(即高级持续性威胁,简称 APT)所构成的威胁。这种恶意软件针对政治和军事目标,使用多种攻击载体。APT 具有高度隐蔽性,可以持续很长一段时间。APT 有五个关键特征,与 rootkit 截然不同。首先,它们往往针对特定目标或目标集进行高度定制,而不是通用代码模块。一个相关特征是,它们专注于针对其设计的特定系统或系统集,而不是投机取巧。它们通常有多种先进的、通常是零日漏洞,可用于利用目标。它们的部署很可能由人为控制或进行一定程度的干预,而不是完全自动化。一旦部署到位,就会以低调缓慢的方式运行,以保持隐蔽和不被注意。APT 可能有一个或多个目标,具体取决于攻击来源,这些目标可能会随着时间的推移而改变。对手可能会派出 APT 对民族国家目标进行间谍活动,意图窃取敏感信息。它还可能通过破坏电信、电力和水利等关键基础设施系统的运行来造成破坏。如果 APT 想要成为持续威胁,就必须渗透到目标中,找到藏身之处,然后继续行动。这要求它具备五项关键功能。第一项是命令和控制,远程攻击者能够指挥植入恶意软件的任务和配置、下载新的有效载荷并提供恶意软件更新。这要求 APT 重新连接到其命令和控制服务器以寻找任务或为对手打开访问路径以获得直接控制。更复杂的 APT 不会以谨慎的应用程序形式运行,而是将自己附加到内存中运行的现有应用程序或进程中。这称为恶意软件注入。 APT 希望尽可能长时间保持隐身状态,并以低速和慢速攻击的方式运行,秘密提取所需信息,尽可能减少对主机的影响,并且不会产生常规或可预测的网络流量。因此,在隐藏子系统上投入了大量精力,以确保系统的合法操作员无法观察到恶意操作。APT 软件通常旨在收集信息,并需要将其发送回其控制服务器。这被称为渗透,一个好的渗透系统不仅会加密发送的信息,以便任何监控系统都看不到它,而且还可能将其隐藏在通常会被忽略的数据包中,例如 HTTP 或 DNS 请求。
[]
最后一项功能称为重启动。为了在一段时间内保持运行,APT 需要在系统重新启动或系统管理员尝试删除它时重新启动。在 Windows 系统上重启动的基本方法是将新条目写入注册表以指示 Windows 运行恶意软件加载器。然而,这可能不是唯一的重启动机制,因为 APT 通常会使用多种重启动手段。那么,当 APT 被国家军事化和部署时,它到底是什么样子的?虽然名为 Agent.BTZ 的恶意软件模块是最早记录的 APT,于 2008 年感染了五角大楼,但迄今为止最臭名昭著的军用级 APT 是 2010 年发现的 Stuxnet。Stuxnet 专门针对伊朗核计划中的离心机而设计,目标是用于核燃料浓缩的西门子工业工厂设备,即伊朗纳坦兹铀浓缩设施中使用的设备。
[]
美国于 2012 年承认与以色列共同开发了 Stuxnet。Stuxnet 的主要特点是,它被设计为通过电子邮件或 USB 存储设备进行传输,或者通过预先植入设施中使用的电子设备进行传输。凭借其设计,即使目标系统未连接到互联网,Stuxnet 也可以进入目标系统。Stuxnet 首次发布时,利用 Windows 计算机上四个以前未知的漏洞传播并将有效载荷传送到 SCADA 系统。进入系统后,Stuxnet 利用西门子 WinCC、PCS 7 SCADA 控制软件中的漏洞,控制软件,然后反复加速和减速离心机,导致铝管膨胀和收缩,最终摧毁 900 到 1000 台离心机。卡巴斯基实验室是有关 APT 的一个很好的信息来源。这里是卡巴斯基 APT 网站。如果我们向下滚动屏幕,我们可以看到各种 APT。让我们来看看 Stuxnet。通过单击它并转到威胁,我们可以看到它相关的其他 APT。在 Stuxnet 公开后不久,发现了一个名为 Duqu 的类似 APT,随后是 Flame,大约一年后是 Equation。防御 APT 很困难,APT 攻击很可能会成功。当网络监控检测到已安装的恶意软件试图连接到其命令和控制系统时,通常会发现 APT。针对网络杀伤链每个阶段的控制提供了早期检测的机会,使用 Microsoft 的任意代码防护等工具可以帮助阻止它们。尽管如此,APT 通常会渗透到其目标中,并且一旦进入,检测到它们的平均时间以月为单位。高级持续性威胁是非常复杂的恶意软件形式。它们很难检测到,而且有迹象表明它们会一直存在。
第 9 章;勒索软件:一种现代敲诈勒索形式
让我们来看看一种称为勒索软件的特殊恶意软件。对于拥有当前备份的目标来说,遭受勒索软件攻击只是小事一桩,但对于没有备份的目标来说,这可能是一次代价高昂的实际网络安全教训。
[]
勒索软件并不窃取信息,而是加密目标上的文件或存储系统以锁定合法所有者,然后要求支付解密密钥的费用。非对称加密通常用于此目的。我不会在本课程中深入探讨非对称加密的奥秘,但如果您想了解更多信息,可以前往 LinkedIn 学习页面并搜索非对称加密。有很多课程可供选择以了解更多信息。让我们看一个当代的勒索软件示例。CryptoLocker 于 2013 年出现,是勒索软件中最流行的变种,直到 2014 年中期 TorrentLocker 和 CryptoWall 等新变种占据主导地位。CryptoLocker 非常成功,估计有 234,000 名受害者。它使用网络钓鱼活动来机会性地瞄准受害者。这些活动包括 FedEx 和 UPS 的包裹电子邮件,其中包含指向恶意软件所在的恶意网站的超链接。类似的勒索软件活动也已发现,其利用银行电子邮件、FBI 通知和超速罚单。较新的版本在荷兰尤为流行,它使用恶意附件,即嵌入宏的 Word 文档,当文档被打开时,恶意软件会直接下载到目标计算机上。CryptoLocker 活动的幕后黑手是俄罗斯人 Evgeny Mikhailovich Bogachev。Bogachev 使用 Game over Zeus 僵尸网络(一个指挥官控制服务器网络)来分发 CryptoLocker。该网络于 2014 年 6 月被 FBI 摧毁,但 Bogachev 仍然逍遥法外,悬赏 300 万美元。CryptoLocker 的执行过程分为五个阶段。首先,受害者计算机被感染,恶意软件被安装。然后,恶意软件尝试连接到其命令控制服务器。它包含一种算法,可以随机创建如图所示的域名,并尝试每个域名,直到找到一个有效的域名。然后,它会生成加密密钥,并使用高级加密算法 AES 加密目标计算机上的文件。此时,恶意软件会发出索要钱财的要求,以恢复解密密钥。
CryptoLocker 特别难以恢复,因为它使用 RSA(一种强大的非对称加密系统)来加密并将 AES 解密密钥发送回命令和控制服务器,以确保它无法被看到。加密后,无法直接从受害者的计算机中恢复解密密钥。有关 CryptoLocker 的更多详细信息,可从此处显示的美国证书站点获得。当 CryptoLocker 袭击企业时,它可能会产生相当严重的后果,因为它不仅会加密员工计算机上的文件,还会加密计算机可以访问的任何共享中的文件。对于在 Windows 文件系统中管理信息的企业来说,这可能是毁灭性的,因为通常会有数以万计的业务文件无法访问。开展勒索软件活动的犯罪分子通常要求通过比特币或支付安全卡等金融系统付款,以使自己难以追踪。当勒索软件出现时,付款要求大约是几百美元。对于受害者来说,支付赎金通常比处理文件丢失和可能失去经营业务的能力更容易,因为他们需要进行漫长而徒劳的执法追捕。然而,勒索软件的赎金要求已经发生了变化。Ryuk 勒索软件针对的是地方政府和中小型企业,其赎金要求各不相同,一名受害者被要求支付 65 比特币,当时约为 60 万美元,但他们仍然能得到报酬。2019 年,佛罗里达州的两个市政府共支付了超过 110 万美元的赎金来恢复他们的数据。
[]
从 2021 年 6 月到 2022 年 11 月的 18 个月里,Hive 勒索软件集团通过其针对医疗保健行业的勒索软件活动获利超过一亿美元,并且还将这一活动扩展到关键基础设施的其他领域。这些攻击使用各种策略,包括利用 Microsoft Exchange 服务器,并且通常通过网络钓鱼电子邮件获取访问权限。
第 10 章;硬件植入和其他网络 FUD
2018 年 10 月,彭博社宣布中国人在美国公司 Super Micro Computer 的服务器中植入了微型芯片,引起轰动。该文章报道称,这些服务器供应给国防部和其他敏感政府机构,以及亚马逊和苹果。Super Micro 在发给客户的一封信中报告说,他们的调查没有发现彭博社说法的证据。苹果和亚马逊也很快否认了这一调查结果,并呼吁彭博社撤回该报道。最终,彭博社的一位知情人士表示,他的言论被断章取义,他实际上告诉彭博社,彭博社的报道没有意义。虽然他曾与彭博社讨论过理论上的可行性,但他从未暗示过这些芯片曾在 Super Micro 董事会中使用过。他对这篇文章的总体看法是,技术细节取自他之前做的黑帽演示,而且是混杂的。当有关两种新的计算机芯片漏洞(分别称为 Meltdown 和 Spectre)的报道开始出现时,又引发了另一场硬件 FUD。
[]
最初的报告表明,这些芯片中的漏洞会泄露密码和敏感数据,并可能被用来窃取其他云用户的数据。另一份来自计算机咨询公司的报告指出,根据科技行业当前的安全标准,企业必须联系其高素质的网络安全团队,以防范 Meltdown、Specter 和未来的安全威胁。CNN 报道称,一家美国政府支持的机构警告称,需要更换芯片本身才能完全解决问题,这让情况更加戏剧化。一位网络安全专家宣布 Meltdown 和 Specter 是灾难,另一位专家表示,任何脚本小子都可以利用 Meltdown。有人认为,除非推出新流程,否则几乎不可能修复这些漏洞。事实证明,固件补丁很快就发布了,而且没有使用这两种技术成功利用漏洞的报告。Meltdown 和 Spectre 的戏剧性很强,实际风险很低,恐慌与不确定性再次压倒了常识。并非所有与硬件不安全有关的报告都是恐慌与不确定性。
[]
这项研究表明,英特尔和 STMicro 的 Trusted Protection 模块芯片中存在漏洞,这些漏洞可导致签名密钥被提取,从而破坏了它们所依赖的信任链。研究人员曾参与识别以前的硬件漏洞,并在其领域享有盛誉。本案中的漏洞很容易被利用。对于最终用户来说,可以通过目标浏览器访问恶意网站来利用此特定漏洞,并且在发布时运行的所有版本的 Internet Explorer 上均有效。这个公告值得认真对待。然而,当涉及到有关网络安全的耸人听闻的揭露时,请在相信之前检查证据。