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. 病毒木马 ...
随机推荐
- 【转】基于CXF Java 搭建Web Service (Restful Web Service与基于SOAP的Web Service混合方案)
转载:http://www.cnblogs.com/windwithlife/archive/2013/03/03/2942157.html 一,选择一个合适的,Web开发环境: 我选择的是Eclip ...
- [Git] 快速签出与更新所有远程分支.md
git-fetch 命令从远程仓库复制 heads 和 tags 信息到本地,保存在临时文件 .git/FETCH_HEAD 中以备 git-merge 命令使用. 你可以使用 git fetch 命 ...
- Windows上使用clang编译
- 先自己从源代码 (http://llvm.org/releases/) 编译llvm和clang,或者直接安装clang for Windows - 测试过使用cygwin (https://cy ...
- 从零开始Grunt
[20141025]从0开始Grunt *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom ...
- DDD:Strategic Domain Driven Design with Context Mapping
Introduction Many approaches to object oriented modeling tend not to scale well when the application ...
- Android manifest之系统自带的permission
Android manifest之系统自带的permission 本文描述Android系统自带的permission.点击查看:“关于permission的原始定义和说明”.点击查看:“Androi ...
- JS手动触发事件,转载
1. createEvent(eventType)参数:eventType 共5种类型: Events :包括所有的事件. HTMLEvents:包括 'abort', 'b ...
- [linux]查看linux下端口占用
netstat netstat -an | grep 23 (查看是否打开23端口) 查看端口占用情况的命令:lsof -i [root@www ~]# lsof -i COMMAND PID USE ...
- 1 Servlet开篇准备
作者:禅楼望月(http://www.cnblogs.com/yaoyinglong) 1. HTTP协议 HTTP协议是TCP/IP协议的上层协议.TCP负责确保从一个网络节点向另一个网络节点发送的 ...
- .NET中Main函数使用小技巧
摘要:任何语言开发出来的程序,都会有一个程序入口函数,可能每个语言所使用的程序入口函数名称不一样,但是它们的作用都是一样的,都是被操作系统去调用.那么本文主要总结.NET中的程序入口函数Main使用的 ...