分享

IDA中的SIG应用

 herowuking 2015-05-23

SIG在IDA中相当于符号文件的作用,如果是自己写的PE程序,编译后会有OBJ文件,可以通过工具把它转化为一个SIG 便于在IDA观看。要应用SIG需要把SIG文件拷贝到IDA目录下的sig文件夹中,然后在IDA中shift+F5在右键添加相应添加相应的项目,反汇编中的函数名就会变为原本的函数名,这样方便查看。如果是第三方lib 也可以转换出一个sig  其中转换需要用到的工具有 pcf.exe link.exe sigmake.exe 这三个文件可以从《C++反汇编与逆向分析》的随书文件得到 为了方便使用可以三个文件拷贝到system32

1.OBJ转SIG

  1. pcf test.obj  
  2. sigmake test.pat test.sig  
  3.   
  4. 第一步得到PAT文件 第二步生成sig文件  

2.lib转SIG

由于lib里边有很多OBJ所以这里用批处理文本来写,从《C++反汇编与逆向分析》得到以下代码

  1. md %1_objs  
  2. cd %1_objs  
  3. for /F %%i in ('link -lib /list %1.lib') do link -lib /extract:%%i %1.lib  
  4. for %%i in (*.obj) do pcf %%i  
  5. sigmake -n"%1.lib" *.pat %1.sig  
  6. if exist %1.exc for %%i in (%1.exc) do find /v ";" %%i > abc.exc   
  7. if exist %1.exc for %%i in (%1.exc) do > abc.exc more +2 "%%i"  
  8. copy abc.exc %1.exc  
  9. del abc.exc  
  10. sigmake -n"%1.lib" *.pat %1.sig  
  11. copy %1.sig ..\%1.sig  
  12. cd ..  
  13. del %1_objs /s /q  
  14. rd %1_objs  
保存为.BAT文件执行即可

总结:

创建签名步骤如下:

1.获得一个你希望为其创建签名文件的静态库。

2.利用其中的一个FLAIR解析器为该库创建一个模式文件。

3.运行sigmake.exe来处理生成的模式文件,并生成一个签名文件。

4.将新的签名文件复制到<IDADIR>/sig目录中,安装这个文件。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多