恶意代码防范技术原理-恶意代码概述

这篇具有很好参考价值的文章主要介绍了恶意代码防范技术原理-恶意代码概述。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、恶意代码定义与分类

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

恶意代码的种类:包括计算机病毒( Computer Virus)、 蠕虫(Worms)、特洛伊木马(Trojan Horse)、逻辑炸弹( Logic Bombs)、 细菌(Bacteria)、恶意脚本(Malicious Scripts)和恶意ActiveX控件、间谍软件(Spyware)等

恶意代码分类

恶意代码防范技术原理-恶意代码概述

随着计算机技术的普及和信息网络化的发展,恶意代码的危害性日益扩大,现在已经出现手机病毒。更令人担忧的是,恶意代码逐渐拥有抗监测能力,如通过变形技术逃避安全防御机制

  • 恶意代码的传播和植入能力:被动主动转变,由本地主机向网络发展
  • 恶意代码具有更强的隐蔽性,不仅实现进程隐藏内容隐藏,而且也能做到通信方式隐藏
  • 在恶意代码的攻击目标方面,恶意代码由单机环境网络环境转变,从有线网络环境向无线网络环境演变

二、恶意代码攻击模型

恶意代码的行为不尽相同,破坏程度也各不相同,但它们的作用机制基本相同

作用过程步骤

  1. 侵入系统:恶意代码入侵有许多途径,如:从互联网下载的程序,其自身也许就带有恶意代码;接收了已被恶意感染的电子邮件;通过光盘或软盘在系统上安装的软件;攻击者故意植入系统的恶意代码等
  2. 维持或提升已有的权限:恶意代码的传播与破环需要建立在盗用用户或者进程的合法权限的基础之上
  3. 隐蔽:为了隐蔽已经侵入系统的恶意代码,可能会采取对恶意代码改名、删除源文件或者修改系统的安全策略等方式
  4. 潜伏:恶意代码侵入系统后,在具有足够的权限并满足某些条件时就会发作,同时进行破坏活动
  5. 破坏:恶意代码具有破坏性的本质,为的是造成信息丢失、泄密,系统完整性被破坏等
  6. 重复前面5步新的目标实施攻击过程

恶意代码攻击模型

恶意代码防范技术原理-恶意代码概述

三、恶意代码生存技术

3.1 反跟踪技术

恶意代码靠采用反跟踪技术来提高自身的伪装能力防破译能力使检测与清除恶意代码的难度大大增加

反跟踪技术分类

①反动态跟踪技术

  • 禁止跟踪中断:针对调试分析工具运行系统的单步中断断点中断服务程序,恶意代码通过修改中断服务程序的入口地址来实现其反跟踪的目的
  • 检测跟踪法:根据检测跟踪调试时和正常执行时的运行环境、中断入口时间的不同,采取相应的措施实现其反跟踪目的
  • 其他反跟踪技术:指令流队列法逆指令流法

②反静态分析技术

  • 对程序代码分块加密执行:为了不让程序代码通过反汇编进行静态分析,将分块的程序代码以密文形式装入内存,由解密裎序在执行时进行译码,立即清除执行完毕后的代码,力求分析者在任何时候都无法从内存中获得执行代码的完整形式
  • 伪指令法:伪指令法指将“废指令”插入指令流中,让静态反汇编得不到全部正常的指令,进而不能进行有效的静态分析。伪指令技术还广泛应用于宏病毒脚本恶意代码之中

3.2 加密技术

加密技术是恶意代码进行自我保护的手段之一,再配合反跟踪技术的使用,让分析者不能正常调试阅读恶意代码,无法获得恶意代码的工作原理,自然也不能抽取特征串

从加密的内容上划分,加密手段有三种:信息加密、数据加密程序代码加密。大部分恶意代码对程序体本身加密,但还有少数恶意代码对被感染的文件加密

3.3 模糊变换技术

恶意代码每感染一个客体对象时都会利用模糊变换技术使潜入宿主程序的代码不尽相同。尽管是同一种恶意代码,但仍会具有多个不同样本,几乎不存在稳定的代码,只采用基于特征的检测工具一般无法有效识别它们。随着这类恶意代码的增多,不但使病毒检测和防御软件的编写难度加大,还会使反病毒软件的误报率增加

模糊变换技术分类

  • 指令替换技术:模糊变换引擎(Mutation Engine)对恶意代码的二进制代码进行反汇编,解码并计算指令长度,再对其同义变换。例如,指令XOR REG,REG被变换为SUB REG,REG
  • 指令压缩技术:经恶意代码反汇编后的全部指令由模糊变换器检测,对可压缩的指令同义压缩。压缩技术要想使病毒体代码的长度发生改变,必须对病毒体内的跳转指令重定位。例如指令MOV REG,12345678 / PUSH REG变换为指令PUSH 12345678等
  • 指令扩展技术:扩展技术是对汇编指令进行同义扩展所有经过压缩技术变换的指令都能够使用扩展技术来进行逆变换。扩展技术远比压缩技术的可变换空间大,指令甚至能够进行几十或上百种的扩展变换。扩展技术也需要对恶意代码的长度进行改变,进行恶意代码中跳转指令的重定位
  • 伪指令技术:主要是将无效指令插入恶意代码程序体,例如空指令
  • 重编译技术:使用重编译技术的恶意代码中携带恶意代码的源码要在自带编译器或者操作系统提供编译器的基础上进行重新编译,这种技术不仅实现了变形的目的,而且为跨平台的恶意代码的出现提供了条件。这表现在UNIX/Linux操作系统,系统默认配置有标准C的编译器。宏病毒和脚本恶意代码是典型的采用这类技术变形的恶意代码。Tequtla第一例在全球范围传播和破坏的变形病毒

3.4 自动生产技术

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

3.5 变形技术

病毒设计者利用病毒特征代码库固定性这一漏洞,设计出具有同一功能不同特征码的恶意代码

恶意代码变形技术包括

  • 重汇编技术:变形引擎对病毒体的二进制代码进行反汇编解码每一条指令, 并对指令进行同义变换。如“Regswap”就采用简单的寄存器互换的变形
  • 压缩技术:变形器检测病毒体反汇编后的全部指令,对可进行压缩的一段指令进行同义压缩
  • 膨胀技术:压缩技术的逆变换就是对汇编指令同义膨胀
  • 伪指令技术:主要是对病毒体插入废指令,例如空指令、跳转到下一指令和压弹栈等
  • 重编译技术:病毒体携带病毒体的源码,需要自带编译器或者利用操作系统提供的编译器进行重新编译,这为跨平台的恶意代码的出现打下了基础

3.6 三线程技术

为了防止恶意代码被外部操作停止运行

工作原理:一个恶意代码进程同时开启了三个线程其中一个负责远程控制工作的主线程另外两个用来监视线程负责检查恶意代码程序是否被删除或被停止自启动的监视线程和守护线程。注入其他可执行文件内的守护线程,同步于恶意代码进程。只要进程被停止,它就会重新启动该进程,同时向主线程提供必要的数据,这样就使得恶意代码可以持续运行

3.7 进程注入技术

系统启动时操作系统的系统服务网络服务一般能够自动加载。恶意代码程序为了实现隐藏启动的目的把自身嵌入与这些服务有关的进程中。这类恶意代码只需要安装一次,就能被服务加载到系统中运行,并且可以一直处于活跃状态

3.8 通信隐藏技术

实现恶意代码的通信隐藏技术有四类

  • 端口定制技术:旧木马几乎都存在预设固定的监听端口,但是新木马一般都有定制端口的功能优点:木马检测工具的一种检测方法就是检测缺省端口,定制端口可以避过此方法的检测
  • 端口复用技术:利用系统网络打开的端口(如25和139等) 传送数据。具有很强的欺骗性,可欺骗防火墙等安全设备,可避过IDS和安全扫描系统等安全工具
  • 通信加密技术:将恶意代码的通信内容加密发送优势:能够使得通信内容隐藏弊端:是通信状态无法隐藏
  • 隐蔽通道技术:能有效隐藏通信内容和通信状态,但恶意代码编写者需要耗费大量时间以便找寻隐蔽通道

3.9 内核级隐藏技术

①LKM隐藏:LKM是可加载内核模块,用来扩展Linux的内核功能。LKM能够在不用重新编译内核的情况下把动态加载到内存中。基于这个优点,LKM技术经常使用在系统设备的驱动程序和Rootkit中。LKM Rootkit通过系统提供的接口加载到内核空间,将恶意程序转化成内核的某一部分, 再通过hook系统调用的方式实现隐藏功能

②内存映射隐藏:内存映射是指由一个文件到一块内存的映射。内存映射将硬盘上的内容映射至内存中,用户可以通过内存指令读写文件。使用内存映射避免了多次调用I/O操作的行为,减少了不必要的资源浪费

四、恶意代码攻击技术

4.1 进程注入技术

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

4.2 超级管理技术

部分恶意代码能够攻击反恶意代码软件。恶意代码采用超级管理技术对反恶意代码软件系统进行拒绝服务攻击,阻碍反恶意代码软件的正常运行

4.3 端口反向连接技术

防火墙对于外网进入内部的数据流有严格的访问控制策略,但对于从内到外的数据并没有严格控制。指令恶意代码使用端口反向连接技术使攻击的服务端(被控制端)主动连接客户端(控制端)端口。如国外的“Boinet'’ ,我国的“网络神偷”、“灰鸽子”

4.4 缓冲区溢出攻击技术

恶意代码利用系统和网络服务的安全漏洞植入并且执行攻击代码,攻击代码以一定的权限运行有缓冲区溢出漏洞的程序来获得被攻击主机的控制权。缓冲区溢出攻击成为恶意代码从被动式传播转为主动式传播的主要途径之一。例如,“红色代码”

五、恶意代码分析技术

恶意代码的分析方法构成

恶意代码防范技术原理-恶意代码概述

5.1 静态分析方法

  1. 反恶意代码软件的检测和分析:反恶意代码软件检测恶意代码的方法有:特征代码法、校验和法、行为监测法、软件模拟法等。根据恶意代码的信息去搜寻更多的资料,若该恶意代码的分析数据已被反恶意代码软件收录,那就可以直接利用它们的分析结果
  2. 字符串分析:目的是寻找文件中使用的ASCII其他方法编码的连续字符串。通过在恶意代码样本中搜寻字符串得到:

    ①恶意代码的名字

    ②帮助和命令行选项

    ③用户对话框,可以通过它分析恶意代码的目的

    ④后门密码

    ⑤恶意代码相关的网址

    ⑥恶意代码作者或攻击者的E-maiI地址

    ⑦恶意代码用到的库,函数调用,以及其他的可执行文件

    ⑧其他的有用的信息

  3. 脚本分析:恶意代码如果是用JS、PerI或者shell脚本等脚本语言编写的,那么恶意代码本身就可能带有源代码。通过文本编辑器将脚本打开查看源代码。脚本分析能帮助分析者用较短时间识别出大量流行的脚本类型
  4. 静态反编译分析:对于携带解释器的恶意代码可以采用反编译工具查看源代码。因为编译器优化使得逆向编译的代码有着较差的可读性
  5. 静态反汇编分析:线性遍历递归遍历两种方法
    1. 线性遍历算法:从输入程序的入口点开始反汇编,简单地遍历程序的整个代码区,反汇编它所遇到的每一条指令。虽然方法简单,但存在不能够处理嵌入指令流中的数据的问题,如跳转表
    2. 递归遍历算法:试图用反汇编出来的控制流指令来指导反汇编过程,以此解决上面线性遍历所存在的问题

5.2 动态分析方法

  1. 文件监测:恶意代码执行后,在目标主机上可能读写各文件,修改程序,添加文件,甚至把代码嵌入其他文件,因此对文件系统必须进行监测
  2. 进程监测:恶意代码要入侵甚至传播,必须有新的进程生成或盗用系统进程的合法权限,主机上所有被植入进程的细节都能为分析恶意代码提供重要参考信息
  3. 网络活动监测:分析恶意代码还要监测恶意代码的网络行为。使用网络嗅探器检测恶意代码传播的内容,当恶意代码在网络上发送包时,嗅探器就会将它们捕获
  4. 注册表监测:Windows操作系统的注册表是个包含了操作系统和大多数应用程序的配置的层次数据库,恶意代码运行时一般要改变Windows操作系统配置来改变Windows操作系统行为
  5. 动态反汇编分析:动态反汇编指在恶意代码的执行过程中对其进行监测和分析。其基本思想是将恶意代码运行的控制权交给动态调试工具。该监测过程从代码的入口点处开始,控制权程序代码调试工具之间来回传递,直到程序执行完为止。这种技术能得到正确的反汇编代码,但只能对程序中那些实际执行的部分有效。目前主要的动态反汇编分析方法有以下两种
    1. 同内存调试:这种方法使调试工具被分析恶意代码程序加载到相同的地址空间优点:是实现代价相对较低,相对来说比较简单;缺点:是需要改变被分析程序的地址
    2. 仿真调试:即虚拟调试。这种方法是让调试工具分析的恶意代码程序处于不同的地址空间,可绕过很多传统动态反跟踪类技术优点:是不用修改目标程序中的地址,缺点:在进程间控制权的转移上要付出较高的代价

六、恶意代码防范策略

恶意代码防御成为用户、网管的日常安全工作。要做好恶意代码的防范,一方面组织管理上必须加强恶意代码的安全防范意识。因为,恶意代码具有隐蔽性、潜伏性传染性,用户在使用计算机过程中可能不知不觉地将恶意代码引入所使用的计算机中,所以防范恶意代码应从安全意识上着手,明确安全责任、义务和注意事项。另一方面,通过技术手段来实现恶意代码防御

防范恶意代码的总体框架如图

恶意代码防范技术原理-恶意代码概述
友情链接:http://xqnav.top/文章来源地址https://www.toymoban.com/news/detail-478820.html

到了这里,关于恶意代码防范技术原理-恶意代码概述的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 验证码:防范官网恶意爬虫攻击,保障用户隐私安全

    网站需要采取措施防止非法注册和登录,验证码是有效的防护措施之一。攻击者通常会使用自动化工具批量注册网站账号,以进行垃圾邮件发送、刷量等恶意活动。验证码可以有效阻止这些自动化工具,有效防止恶意程序或人员批量注册和登录网站。恶意程序或人员通常会使

    2024年02月04日
    浏览(42)
  • Mac常见恶意软件再现,办公应用程序潜藏风险如何防范?

    Mac电脑正受到臭名昭著的XLoader恶意软件的新变种的攻击,该恶意软件已被重写为在最好的MacBook上本地运行。 虽然XLoader至少从2015年开始出现,但在2021年发现macOS变体之前,它主要用于针对Windows PC。然而,该版本是作为Java程序分发的,这限制了它在Mac上运行的能力,因为苹果

    2024年02月11日
    浏览(46)
  • 什么是恶意代码分析中的动态分析基础技术?

    你知道如何使用动态分析基础技术来分析Lab03-01.exe文件中的恶意代码吗?Lab03-02.dll中的恶意代码如何自行安装?Lab03-03.exe的恶意代码在主机上的感染迹象是什么?Lab03-04.exe的恶意代码运行时会发生什么?动态分析为何无法有效实施?

    2024年02月06日
    浏览(60)
  • 基础安全:CSRF攻击原理与防范

    CSRF ( Cross-Site Request Forgery )中文名为“跨站请求伪造”。这是一种常见的网络攻击手段,攻击者通过构造恶意请求,诱骗已登录的合法用户在不知情的情况下执行非本意的操作。这种攻击方式利用了Web应用程序中用户身份验证的漏洞,即浏览器在用户完成登录后会自动携带

    2024年04月28日
    浏览(45)
  • 伪造 IP 地址的原理和防范措施

    在数字化时代,网络安全是至关重要的话题。其中,伪造 IP 地址是一种可能导致网络攻击和欺诈的技术手段。这里将深入探讨伪造 IP 地址的原理以及如何采取措施来防范这种风险。 一.伪造 IP 地址的原理 伪造 IP 地址是一种操纵网络通信的方式,它利用了数据包头部的设计漏

    2024年02月11日
    浏览(35)
  • 北京大学肖臻老师《区块链技术与应用》公开课笔记:以太坊原理(一):以太坊概述、账户、状态树、交易树和收据树

    1、ETH-以太坊概述 比特币和以太坊是两种最主要的加密货币,比特币被称为区块链1.0,以太坊被称为区块链2.0 以太坊在系统设计上针对比特币运行过程中出现的问题进行了改进,比如: 出块时间 ,比特币的区块时间是10分钟,以太坊的出块时间大幅度降低到了十几秒,而且

    2024年01月18日
    浏览(57)
  • HTTP慢连接攻击的原理和防范措施

    随着互联网的快速发展,网络安全问题日益凸显,网络攻击事件频繁发生。其中,HTTP慢速攻击作为一种隐蔽且高效的攻击方式,近年来逐渐出现的越来越多。 为了防范这些网络攻击,我们需要先了解这些攻击情况,这样才能方便我们对症下药,选择合适的安全解决方案。作

    2024年04月28日
    浏览(35)
  • Linux 企业级安全原理和防范技巧

    Linux 企业级安全原理和防范技巧以及网络和安全-Linux安全架构、安全威胁模型、以及加密、解密等原理,常见攻击和防范⼿段 1.1 企业级Linux系统安全威胁 企业级Linux系统安全威胁列表 分类 解决的主要安全威胁 安全威胁牵涉到的人员及操作 文件系统防护 避免有意/无意的文件

    2024年02月07日
    浏览(51)
  • AI技术发展:防范AI诈骗,守护数字安全

    随着AI技术的迅猛发展,人工智能赋予了计算机更多的能力,包括自然语言处理、图像生成、声音合成等。这些领域的突破为人们提供了全新的体验和便捷,但同时也催生了一些潜在的安全风险,其中最突出的就是AI诈骗。本文将探讨如何防范AI诈骗,确保数字安全。 AI技术的

    2024年02月06日
    浏览(38)
  • 深入解读命令执行:基本概念、攻击技术和防范应对

    数据来源 部分数据来源: ChatGPT          命令执行漏洞的产生原因主要是输入验证不严格、代码逻辑错误、应用程序或系统中缺少安全机制等。攻击者可以通过构造特定的输入向应用程序或系统注入恶意代码,从而在受攻击的主机上执行任意命令。 具体来说,以下是一

    2024年02月03日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包