免杀必备-花指令

【网络安全】渗透测试之木马免杀 渗透测试之木马免杀 阅读详情

【深层】伪装 PEtite 2.2 -> Ian Luck 汇编代码:
============================
伪装代码部分:
============================

mov eax,0040E000
push 004153F3
push dword ptr fs:[0]
mov dword ptr fs:[0],esp
pushfw
pushad
push eax
xor ebx,ebx
pop eax
popad
popfw
pop dword ptr fs:[0]
pop eax
jmp XXXXXXXX '执行到程序的原有OEP

============================

【深层】伪装 WCRT Library (Visual C++) DLL Method 1 -> Jibz 二进制代码 + 汇编代码:
============================
伪装代码部分:
============================

使用二进制粘贴以下代码:

55 8B EC 83 7D 0C 01 75 41 A1 C0 30 00 10 85 C0 74 0A FF D0 85 C0 75 04 6A FE EB 17 68 0C 30 00 10 68 08 30 00 10 E8 89 00 00 00 85 C0 59 59 74 08 6A FD FF 15 08 20 00 10 68 04 30 00 10 68 00 30 00 10 E8 52 00 00 00 59 59

粘贴完毕后,再添加2行汇编语句:

jmp XXXXXXXX '执行到程序的原有OEP
retn 0C

============================


从哓哓免杀上兴2006里提出的花指令
1320F01D . 0000 add byte ptr ds:[eax],al
1320F01F . 0055 8B add byte ptr ss:[ebp-75],dl
1320F022 . EC in al,dx
1320F023 . 6A FF push -1
1320F025 . 68 22222200 push 222222
1320F02A . 68 44444400 push 444444 ; SE handler installation
1320F02F . 64:A1 00000000 mov eax,dword ptr fs:[0]
1320F035 . 50 push eax
1320F036 . 64:8925 00000000 mov dword ptr fs:[0],esp
1320F03D . 58 pop eax
1320F03E . 64:A3 00000000 mov dword ptr fs:[0],eax
1320F044 . 58 pop eax
1320F045 . 58 pop eax
1320F046 . 58 pop eax
1320F047 . 58 pop eax
1320F048 . 58 pop eax
1320F049 . 74 0A je short Server__.1320F055
1320F04B . 75 08 jnz short Server__.1320F055
1320F04D . 90 nop
1320F04E . 90 nop
1320F04F . 90 nop
1320F050 . 90 nop
1320F051 . 90 nop
1320F052 . 90 nop
1320F053 . 90 nop
1320F054 . 90 nop
1320F055 > 90 nop
1320F056 . E2 04 loopd short Server__.1320F05C
1320F058 . 90 nop
1320F059 . 90 nop
1320F05A . 90 nop
1320F05B . 90 nop
1320F05C > 90 nop
1320F05D .^ 0F82 DD8FFDFF jb Server__.131E8040
1320F063 .^ 0F83 D78FFDFF jnb Server__.131E8040








花指令


add byte ptr ds:[eax+9018EB90],dl db 0e8h
--------------------------------------------------------------------
C:
push ebp
mov ebp,esp
push -1
push 111111
push 222222
mov eax,fs:[0]
push eax
mov fs:[0],esp
pop eax
mov fs:[0],eax
pop eax
pop eax
pop eax
pop eax
mov ebp,eax
jmp 文件头

——————————————————————————————————


另一种:
新入口地址:

push ebp
mov ebp,esp
inc ecx
push edx
nop
pop edx
dec ecx
pop ebp
inc ecx
loop 某一处

某一处:
nop
jmp j1

j1: jmp j2
nop
..............
jmp jn
jn: jmp 老入口地址
-----------------------------------------------------------------------------------
VC++程序的入口代码:
PUSH EBP
MOV EBP,ESP
PUSH -1
push 415448 -/___
PUSH 4021A8 -/ 在这段代码中类似这样的操作数可以乱填
MOV EAX,DWORD PTR FS:[0]
PUSH EAX
MOV DWORD PTR FS:[0],ESP
ADD ESP,-6C
PUSH EBX
PUSH ESI
PUSH EDI
ADD BYTE PTR DS:[EAX],AL /这条指令可以不要!
jmp 跳转到程序原来的入口点
----------------------------------------------------------------------------
Microsoft Visual C++ 6.0
PUSH -1
PUSH 0
PUSH 0
MOV EAX,DWORD PTR FS:[0]
PUSH EAX
MOV DWORD PTR FS:[0],ESP
SUB ESP,68
PUSH EBX
PUSH ESI
PUSH EDI
POP EAX
POP EAX
POP EAX
ADD ESP,68
POP EAX
MOV DWORD PTR FS:[0],EAX
POP EAX
POP EAX
POP EAX
POP EAX
MOV EBP,EAX
JMP 原入口

-----------------------------------------------------------------------------------
VC++程序的入口代码:
PUSH EBP
MOV EBP,ESP
PUSH -1
push 415448
PUSH 4021A8
MOV EAX,DWORD PTR FS:[0]
PUSH EAX
MOV DWORD PTR FS:[0],ESP
ADD ESP,-6C
PUSH EBX
PUSH ESI
PUSH EDI
ADD BYTE PTR DS:[EAX],AL /这条指令可以不要!
jo 00401000 /原入口
jno 00401000 /原入口
db 0e8h /花代
_______________________-------------------------------------------
push ebp
nop
nop
mov ebp,esp
inc ecx
nop
push edx
nop
nop
pop edx
nop
pop ebp
inc ecx
loopd short 1
nop
nop
jmp short 2
nop
jmp short 3
nop
jmp short 4
jmp
----------------------------------------------------------------
push ebp
nop
nop
mov ebp,esp
inc ecx
nop
push edx
nop
nop
pop edx
nop
pop ebp
inc ecx
loopd
nop
nop


add byte ptr ds:[eax+9018EB90],dl
-----------------------------------------------------------
浩天花
PUSH EBP
MOV EBP,ESP
nop
nop
PUSH -1
nop
nop
push 515448
nop
nop
PUSH 6021A8
nop
nop
MOV EAX,DWORD PTR FS:[0]
PUSH EAX
MOV DWORD PTR FS:[0],ESP
nop
nop
MOV EAX,DWORD PTR FS:
PUSH EAX
MOV DWORD PTR FS: ,ESP
nop
nop
MOV EAX,DWORD PTR FS:
PUSH EAX
MOV DWORD PTR FS: ,ESP
nop
nop
mov eax,fs:[0]
push eax
mov fs:[0],esp
nop
nop
inc ecx
push eax
pop eax
push edx
nop
pop edx
dec ecx
pop ebp
inc ecx
nop
nop
ADD ESP,-6C
PUSH EBX
PUSH ESI
PUSH EDI
jmp 跳转到程序原来的入口点
--------------------------------------------------------------------

防杀精灵终极防杀代码
push ebp
mov ebp,esp
add esp,-0C
add esp,0C
push eax
jmp



花指令:【深层】伪装 WWPack32 1.x -> Piotr Warezak 汇编代码:
============================
伪装代码部分:
============================


CODE:
push ebx
push ebp
mov ebp,eax
xor ebx,ebx
jmp short NOTEPAD2.01013068
or eax,570A0D0A
push edi
push eax
popad
arpl word ptr ds:[ebx+33],bp
xor al,byte ptr ds:[eax]
[Copy to clipboard]


...........(中间代码随意填写,但保证地址是有效的)

来到01013068处,地址修改为:

jmp XXXXXXXX     '执行到程序的原有OEP

 
免杀花指令生成器(不错的免杀工具) 汇编语言其实就是机器指令的符号化,从某种程度上看,它只是更容易理解一点的机器指令而已。每一条汇编语句,在汇编时,都会根据cpu特定的指令符号表将汇编指令翻译成二进制代码。而日常应用中,我们通过VC的IDE或其它如OD等反汇编、反编译软件也可以将一个二进制程序反汇编成汇编代码。机器的一般格式为:指令+数据。而反汇编的大致过程是:首先会确定指令开始的首地址,然后根据这个指令字判断是哪个汇编语句,然后再将后面的数据反汇编出来。由此,我们可以看到,在这一步的反汇编过程中存在漏洞:如果有人故意将错误的机器指令放在了错误的位置,那反汇编时,就有可能连同后面的数据一起错误地反汇编出来,这样,我们看到的就可能是一个错误的反汇编代码。这就是“花指令”,简而言之,花指令是利用了反汇编时单纯根据机器指令字来决定反汇编结果的漏洞。 立即下载

相关推荐

源码免杀-花指令

含源码,研究使用,大家在不读懂的情况下不要运行。{我们交流的是技术,展示的源代码和相关代码的目的只是为了说明技术的原理和使用。如果任何个人或组织利用本文档发布的技术进行破坏,应由其本人负责。

CTF逆向基础----花指令总结

什么是花指令? 花指令实质就是一串垃圾指令,它与程序本身的功能无关,并不影响程序本身的逻辑。在软件保护中,花指令被作为一种手段来增加静态分析的难度,花指令也可以被用在病毒或木马上,通过加入花指令改变程序的特征码,躲避杀软的扫描,从而达到免杀的目的,本文将介绍一些常见的花指令的形式,花指令一般被分为两类,被执行的和不会被执行的。 不会被执行的花指令 花指令虽然被插入到了正常代码的中间,但是并不意味着它一定会得到执行,这类花指令通常形式为在代码中出现了类似数据的代码,或者IDA反汇编后为jmupout(xxxx

一位非著名不专业的Re选手 1万+

贝加莱Automation Studio 4.10安装保姆级教程:从官网下载到解决.Net 3.5报错

本文提供贝加莱Automation Studio 4.10的详细安装教程,涵盖从官网下载到解决.Net 3.5报错的全过程。特别针对工业自动化开发环境中常见的.Net Framework 3.5安装问题,提供多种经过验证的解决方案,包括控制面板安装、DISM命令离线安装和手动下载安装包等方法,帮助工程师顺利完成PLC开发环境的搭建。

weixin_30955617的博客 718

NSSCTF reverse题目解析(详细版)持续更新

附件是一个.py文件原代码的含义是将list[]数组进行操作得到一个key利用key和flag进行异或操作,得到16进制的result所以可以得到大致的逆向代码框架重点就是对以下语句进行逆向该语句的含义是keyhex()[2:]zfill(2)因此的到逆向语句这里要注意的就是16进制和字符间的转换int(string,16)的功能就是将16进制转为10进制因此得到完整的脚本。

ZJPC007的博客 6955

避开这些坑!DS18B20温度读取不准、时序混乱的5个常见问题与调试方法

本文深入解析DS18B20温度传感器在应用中常见的5个问题,包括温度读取不准、时序混乱等,并提供详细的调试方法。通过硬件设计优化、精准延时实现和数据解析技巧,帮助开发者有效解决温度值跳变、初始化失败等典型问题,提升OneWire协议下的温度测量精度。

weixin_29185493的博客 465

交通银行金融科技后端开发实习生面试经验

笔试之路的第一个脚印。不足的地方:基本功不扎实,得补。先补sql(先整理出一篇sql语句做题的文章,争取下次笔试拿下这一块),编程题中的SQL写不出来感觉很丢人。然后补八股文,结合一些网上项目教程,来理解常用的一些八股文(比如各种锁)。

T__TSZ的博客 1732

reversing.kr学习之路-ransomeware

ransomeware - writeup 题目来源 http://reversing.kr 题目知识点:upx + 花指令 + 堆栈不平衡 + exe特征码提取key 前言 文章只是记录一下自己在reversing.kr上学习CTF逆向的经历,如果文中出现什么技术错误,烦请各位大佬,在评论中指正。本人技术刚刚入门,菜鸟一枚,大佬勿喷啊~ 正文 首先在网站上下载附件,得到一个...

diaojian3887的博客 2358

Open3D——RANSAC 三维点云空间直线拟合【2025最新版】

使用RANSAC算法在点云数据中拟合三维空间直线的python代码实现。博客长期更新,本文最新更新时间为:2025年3月23日。

点云侠的博客 7354

【免杀】加花指令秒过杀?

免杀基础知识教学

m0_68702501的博客 1832

【STM32系统】基于STM32+手机APP设计的智能停车场系统

功能简介1、进出停车场时需要刷卡,进行一个记时、计费的功能。2、停车位配有超声波检测,主要识别车位是否被占用。3、车位区域配有OLED显示屏,用户可以通过显示屏看到空闲车位。4、车位配有车位灯。当用户找不到车位可以通过手机点亮车位灯5、停车场配有温湿度检测和烟雾检测模块。当环境发生异常状态。会触动紧急报警。6、停车场信息会通过Wi-Fi发送数据上传至阿里云。用户可以通过手机了解到停车场空闲车位和停车时间、费用。

嵌入式阿齐Archie 2万+

【局部路径规划模块地图算法】基于势场地图的VFH、VFH+、VFH*算法(附C++代码)

认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长!本文先对基于地图的方法–VFH、VFH+、VFH*算法做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容。

qq_35635374的博客 1688

抗去除花指令(一)——花指令基础

<br />    入门知识,高手勿读<br />一、概述<br />花指令是对抗反汇编的有效手段之一,正常代码添加了花指令之后,可以破坏静态反汇编的过程,使反汇编的结果出现错误。错误的反汇编结果会造成破解者的分析工作大量增加,进而使之不能理解程序的结构和算法,也就很难破解程序,从而达到病毒或软件保护的目的。<br /> <br />二、花指令分类<br />[2.1]可执行式花指令<br />顾名思义,可执行式花指令指的是能够正常运行的但又不改变原始程序逻辑性的一组无用指令。这类花指令有如下特点:①可以正

蛛丝 7338

多思计组实验实验三、存储器读写实验

实验三、存储器读写实验

qq_53089329的博客 3653

免杀花指令编写组合----非常常用,免杀必备

1.POP 0  POP 0 2.PUSH ebp pop ebp pop ebp 3.nop ----一般插在中间 4.jmp 一下jmp的地址 jmp ... 5.add esp,1 ----数字可以改变 sub esp,1 6. add esp,1 add esp,-1 7.sub esp,1 sub esp,-1 8.push esi push edi

人生代码,代码人生。。。 4042

【零基础学习CAPL】——CAN报文的发送(CRC——ChecSum值)

本章主要介绍带有CRC值的报文发送一般报文可使用CANoe的IG模块直接发送,但带有CRC值的报文就只能编写脚本进行发送,以下详细讲解在配合Panel面板情况下,如何进行带有循环冗余码的报文进行报文的发送。

LOVE135149的博客 1914

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

汇编花指令技巧

相信很多朋友都做过***免杀,早期的免杀都是加壳和改特征码,现在免杀技术已经发展到花指令免杀,改壳之类的,而这些需要一定的汇编知识,但是汇编却不是一块容易啃的骨头,所以我写了这篇菜鸟版的免杀汇编教程,帮助小菜们快速入门,掌握免杀必备的汇编知识,改花指令,改特征码的技巧和编写自己的花指令。一、免杀必备的汇编知识push 压栈,栈是一种数据结构,记住四个字:先进后出。压栈就是把数...

weixin_34197488的博客 259

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

木马免杀之汇编花指令技巧

木马免杀之汇编花指令技巧   相信很多朋友都做过木马免杀,早期的免杀都是加壳和改特征码,现在免杀技术已经发展到花指令免杀,改壳之类的,而这些需要一定的汇编知识,但是汇编却不是一块容易啃的骨头,所以我写了这篇菜鸟版的免杀汇编教程,帮助小菜们快速入门,掌握免杀必备的汇编知识,改花指令,改特征码的技巧和编写自己的花指令。   一、免杀必备的汇编知识   push 压栈,

人生代码,代码人生。。。 1873

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

第一个免杀花指令生成器--不简单的免杀工具(图)

第一个免杀花指令生成器--不简单的免杀工具(图) 陆续将以前发表在杂志的文章放上来~,发表于《黑客X档案》,第几期忘了,呵呵 前言 相信做过免杀的朋友都知道花指令吧。加花指令是一种不错的文件免杀方法,而网上公布的花指令和花指令添加器因为里边的花指令被公布了,所以免杀效果不好。有点汇编基础的人就写自己的花指令,但写花指令的过程比较烦,所以我萌生了写一个花指令生成器的想法,首

人生代码,代码人生。。。 4471

Mimikatz的18种免杀姿势及防御策略

PS:建议 :win10慎用,唉,伤心 然后按照里面的的步骤一步步去执行,有很多错误,所以如果您只是看技巧的话,可以去原文查看哦。或者读的时候略过我的错误部分啦。>_< 免杀介绍中方法【1-10】转载于自于: Mimikatz的18种免杀姿势及防御策略(上) 文章目录0x01前言0x02免杀介绍方法0-原生态mimikatz.exe(VT查杀率55/71)方法1-加壳+签名+资源替换(...

Xor0ne 7910

免杀汇编教程(汇编花指令)

相信很多朋友都做过木马免杀,早期的免杀都是加壳和改特征码,现在免杀技术已经发展到花指令免杀,改壳之类的,而这些需要一定的汇编知识,但是汇编却不是一块容易啃的骨头,所以我写了这篇菜鸟版的免杀汇编教程,帮助小菜们快速入门,掌握免杀必备的汇编知识,改花指令,改特征码的技巧和编写自己的花指令。    一、免杀必备的汇编知识     push 压栈,栈是一种数据结构,记住四个字:先进后出。压栈就是把数

zacklin的专栏 2876

远控免杀从入门到实践 (11) 终结篇

郑重声明:文中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担! 《远控免杀从入门到实践》系列文章目录: 1、远控免杀从入门到实践 (1)基础篇 2、远控免杀从入门到实践 (2)工具总结篇 3、远控免杀从入门到实践 (3)代码篇-C/C++ 4、远控免杀从入门到实践 (4)代码篇-C# 5、远控免杀从入门到实践 (5)代码篇-Python 6、远控免杀从入门到实践 (6)代码篇-Powershell 7、远控免杀从入门到实践

weixin_46236101的博客 5098

花指令原理

  转自:http://hi.baidu.com/zhangjw918/blog/item/c69a7943e16de1189213c62f.html       第一个免杀花指令生成器--不简单的免杀工具(图) 陆续将以前发表在杂志的文章放上来~,发表于《黑客X档案》,第几期忘了,呵呵   前言   相信做过免杀的朋友都知道花指令吧。加花指令是一种不错的文件免杀方法,而网上...

注重长远 天天积累 cqujsjcyj 699

新世纪VIP免杀所有教程免费下载

新世纪VIP免杀所有教程免费下载 【免杀基础篇】 第一课:2006年免杀新技术综述 第二课:免杀学习方法,技巧与环境介绍 第三课:06年流行免杀工具综合应用技巧篇 第四课:手工加密,加花免杀技巧综合篇 第五课:免杀工具灵活组合搭配打造超强免杀木马 【myccl使用技巧篇】 第六

rjgcwl的专栏 1417

免杀基础概念与查杀方式原理笔记

这两句指令的作用是先将栈指针(esp)加上一个负值(-0C,这里的“0C”是以十六进制表示的数值,相当于十进制的 12),然后再将栈指针加上一个正值(0C)。- **跳转指令**:`jmp`(无条件跳)、`je`/`jz`(若相等则跳)、`jne`/`jnz`(若不相等则跳)、`jb`(若小于则跳)、`jl`(若小于则跳)、`ja`(若大于则跳)、`jg`(若大于则跳)、`jle`(若小于等于则跳)、`jge`(若大于等于则跳)。从效果上看,栈指针的值在修改前后都没有发生变化,保持了堆栈的平衡。

m0_57836225的博客 1325

【网络安全】简单的免杀方法(非常详细)零基础入门到精通,收藏这一篇就够了_免杀加壳工具

小七免杀工具包里有很多的工具我就列出其中的一些常用的排名不分前后为了帮助大家更好的学习网络安全,小编给大家准备了一份网络安全入门/进阶学习资料,里面的内容都是适合零基础小白的笔记和资料,不懂编程也能听懂、看懂,所有资料共282G,朋友们如果有需要全套网络安全入门+进阶学习资源包。😝有需要的小伙伴,可以点击下方链接免费领取【一一帮助安全学习,所有资源获取处一一】①网络安全学习路线②20份渗透测试电子书③安全攻防357页笔记④50份安全攻防面试指南⑤安全红队渗透工具包⑥网络安全必备书籍。

2401_84208172的博客 1628
上一篇: 终级免杀之PcShare Vs KV2006
下一篇: 扩充PE文件功能
iiprogram
博客等级 码龄25年 1068粉丝 1515原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值