百度空间 | 百度首页 
 
查看文章
 
YasTr.dll
2009年11月19日 星期四 22:19

程序崩溃了,用yastr.dll定位问题问题。看看是堆被破坏了,还是栈被破坏了,还是其他异常问题。所以yastr.dll接管了目标应用程序的异常处理。

使用,用一个loader把yastr.dll注入到目标进程就可以。。。dbgview看输出信息。。
可以获取到的信息
线程的CONTEXT, 调用栈, SEH处理,栈的开始和结束。
进程堆得信息。

yastr.dll会替换掉异常处理函数,所以程序出错时会获得通知。

下图是下面xXXX代码的输出

HANDLE hHeap;
   hHeap = HeapCreate(HEAP_GENERATE_EXCEPTIONS, 0x10000, 0xfffff);

   char* buf = (char*)HeapAlloc(hHeap, 0,2);
   printf("mybuf addr = %p\n",buf);

CopyMemory( buf, mybuf, 100); // 堆问题

   CHAR sz0[6];

   strcpy( sz0, "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");//栈问题


下载


类别:默认分类 | | 添加到搜藏 | 分享到i贴吧 | 浏览() | 评论 (3)
 
最近读者:
 
网友评论:
1
2009年11月20日 星期五 15:45 | 回复
错别字 :)
 
2
2009年11月20日 星期五 23:39 | 回复
Down回来看看!...
 
3
2009年11月22日 星期日 14:22 | 回复
可以用来挖洞
 
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码: 请点击后输入四位验证码,字母不区分大小写
      

     

©2010 Baidu