Rootkit 是什么? 6 大类别与 4 种预防方式
隐匿软体 Rootkit 可在不被发现的情况下,造成目标电脑严重损害。但 Rootkit 是什么?还有哪些可怕之处? Rootkit 如何运作?有什么办法可以侦测或预防吗?本文将详细介绍 Rootkit 恶意软体。
Rootkit 是什么?
Rootkit 是由一种或多种软件组成的工具套件,黑客可用来获得目标计算机系统的最高管理权限,访问所有文件并进行系统中的所有操作。大多数的 Rootkit 恶意软件设计精密复杂,难以被检测到,还可以帮助隐藏其他恶意软件的踪迹。因此,也有人称 Rootkit 为隐匿软件。而更广义上来说,Rootkit 也可以被视为一种技术。
Rootkit 一词源自于 Unix 操作系统的管理员名称 Root(根;根本),以及 Kit(工具套件),意指具有管理员权限的工具套件。黑客通过在目标计算机植入 Rootkit 恶意软件,可长期潜伏于其中,并从“根本”操作系统操控目标,进行远程控制;藏匿恶意软件;建立绕过安全措施的后门,让黑客轻松控制目标;渗入系统窃取数据;把目标计算机变成僵尸网络,进行 DDoS 攻击;进行间谍监控活动等等网络恶意攻击。虽然 Rootkit 现在多被用于网络攻击,过去也有部分企业或组织应用 Rootkit 于运营管理。
早期 Rootkit 主要用于 Unix/Linux 操作系统,直到 1990 年代末,出现了第一个针对微软操作系统的 Rootkit 软件 NTRootkit。NTRootkit 由资安研究人员设计出,目的是测试与研究 Rootkit 软件在微软操作系统上的效果。随后又出现 He4Hook、Hacker Defender、Vanquish 等 Rootkit 软件,可以在受感染的计算机上隐匿不同类型的文件,Rootkit 相关的网络攻击也开始日渐普遍。
认识 Rootkit 种类
根据攻击与感染目标和运作方式,Rootkit 恶意软件可以分为 6 大类:
1. 硬件/固件 Rootkit(Hardware/Firmware Rootkits)
攻击目标为计算机系统的硬件和固件,也就是我们实际看得见、摸得到的设备,以及用来嵌入至硬件内,驱动硬件设备作业的固件,例如硬盘、路由器或是 BIOS(基本输入输出系统)。安装在硬件或固件的 Rootkit 从比操作系统更底层处获得权限,以至于检测和移除的难度相对更高。也因为硬件/固件 Rootkit 恶意程序直接针对计算机硬件,还可以进行硬件监控,获得目标键盘敲击信息或是控制计算机摄像头和麦克风等设备。
知名硬件/固件 Rootkit 恶意程序「LoJax」,隐藏在统一可扩展固件接口里的 SPI Flash 内存中,可让黑客远程控制受感染计算机或系统。LoJax 难以清除,即使重新安装操作系统也不会被移除,只能通过消除 SPI Flash 内存或是丢弃受感染的主板。
2. 启动程序 Rootkit(Bootloader Rootkits)
启动程序(Bootloader)在计算机开机时,负责将操作系统加载到计算机上。而启动程序 Rootkit 即以计算机启动程序为目标,将原本正常的启动程序替换成经黑客篡改过的恶意版本,让 Rootkit 恶意程序可以在操作系统完全启动前,开始运作。
代表性的启动程序 Rootkit「Alureon」(简称为 TDSS 或 TDL-4),同时为 Rootkit 和木马程序,可用来窃取敏感信息。Alureon 感染计算机开机后首先访问的磁盘 MBR(Master Boot Record,主引导记录),能在操作系统启动前运行,并隐藏自身。曾被视为无法清除的恶意程序,但实际上可用 TDSSKiller 专属工具清除。
3. 内存 Rootkit(Memory Rootkits)
内存 Rootkit 恶意程序的攻击目标为主内存中的随机存取内存(Random-Access Memory,RAM),隐藏于 RAM 上,消耗计算机资源在后台中执行恶意程序,还会降低计算机 RAM 性能。但大多数情况下,计算机一旦重启或用其他方式清除 RAM,内存 Rootkit 恶意程序也会跟着消失。虽然感染计算机的时间较短,内存 Rootkit 也可能对目标计算机的数据和性能造成严重损害。
4. 应用程序 Rootkit(Application Rootkits)
应用程序 Rootkit 攻击目标计算机的方式为将目标计算机中存有的正常文件替换成感染 Rootkit 恶意软件的文件,再借由感染了 Rootkit 的文件进攻计算机上的软件与应用程序,如 NotePad、Word、画图等。举例来说,计算机受应用程序 Rootkit 感染的用户,每次打开特定程序就能让黑客远程操控自己的计算机。受影响的程序仍会照常运作,因此要发现应用程序 Rootkit 的存在并非易事。
5. 核心模式 Rootkit(Kernel Mode Rootkits)
核心模式 Rootkit 为一种针对操作系统的核心层(Kernel Level)进行攻击,较为复杂的 Rootkit 工具套件。黑客可通过核心模式 Rootkit 恶意程序来访问计算机中的文件,甚至还能增减与篡改目标计算机操作系统的代码。
以核心模式 Rootkit 进行网络攻击,通常需要一定技术水准。而核心模式 Rootkit 工具的设计中,若出现了程序错误或小故障,也都会直接影响目标计算机的性能表现,但一方面也会让检测 Rootkit 恶意程序更加容易。
FU Rootkit 为 Windows 平台上的核心模式 Rootkit,可篡改目标的核心数据结构,隐藏进程和改变文件属性。而 Knark Rootkit 针对 Linux 系统设计,同样可以隐藏端口、文件、进程,不让系统管理员看到。
6. 虚拟 Rootkit(Virtual Rootkits)
虚拟机技术(Virtual Machine Technology)可在单一实体硬件上,建立并运行多个独立操作系统和应用程序,而个别建立出来的独立运算环境即为虚拟机(Virtual Machines,VMs)。虽然建构于同一硬件装置,每个虚拟机运作如同一台独立的实体计算机,各自有各自的操作系统、应用程序和运算资源。
虚拟 Rootkit 利用虚拟机技术将自身隐藏于操作系统和主机硬件,假扮成虚拟机让操作系统安装于自身之上,拦截硬件和操作系统之间的数据传输。因此虚拟 Rootkit 不用修改核心就可以篡改操作系统,且检测难度高。
Rootkit 恶意程序传递方法
Rootkit 恶意软件的传播方式和其他恶意软件相同,可以通过电子邮件、USB 随身碟、移动硬盘,以及软件、硬件和固件资安漏洞感染目标计算机或系统。常见的 Rootkit 传播方式包括以下:
- 社交工程:通过钓鱼电子邮件或是钓鱼网站诱骗目标下载并执行 Rootkit。
- 木马程序:将 Rootkit 伪装成正常软件,让目标下载。
- 安全漏洞:针对软硬件系统设计不良的漏洞传递 Rootkit,甚至搭配渗透测试工具(Exploit Kits)找出软件的弱点,再加以利用。
- 外接设备:将 Rootkit 恶意软件藏在 USB 随身碟或是移动硬盘等外接设备,趁用户将其连上计算机时传递。
如何检测是否遭受 Rootkit 入侵?5 种判断迹象
Rootkit 恶意软件以善于隐藏闻名,检测困难,但感染计算机系统后,还是有迹可循。计算机若是出现以下症状,有可能受到 Rootkit 影响:
- 蓝白当机画面:微软操作系统出现系统错误时,屏幕会显示蓝底白字的画面。通常表示有大量错误信息,需重新启动。
- 异常浏览器活动:浏览器出现非自己设置的书签、自动跳转的链接或其他设置选项。
- 网络连接失效:网络连接经常中断,或因为巨量流量无法连接。
- 计算机性能较低:计算机开机或执行指令速度缓慢,甚至经常当机,而连至其他硬件如键盘、鼠标也有同样的问题,无法及时响应其指令。
- 未授权的操作系统设置更改:出现不是自己设置的屏幕保护程序、任务栏自行消失、显示错误的时间和日期等等,任何非自己更改的操作系统设置都可能是感染 Rootkit 的迹象。
怎么移除 Rootkit?
电脑或装置不幸感染了 Rootkit 恶意程式,可以依照以下的步骤处理并移除 Rootkit:
- 备份重要资料:清除 Rootkit 也可能会同时清除电脑中的重要资料,因此在清除前,首先确定已经将系统中的重要资料复制存为备份。
- 使用安全模式开机:部分 Rootkit 恶意软体会阻止使用者在电脑中安装资安系统和移除恶意软体,以安全模式重新开启电脑可以防止 Rootkit 加载,避开此问题。
- 使用多种 Rootkit 扫描工具:利用扫描工具找出 Rootkit 所在之处。且因 Rootkit 恶意软体的种类和变种众多,也各有不同特性,建议同时使用多种扫描工具,避免出现漏网之鱼。
- 清除 Rootkit 恶意软体:扫描确认 Rootkit 种类后,可以针对其特性进行移除
-
- 硬体/韧体 Rootkit:使用官方提供的工具重刷韧体或是更换硬体。
- 启动程式 Rootkit:重建主引导记录(MBR)或 GUID 分区表(GPT)。在某些情况下,也可以选择重新安装作业系统,并清除所有分区。
- 记忆体 Rootkit:重新启动电脑即可清除 RAM 里的 Rootkit 恶意软体。
- 应用程式 Rootkit:使用防毒软体和 Rootkit 清除工具。
- 核心模式 Rootkit:使用特定 Rootkit 清除工具,或是重新安装作业系统,并格式化硬碟。
- 虚拟Rootkit:检查电脑中是否有非自己设定的虚拟机监视器(Virtual Machine Monitor,VMM,用来建立与执行虚拟机),若有的话,先将其移除,再重新安装作业系统和重刷固件。
預防 Rootkit 攻擊的 4 方法
Rootkit 恶意程式在侦测和清除上都相对困难,所以最好的处理办法还是事先做好资安措施,杜绝 Rootkit 入侵,将感染电脑的机会降到最低。以下整理了预防 Rootkit 攻击的最佳做法:
- 提高警觉性:Rootkit 也经常以社交工程的方式传播,不点击可疑电子邮件中的连结,或下载夹带档案。下载软体以官方网站提供的正版程式为主,不要从来路不明的网站下载非法软体。
- 定期更新系统:更新软体硬体修补系统漏洞,减少 Rootkit 程式透过因设计不良而产生的弱点入侵电脑的机会。
- 使用防毒软体:防毒软体可以侦测扫描电脑,建立资安的第一道防护。
- 注意电脑异常活动:Rootkit 恶意软体善于躲避侦测,除了使用防毒软体以外,也可以透过多留意电脑运作时是否有异常活动,来判断有没有可能已遭 Rootkit 入侵。
- 扫描及过滤网路流量:Rootkit 程式可能从外部网路入侵电脑系统,因此过滤流量可以第一时间阻止恶意软体传播。
晟崴科技提供电脑系统资安服务,有效降低 Rootkit 恶意软体威胁。例如弱点扫描服务,找出电脑系统中可能感染 Rootkit 的漏洞;协助您设置 Web 防火墙及
API 防护,过滤流量;以及 MDR 威胁侦测应变服务,随时侦测系统异常活动并即时对应。
立即联络晟崴科技帮您加强资安防护