您的位置:程序门 -> windows专区 ->



大家帮忙看看缓冲区溢出点定位问题


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


大家帮忙看看缓冲区溢出点定位问题[无满意答案结贴,结贴人:xti9er]
发表于:2007-08-07 00:34:16 楼主
----------------------------
my   $lstr='a'x200;
my   $ostr='b'x100;

eax=7ffde000   ebx=00000001   ecx=00000002   edx=00000003   esi=00000004   edi=00000005
eip=7c921230   esp=00b2ffcc   ebp=00b2fff4   iopl=0                   nv   up   ei   pl   zr   na   po   nc
cs=001b     ss=0023     ds=0023     es=0023     fs=0038     gs=0000                           efl=00000246
***   error:   symbol   file   could   not   be   found.     defaulted   to   export   symbols   for   c:\w
indows\system32\ntdll.dll   -
ntdll!dbgbreakpoint:
7c921230   cc                               int           3
0:006>   g
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
access   violation   -   code   c0000005   (first   chance)
eax=00000001   ebx=0003d450   ecx=014bf674   edx=7c92eb94   esi=0003d468   edi=00000000
eip=42424242   esp=014bf7c4   ebp=00000001   iopl=0                   nv   up   ei   pl   nz   na   po   nc
cs=001b     ss=0023     ds=0023     es=0023     fs=003b     gs=0000                           efl=00010206
42424242   ??                               ???
0:006>   dd   esp
014bf7c4     42424242   42424242   42424242   42424242
014bf7d4     42424242   42424242   42424242   42424242
014bf7e4     42424242   42424242   42424242   42424242
014bf7f4     42424242   42424242   42424242   00000000
014bf804     00000000   00000000   00000000   00000000
014bf814     00000000   00000000   00000000   00000000
014bf824     00000000   00000000   00000000   00000000
014bf834     00000000   00000000   00000000   00000000
0:006>
--------------
my   $lstr='a'x200;
my   $ostr='b'x28;
my   $rstr='cdefg';
0:006>   g
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
access   violation   -   code   c0000005   (first   chance)
eax=00000001   ebx=0003d450   ecx=0143f674   edx=7c92eb94   esi=0003d468   edi=00000000
eip=47464544   esp=0143f7c4   ebp=00000001   iopl=0                   nv   up   ei   pl   nz   na   po   nc
cs=001b     ss=0023     ds=0023     es=0023     fs=003b     gs=0000                           efl=00010206
47464544   ??                               ???
0:006>   dd   esp
0143f7c4     0143fa40   00039b88   0143ff84   00e48028
--------------------------
my   $lstr='a'x200;
my   $ostr='b'x27;
my   $rstr='cdd';
break   instruction   exception   -   code   80000003   (first   chance)
eax=7ffdf000   ebx=00000001   ecx=00000002   edx=00000003   esi=00000004   edi=00000005
eip=7c921230   esp=00b2ffcc   ebp=00b2fff4   iopl=0                   nv   up   ei   pl   zr   na   po   nc
cs=001b     ss=0023     ds=0023     es=0023     fs=0038     gs=0000                           efl=00000246
***   error:   symbol   file   could   not   be   found.     defaulted   to   export   symbols   for   c:\w
indows\system32\ntdll.dll   -
ntdll!dbgbreakpoint:
7c921230   cc                               int           3
0:006>   g
access   violation   -   code   c0000005   (first   chance)
eax=00000001   ebx=0003d450   ecx=0143f674   edx=7c92eb94   esi=0003d468   edi=00000000
eip=00004444   esp=0143f7c4   ebp=00000001   iopl=0                   nv   up   ei   pl   nz   na   po   nc
cs=001b     ss=0023     ds=0023     es=0023     fs=003b     gs=0000                           efl=00010206
00004444   ??                               ???
0:006>
-----------------------------
my   $lstr='a'x200;
my   $ostr='b'x27;
my   $rstr='ced';
0:006>   g
access   violation   -   code   c0000005   (first   chance)
eax=00000001   ebx=0003d450   ecx=0143f674   edx=7c92eb94   esi=0003d468   edi=00000000
eip=00004445   esp=0143f7c4   ebp=00000001   iopl=0                   nv   up   ei   pl   nz   na   po   nc
cs=001b     ss=0023     ds=0023     es=0023     fs=003b     gs=0000                           efl=00010206
00004445   ??                               ???
0:006>
-------------------------
my   $lstr='a'x200;
my   $ostr='b'x40;
break   instruction   exception   -   code   80000003   (first   chance)
eax=7ffde000   ebx=00000001   ecx=00000002   edx=00000003   esi=00000004   edi=00000005
eip=7c921230   esp=00b2ffcc   ebp=00b2fff4   iopl=0                   nv   up   ei   pl   zr   na   po   nc
cs=001b     ss=0023     ds=0023     es=0023     fs=0038     gs=0000                           efl=00000246
***   error:   symbol   file   could   not   be   found.     defaulted   to   export   symbols   for   c:\
indows\system32\ntdll.dll   -
ntdll!dbgbreakpoint:
7c921230   cc                               int           3
0:006>   g
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
access   violation   -   code   c0000005   (first   chance)
eax=00000001   ebx=0003d450   ecx=0143f674   edx=7c92eb94   esi=0003d468   edi=00000000
eip=42424242   esp=0143f7c4   ebp=00000001   iopl=0                   nv   up   ei   pl   nz   na   po   nc
cs=001b     ss=0023     ds=0023     es=0023     fs=003b     gs=0000                           efl=00010206
42424242   ??                               ???
0:006>   dd   esp
0143f7c4     0143fa00   00039b88   0143ff84   00e47878
0143f7d4     00000000   00000000   00000000   00000000
0143f7e4     00000000   00000000   00000000   00000000
0143f7f4     00000000   00000000   00000000   00000000
0143f804     00000000   00000000   00000000   00000000
-------------------------
my   $lstr='a'x200;
my   $ostr='b'x60;
break   instruction   exception   -   code   80000003   (first   chance)
eax=7ffd4000   ebx=00000001   ecx=00000002   edx=00000003   esi=00000004   edi=00000005
eip=7c921230   esp=00b2ffcc   ebp=00b2fff4   iopl=0                   nv   up   ei   pl   zr   na   po   nc
cs=001b     ss=0023     ds=0023     es=0023     fs=0038     gs=0000                           efl=00000246
***   error:   symbol   file   could   not   be   found.     defaulted   to   export   symbols   for   c:\w
indows\system32\ntdll.dll   -
ntdll!dbgbreakpoint:
7c921230   cc                               int           3
0:006>   g
c++   eh   exception   -   code   e06d7363   (first   chance)
c++   eh   exception   -   code   e06d7363   (first   chance)
access   violation   -   code   c0000005   (first   chance)
eax=00000001   ebx=0003d450   ecx=0143f674   edx=7c92eb94   esi=0003d468   edi=00000000
eip=42424242   esp=0143f7c4   ebp=00000001   iopl=0                   nv   up   ei   pl   nz   na   po   nc
cs=001b     ss=0023     ds=0023     es=0023     fs=003b     gs=0000                           efl=00010206
42424242   ??                               ???
0:006>   dd   esp
0143f7c4     42424242   42424242   42424242   42424242
0143f7d4     42424242   00000000   00000000   00000000
0143f7e4     00000000   00000000   00000000   00000000
---------------
my   $lstr='a'x200;
my   $ostr='b'x41;
break   instruction   exception   -   code   80000003   (first   chance)
eax=7ffdb000   ebx=00000001   ecx=00000002   edx=00000003   esi=00000004   edi=00000005
eip=7c921230   esp=00b2ffcc   ebp=00b2fff4   iopl=0                   nv   up   ei   pl   zr   na   po   nc
cs=001b     ss=0023     ds=0023     es=0023     fs=0038     gs=0000                           efl=00000246
***   error:   symbol   file   could   not   be   found.     defaulted   to   export   symbols   for   c:\w
indows\system32\ntdll.dll   -
ntdll!dbgbreakpoint:
7c921230   cc                               int           3
0:006>   g
c++   eh   exception   -   code   e06d7363   (first   chance)
access   violation   -   code   c0000005   (first   chance)
eax=00000001   ebx=0003d450   ecx=0153f674   edx=7c92eb94   esi=0003d468   edi=00000000
eip=42424242   esp=0153f7c4   ebp=00000001   iopl=0                   nv   up   ei   pl   nz   na   po   nc
cs=001b     ss=0023     ds=0023     es=0023     fs=003b     gs=0000                           efl=00010206
42424242   ??                               ???
0:007>   dd   esp
0153f7c4     01530042   00039b88   0153ff84   00e47c50
0153f7d4     00000000   00000000   00000000   00000000
0153f7e4     00000000   00000000   00000000   00000000
0153f7f4     00000000   00000000   00000000   00000000

--------------------------------------
以上是ntsd的调试信息.my   $lstr='a'x200;     my   $ostr='b'x41;这些代表我用来定位溢出点的字符串.

大家帮忙看看能否找到溢出点,我这里还有一个很重要的问题就是,为什么同样长度的字符串,在尝试n次后才会出现溢出?而且这个n是不一定的,也就是没有规律.
大家看看到底是怎么会事?


快速检索

最新资讯
热门点击