基于windowsPE文件的恶意代码分析;使用SystemInternal工具与内核调试器研究windows用户空间与内核空间
参考书籍:《Windows环境下32位汇编语言程序设计》14章、《C++反汇编与逆向分析技术揭秘》13章异常处理的作用:在程序运行出现异常或错误时,系统给予程序修正错误或异常的最后一个机会。异常处理分2类(按作用域分):1、筛选器过滤回调函数,这个函数的作用域为进程范围,一个进程有且只有一个筛选器过...
这里更多探究的是指针的机制。用debug对下面程序进行分析,记录每一条C语句运行后,相关内存单元的值。程序a.c注意理解指针机制我们编写如下代码:编译加载进debug查看:我们先看其反汇编的代码:在这里我们对比着C语句分析:第一条语句是将1000H(16进制,以下16进制用H说明,未说明的都为十进制...
分类:
编程语言 时间:
2014-11-30 21:17:33
阅读次数:
275
CALC : 判断表达式 WATCH : 添加监视表达式 AT : 在指定地址进行反汇编 FOLLOW : 跟随命令 ORIG : 反汇编于 EIP DUMP 在指定地址进行转存 DA : 转存为反汇编代码 DB : 使用十六进制字节格式转存 DC : 使用 ASCII 格式转存 DD : 转存在堆...
分类:
其他好文 时间:
2014-11-29 13:12:55
阅读次数:
213
这几天郁闷了好几天,好不容易把算法实现了,加入到项目中的时候,总是出现一些错误,各种调试,各种反汇编debug,还是不见错误的踪影;最后发现错误的时候,快cry了,原来小写写成大写了,这2B的错误,说出来太丢人啦!丢人吧,让自己更有动力;
心得:写程序的时候,要一起呵成...
分类:
编程语言 时间:
2014-11-27 18:34:08
阅读次数:
167
到达一个已知的反汇编位置:G。栈帧是在程序的运行时栈中分配的内存块,专门用于特定的函数调用。存在规定如何向函数传递参数的调用约定,但不存在规定函数的局部变量布局的约定。编译器的第一个任务是,计算出函数的局部变量所需的空间。编译器的第二个任务,则是确定这些变量是否可在CPU寄存器中分配,或者它们是否必...
分类:
其他好文 时间:
2014-11-25 22:45:02
阅读次数:
239
dis — Disassembler for Python bytecode,即把python代码反汇编为字节码指令.
使用超级简单:python -m dis xxx.py
当我在网上看到while 1比while True快的时候,我感到很困惑,为何会有这种区别呢?
于是使用dis来深入.
假设est_while.py代码如下.
#coding=utf-8
while 1...
分类:
编程语言 时间:
2014-11-25 12:46:19
阅读次数:
155
PE 中漫步—“白眉”指令追踪技术与 Paimei程序异常发生的位置通常离漏洞函数很远,当溢出发生时,栈帧往往也会遭到破坏,给动态调试制造很大的困难。指令追踪最大限度地结合了动态分析和静态分析的做点,能够迅速定位漏洞。其工作流程如下:1 将目标 PE 文件反汇编,按照指令块记录下来(通常用跳转指令....
分类:
其他好文 时间:
2014-11-24 16:42:08
阅读次数:
207
flash player版本:14.0.0.125
产品名称:Adobe® Flash® Player Installer/Uninstaller
系统:windows xp sp3
调试器:windbg
反汇编器:IDA
应用程序:FlashUtil32_14_0_0_125_Plugin.exe
coredump信息:
eax=00000000 ebx=01ed7...
分类:
其他好文 时间:
2014-11-20 10:19:50
阅读次数:
208
一、前言
上一篇文章讲解了“熊猫烧香”病毒样本的反汇编代码入口处的分析,虽然尚未研究到病毒的核心部分,但其实我们后续的分析与之前的思想是一致的。而越到核心部分,可能会遇到越来越多的API函数,结合所调用函数的参数进行分析,反而有助于我们更容易地理解病毒的行为。应当将分析出的每一个CALL函数,改为我们能够理解的名字,这往往也有助于对后续程序的理解。
二、病毒功能分析
...
分类:
其他好文 时间:
2014-11-18 16:02:21
阅读次数:
217