摘要:
加载调试程序 调试程序的第一步就是使用OllyDbg来加载程序,加载的过程是通过创建新进程来完成的。OllyDbg通过CreateProcess以调试的方式开启新进程。在创建调成程序前,OllyDbg需要进行一些必要的检查工作。 首先是针对快捷方式的检查。OllyDbg根据可执行程序的后缀名来判断分 阅读全文
摘要:
PE装载器作用: 会把保护检测做到PE装载器上,从而达到卸掉原程序的保护 PE模拟器装载的步骤 1 给PE装载器留出足够的空间来装载需要的可执行文件,这里需要手动修改装载的可执行文件名字和占用内存的大小,程序首选装载地址 2 检查加载的头部是否是PE的头文件格式 3 从原可执行文件中提取PE格式重要 阅读全文
摘要:
单链表结构的缓冲区溢出攻击 代码环境是有一个8字节的缓冲区,和一个指向下一个结构体的链表,程序在构造完成链表后,有两次复写链表值的操作,利用这两次值的覆盖,第一次缓冲区溢出覆盖到下一个链表的指针为0018FEE8,在PE里事先做好了通用跳板的地址0x7798d7b,利用通用跳板,在程序执行到main 阅读全文
摘要:
VMP壳 :是用来保护关键的代码段的一种加密壳 原理:抽出局部代码,转变为中间码,虚拟机引擎对中间码进行解释,替代CPU解释执行代码,然后跳转回源地址,每次执行都解释执行一次代码,虚拟机有一套自己的反编译算法去解释执行代码: 比如 mov = 0xe8 ebx = 02 eax = 01 mov e 阅读全文