windbg調試相關命令

?

  1. windbg
  • 查找函數:x exe!main*
  • 條件斷點打印字符:bp 7199a2b0 ".printf \"message:%ma\", poi(@esp+8);.echo;g"//
  • 搜索內存:s -a 0000000000780000 ?L8000000 ?"This is a test2"
  • !address,可以查看進程的堆布局,堆屬性。!address my_addr,直接查看具體地址。
  • bp??myexe+0x85d01 ".echo abc;r r8;r rcx;dc myexe+1000;gu;g"//直接使用偏移,gu運行到當前函數結束。.echo abc打印abc字符串。
  • bu myexe+0x800;設置全局斷點,下次重啟時還存在;bm myexe!myclass::*,對myclass類所有函數下斷點。
  • p相當于f10,t相當于f11,trace
  • ?c-1,用來計算公式。
  • gflags.exe ?/i a.exe +hpa +ust.
  • call指令相當于push eip(esp也會增加4),retn相當于pop eip
  • 修改寄存器命令:r @eax=1
  • 修改內存命令:ed (esp+8)? 0xffffffff
  • !heap -flt s 8010 ? ?//列出 所有指定大小的分配塊
  • 命令行下載符號表

這里可以使用 SymChk.exe 實用程序驗證符號并以方便、非入侵性的方式生成本地符號高速緩存。SymChk.exe 實用程序隨 Debugging Tools for Windows 軟件包提供。SymChk.exe 是一種命令行工具。

比如要使用 SymChk.exe實用程序下載 Windows\System32 文件夾中所有組件的符號文件,使用以下命令行即可:

symchk /r c:\windows\system32 /s?SRV*c:\symbols\*http://msdl.microsoft.com/download/symbols

c:\progra~1\debugg~1\symchk.exe /r c:\progra~1\mozill~1\* /s SRV*C:\symcache\*http://symbols.mozilla.org/firefox

在此示例中,其中“/r c:\windows\system32”表示查找System32文件夾和所有子文件夾中的所有符號文件。“/s SRV*c:*http://msdl.microsoft.com/download/symbols”指定用于符號解析的符號路徑。在此例中,“c:\symbols”是將在其中從符號服務器復制符號的本地文件夾。

  1. ida:在使用IDA對二進制文件進行逆向分析的時候,將基址修改為指定值:Edit->Segements->Rebase program
  2. 虛函數
  3. windbg線程
    • ~???????????????簡潔地顯示當前進程的所有線程,??
    • ~.??????????????表示當前線程??
    • ~#??????????????表示異常或者產生調試事件的線程??
    • ~*??????????????表示所有線程??
    • ~1??????????????表示一號線程??
    • ~2?s????????????表示選擇2號線程作為當前線程??
    • ~3?f????????????凍結三號線程??
    • ~3?u????????????解凍三號線程??
    • ~2?n????????????掛起二號線程??
    • ~2?m????????????恢復二線程??
    • ~*e?!clrstack???遍歷每個線程,?依次輸出它們的托管調用棧.??
    • !threads????????查看所有的托管線程
    • 在多線程排除問題中,通過線程轉換(~2),查看每個線程的棧(k),分析其在那里堵塞。然后結合源碼分析。

3.windbg常見符號表地址

Microsoft?–?http://msdl.microsoft.com/download/symbols

Firefox???–?http://symbols.mozilla.org/firefox

Chrome????–?http://chromium-browser-symsrv.

Citrix????–?http://ctxsym.citrix.com/symbols

Safari?????--http://developer.apple.com/internet/safari/windows_symbols

調試firefox為例,設置多符號表情況:

SRV*c:\symcache\*http://msdl.microsoft.com/download/symbols;SRV*c:\symcache\*http://symbols.mozilla.org/firefox

轉載于:https://www.cnblogs.com/studyskill/p/7697677.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/253105.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/253105.shtml
英文地址,請注明出處:http://en.pswp.cn/news/253105.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

零基礎學python,看完這篇文章,你的python基礎就差不多了!干貨【1】

2019獨角獸企業重金招聘Python工程師標準>>> Python基礎語法和面向對象(下一篇分享面向對象) Python基礎語法 1. 認識Python 1.1 Python 簡介 Python 的創始人為吉多范羅蘇姆(Guido van Rossum)。 Python 的設計目標&a…

消費類電子認證測試資料清單

消費類電子上市前必須取得相關認證,其中最常見的有3C、SRRC和CTA等強制性認證,還有類似TUV和Rohs等自愿性認證,現將常見認證測試資料清單小結如下: CCC測試認證: 測試項:EMC、安規和隨機等。 SRRC核準&am…

SVG 相關整理

1. 中文參考手冊: http://www.runoob.com/svg/svg-reference.html SVG HTML5 資源教程 http://www.html5tricks.com/tag/svg/ 2.SVG 入門到精通 http://www.w3cplus.com/blog/tags/411.html 3.SVG開發包整理 http://www.oschina.net/project/tag/420/svg http://www…

液晶拼接控制器

液晶拼接墻系統是由液晶拼接顯示單元、液晶拼接支架、液晶拼接控制器器和信號源組合而成的。液晶拼接控制器則是液晶拼接系統的重要組成部分。 液晶拼接控制器一般分為兩種:內置嵌入式液晶拼接器、外置液晶拼接控制器。 內置嵌入式液晶拼接器 內置嵌入式液晶拼接器只…

03-類與對象——課后動手動腦

1.早期我們經常這樣定義變量 int value100; 前面的示例中這樣定義變量 MyClass obj new MyClass(); 這兩種方式定義的變量是一樣的嗎? 這兩種方式定義的變量是一樣的,因為它們都是類的實例化,只是第一種是一個簡便的寫法&#xf…

IPython 使用記錄

記錄使用的一些技巧處理 1 自動重載修改的文件 局部的會話中使用 如果想在當前 ipython 會話中使用,則運行 ipython 后,依次鍵入下面語句即可 %load_ext autoreload %autoreload 2 全局使用如果想為了懶省事,我希望 IPython 一直會自動重載&a…

有道智能學習燈 初體驗

有道詞典筆在業內樹立了一個標桿,自認為有道出品必須精品! 但是今天剛初步體驗了一下有道智能學習燈,硬件方面說實話有點意外,猜測這應該不是有道詞典 筆團隊打造的硬件產品吧。 現在將個人體驗感受表格化陳述如下:…

視頻處理器

http://baike.baidu.com/link?url9Ql-myLXWgFtt8ItgnYe1suvbqU57tivB8WwTVHqNqGWKNQqgvkQ7uqYrw22I44LO-LCmjQuKAk-SGGWV8di4_

centos忘記root用戶的密碼

方法: 1.在開機啟動的時候快速按鍵盤上的“E”鍵 或者“ESC”鍵(如果做不到精準快速可以在啟動前一直按著或者不停的按),會進入如下界面。如果你的有多個操作系統就會出現多個內核,就會出現多個選項 2. 選擇你忘記密碼…

MySql(18)——Linux MySQL主從配置

MySQL 主從配置 Author:xushuyi 參照技術:http://www.cnblogs.com/kevingrace/p/6256603.html 1. 主從數據庫 1、主庫:192.168.56.100 2、從庫:192.168.56.102 3、創建主從數據庫一定要保證主從數據庫字符集編碼的一致性,否則主從…

linux之PHY

一.結構體 1.PHY設備 [cpp]view plaincopy struct phy_device { struct phy_driver *drv; //PHY設備驅動 struct mii_bus *bus; //對應的MII總線 struct device dev; //設備文件 u32 phy_id; //PHY ID enum phy_state state; //PHY狀態 …

元器件 失效分析 過程介紹

硬件產品在使用過程中,常常會出現功能失效的情況。排除裝配異常的話,功能失效一般是電路可能出現故障,具體可能是某個元器件損壞了。需要研發及時分析定位故障原因及時改善排除故障,尤其是在試產階段,顯得十分重要&…

OWI

2019獨角獸企業重金招聘Python工程師標準>>> V$EVENT_NAME V$EVENT_NAME displays information about wait events. ColumnDatatypeDescriptionEVENT#NUMBERNumber of the wait eventEVENT_IDNUMBERIdentifier of the wait eventNAMEVARCHAR2(64)Name of the wait e…

201521123110《Java程序設計》第5周學習總結

1. 本周學習總結 1.1 嘗試使用思維導圖總結有關多態與接口的知識點。 2. 書面作業 1.代碼閱讀:Child壓縮包內源代碼 1.1 com.parent包中Child.java文件能否編譯通過?哪句會出現錯誤?試改正該錯誤。并分析輸出結果。不能編譯通過,因為System.out.println…

Python中正則表達式講解

正則表達式是匹配字符串的強大武器,它的核心思想是給字符串定義規則,凡是符合規則的字符串就是匹配了,否則就是不合法的。在介紹Python的用法之前,我們先講解一下正則表達式的規則,然后再介紹在Python中如何運用。 如果…

電源適配器上各符號的意義都清楚嗎?

現在家里的電子產品是越來越多了,比如:手機、平板、筆記本、智能電視、智能音箱、路由器、剃須刀等;機身或者充電器上都有很多符號標志。 有沒有好奇過或者被小孩詢問過,這些符號標志都是什么意思呢?只有讀懂這些符號…

蘇寧海量服務器自動化配置運維實踐

運維的演進 人力運維階段 在IT產業的早期,服務器運維是通過各種Ad Hoc命令或者Shell腳本來完成基礎設施的自動化工作,這種方式對于簡單,一次性的工作很方便,但是對于復雜和長期的項目,后期的腳本維護非常麻煩。自動化工…

JS小技巧

JS操作偽元素 CSS代碼: #myId:before {content: "hello world!";display: block;width: 100px;height: 100px;background: red; } JS 代碼: var myIdElement document.getElementById("myId"); var beforeStyle window.getCompute…

流媒體服務器

1 引言   隨著互聯網的飛速發展,流媒體技術的應用越來越廣泛,從網上廣播、電影播放到遠程教學以及在線的新聞網站等都用到了流媒體技術。但現有公開文獻所報道 的大多是利用現有的流媒體服務器來搭建一個流媒體服務系統,或者是針對流媒體數據的編碼方式所進行的…

試產機器發現元器件損毀 風險排查過程

產品在試產階段或者公測階段,發現有個別機器功能異常,研發定位為個別元器件損壞; 定位過程大致有如下步驟: A-故障現象復現 B-輸入輸出檢查 C-電源及管腳狀態測量 D-交叉驗證 E-基本外觀觀察和特性測量 然后將器件郵寄給原…