2021信息安全工程师学习笔记(十四)

恶意代码防范技术原理

1、恶意代码概述

恶意代码定义与分类:英文:Malicious Code,一种违背目标系统安全策略的程序代码;会照成系统信息泄露、资源滥用、破坏系统的完整性及可用性;能通过存储介质或网络进行传播,未经授权认证访问或破坏计算机系统。

恶意代码的种类

  • 计算机病毒:Computer Vireus
  • 蠕虫:Worms
  • 特洛伊木马:Trojan Horse
  • 逻辑炸弹:Logic Bombs
  • 细菌:Bacteria
  • 恶意脚本:Malicious Scripts
  • 恶意ActiveX软件
  • 间谍软件:Spyware

恶意代码的传播和植入能力:由被动向主动转变,由本地主机向网络发展;

恶意代码能实现进程隐藏和内容隐藏,还能通信方式隐藏。

恶意代码的攻击目标:由单机环境向网络环境转变,从有线网络环境向无线网络环境演变。

恶意代码逐渐拥有抗监测能力,如通过变形技术来逃避安全防御机制

恶意代码攻击模型:恶意代码的作用机制基本相同,作用过程分为6步:

  • 侵入系统
  • 维持或提升已有的权限
  • 隐蔽
  • 潜伏
  • 破坏
  • 重复前面五步对新的目标实施攻击过程

恶意代码生存技术

1、反跟踪技术:采用反跟踪技术来提高自身的伪装能力和防破译能力,使检测与清楚恶意代码的难度大大增加。

  • A 反动态跟踪技术:禁止跟踪中断。运行系统的单步中断与断点中断服务程序,恶意代码通过修改中断服务程序的入口地址来实现反跟踪的目的;
  • 检测跟踪法:根据检测跟踪调试时和正常执行时的运行环境,中断入口和时间的不同。
  • 其他反跟踪技术:指令流队列法和逆指令流法;
  • B 反静态分析技术
  • 对程序代码分块加密执行。由解密程序再执行时进行译码,立即清除执行完毕后的代码;
  • 伪指令法:将“废指令”插入指令流中,让静态反汇编得不到全部正常的指令;

2、加密技术:让分析者不能正常调试和阅读恶意代码,无法获得恶意代码的工作原理,自然也不能抽取特征串。加密手段:信息加密、数据加密、程序代码加密。

3、模糊变换技术:每感染一个客体对象都会利用模糊变换技术使潜入宿主程序的代码不尽相同。尽管是同一种恶意代码,但仍会具有多个不同样本,几乎不存在稳定的代码。模糊交换技术有以下几种:

  • 指令替换技术:模糊变换引擎对恶意代码的二进制代码进行反扩编,解码并计算指令长度,再对其同义变换;
  • 指令压缩技术:经恶意代码反汇编后的全部指令由模糊变换器检测,对可压缩的指令同义压缩;
  • 指令拓展技术:对汇编指令进行同义扩展,所有经过压缩技术变换的指令都能够使用扩展技术来进行逆变换。扩展技术远比压缩技术的可变换空间大;
  • 伪指令技术:将无效指令插入恶意代码程序体,如空指令;
  • 重编译技术:要在自带编译器或者操作系统提供编译器的基础上进行重新编译。为跨平台的恶意代码出现提供了条件;宏病毒和脚本恶意代码。

4、自动生产技术:普通病毒能够利用“多态性发生器”编译成具有多态性的病毒。多态变换引擎能够让程序代码本身产生改变,但却可以保持原有功能。没产生一个恶意代码,其程序体都会发生变化,反恶意代码软件若只是采用基于特征的扫描技术,则无法检测和清楚这种恶意代码。

5、变形技术:病毒设计者利用病毒特征 代码库固定性这一漏洞,设计出具有同一功能不同特征码的恶意代码。常见的恶意代码变形技术:

  • 重汇编技术:变形引擎对病毒体的二进制代码进行反汇编,解码每一条指令,并对指令进行同义变换;
  • 压缩技术:变形器检测病毒体反汇编后的全部指令,对可进行压缩的一段指令进行同义压缩;
  • 膨胀技术:压缩技术的逆变换就是对汇编指令同义膨胀;
  • 伪指令技术:对病毒体插入废指令;
  • 重编译技术:自带编译器或者利用操作系统提供的编译器进行重新编译。

6、三线程技术:一个恶意代码进程同时开启了三个线程,其中一个为负责远程控制工作的主线程,另外两个为用来监视线程负责检查恶意代码程序是否被删除或被停止自启动的监视线程和守护线程。只要线程被停止,它就会重新启动该进程。

7、进程注入技术:把自身嵌入与这些服务有关的进程中。这类恶意代码只需要安装一次,就能被服务加载到系统中运行,并且可以一直处于活跃状态。

恶意代码攻击技术

1、进程注入技术:将这些与服务相关的嵌入了恶意代码程序的可执行代码作为载体,实现自身隐藏和启动的目的。只需要安装一次,就能被服务加载到系统中运行,并且可以一直处于活跃状态;

2、超级管理技术:部分恶意代码能够攻击反恶意代码软件。

3、端口反向连接技术:指令恶意代码使用端口反向连接技术使攻击的服务端(被控制端)主动连接 客户端(控制端)端口。

4、缓冲区溢出攻击:恶意代码利用系统和网络服务的安全漏洞植入并且执行攻击代码。“红色代码”

恶意代码分析技术:恶意代码分析方法由静态分析方法和动态分析方法:

1、静态分析方法

  • 反恶意代码软件的检测和分析:方法:特征代码法、校验和法、行为监测法、软件模拟法。根据恶意代码的信息去搜寻更多的资料;
  • 字符串分析:寻找文件中使用的ASCII或其他方法编码的连接字符串;
  • 脚本分析:恶意代码是用JS、Perl 或者 shell脚本等脚本语言编写的,那么恶意代码本身就可能带有源代码。通过文本编辑器将脚本打开查看源代码。能用较短时间识别出大量流行的脚本类型。
  • 静态反编译分析:携带解释器的恶意代码可以采用反编译工具查看源代码;
  • 静态反汇编分析:有线性遍历和递归遍历两种;线性遍历:从输入程序的入口点开始反汇编,简单地遍历程序的整个代码区,反汇编它所遇到的每一条指令;递归遍历:算法试图用反汇编出来的控制流指令来指导反汇编过程。

2、动态分析方法

  • 文件监测:对文件系统进行监测;
  • 进程监测:恶意代码要入侵,必须有新的进程生成或盗用系统进程的合法权限,所以被植入进程的细节都能为分析恶意代码提供重要参考信息;
  • 网络活动监测:分析恶意代码还有监测恶意代码的网络行为;当恶意代码在网络上发送包时,嗅探器就会将它们捕获;
  • 注册表监测:恶意代码运行时一般要改变Windows操作系统的配置来改变Windows操作系统的行为;
  • 动态反汇编分析:恶意代码的执行过程中对其进行监测和分析。思想:将恶意代码运行的控制权交给动态调试工具。控制权在程序代码与调试工具之间来回传递。有两种方法:同内存调试:调试工具与被分析恶意代码程序加载到相同的地址空间里。优点:实现代价相对较低,相对来说比较简单,缺点:需要改变被分析程序的地址。仿真调试:虚拟调试;让调试工具与分析的恶意代码程序处于不同的地址空间。优点:不用修改目标程序中的地址,但在进程间控制权的转移上要付出较高的代价。

恶意代码防范策略:一方面:组织管理上必须加强恶意代码的安全防范意识。另一方面,通过技术手段来实现恶意代码防御。

2、计算机病毒分析与防护

计算机病毒概念与特性:是一组具有自我复制、传播能力的程序代码。四个基本特点:

  • 隐蔽性;
  • 传染性:计算机病毒能自我复制。计算机病毒与其他程序最本质的区别在于计算机病毒能传染;
  • 潜伏性:一般不会立即发作,而是等到触发条件满足时,才执行病毒的恶意功能;
  • 破坏性:病毒的破坏后果是不可知的;

计算机病毒组成与运行机制:计算机病毒由三部分组成:

  • 复制传染部件(relicator):控制病毒向其他文件的传染;
  • 隐藏部件(concealer):防止病毒被检测到;
  • 破坏部件(bomb):当病毒符合激活条件后,执行破坏操作;

计算机病毒的生命周期主要有两个阶段

  • 计算机病毒的复制传播阶段:尽可能地隐蔽其行为,不干扰正常系统的功能;计算机病毒主动搜寻新的主机进行感染;
  • 计算机病毒的激活阶段:计算机病毒在该阶段开始逐渐或突然破坏系统;

计算机病毒常见类型与技术

  • 引导型病毒:通过感染计算机系统的引导区而控制系统,病毒将真实的引导区内容修改或替换,当病毒程序执行后,才启动操作系统。
  • 宏病毒:利用宏语言来实现的计算机病毒。文档或数据作为宏病毒的载体。实现了病毒的跨平台传播,它能够感染任何运行Office的计算机;
  • 多态病毒:每次感染新的对象后,通过更换加密算法,改变其存在形式;反病毒软件难以检测到它,一般需要采用启发式分析方法来发现;组成部分:杂乱的病毒体、解密例程、变化引擎和病毒体都被加密;能逃避基于静态特征的病毒扫描器的检测;
  • 隐蔽病毒:试图将自身的存在形式进行隐藏,使得操作系统和反病毒软件不能发现;

计算机病毒防范策略与技术

1、查找计算机病毒源:对计算机文件及磁盘引导区进行计算机病毒检测,主要方法如下:

  • 比较法:用原始备份与被检测的引导扇区或被检测的文件进行比较,检查文件及系统区域参数是否出现完整性变化;
  • 搜索法:每一种病毒体含有的特定字节串对被检测的对象进行扫描;
  • 特征字识别法:只须从病毒体内抽取很少的几个关键特征字,组成特征字库;
  • 分析法:详细分析病毒代码,制定相应的反病毒措施。目的:提取病毒的特征字串或特征字,用于增添到病毒代码库供病毒扫描和识别程序用;

2、阻断计算机病毒传播途径

  • 用户具有计算机病毒防范安全意识和安全操作习惯。用户不要轻易运行未知可执行软件;
  • 清除计算机病毒载体;
  • 安全区域隔离:重要生产区域网络系统与办公网络进行安全分区;

3、主动查杀计算机病毒

  • 定期对计算机系统进行病毒检测;
  • 安装防计算机病毒软件,建立多级病毒防护体系;

4、计算机病毒应急响应技术和措施

  • 备份。对计算机病毒容易侵害的文件、数据和系统进行备份。特别是核心关键计算机系统、还应做到系统级备份;
  • 数据修复技术。对遭受计算机病毒破坏的磁盘、文件等进行修复;
  • 网络过滤技术。通过网络的安全配置,将遭受计算机病毒攻击的计算机或网段进行安全隔离;
  • 计算机病毒应急响应预案。制定受病毒攻击的计算机及网络方面的操作规程和应急处置方案。

计算机病毒防护方案

  • 基于单机计算机病毒防护。此防护作为固守网络终端的最后防线。防护单台计算机;
  • 基于网络计算机病毒防护。通过在网管中心建立网络防病毒管理平台,实现病毒集中监控与管理,在网管所涉及的重要部位设置防病毒软件和设备,对网络系统的服务器、工作站和客户机,进行病毒防范的统一管理;
  • 基于网络分级病毒防护。基于三级管理模式:单机终端杀毒-局域网集中监控-广域网总部管理;
  • 基于邮件网关病毒防护。放置在邮件网关入口处,接收来自外部邮件,对病毒、不良邮件等进行过滤;
  • 基于网关防护。在网络出口处设置有效的病毒过滤系统,防火墙将数据提交给网关杀毒系统进行检查。这种方式几乎不影响网络带框,同时能够过滤多种数据库和邮件中的病毒。网关杀毒是杀毒软件和防火墙技术的完美结合。

3、特洛伊木马分析与防护

特洛伊木马概念与特性:具有伪装能力、隐藏执行非法功能的恶意程序,而受害用户表面上看到的是合法功能的执行。通过伪装成合法程序或文件,植入系统,不具有自我传播能力,而是通过其他的传播机制来实现。当计算机被感染时,攻击者可不同程度地远程控制受害计算机。

特洛伊木马分类:根据特洛伊木马的管理方式:

  • 本地特洛伊木马:木马只运行在本地的单台主机,木马没有远程通信功能;
  • 网络特洛伊木马:具有网络通信连接及服务功能的一类木马。由远程木马控制管理(监测木马代理的活动,远程配置管理代理,收集木马代理窃取的信息)和木马代理(植入目标系统中,伺机获取目标系统的信息或控制目标系统的运行)组成。

特洛伊木马运行机制:整个木马攻击的过程主要分为五个部分:

  • 寻找攻击目标;
  • 收集目标系统的信息;
  • 将木马植入目标系统;
  • 木马隐藏;
  • 攻击意图实现;

特洛伊木马植入技术:是木马攻击目标系统最关键的一步;

  • 主动植入:主动攻击方法,将木马程序通过程序自动安装到目标系统中,植入过程无须受害用户的操作;
  • 被动植入:通过人工干预方式才能将木马程序安装到目标系统中;

被动植入常用的方法

  • 文件捆绑法:将木马捆绑到一些常用的应用软件包中;
  • 邮件附件:木马设计者将木马程序伪装成邮件附件;
  • Web网页:木马程序隐藏在html文件中;

特洛伊木马隐藏技术:隐藏木马的行为或痕迹;技术目标是:将木马的本地活动行为、木马的远程通信过程进行隐藏。

本地活动行为隐藏技术:木马设计者利用操作系统的LKM功能,实现木马程序隐藏。常见的技术方法:文件隐藏、进程隐藏、通信连接隐藏;

远程通信过程隐藏技术:特洛伊木马除了在远程目标端实现隐藏外,还必须实现远程通信过程的隐藏,包括通信内容和通信方式的隐藏;远程通信隐藏的方法:

  • 通信内容加密技术:将木马通信的内容进行加密处理;
  • 通信端口复用技术:共享复用系统网络端口来实现远程通信;端口复用是在保证端口默认服务正常工作的条件下进行复用,具有很强的隐蔽性;
  • 网络隐蔽通道:利用通信协议或网络信息交换的方法来构建不同于正常的通信方式;
  • 特洛伊木马存活技术:特洛伊木马的存活能力取决于网络木马逃避安全监测的能力:反监测技术、中断反网络木马程序运行、端口反向连接功能。

特洛伊木马防范技术:防范木马需要将监测与预警、通信阻断、系统加固及修复、应急管理等多种技术综合集成实现。

  • 基于查看开放端口监测特洛伊木马技术,根据网络通信端口号痕迹进行判断。查看开放端口的技术:系统自带的netstat命令、用端口扫描软件远程检测机器;
  • 基于重要系统文件检测特洛伊木马技术,对重要系统文件进行修改留下的痕迹进行判断。重要的文件一般与系统的自启动相关;
  • 基于系统注册表检测特洛伊木马技术,检查计算机注册表值异常情况;
  • 检测具有隐蔽能力的特洛伊木马技术。

Rootkit:典型的具有隐蔽能力的特洛伊木马。检测其的技术有三类:

  • 针对已知的Rootkit进行检测,基于Rootkit的运行痕迹特征来判断计算机系统是否存在木马。对未知的Rootkit几乎无能为力;
  • 基于执行路径的分析检测方法。
  • 直接读取内核数据的分析检测方法,该方法针对通过修改内核数据结构的方法来隐蔽自己的Rootkit;

基于网络检测特洛伊木马技术:在网络中安装入侵检测系统,通过捕获主机的网络通信,检查通信的数据包是否具有特洛伊木马的特征。

防止特洛伊木马植入

  • 不轻易安装未经过安全认可的软件;
  • 提供完整性保护机制;
  • 利用漏洞扫描软件;

基于网络阻断特洛伊木马技术:利用防火墙、路由器、安全网关等网络设备,对特洛伊木马的通信进行阻断。

清楚特洛伊木马技术:手工清除方法和软件清除方法。

4、网络蠕虫分析与防护

网络蠕虫概念与特性:是一种具有自我复制和传播能力、可独立自动运行的恶意程序。它综合了黑客技术和计算机病毒技术,通过利用系统中存在漏洞的节点主机,将蠕虫自身从一个节点传播到另外一个节点。

网络蠕虫由四个功能模块构成

  • 探测模块:完成对特定主机的脆弱性检测,决定采用何种攻击渗透方式;
  • 传播模块:决定采用各种形式生成各种形态的蠕虫副本;
  • 蠕虫引擎模块:决定采用何种搜索算法对本地或者目标网络进行信息收集;
  • 负载模块:网络蠕虫内部的实现伪代码;

网络蠕虫的运行机制

  • 已经感染蠕虫的主机在网络上搜索易感染目标主机;
  • 已经感染蠕虫的主机把蠕虫代码传送到易感染目标主机上;
  • 易感染目标主机执行蠕虫代码,感染目标主机系统。
  • 目标主机感染后,又开始重复执行上面这三个阶段;

网络蠕虫常用技术
1、网络蠕虫扫描技术: 提高扫描措施有:减少扫描未用的地址空间、在主机漏洞密度高的地址空间发现易感主机、增加感染源。

网络蠕虫发现易感主机的方式

  • 随机扫描:对整个IP地址空间随机抽取的一个地址进行扫描;
  • 顺序扫描:按照本地优先原则,选择它所在网络内的IP地址进行传播,优点:一旦扫描到具体很多漏洞主机的网络时就会达到很好的传播效果;不足:对同一台主机可能重复扫描,引起网络拥塞;
  • 选择性扫描:在事先获知一定信息的条件下,有选择地搜索下一个感染目标主机。是蠕虫病毒的发展方向:选择性随机扫描、基于目标列表的扫描、基于路由的扫描、基于DNS的扫描、分而治之的扫描;

网络蠕虫漏洞利用技术:利用易感染目标主机所存在的漏洞,将蠕虫程序传播给易感染目标主机:

  • 主机之间的信任关系漏洞;
  • 目标主机的程序漏洞;
  • 目标主机的默认用户和口令漏洞;
  • 目标主机的用户安全意识薄弱漏洞;
  • 目标主机的客户端程序配置漏洞;

网络蠕虫防范技术

网络蠕虫监测与预警技术:在网络中安装探测器,从网络环境中收集与蠕虫相关的信息,然后将这些信息汇总分析;

网络蠕虫传播抑制技术:构造一个限制网络蠕虫传播的环境。蜜罐技术;

网络系统漏洞检测与系统加固技术:解决漏洞问题,包括漏洞扫描、漏洞修补、漏洞预防等;

网络蠕虫免疫技术:在易感染的主机系统上事先设置一个蠕虫感染标记,欺骗真实的网络蠕虫;

网络蠕虫阻断与隔离技术:主要利用防火墙、路由器进行控制;

网络蠕虫清楚技术:根据特定的网络蠕虫感染系统后所留下的痕迹,有针对性地删除有关网络蠕虫的文件或进程。

5、僵尸网络分析与防护

僵尸网络概念与特性:攻击者利用入侵手段将僵尸程序(bot or zombie)植入目标计算机上,进而操控受害机执行恶意活动的网络;构建方式:

  • 远程漏洞攻击;
  • 弱口令扫描入侵;
  • 邮件附件;
  • 恶意文档;
  • 文件共享;

僵尸网络运行机制组成

  • 僵尸程序的传播;
  • 对僵尸程序进行远程命令操作和控制;
  • 攻击者通过僵尸网络的控制服务网,给僵尸程序发送攻击命令;

僵尸网络为保护自身安全:控制服务器和僵尸程序的通信使用加密机制,并把通信内容嵌入正常的HTTP流量中,以保护服务器的隐蔽性和匿名信。采用认证机制,保证完整性。

僵尸网络防范技术

  • 僵尸网络威胁监测:利用蜜罐技术获取僵尸网络威胁信息;
  • 僵尸网络检测;
  • 僵尸网络主动遏制;
  • 僵尸程序查杀;

6、其他恶意代码分析与防护

逻辑炸弹:一段依附在其他软件中,并具有触发执行破坏能力的程序代码。触发条件:计数器触发方式、时间触发方式、文件触发方式、特定用户访问触发方式。逻辑炸弹只在触发条件满足后,才开始执行逻辑炸弹的破坏功能。

陷门:是软件系统里的一段代码,允许用户避开系统安全机制而访问系统。不具有自动传播和自我复制功能。

细菌:具有自我复制功能的独立程序。通过复制本身来消耗系统资源。

间谍软件:在用户不知情的情况下被安装在计算机中的各种软件,执行用户非期望的功能。

7、恶意代码防护主要产品与技术指标

恶意代码防护主要产品

  • 终端防护产品;
  • 安全网关产品;
  • 恶意代码监测产品;
  • 恶意代码防护产品;
  • 恶意代码应急响应;

恶意代码防护主要技术指标

  • 恶意代码检测能力;
  • 恶意代码检测准确性;
  • 恶意代码阻断能力;

8、恶意代码防护技术应用

终端防护:在终端上安装一个恶意代码防护代理程序。

APT防护:高级持续威胁(简称APT)通常利用电子邮件作为攻击目标系统。

针对高级持续威胁攻击的特点:部署APT检测系统,检测电子文档和电子邮件是否存在恶意代码。

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

OOOOOK.2021

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值