{"id":2219,"date":"2024-08-01T08:44:37","date_gmt":"2024-08-01T08:44:37","guid":{"rendered":"https:\/\/www.mainmind.com\/blog\/?p=2219"},"modified":"2024-08-01T09:06:37","modified_gmt":"2024-08-01T09:06:37","slug":"analizar-volcados-de-memoria-con-windbg","status":"publish","type":"post","link":"https:\/\/www.mainmind.com\/blog\/analizar-volcados-de-memoria-con-windbg\/","title":{"rendered":"Analizar volcados de memoria con WinDbg"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">A ra\u00edz de del <a href=\"https:\/\/es.wikipedia.org\/wiki\/Incidente_de_CrowdStrike_de_2024\" data-type=\"link\" data-id=\"https:\/\/es.wikipedia.org\/wiki\/Incidente_de_CrowdStrike_de_2024\">incidente de CrowdStrike Falcon<\/a> algunas de las preguntas habituales sobre este EDR (Endpoint Detection and Response), se centraron en como diagnosticar que hab\u00eda provocado el pantallazo azul (<a href=\"https:\/\/support.microsoft.com\/es-es\/windows\/resoluci%C3%B3n-de-errores-de-pantalla-azul-en-windows-60b01860-58f2-be66-7516-5c45a66ae3c6\" data-type=\"link\" data-id=\"https:\/\/support.microsoft.com\/es-es\/windows\/resoluci%C3%B3n-de-errores-de-pantalla-azul-en-windows-60b01860-58f2-be66-7516-5c45a66ae3c6\">BSOD<\/a>)&#8230;<\/p>\n\n\n\n<!--more-->\n\n\n\n<p class=\"wp-block-paragraph\">La propia Microsoft facilita la aplicaci\u00f3n <a href=\"https:\/\/learn.microsoft.com\/es-es\/windows-hardware\/drivers\/debuggercmds\/windbg-overview\" data-type=\"link\" data-id=\"https:\/\/aka.ms\/WinDbgWhatsNew\">WinDbg<\/a> en <a href=\"https:\/\/apps.microsoft.com\/detail\/9pgjgd53tn86?hl=es-es&amp;gl=ES\" data-type=\"link\" data-id=\"https:\/\/apps.microsoft.com\/detail\/9pgjgd53tn86?hl=es-es&amp;gl=ES\">Windows Store<\/a>, una aplicaci\u00f3n completa y extensa, que <a href=\"https:\/\/learn.microsoft.com\/es-es\/shows\/defrag-tools\/182-windbg-preview-part-1\" data-type=\"link\" data-id=\"https:\/\/learn.microsoft.com\/es-es\/shows\/defrag-tools\/182-windbg-preview-part-1\">desde 2017<\/a> se ha ido actualizando constantemente pero veamos unas nociones b\u00e1sicas para, por lo menos, orientar hac\u00eda donde puede estar el origen de un pantallazo azul.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Despu\u00e9s de instalar la aplicaci\u00f3n, iremos a \u00ab<em>File&gt; Settings &gt; Debugging settings<\/em>\u00bb junto a la opci\u00f3n \u00ab<em>Default symbol path<\/em>\u00bb a\u00f1adiremos el texto:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nsrv*https:\/\/msdl.microsoft.com\/download\/symbols\n<\/pre><\/div>\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"682\" src=\"https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/settings-1024x682.jpg\" alt=\"settings sobre WinDbg\" class=\"wp-image-2222\" srcset=\"https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/settings-1024x682.jpg 1024w, https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/settings-300x200.jpg 300w, https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/settings-768x512.jpg 768w, https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/settings.jpg 1292w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">De este modo se a\u00f1aden los \u00abarchivos de s\u00edmbolos\u00bb de Microsoft, estos datos no son necesarios para ejecutar los binarios pero si son \u00fatiles para depurar, en el caso de necesitar hacerlo en modo kernel se necesitan los s\u00edmbolos para el controlador que se est\u00e1 depurando adem\u00e1s de los <a href=\"https:\/\/learn.microsoft.com\/es-es\/windows-hardware\/drivers\/debugger\/symbol-path#using-a-symbol-server-srv\">p\u00fablicos de Windows<\/a>. Por ejemplo, podremos ver los nombres de variables, funciones&#8230; que ayudan en el proceso b\u00e1sico.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Si nuestro equipo ha sufrido un pantallazo azul se realiza volcado de memoria antes de reiniciar, pueden existir varias rutas al fichero pero habitualmente:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n%SystemRoot%\\MEMORY.DMP\n%SystemRoot%\\minidump\\minidump.dmp\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">Desde \u00ab<em>Configuraci\u00f3n &gt; Sistema &gt; Informaci\u00f3n &gt; Configuraci\u00f3n Avanzada del sistema<\/em>\u00bb accedemos a las \u00ab<em>Opciones Avanzadas &gt; Inicio y recuperaci\u00f3n (Configuraci\u00f3n)<\/em>\u00bb donde podemos seleccionar el tipo de volcado y la ruta predeterminada:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"783\" src=\"https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/windows_dump_config-1024x783.jpg\" alt=\"windows_dump_config sobre WinDbg\" class=\"wp-image-2224\" srcset=\"https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/windows_dump_config-1024x783.jpg 1024w, https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/windows_dump_config-300x229.jpg 300w, https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/windows_dump_config-768x587.jpg 768w, https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/windows_dump_config.jpg 1274w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">La mezcla de opciones del Panel de Control antiguo en Windows 11 todav\u00eda se escoden en la interfaz&#8230;<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Deber\u00e1s abrir con permisos de administrador WinDdg si el fichero se encuentra en el directorio del sistema, puedes copiar el fichero de otro equipo en cualquier ruta igualmente y desde \u00ab<em>File &gt; Open dump file<\/em>\u00bb abrimos el archivo de volcado de memoria.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Las tareas de depuraci\u00f3n de este tipo son complejas, pero vamos a ver el proceso inicial m\u00e1s sencillo. Una vez abierto el fichero de volcado, podemos analizarlo pulsando sobre \u00ab!analize -v\u00bb o escribiendo este mismo comando junto a \u00abkd &gt;\u00bb<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"934\" height=\"777\" src=\"https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/analyze.jpg\" alt=\"analyze sobre WinDbg\" class=\"wp-image-2225\" srcset=\"https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/analyze.jpg 934w, https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/analyze-300x250.jpg 300w, https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/analyze-768x639.jpg 768w\" sizes=\"auto, (max-width: 934px) 100vw, 934px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Aqu\u00ed es donde empezamos a obtener pistas, vamos a ver dos ejemplos de pantallazos azules provocados por dos problemas diferentes:<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"416\" height=\"697\" src=\"https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/crash_usb_sandisk.jpg\" alt=\"crash_usb_sandisk sobre WinDbg\" class=\"wp-image-2229\" style=\"width:384px;height:auto\" srcset=\"https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/crash_usb_sandisk.jpg 416w, https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/crash_usb_sandisk-179x300.jpg 179w\" sizes=\"auto, (max-width: 416px) 100vw, 416px\" \/><figcaption class=\"wp-element-caption\">USB Sandisk<\/figcaption><\/figure>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"543\" height=\"745\" src=\"https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/crash_amdkmdag_sys.jpg\" alt=\"crash_amdkmdag_sys sobre WinDbg\" class=\"wp-image-2227\" style=\"width:466px;height:auto\" srcset=\"https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/crash_amdkmdag_sys.jpg 543w, https:\/\/www.mainmind.com\/blog\/wp-content\/uploads\/2024\/WinDbg\/crash_amdkmdag_sys-219x300.jpg 219w\" sizes=\"auto, (max-width: 543px) 100vw, 543px\" \/><figcaption class=\"wp-element-caption\">GPU AMD<\/figcaption><\/figure>\n<\/div><\/div>\n<\/div>\n\n\n\n<p class=\"wp-block-paragraph\">No hemos entrado en los detalles de cada uno de estos pantallazos, pero por lo menos podemos ver por donde seguir investigando, en la parte izquierda se muestra un ejemplo de error provocado por una unidad USB de Sandisk y en la parte derecha otro iniciado por errores en la tarjeta gr\u00e1fica de AMD<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Junto al an\u00e1lisis y los ficheros implicados podemos encontrar informaci\u00f3n adicional, en el caso del USB:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\nDRIVER_POWER_STATE_FAILURE (9f)\nA driver has failed to complete a power IRP within a specific time.\nArguments:\nArg1: 0000000000000004, The power transition timed out waiting to synchronize with the Pnp\n\tsubsystem.\nArg2: 000000000000012c, Timeout in seconds.\nArg3: ffffa48f63e50040, The thread currently holding on to the Pnp lock.\nArg4: ffffb68d470d7180, nt!TRIAGE_9F_PNP on Win7 and higher\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">Relacionado: <a href=\"https:\/\/www.microsoft.com\/en-us\/security\/blog\/2024\/07\/27\/windows-security-best-practices-for-integrating-and-managing-security-tools\/\">An\u00e1lisis de David Weston sobre el incidente<\/a> de CrowdStrike<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A ra\u00edz de del incidente de CrowdStrike Falcon algunas de las preguntas habituales sobre este EDR (Endpoint Detection and Response), se centraron en como diagnosticar que hab\u00eda provocado el pantallazo azul (BSOD)&#8230;<\/p>\n","protected":false},"author":1,"featured_media":2231,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12],"tags":[798,799,976],"class_list":["post-2219","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software","tag-bsod","tag-pantallazo-azul","tag-windbg"],"_links":{"self":[{"href":"https:\/\/www.mainmind.com\/blog\/wp-json\/wp\/v2\/posts\/2219","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mainmind.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.mainmind.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.mainmind.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mainmind.com\/blog\/wp-json\/wp\/v2\/comments?post=2219"}],"version-history":[{"count":2,"href":"https:\/\/www.mainmind.com\/blog\/wp-json\/wp\/v2\/posts\/2219\/revisions"}],"predecessor-version":[{"id":2233,"href":"https:\/\/www.mainmind.com\/blog\/wp-json\/wp\/v2\/posts\/2219\/revisions\/2233"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.mainmind.com\/blog\/wp-json\/wp\/v2\/media\/2231"}],"wp:attachment":[{"href":"https:\/\/www.mainmind.com\/blog\/wp-json\/wp\/v2\/media?parent=2219"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.mainmind.com\/blog\/wp-json\/wp\/v2\/categories?post=2219"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.mainmind.com\/blog\/wp-json\/wp\/v2\/tags?post=2219"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}