首页 > 其他分享 >病毒查杀方法

病毒查杀方法

时间:2023-07-11 23:55:43浏览次数:30  
标签:免杀 特征 解密 主动防御 查杀 方法 病毒

特征码的查杀原理

  • 什么是特征码

,防毒软件从病毒样本中提取的不超过64字节能代表病毒特征的十六进制代码.主要有单一特征码,多重特征码和复合特征码这三种类型

  • 特征码的提取

获取病毒程序的长度,根据样本长度可将文件分为若干份(分段的方法在很大程度上避免了采用单一特侦码误报病毒现象发生,也可以避免特征码过于集中造成的误报),每份选取16B或者32B的特征串,若该信息是通过信息或者全零字节则舍弃,认为或随机调整偏移最后重新选取.讲选取出来的极端特征码以及他们的偏移量存入病毒库,表示出病毒的名称即可.可以编写出特征阿门忒去程序实现自动提取并保存病毒记录.

  • 病毒的查杀

扫描病毒,杀毒软件将目标文件通过模式匹配算法与病毒库中的特征码进行比对,如果匹配则查杀

基于特征码的病毒免杀原理

免杀的基本思想就是破坏特征码,只要定位了特征码进行修改便能免杀

修改的方法有:1.修改字符串大小写 2.等价替换法 3.指令顺序调换 4.通用跳转法 

许多病毒采用自动变形技术逃避特征码检测--多动态病毒,在外观上没有固定的特征码.病毒多态致使对代码段的加密完全改变改变特征码,因此要在零区域加入解密代码来解密,使用JMP指令跳回原指令代码执行,由于对某一个字节执行XOR两次后可还原代码,因此可以手动加密代码,下一次病毒执行时,可以解密并执行.只是特征码完全变样达到免杀.

可以通过花指令改变病毒特征码的实例

启发式查杀

静态地通过一系列“带权规则组合”对文件进行判定,如果计算出的值高于某个界限则被认为是病毒,否则不认为是病毒。启发式查杀可以相对有效地识别出病毒,但是往往也会出现误报的情况。

虚拟机查杀

在内存中虚拟一个运行环境用于病毒的运行,根据其行为或释放出的已知病毒特征码,来判断其是否为病毒程序。这个技术用来应对加壳和加密的病毒比较有效,因为这两类病毒在执行时最终还是要自身脱壳和解密的,这样,杀软可以在其现出原形之后进行查杀。

主动防御

基于程序行为自主分析判断的实时防护技术,不以病毒的特征码作为判断病毒的依据,而是从最原始的病毒定义出发,直接将程序的行为作为判断病毒的依据。主动防御是用软件自动实现了反病毒工程师分析判断病毒的过程,解决了传统安全软件无法防御未知恶意软件的弊端,从技术上实现了对木马和病毒的主动防御

标签:免杀,特征,解密,主动防御,查杀,方法,病毒
From: https://www.cnblogs.com/lisenMiller/p/17546279.html

相关文章

  • Jquery遍历筛选数组的几种方法和遍历解析json对象,Map()方法详解以及数组中查询某值是
    1.jquerygrep()筛选遍历数组(可以得到反转的数组)//1.jquerygrep()筛选遍历数组(可以得到反转的数组)vararray=[1,5,9,3,12,4,48,98,4,75,2,10,11];varfilterArray=$.grep(array,(currentValue)=>{returncurrentValue>10;});console.log(`${filt......
  • 老杜 JavaWeb 讲解(九) ——模板方法设计模式、HttpServlet源码分析
    (十一)模板方法设计模式、HttpServlet源码分析对应视频:20-HttpServlet源码分析及web欢迎页11.1模板方法设计模式不用使用在上面右侧表格中,Person就是模板方法设计模式当中的模板类,通常是抽象类。day()方法就是模板方法设计模式当中的模板方法。模......
  • 2023-07-11 《数值优化方法》-庞丽萍,肖现涛-无约束最优化(六)
    2023-07-11《数值优化方法》-庞丽萍,肖现涛-无约束最优化(六)数值优化方法Matlab共轭梯度法共轭方向法回顾上节的最速下降法的特征:最速下降法迭代路径呈锯齿状,即.这一节给出共轭的概念,其是正交性的推广,然后给出共轭方向(梯度)法.**定义1.7**设是对称正定矩阵,是维非零向量.如果......
  • SignalR 外部调用自定义Hub类的方法,Clients为null
    这是因为外部调用的类的对象和你连接的Hub类的对象,这两个对象不!一!样!解决方法在自定义的Hub类中,注入IHubContext对象,然后在方法中调用IHubContext对象来向前端推送数据publicclassDataHub:AbpCommonHub,ITransientDependency{publicIOnlineClientManag......
  • 深拷贝方法
    //使用递归的方式实现数组、对象的深拷贝exportfunctiondeepClone(obj){letobjClone=Array.isArray(obj)?[]:{};if(obj&&typeofobj==="object"){for(varkeyinobj){if(obj.hasOwnProperty(key)){//判断ojb子元素是否为对象,如果是,递归复制if(obj[ke......
  • Probability•概率的公理化定义•确定概率的方法{频率, 古典, 几何, 主观}•Joseph Lo
    Probability概率的公理化定义非负性正则性互不相容的可列可加性确定概率的方法:频率古典几何:约会题:时间段内等一段时间Buffon'sNeedle+Monte-CarloMethod:针中心与最近直线的距离K与夹角α主观:统计界的贝叶斯学派认为,事件概率是人们根据经验对事件发生可能性......
  • Windows10无法上网网络提示"依赖或组无法启动"的处理方法
    参考:https://www.haozhuangji.com/xtjc/111319342.htmlwin+r输入msconfig选择服务-全部启用重新启动......
  • js中字符串的方法
    字符串的17种方法。。。。。。length:返回字符串的长度。conststr="Hello,World!";console.log(str.length);//输出13charAt(index):返回指定索引位置的字符。conststr="Hello,World!";console.log(str.charAt(4));//输出oconcat(str1,str2,...):连接两个或多......
  • 修改pip install默认安装路径的方法
    1.修改pipinstall默认安装路径一般使用Anaconda时会使用pipinstall###来安装各类包,但默认安装路径在C盘,极大占用空间,作为强迫症,我们通过以下步骤来修改默认安装路径。 1.1、查看pip默认安装位置第一步:通过win菜单,Anaconda3找到Prompt,点击进入python-msite获......
  • 99.如何在不使用额外空间的情况下,交换两个数?你有几种方法
    99.如何在不使用额外空间的情况下,交换两个数?你有几种方法1)算术x=x+y;y=x-y;x=x-y;2)异或x=x^y;//只能对int,char..y=x^y;x=x^y;x^=y^=x;参考资料来源:阿秀......