从 IDA 命令行界面使用现有的 IDB

逆向工程 艾达 蟒蛇 自动化
2021-06-28 01:27:35

有没有办法从 IDA 命令行界面使用现有的 IDB?

我通过命令行开关列表走到这里,但没有任何相关的开关。

由于我目前正在编写 IDA 脚本以根据同一文件进行一些处理,因此我意识到我可以通过重用现有 IDB 来节省一些时间,而不是每次迭代重复删除和创建另一个新 IDB。( -c 导致这种行为)

我当前的命令: idaw.exe -c -A -SC:\someScript.py

2个回答

我当前的命令: idaw.exe -c -A -SC:\someScript.py

删除-c并添加现有 IDB 文件的路径:

idaw.exe -A -SC:\someScript.py C:\existingIdb.idb

当我需要在现有的 IDB 上获取一些功能信息时,我会使用它,看看它是否有帮助

>cat idc\dumpfun.idc
#include <idc.idc>
static main () {    
        auto fun,ref,funname,fullstr,instr,fpi,fpo;
        Batch(1);
        fun = MinEA();
        fpi = fopen("input.txt","rb");
        instr = readstr(fpi);
        fclose(fpi);
        fpo = fopen("outtext.txt","wb");
        while (fun != -1) {
                fun = NextFunction(fun);
                ref = RfirstB(fun);
                funname = GetFunctionName(fun);
                if( strstr(instr,funname) != -1) {
                        fullstr = form("%x %x %s\n",fun,ref,funname);
                        writestr(fpo,fullstr);    
                }
        }
        fclose(fpo);
        Exit(0);    
}
>echo VirtualQuery > input.txt    
>cat input.txt
VirtualQuery    
>del outtext.txt    
>idag   -Sdumpfun.idc idag.idb    
>cat outtext.txt
5706b8 567b5f VirtualQuery
ffffffff ffffffff