AI 助教问 AI 助教
东方瑞通 · CISSP

恶意代码与缓冲区溢出

病毒需宿主、蠕虫自我复制传播、木马伪装合法、勒索软件加密勒索;缓冲区溢出是写入超界覆盖内存,TOCTOU 是检查与使用之间的时间差被利用。

考点精讲

  1. 恶意代码(Malware)分类:病毒(Virus)感染文件、需宿主程序、靠人工传播;蠕虫(Worm)可自我复制、无需宿主、通过网络自动传播;木马(Trojan)伪装成合法软件、无自我复制能力、诱导用户安装后窃取或留后门;勒索软件(Ransomware)加密受害者文件并勒索赎金。缓冲区溢出(Buffer Overflow)当程序向缓冲区写入超过其容量的数据时,溢出数据覆盖相邻内存,可导致程序崩溃或被攻击者劫持执行流(如执行恶意代码),是经典的内存安全漏洞,防御靠安全编码(边界检查、使用安全函数)。TOCTOU(Time-of-Check to Time-of-Use,检查时间与使用时间)漏洞指程序「检查」某资源状态到「使用」它之间存在时间差,攻击者借此间隙篡改资源,属竞态条件。

记忆技巧

记「毒寄生、虫自跑、马伪装、勒索锁」——病毒靠宿主、蠕虫自己跑、木马装好人、勒索锁文件。
缓冲区溢出记「装太多溢出来盖邻居」——超界写入覆盖相邻内存。
TOCTOU 记「检查完了、用之前,被钻了空子」——本质是竞态条件。

常见误区

  • 把蠕虫与病毒混同——蠕虫无需宿主、可自我复制,病毒需宿主、靠人工传播。
  • 把木马当成能自我复制——木马无自我复制能力,靠伪装诱导安装。
  • 把缓冲区溢出当成只导致崩溃——严重时可被劫持执行流、执行任意代码。

真题思路

  • 【示例】 【示例】常考「某恶意代码(自我复制/伪装/加密勒索)属于哪一类」或「缓冲区溢出/TOCTOU 的本质」,病毒与蠕虫的「宿主/自我复制」是高频区分点。参考 Practice Tests 第 8 章(Domain 8)。

常见问题

Q:蠕虫和病毒哪个传播更快?

A:蠕虫,因其可自我复制、自动网络传播。

Q:如何防御缓冲区溢出?

A:安全编码(边界检查、安全函数)、编译器保护(如栈保护)、运行时防护(ASLR、DEP)。

Q:蠕虫和病毒一样吗?

A:不一样,蠕虫无需宿主、可自我复制;病毒需宿主、靠人工传播。

Q:木马会自我复制吗?

A:不会,木马无自我复制能力,靠伪装诱导安装。

Q:缓冲区溢出只会导致崩溃吗?

A:不是,严重时可被劫持执行流、执行任意代码。

相关知识

教材出处:Domain 8 · 软件开发安全 恶意代码与缓冲区溢出

AI 助教

让 AI 助教带你深入学习,把你卡住的地方直接问它

随时为您答疑解惑

开始答疑