网站的总规划书,购物商城英语,网站建设太金手指六六二五,公众号怎么做微网站10.1节介绍了通过msfvenom生成shellcode #xff0c;并通过Python程序加载执行#xff0c;又 介绍了如何将Python的.py文件生成为exe文件。使用pyinstaller生成的可执行文件 本身就具有一定的免杀能力#xff0c;但是在与杀毒软件对抗时#xff0c;部分杀毒软件也可以通 过… 10.1节介绍了通过msfvenom生成shellcode 并通过Python程序加载执行又 介绍了如何将Python的.py文件生成为exe文件。使用pyinstaller生成的可执行文件 本身就具有一定的免杀能力但是在与杀毒软件对抗时部分杀毒软件也可以通 过分析可执行文件的内容来判断文件是否为恶意程序导致这些代码仍然具有被 杀的可能。 对于用msfvenom生成的shellcode 在生成时可以通过参数将shellcode优化 使用-b选项禁止生成的shellcode 中出现易被杀毒软件检测的字符如图10-7所示。 图10-7 优化shellcode 除此之外还可以使用msfvenom的-e选项选择相应的编码器对shellcode进 行编码处理如图10-8所示。 通过这种方式对脚本的源代码进行混淆后可有效避免部分杀毒软件的查 杀。与此同时可以将shellcode 的顺序打乱增加查杀难度。 除了在代码层上对脚本进行优化外还有其他免杀方式比如通过加壳进行 免杀。 什么是壳壳的全称是“可执行程序资源压缩” 压缩后的程序可以直接打 开。除此之外另一种常见的加壳方式就是在二进制程序中植入一段代码在主 程序运行前优先获得程序控制权之后再将控制权交给主程序代码。这样能够有 效地隐藏程序的入口点OEP。我们需要使用的便是加壳后隐藏OEP的功能 以达到免杀效果。大多数的病毒制作也都是使用了这个方法。多数壳对于程序的 原始二进制文件内容还会进行加密、混淆。免费的壳免杀效果相对商业壳来说还 是有一定的差距但要初步做到免杀使用免费壳即可。此外还有一些第三方 的免杀工具也可以利用比如 ·Veil工具可以生成基于C 、Go 、Ruby 、Python 、C# 、Perl 、Powershell等格 式的Payload 。该工具是采用Python语言编写的免杀框架能够将任意shellcode编 译转化成Windows的可执行文件并且可以与Metasploit相结合。 图10-8 选择编码器 ·Venom工具利用msfvenom生成不同格式的shellcode 如C 、Python、 Ruby 、DLL 、MSI 、hta-psh等然后将生成的shellcode注入程序中并使用类似 gcc 、mingw32或pyinstaller等编译器生成Windows系统下的Payload文件。 · Shellter工具安装非常简单使用也非常便捷而且生成的Payload免杀效 果也比较好Windows和Linux下都可以使用。可以使用自动配置和手动配置两种 模式手动配置生成的Payload免杀效果会更好。 ·BackDoor-factory工具又称后门工厂BDF利用该工具可以在不破 坏原来的可执行文件功能的前提下在代码中注入恶意的shellcode攻击代码。 BackDoor-factory不仅可以单独使用还可以嵌入其他工具生成的shellcode 中。其 原理是替换原有程序的二进制数据中的00字段并且在程序执行时跳转到替换的 代码段触发Payload程序。 免杀的工具多种多样但运用的方式大致都是相同的。免杀处理大致可以分 为两种类型一种是通过二进制实现免杀或通过修改asm代码、二进制数据、 其他数据来完成免杀另一种是源码免杀可以通过修改源代码免杀也可以结 合二进制进行免杀。也可以分为静态文件免杀、动态行为免杀。 其中静态免杀可以通过修改特征码来进行。要查找文件的特征码可以使 用特征码定位工具如CCL 、MYCCL 、VirTest等。找到特征码后修改特征码 的值就能做到静态免杀。还可以通过一些工具的加密、加壳等手段进行静态免 杀。 动态监测的原理是通过拦截恶意行为如注册表操作、文件写入、杀进程、 劫持等来发现木马程序。恶意的行为都是通过API的调用完成的杀毒软件通过 拦截这些API的调用来实现拦截。那么动态免杀的思路就出来了分为以下几 种 · 替换API 。使用有同等功能的API替换杀毒软件并不会拦截所有的API操 作所以替换成杀毒软件不拦截的API进行操作即可绕过动态监测。 · 未导出API 。寻找具有相同功能且未被导出的API 分析API的内部调用情 况进行API替换。 ·重写API 即通过逆向操作重写API的功能。 ·跳字节。一部分杀毒软件的API拦截操作是通过对API的前几个字节内容的 监测实现的如果跳过了头部字节就可以避开这种拦截方式。 ·底层API 。可通过寻找底层的API调用绕过拦截。 防御策略 了解了免杀原理后我们再来看如何针对这些操作进行防御。10.3节中介绍 过免杀处理主要是分为静态文件免杀和动态行为免杀那么杀毒软件的防御应 该着重关注这两个方面。常用的杀毒软件的检测方法有特征代码法、校验法、行 为检测法、模拟法等。
·特征代码法通过相同的一种病毒或木马文件的部分代码是相同的原理来 识别病毒文件即通过对比特征来发现病毒和木马。
·校验法计算文件的校验值并保存定期进行对比或者在调用文件时对比 从而检测文件是否被感染。
· 行为检测法通过分析病毒或木马的行为特征如注册表操作、添加或删除 用户等来进行检测。
·模拟法通过模拟病毒运行的方式检测病毒。