Windows windbg kernel debug 雙機核心除錯 - USB3.0 除錯 USB除錯 除錯線

iihacker_cat發表於2021-01-02

0x1 使用USB3.0 除錯線,進行windows雙機核心除錯

從win8開始,windows就引入了USB 3.0的核心除錯 ,速度可以說爽的一批。不過能否支援USB3.0的除錯,還需要看你的機器配置。

 

 

usb3.0 除錯線

 

怎麼知道知否支援USB3.0除錯? 

Host端 :

   1 系統,WIN8 以及以上

   2 Target機器帶有 xHCI 控制器,即USB3.0的介面

Target端:

   1 系統,WIN8 以及以上

   2 Target機器帶有 xHCI 控制器,即USB3.0的介面

   3 Target機器的USB3.0的port支援除錯。使用usbview.exe檢視對應的USB3.0 port,需滿足下列三個Yes

     Is Port User Connectable:         yes
     Is Port Debug Capable:            yes
        USB 3.0:                         yes

如果上面的條件都滿足,恭喜你,你可以使用USB 3.0 的核心除錯之旅了。

 

 USB3.0 windbg 核心除錯線可以在淘寶購買,連結https://item.taobao.com/item.htm?ft=t&id=618941145412

 

 

0x2  使用USB 3.0 連線Host和Target端符合條件的USB3.0 port

 

 

0x3 目標計算機設定

 使用bcdedit更改引導資訊之前,您可能需要暫時掛起Windows PC安全功能,例如關閉BitLocker和secure boot。

  

  1. (可選)記下要用於除錯的xHCI控制器的匯流排,裝置和功能編號。UsbView.exe可以顯示這些數字。在以下示例中,匯流排號為48,裝置號為0,功能號為0。

     
    USB xHCI Compliant Host Controller
    ...
    DriverKey: {36fc9e60-c465-11cf-8056-444553540000}\0020
    ...
    Bus.Device.Function (in decimal): 48.0.0
    
  2. (可選)確定支援除錯的xHCI控制器後,下一步是找到與xHCI控制器上的埠關聯的物理USB聯結器。要找到物理聯結器,請將任何USB 3.0裝置插入目標計算機上的任何USB聯結器。重新整理UsbView以檢視裝置的位置。如果UsbView顯示您的裝置已連線到所選的xHCI主機控制器,則您已找到可用於USB 3.0除錯的物理USB聯結器。

  3.  在目標計算機上,以管理員身份開啟“命令提示符”視窗,然後輸入以下命令:

  • bcdedit /debug on

  • bcdedit /dbgsettings usb targetname:TargetName

                其中TargetName是建立的除錯名稱。請注意,TargetName不必是目標計算機的正式名稱。只要滿足以下限制,它就可以是您建立的任何字串:

  • 該字串在大寫字母或小寫字母的任意組合中,不得在TargetName中的任何位置包含“debug”字樣。例如,如果您在目標名稱中的任何地方使用“ DeBuG”或“ DEBUG”,則除錯將無法正常進行。
  • 字串中唯一的字元是連字元(-),下劃線(_),數字0到9和字母A到Z(大寫或小寫)。
  • 字串的最大長度為24個字元。

               也可以通過msconfig.exe進行配置

     

windbg_usb3.0_msconfig


 

             4.(可選) bcdedit /set "{dbgsettings}" busparams b.d.f

                  其中bdf是USB主機控制器的匯流排,裝置和功能號。匯流排,裝置和功能編號必須為十進位制格式。

                  例:bcdedit /set "{dbgsettings}" busparams  48.0.0

             5. 重新啟動目標計算機。

 

0x4  主機端的配置

  1. 將通用序列匯流排(USB)3.0除錯電纜連線到在主機和目標計算機上選擇用於除錯的USB 3.0埠。(如果前面沒有連線,我們這裡必須要連線Host和Target端了)
  2. 確定主機上執行的Windows的位數(32位或64位)。
  3. 在主機上,開啟與主機上執行的Windows位數匹配的WinDbg版本(以管理員身份)。例如,如果主機執行的是64位版本的Windows,則以管理員身份開啟WinDbg的64位版本。(首次除錯必須管理員啟動windbg)
  4. 檔案選單上,選擇核心除錯。在“核心除錯”對話方塊中,開啟“ USB”選項卡。輸入設定目標計算機時建立的目標名稱。單擊確定

             此時,USB除錯驅動程式已安裝在主機上。這就是為什麼將WinDbg的位數與Windows的位數進行匹配很重要的原因。安裝USB除錯驅動程式後,可以將32位或64位版本的WinDbg用於後續的除錯會話。

        

0x5 連線成功

sucess

0x6 故障排除

         0x6.1  HOST端。在一些win10的HOME版本,usb2dbg.sys沒有簽名或者簽名不正確。請從別的正常的版本拷貝一個過來覆蓋掉。

 

 

相關文章