• <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>

            Ay's Blog@CNSSUESTC

            windbg學(xué)習(xí)筆記 FOR 內(nèi)核調(diào)試(一)

            ????? 放假回家就下定決心要把windbg搞定 否則以后的內(nèi)核之路該咋走啊~呵呵 今天就網(wǎng)上零零碎碎的記了些命令用法? 看了別人的調(diào)試教程
            個(gè)人總結(jié)下

            ----------------------------------------------------------------------------
            !drvobj 你的驅(qū)動(dòng)對(duì)象 [標(biāo)志位]
            說(shuō)明:這個(gè)指令可以查看驅(qū)動(dòng)對(duì)象的具體信息 我們知道每個(gè)驅(qū)動(dòng)程序在內(nèi)核中都會(huì)對(duì)應(yīng)一個(gè)驅(qū)動(dòng)對(duì)象的結(jié)構(gòu),其實(shí)上面所說(shuō)的驅(qū)動(dòng)對(duì)象就是你的驅(qū)動(dòng)名字,比如我要找aynet.sys這個(gè)驅(qū)動(dòng)程序的驅(qū)動(dòng)對(duì)象結(jié)構(gòu),那么我就!drvobj aynet 就好啦~
            標(biāo)志位是用來(lái)告訴windbg具體要顯示什么內(nèi)容的,標(biāo)志位可以組合使用
            Bit 0 (0x1)
            顯示所有跟這個(gè)驅(qū)動(dòng)對(duì)象相關(guān)聯(lián)的設(shè)備對(duì)象信息
            Bit 1 (0x2)
            顯示所有跟這個(gè)驅(qū)動(dòng)想關(guān)的派遣例程信息
            Bit 2 (0x4)
            顯示這個(gè)驅(qū)動(dòng)對(duì)象的詳細(xì)信息 (需要標(biāo)志位0)
            ps: !object 可以查看對(duì)象的詳細(xì)信息 比如該內(nèi)核對(duì)象是什么內(nèi)核對(duì)象(文件,進(jìn)程等)
            類(lèi)似用法還有!handle(就是!后面跟結(jié)構(gòu)名)等等
            ----------------------------------------------------------------------------
            dt name
            說(shuō)明:dt用來(lái)查看本地|全局|結(jié)構(gòu)變量?jī)?nèi)容的 , name是指你的變量類(lèi)型是什么,你要看_DEVICE_OBJECT這個(gè)結(jié)構(gòu)變量就直接打 dt _DEVICE_OBJECT? 查看變量就直接輸變量名
            ----------------------------------------------------------------------------
            下面說(shuō)說(shuō)下斷點(diǎn)的指令
            bp 地址
            在地址處下斷點(diǎn) 也可以是函數(shù)名(其實(shí)函數(shù)名就對(duì)應(yīng)著地址)
            打個(gè)比方bp aynet!DriverEntry 說(shuō)明在aynet這個(gè)驅(qū)動(dòng)程序的driverentry函數(shù)處下斷 也就是程序一執(zhí)行到這里windbg就自動(dòng)斷下來(lái)了
            還有個(gè)bu指令 延遲下斷點(diǎn) 格式跟bp差不多

            bm 匹配值
            bm指令用于匹配模式下斷點(diǎn) 比如說(shuō)bm aynet!Driver* 可以把a(bǔ)ynet驅(qū)動(dòng)下所有跟Driver* 模式匹配的函數(shù)斷下 但是注意~需要符號(hào)表的支持

            ba 變量名
            可以對(duì)內(nèi)存訪(fǎng)問(wèn)下斷點(diǎn) 比如說(shuō)你程序里有個(gè)aynet驅(qū)動(dòng)程序a變量,總被莫名其妙的修改了,那么你可以設(shè)置 ba aynet!a ,當(dāng)這個(gè)a值被修改的時(shí)候就可以被windbg斷下來(lái)了

            還有其他常用命令比如
            BL(List)列舉斷點(diǎn),BC(Clear)清除斷點(diǎn),BE(Enable)啟用斷點(diǎn),BD(Disable)禁止斷點(diǎn)
            這些很簡(jiǎn)單 就不累述了
            ----------------------------------------------------------------------------
            注:一下指令區(qū)分大小
            顯示內(nèi)存數(shù)據(jù)相關(guān)指令
            格式:d[*] 變量名/地址
            da--asc字符顯示
            db--byte&asc字符顯示
            dc--雙字節(jié)&asc字符顯示
            dd--雙字節(jié)變量顯示
            dD--雙精浮點(diǎn)數(shù)顯示
            df--單精浮點(diǎn)數(shù)顯示
            dp--四字節(jié)數(shù)值顯示
            du--unicode字符顯示
            dw--字符(2個(gè)字節(jié))顯示
            dW--字符和asc字符顯示
            dyb--二進(jìn)制顯示
            dyd--二進(jìn)制和雙字節(jié)顯示
            舉個(gè)例子:(注:xx是變量名 )
            kd> dd xx????? //雙字節(jié)顯示(即16進(jìn)制)
            8055b260? 610f0f64 00000002 00000000 00000000
            8055b270? 00000000 00000000 00000000 00000000
            8055b280? 00000000 00000000 00000000 00000000
            8055b290? 00000000 00000000 00000000 00000000
            8055b2a0? 00000000 00000000 00000000 00000000
            8055b2b0? 00000000 00000000 00000000 00000000
            8055b2c0? 00000000 00000000 00000000 00000000
            8055b2d0? 00000000 00000000 00000000 00000000
            kd> da xx? //asc字符顯示
            8055b260? "`."
            kd> du xx? //unicode字符顯示
            8055b260? "..."

            附加:
            dv
            查看本地變量用~

            看內(nèi)存內(nèi)容的時(shí)候就會(huì)用到這個(gè)命令了~呵呵
            ----------------------------------------------------------------------------
            今天就學(xué)了這么多
            剩下的明天在看 呵呵
            下次要說(shuō)的內(nèi)容是
            堆棧顯示指令kb , kp, kP , kv
            反匯編指令 u,uf
            跟蹤指令 T,TA,TB,TC
            執(zhí)行相關(guān)指令 P,PA,PC
            跟蹤查看指令 WT
            先記下來(lái)~省的我忘了~
            要調(diào)試也就大概就用到這些命令了吧 以后就開(kāi)始記我的調(diào)試過(guò)程了~


            posted on 2009-01-16 16:23 __ay 閱讀(1673) 評(píng)論(3)  編輯 收藏 引用 所屬分類(lèi): 操作系統(tǒng)&&內(nèi)核

            Feedback

            # re: windbg學(xué)習(xí)筆記 FOR 內(nèi)核調(diào)試(一) 2009-01-24 11:22 似水之心

            不錯(cuò),

            看過(guò)了就要回

              回復(fù)  更多評(píng)論   

            # re: windbg學(xué)習(xí)筆記 FOR 內(nèi)核調(diào)試(一) 2009-01-24 18:14 __ay

            有人回復(fù)~很是欣慰阿~~呵呵
              回復(fù)  更多評(píng)論   

            # re: windbg學(xué)習(xí)筆記 FOR 內(nèi)核調(diào)試(一) 2009-01-26 14:42 test

            不錯(cuò)的文章,我要轉(zhuǎn)載  回復(fù)  更多評(píng)論   


            2020久久精品国产免费| 国产精品日韩深夜福利久久| 久久人人爽人人爽人人片AV高清| 久久天天躁夜夜躁狠狠躁2022| 久久无码人妻一区二区三区午夜| 7777久久亚洲中文字幕| 久久av高潮av无码av喷吹| 久久香综合精品久久伊人| 伊人久久综在合线亚洲2019| 精品久久久久久久久免费影院| 精品久久久久久中文字幕| 国产精品99久久久精品无码 | 久久精品国产第一区二区三区 | 国产亚州精品女人久久久久久 | A狠狠久久蜜臀婷色中文网| 久久综合日本熟妇| 国产99久久久国产精品~~牛| 老色鬼久久亚洲AV综合| 久久亚洲日韩看片无码| 国产视频久久| 99久久精品免费| 18岁日韩内射颜射午夜久久成人| 亚洲午夜久久久久妓女影院 | 国产叼嘿久久精品久久| 国产91色综合久久免费| 午夜人妻久久久久久久久| 一级做a爰片久久毛片毛片| 久久久亚洲精品蜜桃臀| 精品久久久久久久久久中文字幕| 国产成人综合久久综合| 四虎国产精品成人免费久久| 久久精品?ⅴ无码中文字幕| 日本一区精品久久久久影院| 久久综合九色综合97_久久久| 国产成人精品久久二区二区| 色偷偷888欧美精品久久久| 久久99国产精一区二区三区| 亚洲嫩草影院久久精品| 精品人妻伦九区久久AAA片69| 色婷婷久久综合中文久久一本| 亚洲午夜精品久久久久久浪潮|