青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 8  文章 - 4  trackbacks - 0
User32.dll,kernel32.dll,shell32.dll,gdi32.dll,rpcrt4.dll,comctl32.dll,advapi32.dll,version.dll等dll代表了Win32 API的基本提供者;
Win32 API中的所有調用最終都轉向了ntdll.dll,再由它轉發至ntoskrnl.exe。ntdll.dll是本機 API用戶模式的終端。真正的接口在ntoskrnl.exe里完成。事實上,內核模式的驅動大部分時間調用這個模塊,如果它們請求系統服務。Ntdll.dll的主要作用就是讓內核函數的特定子集可以被用戶模式下運行的程序調用。Ntdll.dll通過軟件中斷int 2Eh進入ntoskrnl.exe,就是通過中斷門切換CPU特權級。
Ntdll.dll 上面的相關API函數原型和參數都沒有文檔化(Undocumented ):  http://undocumented.ntinternals.net/ 這里提供了Ntdll.dll部分未公開函數的原型.

理解window API及函數原型對我們的調試將是非常重要的: 因為你時常需要去察看一些函數的參數,或者根據參數找到某些輸入指針.

例如:
  17  Id: a84.cc4 Suspend: 1 Teb: 7ff3a000 Unfrozen
ChildEBP RetAddr  Args to Child             
187ffdb8 77845e6c 7782fc72 00001938 00000000 ntdll!KiFastSystemCallRet
187ffdbc 7782fc72 00001938 00000000 00000000 ntdll!NtWaitForSingleObject+0xc
187ffe20 7782fb56 00000000 00000000 00000000 ntdll!RtlpWaitOnCriticalSection+0x13e
187ffe48 01b05d13 0x77c8ba60 81fa55ed 028766c8 ntdll!RtlEnterCriticalSection+0x150

從堆棧可以看出線程17 正在進入某一個臨界區.  0x77c8ba60 就是傳入的臨界值 參數.

17> !cs 0x77c8ba60             --> !cs 是用來查看臨界區信息的命令
DebugInfo          = 0x77fbde20
Critical section   = 0x77c8ba60 (GDI32!semColorSpaceCache+0x0)
LOCKED
LockCount          = 0x0
OwningThread       = 0x00000dd8
RecursionCount     = 0x1
LockSemaphore      = 0x0
SpinCount          = 0x00000000

可以看到 LOCKED 代表臨界區是鎖定狀態. 即被占用.
OwningThread   即是占用線程.

臨界區信息結構定義在ntdll, 可以使用如下指令進行察看.
> dt  ntdll!_RTL_CRITICAL_SECTION
   +0x000 DebugInfo        : Ptr32 _RTL_CRITICAL_SECTION_DEBUG
   +0x004 LockCount        : Int4B
   +0x008 RecursionCount   : Int4B
   +0x00c OwningThread     : Ptr32 Void
   +0x010 LockSemaphore    : Ptr32 Void
   +0x014 SpinCount        : Uint4B

察看某個動態庫函數表的指令:
x ntdll!*
x kernal!*

察看結構體定義:
dt ntdll!*

任何動態庫包括window 32的用戶態dll 和用戶自定義動態庫都是生長在進程內存空間上的.
DLL 沒有自己的"私有"地址空間. 它們總是被影射到應用程序的虛擬地址空間,在需要時才會被讀取到物理內存中.
在本系列的其它章節我會談到虛擬地址空間的內容.

通過指令可以看到ntdll 被映射到77800000 ~ 7793c000的內存空間中.
> x *!
77800000 7793c000   ntdll      (pdb symbols)          c:\mylocalsymbols\ntdll.pdb\F0164DA71FAF4765B8F3DB4F2D7650EA2\ntdll.pdb

當你的代碼(線程)棧中出現地址范圍在 77800000 ~7793c000 之間的函數調用都表示在call NTDLL.dll
比如:
   7  Id: a84.c34 Suspend: 1 Teb: 7ff3f000 Unfrozen
ChildEBP RetAddr  Args to Child             
089bfe8c 77845e6c 75a0179c 00000d98 00000000 ntdll!KiFastSystemCallRet
089bfe90 75a0179c 00000d98 00000000 00000000 ntdll!NtWaitForSingleObject+0xc
089bfefc 75c9f003 00000d98 ffffffff 00000000 KERNELBASE!WaitForSingleObjectEx+0x98
089bff14 75c9efb2 00000d98 ffffffff 00000000 kernel32!WaitForSingleObjectExImplementation+0x75
089bff28 69434fea 00000d98 ffffffff 0780c178 kernel32!WaitForSingleObject+0x12
WARNING: Stack unwind information not available. Following frames may be wrong.
此線程中WARNING: Stack unwind information not available. Following frames may be wrong.表示windbg無法翻譯或者找到對應symbols來顯示code stack. 這種錯誤往往是保存dump file時出現的某種異常信息.window也沒有給出合理的解釋.
以下是MSDN的原話:
In some cases, the stack trace function will fail in the debugger. This can be caused by a call to an invalid address that caused the debugger to lose the location of the return address; or you may have come across a stack pointer for which you cannot directly get a stack trace; or there could be some other debugger problem. In any case, being able to manually walk a stack is often valuable.

這時候你需要手動的進行恢復棧調用. 如果你了解每個動態庫的映射地址你就很容易進行分析了.

察看動態庫中每個函數映射的地址可以采用如下指令 :
x ntdll!


手動恢復棧的大致原理如下:
1. 列出線程環境信息
 0:000> !teb

TEB at 7fffe000

    ExceptionList:        0012ff88

    StackBase:            00130000

    StackLimit:           00126000

    ……….

2. 打開整個線程棧.
0:000>
dds 00126000 00130000

3. 察看內存中所有可能是函數返回值.  
>
ln address



posted on 2009-08-24 11:20 Only Soft 閱讀(3115) 評論(0)  編輯 收藏 引用 所屬分類: Windbg
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            日韩视频永久免费| 亚洲精品一二| 乱人伦精品视频在线观看| 亚洲欧美在线一区| 欧美亚洲一区二区三区| 欧美诱惑福利视频| 久久综合99re88久久爱| 欧美电影资源| 欧美日本免费| 国产精品网站在线| 国内外成人免费激情在线视频| 国内一区二区三区| 亚洲国产精品尤物yw在线观看| 亚洲人体影院| 亚洲一区二区在线免费观看视频 | 亚洲一级在线| 久久久91精品国产一区二区三区| 久久久久久久久岛国免费| 欧美黄色影院| 一区二区三区回区在观看免费视频| 亚洲欧美色婷婷| 欧美黄色大片网站| 国产一区二区三区视频在线观看| 亚洲黄色有码视频| 亚洲欧美影音先锋| 欧美激情1区2区3区| 亚洲一区久久久| 欧美高清视频在线 | 国产精品va在线播放我和闺蜜| 欧美日韩精品综合在线| 国产噜噜噜噜噜久久久久久久久| 亚洲高清影视| 久久精品国产亚洲高清剧情介绍| 欧美高清视频一区二区| 亚洲精品久久久久久下一站| 一区二区三区四区五区视频| 久久久久久久999精品视频| 欧美视频精品一区| 亚洲区在线播放| 另类综合日韩欧美亚洲| 午夜视频在线观看一区二区三区| 欧美国产一区二区| 一区二区视频免费完整版观看| 亚洲午夜视频在线| 亚洲国产欧美日韩| 久久亚洲综合色| 免费永久网站黄欧美| 在线观看亚洲精品视频| 欧美极品一区二区三区| 国产精品免费网站| 99香蕉国产精品偷在线观看| 久久综合网络一区二区| 性色av一区二区三区红粉影视| 欧美日韩精选| 一区二区三区欧美激情| 亚洲激情电影中文字幕| 免费高清在线一区| 亚洲高清在线播放| 欧美成人69| 久久久xxx| 在线日韩欧美| 欧美激情精品久久久六区热门| 久久久蜜桃一区二区人| 在线观看中文字幕亚洲| 蜜桃av一区二区在线观看| 久久国产直播| 亚洲福利av| 美国十次成人| 欧美a级一区| 亚洲精品视频在线看| 亚洲人成亚洲人成在线观看图片| 欧美精选在线| 在线视频亚洲欧美| 亚洲午夜一级| 国模私拍一区二区三区| 你懂的视频欧美| 欧美激情一区二区三区全黄 | 亚洲一区久久久| 国产三级欧美三级日产三级99| 久久精品人人做人人爽电影蜜月 | 久久手机精品视频| 亚洲黄色免费电影| 9人人澡人人爽人人精品| 国产精品久久久久久久久| 久久疯狂做爰流白浆xx| 久久亚洲图片| 亚洲小说区图片区| 欧美一级视频免费在线观看| 亚洲国产精品高清久久久| 9色porny自拍视频一区二区| 国产主播一区| 日韩视频中文| 一区二区视频欧美| 欧美激情久久久久久| 欧美午夜精品久久久久久孕妇| 久久国产精品一区二区三区四区| 久久久久久综合| 中文亚洲欧美| 久久精品国产99精品国产亚洲性色| 亚洲精品韩国| 欧美一区二区三区视频免费播放| 亚洲精品一级| 久久精品视频在线观看| 欧美日韩国产一区二区三区| 国产精品视频免费观看| 久久久久高清| 欧美日韩一区二区三| 久久一本综合频道| 欧美四级在线| 亚洲第一级黄色片| 国产精品综合久久久| 亚洲精品永久免费| 亚洲第一页中文字幕| 亚洲欧美在线免费观看| 国产精品99久久久久久久vr| 久久影院午夜论| 久久精品一区二区国产| 欧美日韩精品| 91久久国产自产拍夜夜嗨| 在线观看日韩av先锋影音电影院| 亚洲综合首页| 亚洲欧美日本国产专区一区| 欧美韩日高清| 欧美激情1区| 亚洲国产小视频在线观看| 久久精品国产免费看久久精品| 午夜免费久久久久| 国产精品成av人在线视午夜片| 亚洲精品国产精品乱码不99 | 一区二区三区欧美成人| 欧美成人午夜影院| 欧美韩国一区| 亚洲茄子视频| 欧美成人免费全部| 亚洲国产美国国产综合一区二区| 亚洲高清av| 欧美凹凸一区二区三区视频| 欧美成人一区二区三区| 亚洲国内精品| 欧美精品综合| 亚洲一区二区三区免费在线观看| 亚洲一区二区三区欧美| 国产精品va| 久久成人精品无人区| 久久全国免费视频| 樱桃成人精品视频在线播放| 久久久久久久久久看片| 欧美黄色aaaa| 亚洲视频国产视频| 亚洲作爱视频| 国产精品高潮呻吟久久| 亚洲欧美精品| 久久综合一区二区| 亚洲国产日韩一区| 欧美激情一区三区| 中文精品在线| 久久久亚洲高清| 日韩视频中文字幕| 欧美系列亚洲系列| 欧美一区二区在线免费观看| 欧美激情乱人伦| 亚洲免费视频一区二区| 国产亚洲人成网站在线观看| 久久深夜福利免费观看| 日韩视频精品| 久久天天躁狠狠躁夜夜爽蜜月| 亚洲国产黄色| 国产精品成人v| 亚洲视频电影图片偷拍一区| 国产精品久久久久免费a∨大胸| 欧美激情视频一区二区三区免费| 亚洲精品网址在线观看| 国产精品网站一区| 欧美ab在线视频| 亚洲女与黑人做爰| 亚洲高清123| 欧美一区二区三区四区夜夜大片| 国内视频一区| 国产精品国产三级国产普通话蜜臀| 亚洲欧美日韩国产综合| 亚洲高清毛片| 久久精品国产99精品国产亚洲性色| 91久久久国产精品| 国产毛片精品国产一区二区三区| 免费观看久久久4p| 久久精品av麻豆的观看方式| 99在线精品视频在线观看| 蜜臀99久久精品久久久久久软件 | 欧美aaa级| 亚洲一区二区三区免费观看| 在线观看欧美日韩国产| 国产欧美精品一区二区色综合 | 午夜精品国产更新| 亚洲精选视频在线| 精品91视频| 国产日韩1区| 国产精品久久久久久久电影| 欧美日韩hd| 欧美激情国产精品| 狼人社综合社区|