Python常见的免杀方式

 

 

10.1节介绍了通过msfvenom生成shellcode ,并通过Python程序加载执行,又  介绍了如何将Python的.py文件生成为exe文件。使用pyinstaller生成的可执行文件 本身就具有一定的免杀能力,但是在与杀毒软件对抗时,部分杀毒软件也可以通 过分析可执行文件的内容来判断文件是否为恶意程序,导致这些代码仍然具有被 杀的可能。

对于用msfvenom生成的shellcode ,在生成时可以通过参数将shellcode优化, 使用-b选项禁止生成的shellcode 中出现易被杀毒软件检测的字符,如图10-7所示。

6a88bf07f1954c61b0e9202947c3d2d8.png

图10-7    优化shellcode

除此之外,还可以使用msfvenom的-e选项选择相应的编码器,对shellcode进 行编码处理,如图10-8所示。

通过这种方式对脚本的源代码进行混淆后,可有效避免部分杀毒软件的查 杀。与此同时,可以将shellcode 的顺序打乱,增加查杀难度。

 

 

 

 

 

除了在代码层上对脚本进行优化外,还有其他免杀方式,比如通过加壳进行 免杀。

什么是壳?壳的全称是“可执行程序资源压缩” ,压缩后的程序可以直接打

开。除此之外,另一种常见的加壳方式就是在二进制程序中植入一段代码,在主 程序运行前优先获得程序控制权,之后再将控制权交给主程序代码。这样能够有 效地隐藏程序的入口点(OEP)。我们需要使用的便是加壳后隐藏OEP的功能,

以达到免杀效果。大多数的病毒制作也都是使用了这个方法。多数壳对于程序的 原始二进制文件内容还会进行加密、混淆。免费的壳免杀效果相对商业壳来说还 是有一定的差距,但要初步做到免杀,使用免费壳即可。此外,还有一些第三方 的免杀工具也可以利用,比如:

·Veil工具,可以生成基于C 、Go 、Ruby 、Python 、C# 、Perl 、Powershell等格 式的Payload 。该工具是采用Python语言编写的免杀框架,能够将任意shellcode编 译转化成Windows的可执行文件,并且可以与Metasploit相结合。

6bf912357a2b498e8ce68a0bb992784d.png

图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节中介绍 过,免杀处理主要是分为静态文件免杀和动态行为免杀,那么杀毒软件的防御应 该着重关注这两个方面。常用的杀毒软件的检测方法有特征代码法、校验法、行 为检测法、模拟法等。

·特征代码法:通过相同的一种病毒或木马文件的部分代码是相同的原理,来 识别病毒文件,即通过对比特征来发现病毒和木马。

·校验法:计算文件的校验值并保存,定期进行对比或者在调用文件时对比, 从而检测文件是否被感染。

· 行为检测法:通过分析病毒或木马的行为特征,如注册表操作、添加或删除 用户等来进行检测。

·模拟法:通过模拟病毒运行的方式检测病毒。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/675844.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

06 MP之自动填充+SQL执行的语句和速度分析

1. 自动填充 在项目中有一些属性,比如常见的创建时间和更新时间可以设置为自动填充。 1.1 实例 需求: 将创建时间和更新时间设置为自动填充, 这样每次插入数据时可以不用理会这两个字段 1.1.1 在数据库增加字段 默认开启驼峰映射 createTime --> create_time…

Spring Boot 笔记 004 自动配置和自定义starter

003讲到了导入jar包中的方法,但其实是个半成品,别人写的jar包中的方法我要在自己的代码中去调用,非常的不方便。原则上写给别人用的jar包,人家要能直接用,而不用写注入的方法。 在springboot中会自动扫描imports文件中…

[Python] 深入理解列表和元组

在学习的C语言中有数组可以用来存储数据,那么在Python中是否也有这样的工具呢?接下来让可莉来给大家讲解列表和元组这两个强力工具吧~ 专栏:《Python》 blog:Keven ’ s blog 在 Python 中,列表和元组是两种常用的序列…

Linux操作系统基础(三):虚拟机与Linux系统安装

文章目录 虚拟机与Linux系统安装 一、系统的安装方式 二、虚拟机概念 三、虚拟机的安装 四、Linux系统安装 1、解压人工智能虚拟机 2、找到解压目录中的node1.vmx 3、启动操作系统 虚拟机与Linux系统安装 一、系统的安装方式 Linux操作系统也有两种安装方式&#xf…

【Linux系统学习】3.Linux用户和权限

Linux用户和权限 1.认知root用户 1.1 root用户(超级管理员) 无论是Windows、MacOS、Linux均采用多用户的管理模式进行权限管理。 在Linux系统中,拥有最大权限的账户名为:root(超级管理员) 而在前期&#…

代码随想录 Leetcode55. 跳跃游戏

题目&#xff1a; 代码(首刷自解 2024年2月9日&#xff09;&#xff1a; class Solution { public:bool canJump(vector<int>& nums) {int noz 0;for (int i nums.size() - 2; i > 0; --i) {if (nums[i] 0) {noz;continue;} else {if (nums[i] > noz) noz …

基于LightGBM的回归任务案例

在本文中&#xff0c;我们将学习先进的机器学习模型之一&#xff1a;Lightgbm。在对XGB模型进行了越来越多的改进以获得更好的性能之后&#xff0c;XGBoost是一种极限梯度提升机器&#xff0c;但通过lightgbm&#xff0c;我们可以在没有太多计算的情况下实现类似或更好的结果&a…

vscode debug无法直接查看eigen变量的问题(解决方法)

主要是给gdb添加一个Eigen相关的printer即可, 网上其他教程都搞太复杂了, 我整理成了一个仓库, 把仓库克隆下来直接运行 ./setup.sh脚本即可配置好 git clone gitgithub.com:fandesfyf/EigenGdb.git cd EigenGdb ./setup.sh 然后在vscode中重新debug即可。 效果 …

使用Arcgis裁剪

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、掩膜提取二、随意裁剪三、裁剪 前言 因为从网站下载的是全球气候数据&#xff0c;而我们需要截取成中国部分&#xff0c;需要用到Arcgis的裁剪工具 一、掩…

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Slider组件

鸿蒙&#xff08;HarmonyOS&#xff09;项目方舟框架&#xff08;ArkUI&#xff09;之Slider组件 一、操作环境 操作系统: Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1 二、Slider组件 滑动条组件&#xff0c;通常用于快速调节设置值&#xff0c;如音量调…

响应式编程详解(持续更新)

响应式编程 1.多维度看全景1.1响应式编程(Reactive Programming )1.2函数式编程&#xff08;Functional Programming, 简称FP&#xff09;1.3技术演进1.4Rx是什么1.5[响应式宣言](https://www.reactivemanifesto.org/zh-CN) 2.钻进去看本质2.1名称解释(rajava)2.2观察者模式2.3…

注解(Java用于工具处理的标注)

一. 使用注解 1. 含义 注解是放在类&#xff0c;方法&#xff0c;字段&#xff0c;参数前的一种特殊“注释”&#xff0c;是一种用作标注的“元数据”。 2. 三类注解 1&#xff09;由编译器使用的注解&#xff0c;不会编译进.class文件&#xff0c;编译后扔掉&#xff1b;如&…

MPLS VPN功能组件(4)

数据转发过程 VPN数据的转发 顶层公网标签 由LDP分配&#xff0c;指示LSR如何将标签报文从始发的源PE通过LSP标签交换到达目的PE 内层私网标签(VPN标签) 由MP-BGP分配&#xff0c;在将每一条客户路由变为VPNv4路由前缀时会自动为每一条VPNv4前缀关联一个标签 内层私网标签用于…

正版软件 - Proxyman:让网络调试变得更智能、更高效

在软件开发的世界里&#xff0c;网络调试一直是开发者和测试工程师的痛点。传统的调试工具往往操作复杂&#xff0c;界面不够直观&#xff0c;而且性能上也难以满足现代应用的需求。今天&#xff0c;我要向大家介绍一款名为Proxyman的网络调试工具&#xff0c;它以其简洁的界面…

springboot微信小程序 uniapp学习资料分享系统v9uy4

理论意义 当今网络教学已成为各国教育改革 和发展的趋势。因此&#xff0c;构建一个适合交互式课堂教学模式的教学平台就成了当务之 急。 在国内高校&#xff0c;目前交互平台主要用于网络学院的远程教学&#xff0c;至于校园内的正规教学&#xff0c;老师自发建立课程主页的比…

【学网攻】 第(24)节 -- 帧中继(点对点)

系列文章目录 目录 系列文章目录 文章目录 前言 一、帧中继是什么&#xff1f; 二、实验 1.引入 实验拓扑图 实验配置 在帧中继中配置通信链路​编辑 实验验证 文章目录 【学网攻】 第(1)节 -- 认识网络【学网攻】 第(2)节 -- 交换机认识及使用【学网攻】 第(3)节 --…

【Linux网络编程三】Udp套接字编程网络应用场景

【Linux网络编程三】Udp套接字编程网络应用场景 应用场景一&#xff1a;远程命令执行应用场景二&#xff1a;与Windos端相互通信应用场景三&#xff1a;简单聊天1.多线程化2.输入输出分开 应用场景一&#xff1a;远程命令执行 简单的服务器上一篇已经完成&#xff0c;接下来我…

【AIGC核心技术剖析】AI生成音乐:MAGNeT一种直接操作多个音频令牌流的掩码生成序列建模方法

MAGNeT是一种直接操作多个音频令牌流的掩码生成序列建模方法。与先前的工作不同&#xff0c;MAGNeT由一个单阶段、非自回归的变压器组成。在训练期间&#xff0c;论文使用掩码调度器预测从掩码令牌中获得的跨度&#xff0c;而在推断期间&#xff0c;论文通过多个解码步骤逐渐构…

MySQL管理的常用工具(mysqldump备份工具,mysqlimport/source导入工具)

mysqldump mysqldump 客户端工具用来备份数据库或在不同数据库之间进行数据迁移。备份内容包含创建表&#xff0c;及 插入表的SQL语句。 语法 &#xff1a; mysqldump [options] db_name [tables] mysqldump [options] --database/-B db1 [db2 db3...] mysqldump [options] -…

宋小黑原创高清壁纸分享之蓝白云海

大家好&#xff0c;我是小黑&#xff0c;最近迷上了制作壁纸&#xff0c;哈哈&#xff0c;给大家分享一波&#xff0c;小黑做的美图~ 本期给大家分享的是&#xff0c;小黑原创的蓝白云海主题系统壁纸~ 厌倦了一成不变的壁纸吗&#xff1f; 感到学习负担过重吗&#xff1f; …