信息安全工程师软考(14):恶意代码
- 恶意代码Malicious Code
- 病毒Virus
- 蠕虫Worms
- 特洛伊木马Trojan Horse
- 逻辑炸弹Logic Bombs
- 细菌Bacteria
- 恶意脚本Malicious Scripts
- 间谍软件Spyware
恶意代码概述
分类
- 被动传播:
- 病毒、木马、间谍软件、逻辑炸弹
- 特点:需要用户交互触发(如运行带毒文件)
- 主动传播:
- 网络蠕虫(典型代表,具有自主传播能力)
- 现代病毒可能兼具主动传播特性
攻击模型

- 侵入系统
- 感染途径:
- 下载携带恶意代码的程序(如破解软件)
- 恶意邮件附件(如钓鱼邮件中的.doc文件)
- 移动介质传播(U盘/光盘自动运行)
- 系统预装植入(非官方系统镜像风险)
- 感染途径:
- 维持或提升权限
- 核心目标: 获取更高权限(如从普通用户提权至管理员)
- 实现方式: 利用系统漏洞或密码窃取技术
- 隐蔽
- 常见手段:
- 修改文件名/扩展名伪装(如.exe伪装为.txt)
- 删除原始感染文件
- 关闭安全软件(如禁用杀毒服务)
- 常见手段:
- 潜伏
- 触发条件:
- 时间触发(如60天后激活)
- 感染规模触发(如感染40%主机后爆发)
- 典型实例:勒索病毒的延迟爆发策略
- 触发条件:
- 破坏
- 攻击维度:
- 数据窃取(破坏机密性)
- 系统篡改(破坏完整性)
- 服务拒绝(破坏可用性)
- 攻击维度:
- 重复
- 自动化过程: 重复①-⑤步实现持续感染扩散
恶意代码生存技术



恶意代码攻击技术
- 进程注入:将恶意代码注入系统/网络服务实现隐蔽运行,只需安装一次即可持续活跃。典型特征是"寄生"于合法进程。
- 超级管理:通过攻击反恶意代码软件(如关闭杀毒软件)实现隐蔽。考试重点:题干描述"使安全软件瘫痪"即指向该技术。
- 端口反向连接:利用防火墙"内松外紧"特性,由被控端主动连接控制端。
- 缓冲区溢出:利用程序漏洞获取控制权,使传播方式从被动变主动。
恶意代码分析技术

静态分析
- 反恶意代码检测:
- 特征代码法:比对已知恶意代码特征
- 校验和法:通过哈希值比对文件完整性(如注册表校验)
- 行为监测法:监控可疑行为模式
- 软件模拟法:虚拟环境运行检测
- 字符串分析:提取样本中的敏感字符串,包括:
- 恶意代码名称/作者信息
- 后门密码/关联网址
- 调用库函数特征
- 脚本分析:直接查看JS/Perl/Shell等脚本语言的源代码
- 反编译分析:将EXE还原为高级语言代码,可读性较差
- 反汇编分析:
- 线性遍历:从入口点顺序反汇编,可能遗漏跳转表数据
- 递归遍历:通过控制流指令指导反汇编,解决线性法缺陷
动态分析
- 文件监测:追踪恶意代码对文件的增删改操作
- 进程监测:监控异常进程创建或权限盗用
- 网络监测:使用嗅探器分析传播内容
- 注册表监测:监控系统配置数据库的异常修改
- 动态反汇编:
- 同内存调试:调试器与恶意代码同地址空间,需修改目标程序地址
- 仿真调试:通过虚拟化技术隔离调试,可绕过反跟踪技术但开销大
防范策略

- 组织管理:
- 核心是责任落实到人(“有人担责措施才会跟上”)
- 包含安全意识培养、安全制度建立等管理措施
- 技术防御:
- 预防:杀毒软件部署、系统加固、访问控制
- 检测:漏洞扫描、注册表审查
- 应急响应:备份恢复、补丁管理
- 实施要点:符合等保2.0要求,管理措施与技术措施必须同步实施
计算机病毒
- 定义特征:计算机病毒是一组具有自我复制、传播能力的程序代码,常依附在可执行文件或文档文件中。
- 四大特性:
- 隐蔽性:附加在正常软件中,用户未察觉时触发执行
- 传染性:通过自我复制感染无病毒程序或磁盘引导区
- 潜伏性:满足触发条件才执行恶意功能
- 破坏性:后果不可预测,包括数据丢失、系统瘫痪等
- 核心组件:
- 复制传染部件(replicator)
- 隐藏部件(concealer)
- 破坏部件(bomb)
- 生命周期:
- 复制传播阶段:持续数周至数年,主动搜寻新主机感染
- 激活阶段:根据日期/时间/感染文件数等条件触发破坏
常见类型与技术

常见特征码
- 系统病毒:前缀Win32/PE,感染Windows系统的exe或dll文件
- 蠕虫病毒:前缀Worm(如冲击波病毒)
- 木马病毒:前缀Trojan(如游戏木马)
- 脚本病毒:前缀Script(如欢乐时光病毒)
- 宏病毒:前缀Macro(如Word97病毒)
- 后门病毒:前缀Backdoor(如隐藏账号病毒)
- 破坏程序病毒:前缀Harm(如熊猫烧香)
- 捆绑机病毒:前缀Binder
防范策略与技术
- 查找计算机病毒源
- 比较法:对比原始备份与检测对象的完整性
- 搜索法:扫描特定字节串识别病毒特征
- 特征字识别法:抽取关键特征字加速识别
- 分析法:逆向分析病毒代码结构
- 阻断计算机病毒传播途径(重点)
- 用户管理:培养安全意识,不运行未知软件
- 载体消除:专机专用,禁用外部存储介质
- 服务控制:关闭非必要功能(如脚本语言)
- 网络隔离:生产网与办公网安全分区
- 主动查杀计算机病毒
- 定期病毒检测
- 建立多级防护体系(如终端+网络层防护)
- 应急响应和灾备(重点)
- 备份:最有效方法,需系统级备份关键数据
- 数据修复:部分恢复被破坏文件(如勒索病毒)
- 网络过滤:防火墙/AV设备隔离感染主机
- 应急预案:制定标准化处置流程
计算机病毒防护方案
- 单机防护:终端杀毒软件(最后防线)
- 网络防护:集中监控平台+特征库统一更新
- 分级防护:终端-局域网-广域网三级管理
- 邮件防护:网关处过滤病毒邮件
- 网关防护:防火墙联动查杀(不影响带宽)
应用案例

-
基于网络病毒防御的安装部署模式示例图解析
-
架构特点:
- 出口防火墙过滤互联网威胁
- 服务器/工作站安装反病毒软件
- 控制平台集中管理升级任务
-
优势:减少出口带宽占用(特征库本地分发)
-
-
局域网病毒防御架构示例图解析
-
三级管理:
- 终端杀毒软件实时防护
- 监控中心收集威胁情报
- 总部平台统管分支机构
-
信息流:通过Email/平台上报病毒事件
-
特洛伊木马
- 定义:具有伪装能力、隐蔽执行非法功能的恶意程序,英文简称Trojan Horse。
- 传播特性:与病毒和蠕虫不同,木马不具有自我传播能力,而是通过电子邮件附件、文件捆绑等方式传播。
- 危害表现:攻击者可远程控制受害计算机,进行文件访问、命令执行或DDoS攻击等操作。
- 分类:
- 本地特洛伊木马:仅运行在单台主机,无远程通信功能(如UNIX系统下的盗用口令木马)
- 网络特洛伊木马:由远程控制端和代理端组成,具有网络通信功能(当前主流类型)
木马运行机制
- 五阶段攻击过程:
- 目标搜寻:通过网络扫描等方式寻找潜在目标
- 信息收集:获取目标系统类型、网络结构、应用软件、用户习惯等信息
- 木马植入:通过网页点击、邮件附件等途径植入,需分析系统脆弱性
- 行为隐藏:包括本地活动隐藏(文件/进程隐藏)和远程通信隐藏
- 攻击实施:满足触发条件后执行窃密、远程控制等恶意操作
木马植入技术
特洛伊木马植入是木马攻击系统最关键的一步。植入的方法可以分为:
- 被动植入:
- 特点:依赖用户手工操作,通过社会工程学伪装成合法程序
- 典型方法:
- 文件捆绑法(绑定到常用软件安装包)
- 邮件附件法(伪装成合法附件)
- Web网页法(隐藏在HTML文件中)
- 主动植入:
- 特点:无需用户交互,自动完成植入
- 技术原理:利用系统漏洞自动部署木马程序
木马隐藏技术
- 本地隐藏:
- LKM技术:通过动态加载内核模块实现
- 具体方法:文件隐藏、进程隐藏、通信连接隐藏
- 远程隐藏:
- 通信内容加密
- 端口复用(如使用80端口)
- 网络隐蔽通道

木马存活技术
特洛伊木马存活能力取决于网络木马逃避安全监测能力。常见的技术包括:
- 超级管理技术:可以使杀毒软件失效
- 端口反向连接:由内到外发起,逃避防火墙
木马防范技术
- 检测技术:
- 端口检测(netstat命令/端口扫描)
- 系统文件比对(重点检查自启动文件)
- 注册表异常检查
- Rootkit专项检测:
- 特征码检测(仅对已知有效)
- 指令路径分析(对比CPU指令执行数)
- 内核数据读取(直接检查内核结构)
- 防护措施:
- 网络检测(部署IDS识别木马特征)
- 网络阻断(防火墙拦截木马通信)
- 系统加固(漏洞修补、完整性保护)
- 清除方法:
- 手工清除(删除文件/恢复注册表)
- 专用工具清除(终止通信/修复系统)
Rootkit
已获取管理员权限的工具。
- 词源:Root(超级管理员)+Kit(工具包)
- 技术本质:通过修改内核或指令路径隐藏系统对象
- 危害:可隐藏文件、进程、端口等系统关键信息
网络蠕虫
- 定义:网络蠕虫是一种具有自我复制和传播能力、可独立自动运行的恶意程序,综合了黑客技术和计算机病毒技术。
- 核心特性:
- 独立运行:与病毒不同,不依赖宿主文件即可独立运行(病毒需依附文件/程序)
- 高传播性:利用系统漏洞节点传播,多模式化传播途径导致发生频率高、影响面广
- 破坏力强:历史上80%-90%重大攻击事件由蠕虫引发
- 功能模块:
- 探测模块(Probe):检测主机脆弱性,建立开放可扩充的传播途径
- 传播模块(Transport):生成蠕虫副本并在主机间传递
- 引擎模块(Worm Engine):搜索算法收集网络拓扑、用户信息等
- 负载模块(Payload):实现蠕虫功能的伪代码
蠕虫运行机制
-
三阶段循环:
- 搜索阶段:感染主机扫描网络寻找易感目标(如开放135/RPC、445/SMB端口的主机)
- 传送阶段:将蠕虫代码传输至目标主机
- 感染阶段:目标主机执行代码成为新感染源,重复前两阶段
-
传播特点:呈指数级扩散(1→10→100→1000)
蠕虫常用技术
扫描技术
- 随机扫描:对整个IP地址空间随机抽取,感染目标非确定性
- 顺序扫描:
- 按本地优先原则扫描子网(如192.168.1.1→192.168.1.254)
- 可能重复扫描导致网络拥塞
- 选择性扫描(重点发展方向):
- 选择性随机扫描:筛选高概率目标后随机扫描
- 基于目标列表扫描:预生成易感主机列表
- 基于路由扫描:效率是随机扫描的3.5倍(考试重点)
- 基于DNS扫描:利用DNS返回的活跃IP段
- 分而治之扫描:分布式分配扫描任务(如主机A扫1.0网段,主机B扫2.0网段)
漏洞利用技术
- 技术类型:
- 信任关系漏洞:利用共享打印机/文件等信任链传播
- 程序漏洞:缓冲区溢出攻击(如永恒之蓝利用SMB漏洞)
- 默认凭证漏洞:弱口令/空口令
- 安全意识漏洞:伪装合法文件诱导点击(通用于病毒/木马)
- 客户端配置漏洞:利用自动执行下载程序等缺陷
网络蠕虫防范技术

僵尸网络
- 定义:攻击者通过入侵手段将僵尸程序植入目标计算机,操纵受害机执行恶意活动的网络
- 程序本质:与木马高度相似,区别在于僵尸程序兼具远程控制与攻击功能,可视为"具备攻击性的高级木马"
- 控制规模:黑客通过服务端集中控制大量感染主机(如100台),形成可操纵的网络资源
构建方式
- 传播途径:
- 远程漏洞攻击
- 弱口令扫描入侵
- 邮件附件
- 恶意文档
- 文件共享
- 共性特征:与蠕虫病毒传播方式高度重合,核心目标是实现恶意代码植入
运行机制与技术
- 三阶段模型:
- 传播阶段:通过前述方式感染目标主机,植入僵尸程序
- 组网阶段:建立C&C(命令与控制)通道,将分散主机组成可控网络
- 攻击阶段:通过控制服务器下发指令,执行DDoS攻击、密码爆破等恶意活动
- 攻击多样性:具体攻击行为取决于僵尸程序编写时的功能设计,例如:
- 耗尽带宽型DDoS攻击
- 分布式密码爆破攻击
- 数据窃取与横向渗透
防范技术
- 四层防御体系:
- 威胁监测:
- 蜜罐技术(诱捕攻击行为)
- IDS入侵检测系统
- EDR终端检测响应
- 态势感知系统
- 异常检测:分析CC通信等特征流量,识别僵尸网络行为模式
- 主动遏制:
- 路由级IP黑名单
- DNS域名封禁(针对动态IP变换情况)
- 终端清除:使用杀毒软件等安全工具查杀僵尸程序
- 威胁监测:
对比
-
共性危害:均破坏信息安全三要素(保密性、完整性、可用性)
-
特性对比:
- 病毒:
- 必须依附宿主文件传播(如绑定EXE文件)
- 具备自我复制能力
- 典型破坏:文件损坏、系统异常
- 木马:
- 伪装成合法程序诱导执行
- 核心功能:信息窃取/远程控制
- 无自我复制能力
- 典型案例:键盘记录、RAT远程控制
- 蠕虫:
- 独立传播(不依赖宿主文件)
- 主要通过移动介质/内网传播
- 典型破坏:资源耗尽(如"震网"病毒)
- 病毒:
-
分类关系:现代恶意代码界限模糊,如勒索软件兼具蠕虫传播与病毒破坏特性
-
僵尸网络与木马的区别
- 控制维度:
- 木马:针对单机控制(本地/网络木马)
- 僵尸网络:规模化控制网络(需大量感染主机)
- 功能扩展:
- 基础木马:仅实现远程控制
- 僵尸程序:额外集成攻击模块(如DDoS工具包)
- 演化关系:僵尸网络本质是网络木马的集群化升级,通过C&C服务器实现集中化管理
- 控制维度:
其他恶意代码
逻辑炸弹
- 依附性:依附在其他软件中的程序代码,具有触发执行破坏能力
- 触发机制:必须满足特定条件才会执行破坏功能,包括:
- 计数器触发(如全网30%感染后爆发)
- 时间触发(如首台感染60天后爆发)
- 文件触发/特定用户访问触发等
- 组合攻击:常与其他恶意代码结合使用,增强破坏效果
陷门(后门)
- 隐蔽入口:允许绕过系统安全机制访问系统的代码段
- 开发用途:最初用于调试程序、系统维护(如预留SSH非标准端口68011)
- 攻击利用:攻击者用于维持访问权限(避免重复30天攻击过程)
- 传播特性:不具备自动传播和自我复制功能
细菌
- 复制机制:通过创建两个文件为基础进行指数级自我复制
- 攻击目标:不直接攻击软件,但通过消耗CPU/内存/磁盘空间实施DoS攻击
- 典型表现:类似"蠕虫"但无传播性,仅在本机快速复制
间谍软件
- 隐蔽安装:用户不知情情况下安装(常通过软件捆绑"全家桶")
- 恶意行为:
- 弹出广告/浏览器劫持
- 记录击键、浏览习惯
- 窃取账号密码、信用卡号等敏感信息
- 传播限制:通常不具备自我复制功能