• XSS.stack #1 – первый литературный журнал от юзеров форума

WinDbg - символы Win32k.pdb

Roller

RAID-массив
Пользователь
Регистрация
26.05.2020
Сообщения
71
Решения
1
Реакции
54
Всем привет!
Система Windows-7 x64, версия 6.1.7601-SP1.
Проблема в том, что WinDbg не может найти на сервере Microsoft символы отладки для файла Win32k.sys, хотя все остальные скачивает нормально в лок.хранилище C:\Symbols. Вот инфа о Win32k.sys на моей машине:

Machine : 0x8664 - AMD64
Version : 6.1.7601.17514
TimeStamp: 20.11.2010 - 14:52:51
GUID/RSDS: 21E2778D-D295-4987-A9B7-212463FFDC5E


Последний GUID взят из секции "Debug" исполняемого файла *.sys (см.софт PeAnatomist), и этот-же GUID будет именем папки в лок.хранилище. То-есть полный путь примет вид C:\Symbols\Win32k.pdb\21E2778DD2954987A9B7212463FFDC5E\Win32k.pdb. Может быть у кого-нибудь имеется версия символов с таким-же GUID, буду премного благодарен. Вот некоторые логи из отладчика, которые не дают результата (для Kernel использую оболочку LiveKd):

Код:
LiveKd v5.62 - Execute kd/windbg on a live system
Sysinternals - www.sysinternals.com
Copyright (C) 2000-2016 Mark Russinovich and Ken Johnson

Launching C:\program files\Debugging Tools for Windows (x64)\kd.exe:
Microsoft (R) Windows Debugger Version 6.12.0002.633 AMD64

Loading Dump File [C:\Windows\livekd.dmp]
Kernel Complete Dump File: Full address space is available
Symbol search path is: srv*c:\symbols*http://msdl.microsoft.com/download/symbols

Executable search path is:
Windows 7 Kernel Version 7601 (Service Pack 1) MP (2 procs) Free x64
Product: WinNt, suite: TerminalServer SingleUserTS
Built by: 7601.23539.amd64fre.win7sp1_ldr.160902-0600

Kernel base = 0xfffff800`02c5f000 PsLoadedModuleList = 0xfffff800`02ea1730
Loading Kernel Symbols
...............................................................
................................................................
............................
Loading User Symbols
Loading unloaded module list
........

0: kd> !sym noisy
noisy mode - symbol prompts off

0: kd> .reload /f Win32k.sys

DBGHELP: c:\symbols\win32k.sys\4CE79A73310000\win32k.sys - OK
DBGENG:  Partial symbol load found image c:\symbols\win32k.sys\4CE79A73310000\win32k.sys.
SYMSRV:  c:\symbols\win32k.pdb\21E2778DD2954987A9B7212463FFDC5E2\win32k.pdb not found
SYMSRV:  http://msdl.microsoft.com/download/symbols/win32k.pdb/21E2778DD2954987A9B7212463FFDC5E2/win32k.pdb not found
DBGHELP: win32k.pdb - file not found
*** ERROR: Symbol file could not be found.  Defaulted to export symbols for win32k.sys -

0: kd> !lmi win32k
Loaded Module Info: [win32k]
         Module: win32k
   Base Address: fffff96000060000
     Image Name: win32k.sys
   Machine Type: 34404 (X64)
     Time Stamp: 4ce79a73 Sat Nov 20 14:52:51 2010
           Size: 310000
       CheckSum: 2fe2cf
Characteristics: 22
Debug Data Dirs: Type  Size      VA  Pointer  GUID
             CODEVIEW    23, 2a0888,  29fc88, {21E2778D-D295-4987-A9B7-212463FFDC5E}
                 Age: 2, Pdb: win32k.pdb
    Symbol Type: DEFERRED - No error - symbol load deferred
    Load Report: no symbols loaded

0: kd>

По сути мне нужно содержимое сл.структур для любой 64-битной ОС Win от 7 до 11:
_W32PROCESS, _W32THREAD, _HWND, tagPROCESSINFO, tagTHREADINFO, и tagQMSG

Сейчас имею Win32k.pdb для х32 WinXP, и если открыть его в том-же "PEAnatomist", то видно, что все эти структуры имеются в базе, только просмотреть их содержимое не могу (нужно искать и ставить хр именно под эту версию pdb). Заранее спасибо за любые советы и помощь.

0102.png
 
скачивает нормально
Команда wget http://msdl.microsoft.com/download/symbols/win32k.pdb/21E2778DD2954987A9B7212463FFDC5E2/win32k.pdb
скачивает win32k.pdb в домашний каталог. Браузер по ссылке: https://msdl.microsoft.com/download/symbols/win32k.pdb/21E2778DD2954987A9B7212463FFDC5E2/win32k.pdb скачивает -
0413DB1F27F9EABCFA8F8B142ABDCE1D17D644194AA75D0747B8194D9526DAC500.blob
SHA-256 обоих скачанных файлов - одинаковое, т. е. если wget не вариант, просто качаешь блоб, переименовываешь в win32k.pdb и кладешь куда надо.
Обрати внимание, в твоей ссылке HTTP, а я исправил на HTTPS.

Вот сам файл: http://**************************************************************/d/6SaPM8jWwMEsGQP2T2jbmQ
SHA-256 8470b26d16b0783c4851784418d4293a4f6afcf86f1abd775ef1f8b1b3d71e4b
 
Последнее редактирование:
просто качаешь блоб, переименовываешь в win32k.pdb и кладешь куда надо.
Вау, круто - всё получилось и WinDbg принял pdb на борт (а я уже и не надеялся).
Огромное спасибо за совет, на будущее буду знать.

Код:
0: kd> !lmi win32k.sys
Loaded Module Info: [win32k.sys]
         Module: win32k
   Base Address: fffff96000060000
     Image Name: win32k.sys
   Machine Type: 34404 (X64)
     Time Stamp: 4ce79a73 Sat Nov 20 14:52:51 2010
           Size: 310000
       CheckSum: 2fe2cf
Characteristics: 22  perf
Debug Data Dirs: Type  Size     VA  Pointer

    Symbol Type: PDB      - Symbols loaded successfully from symbol server.
                 c:\symbols\win32k.pdb\21E2778DD2954987A9B7212463FFDC5E2\win32k.pdb

    Load Report: public symbols, not source indexed
                 c:\symbols\win32k.pdb\21E2778DD2954987A9B7212463FFDC5E2\win32k.pdb

0: kd> dt win32k!_W32THREAD
   +0x000 pEThread             : Ptr64 _ETHREAD
   +0x008 RefCount             : Uint4B
   +0x010 ptlW32               : Ptr64 _TL
   +0x018 pgdiDcattr           : Ptr64 Void
   +0x020 pgdiBrushAttr        : Ptr64 Void
   +0x028 pUMPDObjs            : Ptr64 Void
   +0x030 pUMPDHeap            : Ptr64 Void
   +0x038 pUMPDObj             : Ptr64 Void
   +0x040 pProxyPort           : Ptr64 Void
   +0x048 pClientID            : Ptr64 Void
   +0x050 GdiTmpTgoList        : _LIST_ENTRY
   +0x060 pRBRecursionCount    : Uint4B
   +0x064 pNonRBRecursionCount : Uint4B
   +0x068 tlSpriteState        : _TLSPRITESTATE
   +0x110 pSpriteState         : Ptr64 Void
   +0x118 pDevHTInfo           : Ptr64 Void
   +0x120 ulDevHTInfoUniqueness: Uint4B
   +0x128 pdcoAA               : Ptr64 Void
   +0x130 pdcoRender           : Ptr64 Void
   +0x138 pdcoSrc              : Ptr64 Void
   +0x140 bEnableEngUpdateDeviceSurface : UChar
   +0x141 bIncludeSprites      : UChar
   +0x144 ulWindowSystemRendering : Uint4B
   +0x148 iVisRgnUniqueness    : Uint4B
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх