【发布时间】:2013-05-22 08:39:11
【问题描述】:
我正在尝试搜索程序的 dll 中的跳转,但是当我这样做时,我遇到了范围错误。这有什么问题?
我的 WinDbg 输出如下:
0:000> g
ModLoad: 76390000 763ad000 C:\WINDOWS\system32\IMM32.DLL
ModLoad: 773d0000 774d3000 C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.5512_x-ww_35d4ce83\comctl32.dll
.
.
.
ModLoad: 10000000 10094000 C:\Program Files\SoriTong\Player.dll
ModLoad: 42100000 42129000 C:\WINDOWS\system32\wmaudsdk.dll
ModLoad: 00fd0000 0101f000 C:\WINDOWS\system32\DRMClien.DLL
ModLoad: 5bc60000 5bc9f000 C:\WINDOWS\system32\strmdll.dll
ModLoad: 71ad0000 71ad9000 C:\WINDOWS\system32\WSOCK32.dll
ModLoad: 71ab0000 71ac7000 C:\WINDOWS\system32\WS2_32.dll
ModLoad: 71aa0000 71aa8000 C:\WINDOWS\system32\WS2HELP.dll
ModLoad: 76eb0000 76edf000 C:\WINDOWS\system32\TAPI32.dll
ModLoad: 76e80000 76e8e000 C:\WINDOWS\system32\rtutils.dll
(830.964): Access violation - code c0000005 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
*** WARNING: Unable to verify checksum for SoriTong.exe
*** ERROR: Symbol file could not be found. Defaulted to export symbols for SoriTong.exe -
eax=00130000 ebx=00000003 ecx=00000070 edx=00000070 esi=0017f4f4 edi=0012fd64
eip=00422e33 esp=0012da14 ebp=0012fd38 iopl=0 nv up ei pl nz ac po nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00010212
SoriTong!TmC13_5+0x3ea3:
00422e33 8810 mov byte ptr [eax],dl ds:0023:00130000=41
0:000> s 10000000 l 10094000 ff e4
^ Range error in 's 10000000 l 10094000 ff e4'
【问题讨论】:
-
你有 SoriTong.exe 的有效 pdb 吗?您可以使用
!itoldyouso SoriTong进行检查,还可以检查您的构建设置,也许可以尝试调试版本 -
查看错误消息我认为您指定了不正确的参数,
s命令仅考虑字符串的l标志,请参阅MSDN 您要做什么? -
@EdChum 我试过 !itoldyouso SoriTong 但我不知道那是什么意思。 0:000> !itoldyouso SoriTong SoriTong.exe 时间戳:37DEE000 SizeOfImage:DE000 pdb sig:0 年龄:0
-
您在输出中看到 MATCH 吗?这将说明您是否拥有正确的 pdb,看起来您没有,请参阅 this 但我认为您的
s命令看起来错误,因为限制和参数看起来错误,请查看我之前评论中的 MSDN 链接
标签: reverse-engineering windbg buffer-overflow exploit