免杀对抗-成品EXE免杀-反特征码-通用跳转

news2024/12/22 9:01:41

一、exe程序生成

1.使用如下shellcode加载器,生成c/c++语言的exe程序

加载器:1.c

#include <Windows.h>
#include <stdio.h>

#pragma comment(linker,"/section:.data,RWE")

unsigned char shellcode[] =生成的shellcode;

int main()
{
__asm{
mov eax, offset shellcode
_emit 0xFF
_emit 0xE0
}
}

使用visual studio将加载器编译为exe程序

2.将生成的exe上传到目标系统,直接被火绒杀死

3.接下来将对exe程序实施免杀手段

二、成品EXE-反特征码-通用跳转

通用跳转

因为目标使用的是火绒,所以我们自己搭建一个火绒环境,使用VirTest工具检测出exe程序的什么地方被火绒杀了。

1.将工具和exe程序放到环境中,启动程序,点击制作测试文件---选择exe程序,点击ok后会在工具目录下生成一个virtest.vir文件

2.点击载入测试文件——选择工具目录下生成的文件

3.在保证火绒开启检测的情况下,点击定位特征代码——自动确定——确定。等待完成。

4.检测完成后,工具成功定位到exe程序中被火绒检测的特征码。

5.退出火绒,启动C32反汇编工具,将exe程序拖入工具中,选择16进制打开。修改特征码,看火绒是否还会杀。

下载:https://www.onlinedown.net/soft/10012039.htm

6.找到特征码位置,选中特征码---右键点击填充,填充为00。保存

7.启动火绒,看看是否还会查杀修改后的exe程序。

成功免杀:说明特征码查找正确。如果不能免杀,就是特征码没找对,可以改名重新检测一次试试。

8.关闭火绒,还原或者重新上传exe程序,将程序拖入OllyDbg工具中。点击下图按钮,搜索特征码处

Ollydbg下载:http://www.tugaga.com/soft/bc/945.html#down   

安装:记得先执行根目录下路径修复工具.exe

9.定位到特征码处,向下滑动一下,然后选中复制,将特征码的汇编地址保存起来

在将特征码下一行也复制保存

10.重新导入exe程序,往下滑找到00区间,选中几个00区间——右键选择二进制-----用nop填充

11.双击一个nop,将第九步复制的特征码写进去。右键复制,将汇编地址保存起来

在下一行也双击写入特征码的下一行的汇编地址

12.复制00区间的特征码汇编地址,保存起来

13.ctrl+G 写入特征码地址,定位到特征码处,将其填充

14.然后双击填充的特征码,写入(jmp 00区间的特征码汇编地址)

以上操作简单来说就是:在代码执行到原来的特征码处时,跳转到00区间处去执行。其实就是将特征码换了一个地方执行。执行了00区间的特征码后,还要跳转回原来特征码的下一行继续执行代码。

17.选中00区间做修改的地方,右键选择保存

点击全部复制

跳转到下图,右键保存文件

18.保存出来的exe文件还是不能免杀,因为只保存了00区间的修改。

为什么只保存了00区间的修改:00区间特征码处和原来特征码处的修改无法同时选中保存。

所以需要再次修改特征码处:将保存了00区间修改的exe程序拖入ollydbg工具中,搜索定位特征码汇编地址后四位

19.选中特征码,右键进行填充

20.然后双击填充的特征码,写入(jmp 00区间的特征码汇编地址)

注意00区间的特征码汇编地址:再次导入exe,前几个数字改变了,写入时注意

21.选中修改的特征码,右键

跳转到如下,右键——保存文件

22.开启火绒检测,只保存了00区间修改的半成品被杀了。但是完全品成功绕过火绒检测,执行exe,msf成功上线。

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

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

相关文章

【一、灵犀考试系统项目设计、框架搭建】

一、创建数据库 1、打开power designer&#xff0c;新建数据库模型 2、新建数据表&#xff0c;以及关系 【注意】 图片的类型有两种&#xff1a;varbinary 和 image varbinary : 二进制字节流&#xff0c;可以自动控制长度 image : 最大可放2G图片 3、创建数据库&#…

基于郊狼优化的BP神经网络(分类应用) - 附代码

基于郊狼优化的BP神经网络&#xff08;分类应用&#xff09; - 附代码 文章目录 基于郊狼优化的BP神经网络&#xff08;分类应用&#xff09; - 附代码1.鸢尾花iris数据介绍2.数据集整理3.郊狼优化BP神经网络3.1 BP神经网络参数设置3.2 郊狼算法应用 4.测试结果&#xff1a;5.M…

国庆假期作业day2

作业&#xff1a;创建一个双向链表&#xff0c;将26个英文字母通过头插的方式插入到链表中&#xff0c;通过尾删的方式将数据读取出来并删除 #ifndef _TEXT_H #define _TEXT_H #include<myhead.h> typedef int datatype; typedef struct dblist {union {datatype data;/…

逆强化学习

1.逆强化学习的理论框架 1.teacher的行为被定义成best 2.学习的网络有两个&#xff0c;actor和reward 3.每次迭代中通过比较actor与teacher的行为来更新reward function&#xff0c;基于新的reward function来更新actor使得actor获得的reward最大。 loss的设计相当于一个排序问…

Java基于SSM的校园一卡通系统设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用JSP技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

解决stm32驱动LCD1602A时不显示第二行的问题

根据这个教程&#xff0c;用仿真测试可以成功&#xff0c;但实际上上真机只显示第一行。 考虑到可能是电压的问题&#xff0c;我外接的是和stm32一样的3.3v&#xff0c;但实际上lcd的额定电压是5v&#xff0c;于是换为5V&#xff0c;结果变这样了&#xff1a; 只能恢复电压3.…

Linux信号解析

文章目录 Linux信号概念信号种类Linux信号产生异步 LInux信号阻塞递达、未决、阻塞、忽略信号集操作函数阻塞信号集操作函数未决信号集操作函数 Linux信号捕捉signal函数sigaction函数 总结 Linux信号概念 信号在我们的生活中无处不在&#xff0c;常见的如电话铃声&#xff0c…

openstack-ansible部署zed版本all-in-one

目录 部署架构部署节点准备安装Rocky linux 9配置rocky 目标节点配置网络配置rocky linux网卡的创建永久网桥的方法&#xff1a; 部署前配置 部署架构 可用的操作系统&#xff1a; Debian11&#xff08;bullseye&#xff09; Ubuntu 22.04或20.04 CentOS Stream 9 或 Rocky Lin…

【Golang】网络编程

网络编程 网络模型介绍 OSI七层网络模型 在软件开发中我们使用最多的是上图中将互联网划分为五个分层的模型&#xff1a; 物理层数据链路层网络层传输层应用层 物理层 我们的电脑要与外界互联网通信&#xff0c;需要先把电脑连接网络&#xff0c;我们可以用双绞线、光纤、…

CocosCreator3.8研究笔记(二十五)CocosCreator 动画系统-2d骨骼动画spine

大家都知道&#xff0c;在游戏中 一般用帧动画或者骨骼动画&#xff0c;实现 人物的行走、奔跑、攻击等动作。 帧动画&#xff0c;在上一篇已经做了介绍&#xff0c;感兴趣的朋友可以前往阅读&#xff1a; CocosCreator3.8研究笔记&#xff08;二十四&#xff09;CocosCreator …

10.5作业

磕磕绊绊还是差不多完成了,tcp多客户端在线词典 代码&#xff1a; 数据库导入&#xff1a;有点粗糙&#xff0c;不知道怎么搞成两列&#xff0c;一个单词中间还是空格卧槽难搞 #include <stdio.h> #include <string.h> #include <stdlib.h> #include <s…

NPDP产品经理知识(产品创新流程)

1.复习组合管理: 组合管理的目标 ===> 价值最大化,项目平衡,战略一致,管道平衡(资源需求和供给),盈利充分 (实现财务目标) 产品创新流程就是管理风险的过程。 模糊前端: 产品创新章程:PIC 包含 =====> 背景,聚焦舞台,目标和目的,特别准则,可持续性 新产…

mysql面试题13:MySQL中什么是异步复制?底层实现?

该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:讲一讲mysql中什么是异步复制?底层实现? MySQL中的异步复制(Asynchronous Replication)是一种复制模式,主服务器将数据写入二进制日志后,无…

计组——I/O方式

一、程序查询方式 CPU不断轮询检查I/O控制器中“状态寄存器”&#xff0c;检测到状态为“已完成”之后&#xff0c;再从数据寄存器取出输入数据。 过程&#xff1a; 1.CPU执行初始化程序&#xff0c;并预置传送参数&#xff1b;设置计数器、设置数据首地址。 2. 向I/O接口发…

星际争霸之小霸王之小蜜蜂(十六)--狂奔的花猫

系列文章目录 星际争霸之小霸王之小蜜蜂&#xff08;十五&#xff09;--剧将终场 星际争霸之小霸王之小蜜蜂&#xff08;十四&#xff09;--资本家的眼泪 星际争霸之小霸王之小蜜蜂&#xff08;十三&#xff09;--接着奏乐接着舞 星际争霸之小霸王之小蜜蜂&#xff08;十二…

视频讲解|含可再生能源的热电联供型微网经济运行优化(含确定性和源荷随机两部分代码)

1 主要内容 该视频为《含可再生能源的热电联供型微网经济运行优化》代码讲解内容&#xff0c;对应的资源下载链接为考虑源荷不确定性的热电联供微网优化-王锐matlab&#xff08;含视频讲解&#xff09;&#xff0c;对该程序进行了详尽的讲解&#xff0c;基本做到句句分析和讲解…

路径问题【动态规划】

一、不同路径 class Solution { public:int uniquePaths(int m, int n) {vector<vector<int>> dp(m1,vector<int>(n1));dp[0][1] 1;for(int i 1;i < m;i){for(int j 1;j < n;j){dp[i][j] dp[i-1][j]dp[i][j-1];}}return dp[m][n];} }; 二、不同路…

三、thymeleaf基本语法

3.1、基本语法 3.1.1变量表达式&#xff1a;${...} 变量表达式用于在页面中输出指定的内容&#xff0c;此内容可以是变量&#xff0c;可以是集合的元素&#xff0c;也可以是对象的属性。主要用于填充标签的属性值&#xff0c;标签内的文本&#xff0c;以及页面中js变量的值等…

OpenCV项目开发实战--CUDA 模块使用详细介绍--附完整代码

如果您已经使用 OpenCV 一段时间,您应该已经注意到,在大多数情况下 OpenCV 使用 CPU,这并不总能保证您获得所需的性能。为了解决这个问题,2010 年 OpenCV 中添加了一个使用 CUDA 提供 GPU 加速的新模块。您可以在下面找到展示 GPU 模块优势的基准测试: 图 1: CPU 上的 Op…

Day-06 基于 Docker安装 Nginx 镜像

1.去官方公有仓库查询nginx镜像 docker search nginx 2.拉取该镜像 docker pull nginx 3. 启动镜像&#xff0c;使用nginx服务&#xff0c;代理本机8080端口(测试是不是好使) docker run -d -p 8080:80 --name nginx-8080 nginx docker ps curl 127.0.0.1:8080