Atitit.木马 病毒 免杀 技术 360免杀 杀毒软件免杀 原理与原则 attilax 总结
Atitit.木马 病毒 免杀 技术 360免杀 杀毒软件免杀 原理与原则 attilax 总结
1.2. 软件保护所用的加密产品(比如壳)中,有一些会被杀毒软件误认为是木马或病毒;2
1.3. 一些安全领域中使用的部分安全检测产品,也会被杀毒软件误杀。2
3.1. 现在的免杀主要分为3种,其中的一种便是行为免杀,也就是通过控制病毒木马的行为来达到躲过杀毒软件主动防御检测的目的。3
3.3. 源码级免杀则是指通过直接修改源代码的方式达到免杀目的,它是一种有源工作环境下的技术。3
3.6. 硬件免杀,例如将后门安装在BIOS或某处固件中,甚至是处理器的微代码中。4
1. ,免杀技术的用途
1.1. 病毒木马的编写
1.2. 软件保护所用的加密产品(比如壳)中,有一些会被杀毒软件误认为是木马或病毒;
1.3. 一些安全领域中使用的部分安全检测产品,也会被杀毒软件误杀。
1.4. 远程监控技术一样。
作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://www.cnblogs.com/attilax/
2. 1.3 免杀的发展史
关于世界免杀技术的历史情况现在并无从考证,但从国内情况来讲它的起步可以说是非常晚的。以下是笔者在创作《黑客免杀入门》一书时调查后总结的一份列表,出版后被百度百科引用(但是引用内容在后期被植入了广告,请各位读者注意甄别)。
1989年:第一款杀毒软件Mcafee诞生,标志着反病毒与反查杀时代的到来。
从国外的发展来看,20世纪80年代就已经出现了使用Rootkit反扫描技术的病毒,不过这属于一个源码级应用的例子
3. 免杀技术的简单原理
在笔者最初接触免杀技术,使用MyCCL定位特征码的时候就有很多疑问,例如“特征码究竟是什么”、“特征码是怎么被定位出来的”,以及“除此之外就没有其他的了吗”……
当然,后来我终于明白了这些看似简单的问题,并且很高兴能在这里分享出来。
下面我们就先从一句话开始谈起,“免杀就是定位特征码”这句话相信一些读者可能听说过。不过笔者撰写本书的基本目标之一,就是想让读者知道这句话是错误的。
然而,我们不得不承认免杀确实是从特征码开始的
但是“特征码”究竟是从哪里来的呢?或者说相关技术人员是依靠什么找到特征码的呢?我们知道,一个正常的应用程序是不可能包含格式化所有硬盘的指令的,但是假如某个病毒包含这段“个性十足”的指令,那么我们将其对应的二进制码定位为特征码简直是再准确不过了。
3.1. 现在的免杀主要分为3种,其中的一种便是行为免杀,也就是通过控制病毒木马的行为来达到躲过杀毒软件主动防御检测的目的。
而这种行为免杀所用到的处理技术之一就是通过Anti Rookit来使反病毒程序的Rootkit失效,从而不能有效地监测系统,达到一劳永逸的目的
3.2. 加密解密技术
3.3. 源码级免杀则是指通过直接修改源代码的方式达到免杀目的,它是一种有源工作环境下的技术。
3.4. 变换api免杀 等价替换法
有些api会被软件监控,变化api即可免杀
修改方法:把特征码所对应的汇编指令命令中替换成功能类拟的指令.
2.适用范围:特征码中必需有可以替换的汇编指令.比如JE,JNE 换成JMP等.
针对敏感api的免杀:用动态调用api的方式 替换静态调用方式,对于敏感api不直接使用windows已经声明的,要动态调用
3.5. 通用跳转法
1.修改方法:把特征码移到零区域(指代码的空隙处)执行后,使用jmp指令无条件调回原代码处继续执行下一条指令
2.适用范围:通用的改法,建议大家要掌握这种改法
3.6. 硬件免杀,例如将后门安装在BIOS或某处固件中,甚至是处理器的微代码中。
3.7. Shell
3.8. 无特征免杀法
何为无特征免杀法?就是脱离传统的定位方法,直接盲免,就对于整体区段进行异或加密,是整体代码发生变换,从而逃脱杀毒软件的查杀,是当今最流行的方法。
3.9. 增大体积
360后台上传有一个弊端,中国的网络基本上都是ADSL,那么上传的最大理论值是56K,所以一般大文件,他不会上传,那么我就针对这个问题,在被控端安装时,对起进行体积增加,这样,一旦文件大了 他也就不上传了,这样就会保证你的免杀持久那么有很多客户或者内奸,一旦更新了免杀,他直接上传检测怎么办?针对这个问题,我进行了自我增大优化,我远控的更新全部是在服务器更新,下载免杀时,更新器直接将更新的免杀在主控端进行自我增加,增加很大,那么一般人也就不会上传杀毒网或者360后台上传了,因为几十兆的文件,他上传要几个小时,谁愿意费这劲呢?是不是。那么这么大的文件,生成的被控端安装程序比较大怎么办?其实,我在主控端免杀增加的体积,不是无的放矢的,我可以增加当然可以提取,创建安装程序时,提取原来的文件,这样最大可能保证你的免杀持久。
3.10. 免杀捆绑
4. 内存免杀
内存免杀方法
修改内存特征码:
方法1>直接修改特征码的十六进制法
方法2>修改字符串大小写法
方法3>等价替换法
方法4>指令顺序调换法
方法5>通用跳转法
壳入口修改法
1.用到工具:压缩壳 OD
2.特点:操作简单 免杀效果好
3.操作步骤:首先给木马加压缩壳 然后用OD载入...
在入口处的前15句中.....
NOP掉某些代码或者等价代换某些代码(不影响运行的前提下)...
改完之后保存就可以了
5. 360的行为检测
360实时监视你的电脑,如果你的某个文件操作不符合系统规范时,比如后台安装服务,插入进程,COPY文件到系统目录
5.1. 捆绑免杀的思路
(打开自动解压到系统的temp文件夹里,你也可以填写其他路径。)
自动安静模式
设置解压后运行程序
更新覆盖模式
6. 其他模式
不过有时发送邮件的时候还是会有提醒,360还是会提醒,发送到什么什么邮箱地址!我设想了一遍
如果钓鱼软件不是发送到邮箱,而是首先制作好的钓鱼网站,通过检索在发送到钓鱼网站后台,就不会报毒了
7. ref
免杀_百度百科.htm
关于免杀的一点思路 - stma - 博客园.htm
技术贴:用Winrar打造永不被杀的免杀捆绑器!-网赚教程-小无聊博客.htm (imp
通用免杀方法集合 ,学免杀可以看看_软件综合讨论区_软件区 卡饭论坛 - 互助分享 - 大气谦和!.htm
《黑客免杀攻防》(任晓珲)【摘要 书评 试读】- 京东图书.htm
Atitit.木马 病毒 免杀 技术 360免杀 杀毒软件免杀 原理与原则 attilax 总结的更多相关文章
- Atitit.木马病毒强制强行关闭360 360tray.exe的方法
Atitit.木马病毒强制强行关闭360 360tray.exe的方法 1. taskkill /im 进程名称1 2. 用 wmic process where name="进程名称&qu ...
- Atitit.木马病毒的免杀原理---sikuli 的使用
Atitit.木马病毒的免杀原理---sikuli 的使用 1. 使用sikuli java api1 1.1. 3. Write code!1 2. 常用api2 2.1. wait 等待某个界面出 ...
- Atitit.木马病毒自动启动-------------win7计划任务的管理
Atitit.木马病毒自动启动-------------win7计划任务的管理 1. 计划任务的Windows系统中取代AT 的schtasks命令1 2. Win本身的系统计划任务列表1 2.1. ...
- Atitit.木马病毒websql的原理跟个设计
Atitit.木马病毒websql的原理跟个设计 1. Keyword Wsql { var sql="select "+p.txt+" as t,"+p.v+ ...
- atitit.木马病毒webshell的原理and设计 java c# .net php.
atitit.木马病毒webshell的原理and设计 java c# .net php. 1. 隐蔽性 编辑 WebShell后门具有隐蔽性,一般有隐藏在正常文件中并修改文件时间达到隐蔽的,还有利用 ...
- Atitit.木马病毒的操作注册表原理 系统服务管理器 atiSysService
Atitit.木马病毒的操作注册表原理 系统服务管理器 atiSysService 1. atiSysService1 2. atiSysService 原理1 3. Java code1 4. 参 ...
- Atitit.木马病毒 webftp 的原理跟个设计
Atitit.木马病毒 webftp 的原理跟个设计 ftp木马的效果 文件传播 文件列表 文件内容查看 作者:: ★(attilax)>>> 绰号:老哇的爪子 ( 全名::Att ...
- Atitit. 木马病毒的外部class自动加载机制------加载class的方法总结
Atitit. 木马病毒的外部class自动加载机制------加载class的方法总结 Atitit.java load class methods 1. 动态加载jar文件和class文件. 1 ...
- Atitit。木马病毒原理机密与概论以及防御
Atitit.木马病毒原理机密与概论以及防御 1. 定时截屏木马1 1.1. QQ聊天与微信聊天木马1 2. 文档木马1 3. 病毒木马的触发方式2 4. 远程木马2 5. 漏洞木马2 6. 病毒木马 ...
随机推荐
- [CS231n-CNN] Backpropagation(反向传播算法)
课程主页:http://cs231n.stanford.edu/ 上节讲到loss function: 引出了求导数使得loss function减小. -Back Propagation :梯度下降 ...
- sudo: /etc/sudoers is mode 0777, should be 0440终极解决之道
不得不说,有时候手贱的把/etc/sudoers文件权限改了,是一件很蛋疼的事.因为此时你会发现无论做什么都会弹出一条讨厌的提示,说没有权限执行等等... 网上有介绍登入root用户,或者去grub的 ...
- `fw服务端非完整` 工程开发初期的工作
前面写到了一些关于cocos2dx在开发中的一些模块以及一些解决方法,那些都属于本人的个人简介和个人倾向的解决方案.最近这几天我完善了一下ui解析的部分,当然也只是抽出一点点时间去做的这件事情.我添加 ...
- Web程序员开发App系列 - 申请苹果开发者账号
Web程序员开发App系列 Web程序员开发App系列 - 认识HBuilder Web程序员开发App系列 - 申请苹果开发者账号 Web程序员开发App系列 - 调试Android和iOS手机代码 ...
- Tips12: 私人定制 专属的Unity3D 脚本模板
在使用U3D的过程中,新建一个C#脚本,它包含着空的Start()和Update()函数. 根据个人习惯的不同,可能有些人有着自己的脚本风格,每次进去都增删改很麻烦,这里介绍一个更改新建脚本模板的方 ...
- python函数式编程
函数式编程是使用一系列函数去解决问题,按照一般编程思维,面对问题时我们的思考方式是“怎么干”,而函数函数式编程的思考方式是我要“干什么”. 至于函数式编程的特点暂不总结,我们直接拿例子来体会什么是函数 ...
- Nightwatch.js – 轻松实现浏览器的自动测试
Nightwatch.js 是一个易于使用的,基于 Node.js 平台的浏览器自动化测试解决方案.它使用强大的 Selenium WebDriver API 来在 DOM 元素上执行命令和断言. 语 ...
- .Net魔法堂:log4net详解
一.作用 提供一个记录日志的框架,可以将日志信息记录到文件.控制台.Windows事件日志和数据库(MSSQL.Acess.Oracle.DB2和SQLite等). 二.先看看示例,感受一下吧 c ...
- jdbc中的细节
JDBC 架构:JDBC 的 API 支持两层和三层处理模式进行数据库的访问,但是一般的JDBC架构由两层处理模式组成.(1)JDBC API:提供了应用程序对 JDBC 管理器的连接(2)JDBC ...
- 基于KV Data Model实现Table Data Model
HBase对外暴露出来的是一个表格数据模型,如下图所示 rowkey应用程序可以自己设计.每一个Cell可以保存多个版本的数据,由timestamp标示版本.应用程序可以自己指定timestamp,如 ...