能力值:
( LV4,RANK:55 )
|
-
-
2 楼
有中文版,静态不加载到内存,不过ida也有动态调试的功能
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
那静态调试的好处是什么啊 适合什么情况使用
|
能力值:
( LV15,RANK:440 )
|
-
-
4 楼
有人比喻过,静态分析(IDA)是空中侦察,如果确定某地点可疑,会浱地面部队(动态调试)去核实情况。
其实就是静态分析容易判断出程序逻辑(一般的调试器自带的反汇编器功能不是很强大),而动态调试则是要通过分析程序的运行时动态特征去进一步验证静态分析所得到逻辑的正确性或者是解除静态分析的疑惑。
现在一些软件其实把静态和动态综合了,也许你用了,却没有发现而已。比如OD在动态调试时,带有比较强的反汇编功能(其实是静态分析的长处)。
以上是我的个人见解,当然认识水平有限。牛们莫笑啦。LZ可以参考《黑客反汇编揭密》中关于调试器和反汇编器的描述。
|
能力值:
( LV4,RANK:55 )
|
-
-
5 楼
个人见解:静态的好处就是可以很好的分析程序的流程吧,还有方便的f5。不过一些加密或是加壳过的程序静态是不好分析的,不过可以先动态把你要分析的部分从内存dump出来,再去静态分析。
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
看代码与运行代码的区别
代码必须看,也必须运行
|
能力值:
( LV3,RANK:20 )
|
-
-
7 楼
一般驱动程序采用的都是静态汇编,动态汇编很麻烦。。。
|
能力值:
( LV3,RANK:37 )
|
-
-
8 楼
静态分析能很好的分析程序的流程,锁定可疑的地点,然后去动态调试验证
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
动态调试就是加载到内存后进行调试
观看每一步的操作及其对内存分配内存管理和寄存器的变化及其flag寄存器的状态进行分析
静态调试就是不加载到内存
然后静态反汇编出来的汇编代码
观察里面的结构和加密解密的重要部分进行分析
|
能力值:
( LV3,RANK:20 )
|
-
-
10 楼
建议楼主自已研究下IDA吧,看看到底是怎么回事。
|
能力值:
( LV3,RANK:30 )
|
-
-
11 楼
对于静态反汇编就不说了吧,就是在没有执行可执行文件的情况下反汇编。对于静态调试就是使用虚拟技术,程序在计算机中没有真正执行,调试器自动构造一个CPU解码系统,比如模拟执行mov eax,0fffffff就在eax标识的那块内存中放入0ffffffff,而程序并没有意识到自己在虚拟执行环境下,这样可以既实现动态内存解码,也能实现对程序的完全控制
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
楼上几位说的很好
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
能用IDA等静态分析软件来分析软件的算法(如加密算法或一些你感兴趣的算法)。
在逆向中有很大作用 我也是新手、、、这只是我的理解、、、、一起学习吧、、、
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
这个很形象。就是这么样,光静态分析有时候是不容易确定意思,动态跟一下会加深了解。
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
我觉得4,9楼说得有道理。
|
能力值:
( LV2,RANK:10 )
|
-
-
16 楼
如果你只采用动态调试一个程序,那你的工作量会非常大,每个函数你都得跟进去,静态调试主要是让你有一个大局观,遇到可疑的地方在动态调试,这样会省不少工作量,一般逆向的时候都是动静结合来的。。。。。
|
|
|