如何逆软件运行流程,知道前面执行的代码呢?
程序都是顺着运行的,假设我在程序汇编的8888行下了一个断点,那么程序肯定会中断运行,
程序都是按照汇编一行一行运行的,我想知道8888行汇编的
上一句执行的汇编在哪一行?
上上一句执行的汇编在哪一行?
上上上一句执行的汇编在哪一行?
上上上上一句执行的汇编在哪一行?
我目前会的办法就是用减号,但是感觉减号有时候跑太快了,用调用堆栈,似乎也跑得太快了!
大家有哪些办法能够逆着流程找到过去被执行过的汇编呢?
你们都是用什么办法的呢? 看堆栈,能找出当前程序调用过的call 以及参数,自己去分析
但并没有你想象的那么简单能看到每一行语句,
否则谁都会逆向了;
我想你应该先了解逆向的原理,以及反汇编的知识; ReLoading 发表于 2022-2-24 15:12
看堆栈,能找出当前程序调用过的call 以及参数,自己去分析
但并没有你想象的那么简单能看到每一行语句,
...
这是不可能的,因为各种不确定因素影响各种跳转,很多代码执行与否偶然性大…
如果你非要怎样,那就是x64dbg中的跟踪了,可以在跟踪文件中想到哪一行就到哪一行… 有没有办法,比如,上100句执行的语句,我在命令窗口输入100相关的参数命令,然后跳到对应的汇编语句上,有没有这样的功能? ReLoading 发表于 2022-2-24 15:12
看堆栈,能找出当前程序调用过的call 以及参数,自己去分析
但并没有你想象的那么简单能看到每一行语句,
...
我也看过堆栈,不过我一般都是看调用堆栈,就是工具栏上的k按钮。传说中的F12暂停法就是用调用堆栈。 差不多都是堆栈确定大范围,然后研究call缩小范围,通常都是大段大段看汇编,关键地方才会逐行看…
像你这样一行一行流程都去了解追踪,哪有这么多时间和精力?
大型的程序动不动就上万行甚至上亿行代码,你确定用体力去对抗机器? 基本不太可能, 不然逆向就很简单了 我今天是大佬 发表于 2022-2-24 15:31
基本不太可能, 不然逆向就很简单了
如果有一个插件,能记录软件执行的哪一行汇编(并且记录行号),然后输出到文本,然后根据文本。。。这只是一个思路,我觉得应该行。 8楼想法不错,不知道有没有这样的插件。 xiaomm250 发表于 2022-2-24 15:34
如果有一个插件,能记录软件执行的哪一行汇编(并且记录行号),然后输出到文本,然后根据文本。。。这只 ...
自己写的脚本已经超越此功能。{:301_998:}
页:
[1]
2