0Pricing
Cloud & IT Cert Prep · 课时

病毒、蠕虫与木马

比较可自我复制的病毒、可在网络中传播的蠕虫和伪装的木马,了解它们各自的传播方式及通常造成的损害。

病毒、蠕虫与木马 是 CoddyKit 上的免费 Cloud & IT Cert Prep 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cloud & IT Cert Prep 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cloud & IT Cert Prep 课程共包含 4 节课。

恶意软件的构成

Malware(恶意软件)是指任何旨在干扰系统、破坏系统、获取未经授权的访问权限或从系统中窃取数据的软件。这个术语涵盖许多不同类别,它们在传播方式、执行的操作以及规避检测技术方面各不相同。Security+ 会测试您根据恶意软件的传播机制(如何传播)、有效载荷(造成什么损害或执行什么操作)以及持久化机制(如何在重启后继续存活)区分恶意软件类型的能力。三种基础类别是病毒、蠕虫和 Trojan。

病毒:感染与自我复制

病毒是一种附着在合法主机文件上的恶意软件,需要人为操作(执行受感染的文件)才能传播。受感染的文件运行时,病毒会将自身代码注入其他可执行文件、文档或引导扇区,从而进行复制。病毒类型包括文件感染型病毒(附着在 .exe 文件上)、宏病毒(嵌入 Office 文档,并在宏运行时执行)、引导扇区病毒(感染 MBR,并在 OS 之前加载)以及多态病毒(每次感染时改变代码特征,以规避基于特征码的检测)。

# Virus detection evasion techniques:
# Polymorphic:  changes code signature each replication
# Metamorphic:  rewrites itself entirely each time (harder to detect)
# Stealth:      intercepts OS calls to hide infected files
# Encrypted:    body encrypted, only decryptor visible to scanner

# File infector: appends or prepends code to executable
# Macro virus:   lives in Office document; runs via VBA macros
# Boot sector:   infects MBR/VBR; loads before OS; bypasses AV

蠕虫:无需主机即可自我传播

蠕虫是一种可自我复制的恶意软件,能够独立地在网络中传播,无需主机文件或人为操作。蠕虫会利用网络漏洞或薄弱凭据,将自身复制到其他系统。2003 年的SQL Slammer蠕虫利用单个 UDP 数据包,在 10 分钟内感染了 75,000 个系统。2017 年的WannaCry勒索软件利用针对 SMBv1 的 EternalBlue 漏洞,以蠕虫的方式传播。蠕虫通过造成网络拥塞并大规模投递有效载荷,带来巨大损害。及时修补和网络分段是主要防御措施。

# Worm propagation methods:
# Network vulnerability: EternalBlue (SMBv1 RCE) - WannaCry, NotPetya
# Credential brute-force: weak/default passwords (Mirai)
# Email: attaches to outgoing email (ILOVEYOU worm)
# IM/Social: spreads via messaging platforms
# File shares: copies to network drives

# WannaCry timeline:
# 1. Exploits EternalBlue (SMBv1 CVE-2017-0144)
# 2. Installs DoublePulsar backdoor
# 3. Deploys ransomware payload
# 4. Scans for more SMBv1 hosts -> repeat

Trojan:伪装的恶意软件

Trojan horse(或 Trojan)是一种伪装成合法软件的恶意软件。与病毒和蠕虫不同,Trojan 不会自我复制,而是依靠用户安装它:用户误以为它是有用的东西,例如免费游戏、破解应用程序、实用工具、Fake 杀毒软件或软件更新。安装后,Trojan 会执行其恶意有效载荷,可能包括安装后门、充当RAT(Remote Access Trojan)、记录击键,或下载其他恶意软件。Trojan 经常被用于建立初始访问权限,然后部署破坏性更强的有效载荷。

# Trojan examples and categories:
# Backdoor Trojan: opens listening port for remote control
# RAT (Remote Access Trojan): full remote control, keylog, screenshot
#   Examples: DarkComet, NetBus, Sub7, njRAT, AsyncRAT
# Downloader Trojan: downloads and installs additional malware
#   Examples: Emotet (banking -> loader), TrickBot
# Banking Trojan: intercepts online banking sessions
#   Examples: Zeus, Dridex, Ursnif
# Fake AV: pretends to be antivirus, demands payment to 'clean'

病毒、蠕虫和 Trojan 的比较

Security+ 考试经常测试这三类恶意软件之间的区别。关键区别如下:病毒需要主机文件和人为操作才能传播,并会感染合法文件。蠕虫是自包含且可自我传播的恶意软件——它们会自动通过网络传播,不会附着到其他文件上,也不需要用户交互。Trojan不会自我复制,而是依靠欺骗——必须诱使用户安装它们。一种恶意软件可能结合多种特征(例如丢弃 Trojan 有效载荷的蠕虫),因此进行分类时应关注占主导地位的传播机制。

# Classification comparison:
# Characteristic      Virus    Worm    Trojan
# Requires host file    YES      NO      NO
# Self-replicates       YES      YES     NO
# Requires user action  YES      NO      YES (install)
# Network spread        SLOW     FAST    NO (user-driven)
# Typical goal          Damage   Spread  Persistence/backdoor

僵尸网络与命令和控制(C2)

许多 Trojan 和蠕虫会与Command-and-Control(C2)服务器建立通信——这是攻击者用来向受感染主机发送指令的远程服务器。大量连接到 C2 的主机构成僵尸网络。僵尸网络可用于 DDoS 攻击、垃圾邮件活动、加密货币挖矿和凭据窃取。C2 通信可能使用 HTTP/HTTPS,与正常 Web 流量混在一起;也可能使用 DNS 隧道,将通信隐藏在 DNS 查询中;还可能使用没有中央服务器可供关闭的点对点协议。检测 C2 流量需要进行 DNS 监控、检查代理日志,并通过网络流分析发现异常的信标通信模式。

# C2 detection indicators:
# Beaconing: regular outbound connections at fixed intervals
# Unusual DNS: long subdomains, high query volume, new domains
# HTTPS to non-CDN IPs: encrypted C2 often uses bulletproof hosting
# Non-standard port HTTPS: HTTPS on port 8443, 4443, etc.
# Large outbound data: data exfiltration spike

# Block C2 at network level:
# DNS sinkhole + proxy with URL categorization
# Threat intelligence feeds for known C2 domains/IPs

病毒特征码与行为检测

传统防病毒软件依靠基于特征码的检测,即将文件与已知恶意软件特征码(哈希或代码模式)数据库进行比较。特征码检测速度快,但无法有效应对新型或经过修改的恶意软件。行为检测(由 EDR 平台使用)会实时监控程序行为,例如创建子进程、修改注册表项、向其他进程注入代码,或联系已知恶意 IP。启发式分析会对代码进行静态分析,查找类似恶意软件的模式,而不要求精确匹配特征码。沙箱处理会在隔离环境中执行可疑文件,以便安全地观察其行为。

# Detection method comparison:
# Signature-based:
#   + Fast, low false-positive rate for known malware
#   - Fails on new, polymorphic, encrypted malware

# Heuristic:
#   + Catches variants of known families
#   - Higher false-positive rate

# Behavioral (EDR):
#   + Catches zero-day and fileless malware
#   - Requires tuning to reduce alert fatigue

# Sandbox:
#   + Definitive judgment by observing actual execution
#   - Sophisticated malware detects sandbox and stays dormant

多部位病毒与宏病毒

多部位病毒会同时使用多种感染途径,例如同时感染可执行文件和引导扇区。这样会增加彻底清除的难度,因为只清理其中一种途径会让另一种途径继续活跃并重新感染系统。宏病毒通过将恶意 VBA(Visual Basic for Applications)宏嵌入 Microsoft Office 文档来感染文档文件。当文档打开且宏已启用时,病毒就会运行。宏病毒很容易通过email附件传播。主要防御措施是默认禁用宏,并且只允许运行来自受信任发布者的数字签名宏。

# Macro virus defense - Group Policy:
# Office 365/2016+: Trust Center -> Macro Settings
# 'Disable all macros except digitally signed macros'
# Or: 'Disable all macros with notification'
#
# Advanced: Attack Surface Reduction (ASR) rules in Defender:
# 'Block all Office applications from creating child processes'
# 'Block Office applications from creating executable content'
# 'Block execution of potentially obfuscated scripts'

传播预防策略

防止恶意软件传播需要采用分层防御。针对病毒:禁用宏执行,扫描所有文件传输(email网关、Web 代理、USB 扫描),并保持终端防护软件更新。针对蠕虫:及时安装补丁(大多数蠕虫 Exploits 都针对已知的 CVE),禁用不必要的网络协议(禁用 SMBv1),对网络进行分段以限制横向传播范围,并在所有联网服务上强制使用强身份验证。针对Trojan:强制实施应用程序允许列表,教育用户不要安装未经授权的软件,并在安装前 Verify 软件哈希。深度防御可以弥补单个控制措施的遗漏。

# Disable SMBv1 (prevent WannaCry-style worm propagation):
# PowerShell:
Set-SmbServerConfiguration -EnableSMB1Protocol $false
# Or Group Policy:
# Computer Config -> Admin Templates -> Network -> Lanman Server
# 'Enable insecure guest logons' = Disabled

# Verify SMBv1 is disabled:
Get-SmbServerConfiguration | Select EnableSMB1Protocol

Drive-By 下载与水坑攻击

Drive-By 下载是指用户访问恶意或遭入侵的网站时,网页在加载过程中静默安装恶意软件,用户无需进行其他操作。攻击者会利用浏览器或插件漏洞(旧版 Flash、Java、PDF 阅读器)执行恶意代码。水坑攻击会入侵目标群体经常访问的合法网站,植入 Drive-By 下载代码,以感染访问者。攻击者不是直接攻击目标,而是“污染水坑”,等待受害者自行前来。防御措施包括及时更新浏览器和插件、对插件使用点击播放,以及部署能够阻止已知恶意网站的 Web 代理。

# Drive-by download defense:
# 1. Keep browser, OS, and plugins fully patched
# 2. Disable Flash, Java, and legacy plugins entirely
# 3. Use web proxy with URL filtering
# 4. Enable click-to-play for remaining plugins
# 5. Use browser content security policies (CSP header)
# 6. Consider browser isolation (remote browser in cloud sandbox)
#    -> no local code execution even if site is malicious

恶意软件事件响应

检测到恶意软件后,响应过程遵循 NIST IR 生命周期。遏制:立即隔离受感染主机(将其从网络中移除,或应用基于主机的防火墙规则),以阻止恶意软件继续传播。根除:对于严重感染,重新制作系统映像比尝试清理更安全;清理可能无法消除持久化机制残留的风险。证据保全:如果需要进行取证,应在重新制作系统映像前获取内存映像和磁盘映像。恢复:从干净的备份中恢复,Verify 完整性,并密切监控是否出现重新感染的迹象。记录失陷指标(IoCs),以改进未来的检测。

# Malware containment (immediate isolation):
# Network level: firewall rule to block host traffic
iptables -I INPUT 1 -s 192.168.1.50 -j DROP
iptables -I OUTPUT 1 -d 192.168.1.50 -j DROP

# Host level: disable network adapter (prevents spread)
ip link set eth0 down

# Memory image before remediation:
winpmem_mini_x64.exe memory.dmp
# Disk image:
dcfldd if=/dev/sda of=/forensics/sda.img hash=sha256

快速检查

测试您对本课 CompTIA Security+ (SY0-701) 概念的理解。

课程回顾

本课中,您学习了:病毒附着在主机文件上,需要用户操作才能传播,并使用多态等技术规避特征码检测;蠕虫通过利用漏洞在网络中自我传播,无需用户操作,从而造成快速、大规模感染;Trojan伪装成合法软件,诱骗用户安装,通常还会建立后门和 C2 通信。接下来我们将详细探讨勒索软件和加密锁定型恶意软件。

常见问题解答

「病毒、蠕虫与木马」课时是免费的吗?

是的 — 「病毒、蠕虫与木马」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cloud & IT Cert Prep 课程的其余内容,请升级到 CoddyKit PRO。 Cloud & IT Cert Prep 课程共包含 4 节课。

「病毒、蠕虫与木马」这节课中我会学到什么?

比较可自我复制的病毒、可在网络中传播的蠕虫和伪装的木马,了解它们各自的传播方式及通常造成的损害。 你通过在浏览器中直接运行的动手代码来练习 Cloud & IT Cert Prep,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Cloud & IT Cert Prep 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Cloud & IT Cert Prep 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。

「病毒、蠕虫与木马」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Cloud & IT Cert Prep 课中编写并运行代码吗?

能。每节 Cloud & IT Cert Prep 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 病毒、蠕虫与木马
  2. 勒索软件与加密锁定程序
  3. Rootkit、间谍软件与键盘记录器
  4. 无文件恶意软件与寄生式攻击
← 返回 Cloud & IT Cert Prep