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

1.1 计算机病毒概念与特性

计算机病毒:是一组具有自我复制、传播能力的程序代码。它常依附在计算机的文件中,如可执行文件或Word文档等

计算机病毒表现的主要症状

  • 计算机屏幕显示异常
  • 机器不能引导启动
  • 磁盘存储容量异常减少
  • 磁盘操作异常的读写
  • 出现异常的声音
  • 执行程序文件无法执行
  • 文件长度和日期发生变化
  • 系统死机频繁
  • 系统不承认硬盘
  • 中断向量表发生异常变化
  • 内存可用空间异常变化或减少
  • 系统运行速度性能下降
  • 系统配置文件改变
  • 系统参数改变

所有计算机病毒都具有以下四个基本特点:

  1. 隐蔽性:计算机病毒附加在正常软件或文档中,一旦用户未察觉,病毒就触发执行,潜入到受害用户的计算机中。病毒的隐蔽性使得受害用户在不知不觉中感染病毒
  2. 传染性:指计算机病毒可以进行自我复制,并把复制的病毒附加到无病毒的程序中,或者去替换磁盘引导区的记录,使得附加了病毒的程序或者磁盘变成了新的病毒源,又能进行病毒复制,重复原先的传染过程。计算机病毒与其他程序最本质的区别在于计算机病毒能传染
  3. 潜伏性:计算机病毒感染正常的计算机之后,一般不会立即发作,而是等到触发条件满足时,才执行病毒的恶意功能,从而产生破坏作用。计算机病毒常见的触发条件是特定日期
  4. 破坏性:病毒的破坏后果是不可知的。据统计,病毒发作后,造成的破坏主要有数据部分丢失、系统无法使用、浏览器配置被修改、网络无法使用、使用受限、受到远程控制、数据全部丢失等

1.2 计算机病毒组成与运行机制

计算机病毒由三部分组成:

  1. 复制传染部件(replicator):功能是控制病毒向其他文件的传染
  2. 隐藏部件(concealer):功能是防止病毒被检测到
  3. 破坏部件(bomb):用在当病毒符合激活条件后,执行破坏操作

计算机病毒将上述三个部分综合在一起,然后病毒实现者用当前反病毒软件不能检测到的病毒感染系统,此后病毒就逐渐开始传播

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

  1. 计算机病毒的复制传播阶段:这一阶段有可能持续一个星期到几年。计算机病毒在这个阶段尽可能地隐蔽其行为不干扰正常系统的功能。计算机病毒主动搜寻新的主机进行感染,如将病毒附在其他的软件程序中,或者渗透操作系统。同时,可执行程序中的计算机病毒获取程序控制权。在这一阶段,发现计算机病毒特别困难,这主要是因为计算机病毒只感染少量的文件,难以引起用户警觉
  2. 计算机病毒的激活阶段:计算机病毒在该阶段开始逐渐或突然破坏系统。计算机病毒的主要工作是:根据数学公式判断激活条件是否满足,用作计算机病毒的激活条件常有日期、时间、感染文件数或其他

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

  1. 引导型病毒:通过感染计算机系统的引导区而控制系统,病毒将真实的引导区内容修改或替换,当病毒程序执行后,才启动操作系统。因此,感染引导型病毒的计算机系统看似正常运转,而实际上病毒己在系统中隐藏,等待时机传染和发作
  2. 宏病毒(Macro Viruses): 是指利用宏语言来实现的计算机病毒。宏病毒的出现改变了病毒的载体模式,以前病毒的载体主要是可执行文件,而现在文档或数据也可作为宏病毒的载体。宏病毒的出现实现了病毒的跨平台传播,它能够感染任何运行Office的计算机
  3. 多态病毒( Polymorphic Viruses): 多态病毒每次感染新的对象后,通过更换加密算法,改变其存在形式。这就意味着反病毒软件常常难以检测到它,一般需要采用启发式分析方法来发现。多态病毒有三个主要组成部分:杂乱的病毒体、解密例程、变化引擎。变化引擎和病毒体都被加密。多态病毒没有固定的特征、没有固定的加密例程,从而就能逃避基于静态特征的病毒扫描器的检测
  4. 隐蔽病毒( Stealth Viruses):隐蔽病毒试图将自身的存在形式进行隐藏,使得操作系统和反病毒软件不能发现。隐蔽病毒使用的技术主要包括:隐藏文件的日期、时间的变化隐藏文件大小的变化病毒加密

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

1. 查找计算机病毒源

对计算机文件磁盘引导区进行计算机病毒检测,以发现异常情况,确证计算机病毒的存在

主要方法如下:

  • 比较法:是用原始备份被检测的引导扇区被检测的文件进行比较,检查文件及系统区域参数是否出现完整性变化
  • 搜索法:是用每一种病毒体含有的特定字节串被检测的对象进行扫描。如果在被检测对象内部发现了某一种特定字节串,就表明发现了该字节串所代表的病毒
  • 特征字识别法:是基于特征串扫描法发展起来的一种新方法。特征字识别法只须从病毒体内抽取很少的几个关键特征字,组成特征字库。由于需要处理的字节很少,又不必进行串匹配,因此大大加快了识别速度,当被处理的程序很大时表现更突出
  • 分析法:通过详细分析病毒代码,制定相应的反病毒措施。使用分析法的目的是确认被观察的磁盘引导区和程序中是否含有病毒,辨别病毒的类型、种类、结构,提取病毒的特征字节串特征字,用于增添到病毒代码库供病毒扫描和识别程序用

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

由于计算机病毒的危害性是不可预见的,因此切断计算机病毒的传播途径是关键防护措施

具体方法如下:

  • 用户具有计算机病毒防范安全意识安全操作习惯用户不要轻易运行未知可执行软件,特别是不要轻易打开电子邮件的附件
  • 消除计算机病毒载体:关键的计算机,做到尽量专机专用;不要随便使用来历不明的存储介质,如磁盘、USB;禁用不需要的计算机服务和功能,如脚本语言、光盘自启动等
  • 安全区域隔离:重要生产区域网络系统办公网络进行安全分区,防止计算机病毒扩散传播

3. 主动查杀计算机病毒

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

4. 计算机病毒应急响应和灾备

即使计算机系统受到病毒破坏后,也能有相应的安全措施应对,尽可能避免计算机病毒造成的损害

应急响应技术和措施主要有以下方面:

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

1.5 计算机病毒防护方案

  1. 基于单机计算机病毒防护:单机病毒防护是传统防御模式,作为固守网络终端的最后防线。阻止来自软盘、光盘、共享文件、互联网的病毒入侵,进行重要数据备份等其他功能,防护单台计算机
  2. 基于网络计算机病毒防护:通过在网管中心建立网络防病毒管理平台,实现病毒集中监控与管理,集中监测整个网络的病毒疫情,提供网络整体防病毒策略配置,在网管所涉及的重要部位设置防病毒软件或设备,在所有病毒能够进入的地方都采取相应的防范措施,防止病毒侵袭。对网络系统的服务器、工作站客户机,进行病毒防范的统一管理,及时更新病毒特征库杀病毒软件的版本升级
  3. 基于网络分级病毒防护:防御策略是基于三级管理模式:单机终端杀毒-局域网集中监控-广域网总部管理
  4. 基于邮件网关病毒防护:邮件网关防毒系统放置在邮件网关入口处,接收来自外部的邮件,对病毒、不良邮件等进行过滤,处理完毕后再将安全邮件转发至邮件服务器
  5. 基于网关防护:网络出口处设置有效的病毒过滤系统,防火墙将数据提交给网关杀毒系统进行检查,如有病毒入侵,网关防毒系统将通知防火墙立刻阻断进行攻击的IP。这种同步查毒的方式几乎不影响网络带宽,同时能够过滤多种数据库和邮件中的病毒。网关杀毒是杀毒软件和防火墙技术的完美结合

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

2.1 特洛伊木马概念与特性

特洛伊木马(Trojan Horse):简称木马,是具有伪装能力、隐蔽执行非法功能的恶意程序,而受害用户表面上看到的是合法功能的执行

目前特洛伊木马己成为黑客常用的攻击方法。它通过伪装成合法程序文件,植入系统,对网络系统安全构成严重威胁

同计算机病毒、网络蠕虫相比较,特洛伊木马不具有自我传播能力,而是通过其他传播机制来实现

受到特洛伊木马侵害的计算机,攻击者可不同程度地远程控制受害计算机,例如访问受害计算机、在受害计算机上执行命令或利用受害计算机进行DDoS攻击

2.2 特洛伊木马分类

根据特洛伊木马的管理方式,可以将特洛伊木马分为

  • 本地特洛伊木马:是最早期的一类木马,特点是:木马只运行在本地的单台主机,木马没有远程通信功能,木马的攻击环境是多用户的UNIX系统,典型例子就是盗用口令的木马
  • 网络特洛伊木马:是指具有网络通信连接及服务功能的一类木马,简称网络木马。此类木马由两部分组成,即远程木马控制管理和木马代理
    • 远程木马控制管理:主要是监测木马代理的活动,远程配置管理代理,收集木马代理窃取的信息
    • 木马代理:则是植入目标系统中,伺机获取目标系统的信息控制目标系统的运行,类似网络管理代理

目前,特洛伊木马一般泛指这两类木马,但网络木马是主要类型

2.3 特洛伊木马运行机制

木马受攻击者的意图影响,其行为表现各异,但基本运行机制相同

整个木马攻击过程主要分为五个部分:

①寻找攻击目标:攻击者通过互联网或其他方式搜索潜在的攻击目标
②收集目标系统的信息:主要包括操作系统类型、网络结构、应用软件、用户习惯等
③将木马植入目标系统:攻击者根据所搜集到的信息,分析目标系统的脆弱性,制定植入木马策略。木马植入的途径有很多,如通过网页点击、执行电子邮件附件
④木马隐藏:为实现攻击意图,木马设法隐蔽其行为,包括目标系统本地活动隐藏远程通信隐藏
⑤攻击意图实现:激活木马,实施攻击。木马植入系统后,待触发条件满足后,就进行攻击破坏活动,如窃取口令、远程访问、删除文件等

2.4 特洛伊木马植入技术

特洛伊木马植入是木马攻击目标系统最关键的一步,是后续攻击活动的基础

特洛伊木马的植入方法可以分为两大类

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

被动植入方法:主要通过社会工程方法将木马程序伪装成合法的程序,以达到降低受害用户警觉性、诱骗用户的目的,常用的方法如下: 

  • 文件捆绑法:将木马捆绑到一些常用的应用软件包中,当用户安装该软件包时,木马就在用户毫无察觉的情况下,被植入系统中
  • 邮件附件:木马设计者将木马程序伪装成邮件附件,然后发送给目标用户,若用户执行邮件附件就将木马植入该系统中
  • Web网页:木马程序隐藏在html文件中,当受害用户点击该网页时,就将木马植入目标系统中

2.5 特洛伊木马隐藏技术

特洛伊木马的设计者为了逃避安全检测,就要设法隐藏木马的行为或痕迹

主要技术目标:就是将木马的本地活动行为、木马的远程通信过程进行隐藏

1.本地活动行为隐藏技术

现在的操作系统具有支持LKM的功能,通过LKM可增加系统功能,而且不需要重新编译内核,就可以动态地加载。木马设计者利用操作系统的LKM功能,通过替换或调整系统调用来实现木马程序的隐藏

技术方法包括:文件隐藏、进程隐藏、通信连接隐藏

2.远程通信过程隐藏技术

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

木马用到的远程通信隐藏的关键技术方法如下:

  • 通信内容加密技术:将木马通信的内容进行加密处理,使得网络安全管理员无法识别通信内容
  • 通信端口复用技术:共享复用系统网络端口来实现远程通信,这样既可以欺骗防火墙,又可以少开新端口。端口复用是在保证端口默认服务正常工作的条件下进行复用,具有很强的隐蔽性
  • 网络隐蔽通道:指利用通信协议网络信息交换的方法来构建不同于正常的通信方式。特洛伊木马的设计者将利用这些隐蔽通道绕过网络安全访问控制机制秘密地传输信息。由于网络通信的复杂性,特洛伊木马可以用隐蔽通道技术掩盖通信内容和通信状态

2.6 特洛伊木马存活技术

特洛伊木马的存活能力取决于网络木马逃避安全监测的能力,一些网络木马侵入目标系统时采用反监测技术,甚至中断反网络木马程序运行。一些高级木马常具有端口反向连接功能

端口反向连接技术:是指由木马代理在目标系统主动连接外部网的远程木马控制端以逃避防火墙的限制

2.7 特洛伊木马防范技术

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

以下为近几年的特洛伊木马防范技术

1.基于查看开放端口检测特洛伊木马技术

基本原理:根据特洛伊木马在受害计算机系统上留下的网络通信端口号痕迹进行判断,如果某个木马的端口在某台机器上开放,则推断该机器受到木马的侵害

查看开放端口的技术有

  • 系统自带的netstat命令
  • 用端口扫描软件远程检测机器

2.基于重要系统文件检测特洛伊木马技术

基本原理:根据特洛伊木马在受害计算机系统上对重要系统文件进行修改留下的痕迹进行判断,通过比对正常的系统文件变化来确认木马的存在。这些重要文件一般与系统的自启动相关,木马通过修改这些文件使得木马能够自启动

3.基于系统注册表检测特洛伊木马技术

Windows类型的木马常通过修改注册表的键值来控制木马的自启动

基本原理:检查计算机的注册表键值异常情况以及对比已有木马的修改注册表的规律,综合确认系统是否受到木马侵害

4.检测具有隐藏能力的特洛伊木马技术

Rootkit是典型的具有隐藏能力的特洛伊木马。目前,检测Rootkit的技术有三类:

  • 第一类是针对已知的Rootkit进行检测:这种方法基于Rootkit的运行痕迹特征来判断计算机系统是否存在木马。缺点:是只能针对特定的已知的Rootkit,而对未知的Rootkit几乎无能为力
  • 第二类是基于执行路径的分析检测方法
    • 基本原理:安装Rootkit的系统在执行一些操作时,由于要完成附加的Rootkit的功能,如隐藏进程、文件等,则需要执行更多的CPU指令,通过利用x86系列的CPU提供的步进模式,在CPU每执行一条指令后进行计数,将测量到的结果与正常的干净的系统测得的数据进行比较,然后根据比较的差异,判断系统是否可能已被安装了Rootkit
    • 这种方法不仅限于己知的Rootkit,对于所有通过修改系统执行路径来达到隐藏和执行功能目的的Rootkit都有很好的作用
  • 第三类是直接读取内核数据的分析检测方法:该方法针对通过修改内核数据结构的方法来隐藏自己的Rootkit,基本原理:直接读取内核中的内部数据以判断系统当前的状态

5.基于网络检测特洛伊木马技术

在网络中安装入侵检测系统通过捕获主机的网络通信,检查通信的数据包是否具有特洛伊木马的特征,或者分析通信是否异常来判断主机是否受到木马的侵害

根据特洛伊木马的植入方法,防止特洛伊木马植入方法

  • 不轻易安装未经过安全认可的软件,特别是来自公共网的软件
  • 提供完整性保护机制,即在需要保护的计算机.上安装完整性机制,对重要的文件进行完整性检查。例如安装一种起完整性倮护作用的设备驱动程序,这些程序拦截一些系统服务调用,禁止任何新的模块的载入,从而使系统免于Rootk it的危害
  • 利用漏洞扫描软件,检查系统存在的漏洞,然后针对相应的漏洞,安装补丁软件包

6.基于网络阻断特洛伊木马技术

特洛伊木马的传播运行都依赖于网络通信

技术原理:利用防火墙、路由器、安全网关等网络设备,对特洛伊木马的通信进行阻断,从而使得特洛伊木马的功能失效或限制其传播

7.清除特洛伊木马技术

技术方法:

  • 手工清除方法
  • 软件清除方法

工作原理:删除特洛伊木马在受害机器上留下的文件,禁止特洛伊木马的网络通信,恢复木马修改过的系统文件或注册表。目前,市场上有专业的清除特洛伊木马的工具


友情链接:http://xqnav.top/


恶意代码防范技术原理-计算机病毒和特洛伊木马分析与防护相关推荐

  1. 信安教程第二版-第14章恶意代码防范技术原理

    第14章恶意代码防范技术原理 14.1 恶意代码概述 261 14.1.1 恶意代码定义与分类 261 14.1.2 恶意代码攻击模型 262 14.1.3 恶意代码生存技术 263 14.1.4 恶 ...

  2. 信息安全工程师笔记-恶意代码防范技术原理

    恶意代码定义 违背目标系统安全策略的程序代码,会造成目标系统信息泄漏.资源滥用,破坏系统的完整性及可用性: 它能够经过存储介质或网络进行传播,从一台计算机系统传到另外一台计算机系统,未经授权认证访问或 ...

  3. 计算机病毒与恶意代码防范技术

    一,计算机病毒概述 计算机病毒是一段可执行的程序代码,它们附着在各种类型的文件上,随着文件从一个用户复制给另一个用户时,从而蔓延传播. 1,计算机病毒定义 我国法律对病毒的定义: 计算机病毒是指编制或 ...

  4. 恶意代码防范技术笔记(七)

    蠕虫 蠕虫的最大贡献:蠕虫更像是一种传播方式 1.基本概念 定义: 蠕虫(Worm)是恶意代码的一种,它的传播通常不需要所谓的激活.它通过分布式媒介散布特定信息或错误,进而造成网络服务遭到拒绝并发生锁 ...

  5. 恶意代码检测技术的演化

    from:http://www.4ucode.com/Study/Topic/1407760 在本文中我们讨论了识别恶意代码的各种方法,它们彼此间在功能上(以及时间上)的联系,它们的技术以及特点.从一 ...

  6. [系统安全] 三十三.恶意代码检测(3)基于机器学习的恶意代码检测技术

    您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...

  7. 20145212 罗天晨 《网络对抗》Exp3 Advanced 恶意代码伪装技术实践

    恶意代码伪装技术实践 木马化正常软件. 啊哈--原本以为很复杂--然后我看了一下蔡野同学的博客,发现原理竟然如此简单-- 对原先生成病毒的代码稍作修改: 于是--把生成的后门软件改成骗人的名字:这里改 ...

  8. 恶意代码对抗技术入门

    Author:ZERO-A-ONE Date:2021-01-20 来自视频<漏洞银行|浅谈恶意代码对抗技术>,主要从两个方面进行入手: 对抗反汇编 反调试 一.对抗反汇编(静态) 1.1 ...

  9. 6.1 恶意代码防范

    文章目录 一.恶意代码的发展史 1.发展史 二.恶意代码分类与传播方式 1.恶意代码的发展趋势 2.传播方式 三.恶意代码的启动技术 1.加载方式 四.恶意代码生存技术 1.进程保护 2.检测对抗 五 ...

  10. 恶意代码检测技术——签名、启发式、行为式

    随着恶意代码成为信息安全的重要威胁,恶意代码检测技术成为信息安全领域的重要研究方向.目前已经有基于签名.启发式.行为式等几种检测恶意代码的方法,应用最广泛也是最成熟的当属基于签名的检测技术,当前研究的 ...

最新文章

  1. H5 自动播放背景音频,兼容安卓和苹果手机, ios createInnerAudioContext 无法自动播放解决
  2. 来给你代码加上美颜吧!
  3. 9岁去读博!全球最年轻的大学毕业生火了:4岁上小学,8岁进入荷兰“中科大”,智商145...
  4. 深度解密Go语言之sync.pool
  5. 最近在群里┏━━━━━━━━━飞鸽传书━━━━━━━━━━┓
  6. opencv中,c和c++版本区别体验
  7. 单片机tcp异常处理_TCP三次握手、四次挥手出现意外情况时,为保证稳定,是如何处理的...
  8. 离职阿里4年后,我给年轻人的7点建议
  9. 典型相关分析(cca)原理_全网最细的图文详解——手把手教你不会代码一样做RDA/CCA分析!...
  10. 往十年不忘初心,新十年不负韶华丨万字长文带你完整回顾2020数据技术嘉年华...
  11. 507「LibreOJ NOI Round #1」接竹竿-DP
  12. Oracle的四分位数函数
  13. python的bytes数据类型
  14. php gd表情包,gd表情包
  15. 锁定计算机按键精灵运行,最新按键精灵脚本代码大全 按键精灵命令运行方法...
  16. 十分钟了解K-means聚类
  17. c语言函数递归相关知识及应用
  18. kafka | 生产者压缩算法面面观
  19. 17.2.20 Sparsifying Neural Network Connections for Face Recognition 小感
  20. 解决Win10系统msconfig配置错误后无法启动的问题

热门文章

  1. matlab函数sinh,matlab sinh 使用方法
  2. 移动机器人路径规划:人工势场法
  3. 自动脚本 android,原神自动脚本全功能版
  4. 德标螺纹规格对照表_常用螺栓的标准和规格表
  5. 【更新中…】Latex语法总结
  6. python 调用bat失败_死机、卡顿、蓝屏,Python部门的老江湖告诉我的一些超级变态代码...
  7. 我的世界启动时要Java_我的世界启动时Java出现日志怎么办
  8. 双线性的定义以及他的性质
  9. 线性代数核心思想及应用——行列式习题集(附详解)
  10. 地方旅游网站源码,PHP开源,PC+WAP+微信三合一,免费分享