IDA6.8 显示中文字符串

作为一个逆向工程师,经常会使用到IDA。可IDA默认不支持中文字符串,碰到有中文字符串的程序时,IDA显示的结果一点都不友好。

摸索了一下,如果要让IDA显示中文字符串,需要做一些修改。

1. 修改IDA配置文件 cfgida.cfg. 搜索“cp866”, 然后(CP866 version)的AsciiStringChars 注释掉, 将(full version)AsciiStringChars反注释掉。修改后是这个样子的:

// (cp866 version) //AsciiStringChars = // " av x1B" // " !"#$%&()*+,-./0123456789:;<=>?" // "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_" // "`abcdefghijklmnopqrstuvwxyz{|}~" // "€

//(full version) AsciiStringChars = " av x1B" " !"#$%&()*+,-./0123456789:;<=>?" "@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_" "`abcdefghijklmnopqrstuvwxyz{|}~" "€

2. 定位到中文字符串的地方,首先你得辨别一下这个中文字符串的编码,可能是GBK,UNICODE,UTF-8等。按下ATL+A 打开字符串对话框。

1)左边区域是你当前操作的字符串单个设置。

2)右边区域是字符串全局设置。全局设置是你按下shift + F12 时显示的字符串的类型。设置类型根据实际情况选择,一般程序中可能同时存在多种编码。

3)下方区域是最关键的地方,编码类型选择。左边是本次设置,右边是全局设置。

全局设置:

8bit 的可以设置成GBK 或者UTF-8,根据实际情况选择。16bit的一般是UNICODE, 直接设置成UTF-16LE. 如果你的选项里没有GBK,则先点开左边的Change encoding, 按下insert 键, 输入gbk 添加GBK编码就可以了。

单个字符串的编码设置

同样也是根据实际情况选择。

看看识别的效果:

经验分享 程序员 微信小程序 职场和发展