跟多网络技术文章去
1.1 寄存器
寄存器其实是一个统称,是一些CPU芯片里用于快速计算的小型存储器,寄存器其实是通用的,但还是有一些约定。(计算机组成原理)
eax:拓展累加寄存器;
ecx:循环计数器;
edx:数据寄存器;
ebx:基址寄存器;
esp:栈顶;
ebp:栈底;
栈:数据结构中一种存储数据方式,可以看成是竖着的容器,先进先出
esi:拓展目地指针;
edi:拓展目地指针;
eip:指令指针。
1.2 汇编指令初识
利用ollydbg认识汇编指令,汇编语言其实就是“助记符”
1.3 汇编指令种类及举例
汇编指令有5类:
1.数据传输指令:mov
2.逻辑计算指令:add
3.串操作指令:movs
4.控制转移指令:jmp
5.处理器控制指令:nop
1,2,4类指令对免杀有用
1.4 常用免杀汇编指令必备
mov ebp,9:传送指令
push ebp :进栈指令
pop ebp :出栈指令
add esp,8 :加法指令
sub esp,8 :减法指令
inc ecx :增量指令
dec ecx :减量指令
jmp 00000001 :无条件跳转指令
call 00000001 :调用指令
xchg 交换指令
pushad 压栈8个寄存器
popad 弹出8个寄存器(先进后出)
1.5 汇编指令与十六进制代码对照、汇编指令等价对照(等价替换)
OD 输入表隐藏:
60 E8 01 00 00 00 00 58 80 38 00 0F 85 F5 00 00 00 FE 00 64 A1 30 00 00 00 8B 40 0C 8B 40 1C 8B 00 8B 40 08 8B D8 E8 0F 00 00 00 47 65 74 50 72 6F 63 41 64 64 72 65 73 73 00 59 60 89 C3 89 CF 30 C0 AE 75 FD 4F 29 CF 87 F9 8B 43 3C 8B 74 03 78 8D 74 1E 18 AD 92 AD 50 AD 95 AD 95 01 D8 89 7C 24 18 89 4C 24 14 4A 74 27 8B 34 90 01 DE F3 A6 74 0A 8B 7C 24 18 8B 4C 24 14 EB EA D1 E2 01 D5 0F B7 44 1D 00 C1 E0 02 03 04 24 8B 04 03 01 D8 59 89 44 24 1C 89 5C 24 18 E8 12 00 00 00 00 00 00 00 4C 6F 61 64 4C 69 62 72 61 72 79 41 00 00 59 83 C1 04 51 53 FF D0 89 44 24 14 E8 00 00 00 00 5D 81 E5 00 00 FF FF 33 C0 EB 06 81 ED 00 10 00 00 66 8B 45 00 66 3D 4D 5A 90 75 EF 8B 45 3C 8B 04 28 3D 50 45 00 00 75 E2 B8 48 61 11 00 36 8D 1C 28 8B 43 0C 85 C0 74 0A E8 0D 00 00 00 83 C3 14 EB EF 61 E9 82 8F F9 FF 90 90 53 8D 14 28 52 FF 54 24 20 8B D0 8B 5B 10 8D 1C 2B 8B 03 85 C0 74 23 3D 00 00 00 80 72 07 2D 00 00 00 80 EB 06 8D 04 28 83 C0 02 52 50 52 FF 54 24 30 89 03 83 C3 04 5A EB D7 5B C3
加个新区段
JMP 0042c08d 修改为 jmp 入口点
MOV EAX,116148 修改为mov 输入表rva
lordpe修改代码开始位置为入口点,输入表改成00000,00000
输入表隐藏加密
先输入表隐藏
加密代码:
pushad ← ← ← ← ← ← ← ← ← ← ┓
mov ebx,加密区段的起始位置 ↑
xor byte ptr ds:[ebx],33 ↑
inc ebx ↑
cmp ebx,加密区段末位置 ↑
jb 跳到xor byte ptr ds:[ebx],33 ↑
popad ↑
jmp 入口点 ↑
lordpe 修改文件新的入口点 →→→→→→→┛
定位云引擎---预处理
改入口
加花
区段合并
加壳再拖壳 PE结构
输入表隐藏
输入表加密
输入表重建
区段加密
资源改变
改变资源名称
修改生成的资源名称
修改MD5
添加数字签名 qvm 04 08
在不影响程序运行的情况下,加区段
可以填充输入表,再定位
定位------multiccl保护
VirusFixedPosition
myccl
360云:
变异入口点,移动pe头
非法使用寄存器:
空白区
二进制编辑:d9 de df db
(FSTP ESI) ← ← ← ← ← ← ← ← ← ← ┓
(FISTP EBX) ↑
CALL 入口点 ↑
修改入口点到 →→→→→→→→→→→→→┛