首页
社区
课程
招聘
[原创]OllyDBG v2.01 Final支持中文字符查找
发表于: 2013-11-6 13:26 27459

[原创]OllyDBG v2.01 Final支持中文字符查找

2013-11-6 13:26
27459
OllyDBG v2.01正式版出来已经有一段日子了,很多插件也都相应的跟上了。
但中文字符查找插件迟迟没有出来,苦于不懂vc,只好拿ollydbg.exe动刀子了。
经过几天的瞎搞,终于有点名目,现共享出来跟大家测试一下。
修改如下:
1、修改了几个界面的字体和大小
2、修改目录为固定目录
Data directory=.\UDD\
Standard library directory=.\DLL\
Plugin directory=.\plugin\
3、显示可能多的中文字符串,已经很完美了。
4、修改代码栏和cpu info栏中文显示不全的问题
使用方法:



没什么问题就打包一个吧
顺便将论坛的那个字符插件也打包了
20140120最新打包:

http://pan.baidu.com/s/1i37iaY5

20140120最新修改在95楼:
直升机直达

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 0
支持
分享
最新回复 (137)
雪    币: 8719
活跃值: (2085)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
要是有插件出来就好了!
2013-11-6 13:45
0
雪    币: 218
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
3
加载速度太慢了,
2013-11-6 14:17
0
雪    币: 6525
活跃值: (3423)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4

貌似不行....
这是测试的程序
ASM.zip
上传的附件:
2013-11-6 17:30
0
雪    币: 10665
活跃值: (3574)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
[QUOTE=Kisesy;1237360]
貌似不行....
这是测试的程序
ASM.zip[/QUOTE]

好像是有问题,明天再看看,我只测试了vb的程序,好像可以。
感觉od2.01不能检测ascii的中文字符!
2013-11-6 20:01
0
雪    币: 239
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
貌似宋体颜色会变淡
不好看
2013-11-6 22:26
0
雪    币: 10665
活跃值: (3574)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
宋体应该不是问题,可能跟屏幕的分辨率有关。
设置其它字体会担心别人的电脑里没有这个字体。
2013-11-7 08:04
0
雪    币: 146
活跃值: (880)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
有没有64位的。
2013-11-7 09:50
0
雪    币: 141
活跃值: (1135)
能力值: ( LV2,RANK:150 )
在线值:
发帖
回帖
粉丝
9
按照定义ASCII=American Standard Code for Information Interchange(用于信息交换的美国标准码)。怎么可能支持中文呢?
2013-11-7 11:31
0
雪    币: 3545
活跃值: (1872)
能力值: ( LV6,RANK:93 )
在线值:
发帖
回帖
粉丝
10
那个52的中文搜索插件不错,可惜拿了老罗的代码改改却不开源了
2013-11-7 12:07
0
雪    币: 239
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
吾爱扣扣这个会相对好看点
你这个整体界面都会变大
上传的附件:
2013-11-7 18:24
0
雪    币: 10665
活跃值: (3574)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
12
[QUOTE=amulin;1237616]吾爱扣扣这个会相对好看点
你这个整体界面都会变大
[/QUOTE]

主要是我的电脑显示器是1980×1080的,所以将字体高改成18号了。
不然见面太小看不清楚
2013-11-7 20:33
0
雪    币: 10665
活跃值: (3574)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
13
[QUOTE=Kisesy;1237360]
貌似不行....
这是测试的程序
ASM.zip[/QUOTE]

你的测试程序的字符串真的太奇怪了,好像是汉字+ascii,而且几个不规范的字符串还紧密的连在一起。对od2.01真是一个考验。其实现实的那些就是字符串,只是显示不正常,还有就是字符长度截取也有问题。但是高级语言的程序,应该不是很多像这样的字符串。




http://bbs.pediy.com/showthread.php?t=180491
这个vb的程序可以正常显示,过几天去掉一些多余的无用字符串。
上传的附件:
2013-11-7 20:41
0
雪    币: 9
活跃值: (379)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
给力给力给力给力给力给力给力给力给力给力给力给力
2013-11-7 21:42
0
雪    币: 6525
活跃值: (3423)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
15
那个程序的字符串,并不是Unicode,所以如果把识别Unicode选项选成 使用IsTextUnicode,那么将会把中文当作Unicode,但是中文并不是Unicode,所以就没法显示了....
这个程序确实有些问题,不选 使用IsTextUnicode 还搜不出中文来,蛋疼....
2013-11-8 11:23
0
雪    币: 1485
活跃值: (884)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
此言差矣,一直是开源的。

Ollydbg 中文搜索插件(专门对付VB)v2012.4.22
http://www.52pojie.cn/thread-69638-1-1.html
2013-11-8 12:07
0
雪    币: 10665
活跃值: (3574)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
17
我现在知道为什么会显示乱码了,原来是编码问题!
比如“你”字
你 ascii16  hex=C4E3
你 unicode  hex=604F

正在想办法解决!
2013-11-8 21:36
0
雪    币: 6525
活跃值: (3423)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
18
加油哦,呵呵,我技术渣帮不上忙...
其实改这个太难了,VB是Unicode编码,跟别的语言不一样,我担心一旦强制改了,会影响其他语言
我的想法是,Unicode不用管,因为中英文编码是一致的,所以只改ANSI字符串
OD搜索到字符串后会向字符串窗口的列表里填充,这时候截获字符串,然后通过MultiByteToWideChar之类的API改变编码后返回去就行了....
我找了找发现0048785B,正在字符串拷贝,在这个Call上下断点,然后搜索字符串,会发现寄存器和堆栈上就会显示搜索到的字符串,但是我发现,中文的字符串的两个字符被分割成了一个字符.....

也就是说,正常显示中文的编码是ANSI,但是OD只能处理ASCII编码,它会把除去UTF-8和Unicode编码以外的其他字符串当作ASCII显示,ASCII只有256个字符,所以....唉...
2013-11-8 22:12
0
雪    币: 3545
活跃值: (1872)
能力值: ( LV6,RANK:93 )
在线值:
发帖
回帖
粉丝
19
这个好,呵呵,没仔细看过
如有必要,有空我可以将它port到OD2.01
2013-11-8 22:21
0
雪    币: 10665
活跃值: (3574)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
20
强烈支持将插件移植到od2.01
2013-11-9 08:19
0
雪    币: 113
活跃值: (28)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
请问这个字号数据在什么地址呢
2013-11-9 12:13
0
雪    币: 10665
活跃值: (3574)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
22
0040EA2B  |.  C705 78265800 0D000000  mov     dword ptr [sysfont], 0xD
0040EA35  |.  C705 7C265800 05000000  mov     dword ptr [0x58267C], 0x5
0040EA3F  |.  C705 88265800 90010000  mov     dword ptr [0x582688], 0x190
0040EA49  |.  C605 8F265800 01        mov     byte ptr [0x58268F], 0x1
0040EA50  |.  C605 90265800 06        mov     byte ptr [0x582690], 0x6
0040EA57  |.  C605 91265800 00        mov     byte ptr [0x582691], 0x0
0040EA5E  |.  C605 92265800 02        mov     byte ptr [0x582692], 0x2
0040EA65  |.  C605 93265800 00        mov     byte ptr [0x582693], 0x0       ;  上面是一些字体的属性
0040EA6C  |.  8D93 2A670000           lea     edx, dword ptr [ebx+0x672A]    ;  这里可以看到字体
0040EA72  |.  52                      push    edx                            ; /Arg2
0040EA73  |.  68 94265800             push    00582694                       ; |Arg1 = 00582694
2013-11-9 18:21
0
雪    币: 10665
活跃值: (3574)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
23
折腾了一天,去掉了一些无用的字符





ollydbg.rar

等弄完这些就解决ascii的显示问题,目前有点头绪。
虽然MultiByteToWideChar可以讲ascii转成unicode
但应该不用这样,因为程序在
00487CFF  |. |8D8D E0FEFFFF lea ecx,dword ptr ss:[ebp-120]
00487D05  |. |51            push ecx
00487D06  |. |FF15 64E75700 call dword ptr ds:[57E764] ;字符串在这之前是正常的
但经过下面的3个_StrcopyW就变得不正常了

好像今天的修改有问题,明天再继续!
上传的附件:
2013-11-9 18:44
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
24
后期就不能指望作者了。。。
2013-11-10 08:59
0
雪    币: 10665
活跃值: (3574)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
25
去掉一些非指令性字符串,已经接近可用了


下面是最新修改
ollydbg 2.01new.rar

接下来就是修改ascii的显示问题,这个比较复杂!

还有就是有些像字符串的指令,实质又不是的情况
下面是另外一个程序的字符查找例子,同样是vb编的!


这种好像不能简单的去掉
上传的附件:
2013-11-10 19:59
0
游客
登录 | 注册 方可回帖
返回
//