{"id":4017,"date":"2010-12-02T07:02:16","date_gmt":"2010-12-02T10:02:16","guid":{"rendered":"http:\/\/www.brainlabs.com.ar\/novedad\/?p=4017"},"modified":"2023-05-31T12:27:37","modified_gmt":"2023-05-31T15:27:37","slug":"analisis-forense-de-plataformas-windows-tecnologias-de-aceleracion-y-precarga-prefetcher-y-superfetch-leer-mas-noticias-de-seguridad-informatica-segu-info-analisis-forense-de-plataformas-wind","status":"publish","type":"post","link":"https:\/\/www.brainlabs.com\/novedad\/analisis-forense-de-plataformas-windows-tecnologias-de-aceleracion-y-precarga-prefetcher-y-superfetch-leer-mas-noticias-de-seguridad-informatica-segu-info-analisis-forense-de-plataformas-wind\/","title":{"rendered":"An\u00e1lisis forense de plataformas Windows: Tecnolog\u00edas de aceleraci\u00f3n y precarga (Prefetcher y SuperFetch)"},"content":{"rendered":"<div>\n<div>Prefetcher es un componente de plataformas Microsoft Windows aparecido originalmente en Windows XP. Uno de los comentarios m\u00e1s frecuentes cuando apareci\u00f3 XP, desde el punto de vista de la usabilidad, ten\u00eda que ver con la rapidez en la carga del sistema y las aplicaciones frente a las versiones anteriores de Windows. Esta aceleraci\u00f3n se debe en parte a Prefetcher, un componente que seg\u00fan han ido sucedi\u00e9ndose las versiones de Windows, ha ido variando en las implementaciones. As\u00ed, por ejemplo, con la llegada de Windows Vista se incorpor\u00f3 SuperFetch, cuyo funcionamiento se basa en la monitorizaci\u00f3n del uso de los programas para adaptar el proceso de aceleraci\u00f3n de carga cargando en memoria los elementos m\u00e1s accedidos por el patr\u00f3n de uso del usuario. Tambi\u00e9n con Vista se introdujo un componente llamado Readyboost, principalmente para para soportar SuperFetch ofreciendo un cach\u00e9 adicional de operaci\u00f3n en disco empleando medios de almacenamiento masivos, aunque no trataremos esta tecnolog\u00eda en este art\u00edculo.<br \/>\nTanto como para <em>Prefetcher<\/em> como para <em>SuperFecth<\/em>, el fundamento es exactamente el mismo: cuando se carga el sistema, como es l\u00f3gico, un determinado n\u00famero de ficheros es accedido y sus contenidos son cargados en la memoria. Dada la arquitectura del sistema, es frecuente que los mismos ficheros sean accedidos numerosas veces, lo que ralentiza la carga. La tecnolog\u00eda de <em>prefetching<\/em> observa el patr\u00f3n de acceso descrito, graba la secuencia empleada y reutiliza la informaci\u00f3n para tratar de realizar una carga \u00f3ptima del sistema en sucesivos encendidos del sistema. Los cambios suelen captarse demorando el proceso de monitorizaci\u00f3n al evento que culmine en primera instancia, entre la carga de la <em>shell<\/em> de usuario o el tiempo completo de carga del sistema, siendo el proceso similar para la captaci\u00f3n de trazas de carga de aplicaciones.<\/p>\n<p>T\u00e9cnicamente, para cada aplicaci\u00f3n o proceso del sistema sometido a <em>prefetching<\/em>, se genera un fichero <em>.pf<\/em> que incluye las referencias a los ficheros y directorios que dicha aplicaci\u00f3n utiliz\u00f3 en la carga. Adicionalmente, el fichero tendr\u00e1 la huella temporal de la \u00faltima ejecuci\u00f3n de la aplicaci\u00f3n o proceso seleccionado. El resultado para el usuario es un sistema que carga m\u00e1s r\u00e1pido, lo cual agradecer\u00e1. Para el analista forense, el resultado es otra fuente m\u00e1s de informaci\u00f3n valiosa, especialmente para descubrir trazas de uso y eliminaci\u00f3n de aplicaciones por parte de los usuarios, lo cual, tambi\u00e9n se agradece. Este art\u00edculo se centrar\u00e1 en el an\u00e1lisis de <em>Prefectcher<\/em> para Windows XP.<\/p>\n<p><strong>Inspecci\u00f3n de Prefetcher<\/strong><\/p>\n<p>La configuraci\u00f3n de <em>Prefetcher<\/em> se almacena en la siguiente llave del registro:<\/p>\n<blockquote>\n<p>HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory ManagementPrefetchParameters<\/p>\n<\/blockquote>\n<p>Para acceder a dicha llave pueden utilizar cualquier herramienta de acceso al registro, y verificar su valor. Por defecto, el valor ser\u00e1 3, lo que implica que el <em>prefetching<\/em> est\u00e1 activo para el sistema y las aplicaciones.<\/p>\n<p style=\"text-align: left;\"><a class=\"highslide\" onclick=\"return vz.expand(this)\" href=\"http:\/\/www.brainlabs.com.ar\/novedad\/images\/\/registro_prefetcher.jpg\"><img fetchpriority=\"high\" decoding=\"async\" class=\"aligncenter size-full wp-image-4018\" title=\"registro_prefetcher\" src=\"http:\/\/www.brainlabs.com.ar\/novedad\/images\/\/registro_prefetcher.jpg\" alt=\"\" width=\"403\" height=\"444\" \/><\/a>Una vez verificado el valor, podemos acceder a los contenidos de <em>Prefetcher<\/em>, ya que est\u00e1n ubicados en el directorio del sistema. Por defecto, y suponiendo que el sistema tiene la unidad l\u00f3gica C: asignada, la ubicaci\u00f3n ser\u00e1 <em>C:WINDOWSPrefetch<\/em>. Algunos ejemplos son, para mi m\u00e1quina Windows, las siguientes entradas de Firefox y Keepass:<\/p>\n<pre>shernando@hpsergio-linux:\/media\/0A8C1FAF8C1F9473\/WINDOWS\/Prefetch$ <strong><span style=\"color: #ff00ff;\">ls<\/span><\/strong> -la | <span style=\"color: #ff00ff;\"><strong>grep<\/strong><\/span> FIREFOX\n-rw------- 2 shernando shernando  127612 2010-11-02 19:04 FIREFOX.EXE-24B8FB1A.pf\n<\/pre>\n<pre>shernando@hpsergio-linux:\/media\/0A8C1FAF8C1F9473\/WINDOWS\/Prefetch$ <strong><span style=\"color: #ff00ff;\">ls<\/span><\/strong> -la KEEPASS.EXE-35620CED.pf\n-rw------- 2 shernando shernando 108848 2010-11-02 17:38 KEEPASS.EXE-35620CED.pf<\/pre>\n<p>Es posible explorar los contenidos del fichero, para obtener informaci\u00f3n adicional que puede resultar \u00fatil en la investigaci\u00f3n. Hay muchas herramientas que permiten leer los contenidos de los ficheros <em>.pf<\/em>, si bien es habitual emplear Prefetch Parser, Windows File Analyzer, <a href=\"http:\/\/code.google.com\/p\/prefetch-tool\/\" target=\"_blank\" rel=\"noopener\">prefetch-tool<\/a> o <a href=\"http:\/\/www.nirsoft.net\/utils\/win_prefetch_view.html\" target=\"_blank\" rel=\"noopener\">WinPrefetchView<\/a>.<\/p>\n<p>As\u00ed, para el caso de Firefox, seg\u00fan <em>prefetch-tool<\/em> se obtiene que ha sido ejecutado 62 veces con la huella temporal que se muestra. N\u00f3tese la diferencia respecto a la consulta anterior, ya que la efectuada en Linux correspond\u00eda con el sistema sin cargar, mientras que los de <em>prefetch-tool<\/em> corresponden con el sistema en ejecuci\u00f3n en el momento de escribir el art\u00edculo.<\/p>\n<blockquote>\n<p>Analyzing 21 of 129 files<br \/>\nFilename:\t\tfirefox.exe-24b8fb1a.pf<br \/>\nMD5:\t\t\t1b856921749e18e225b4f4ac5cf538d5<br \/>\nSHA1:\t\tda39a3ee5e6b4b0d3255bfef95601890afd80709<br \/>\nLast accessed time:\tSat Nov 06 20:16:24 2010<br \/>\nLast modified date:\tSat Nov 06 21:16:29 2010<br \/>\nFile creation date:\tSun Sep 05 20:57:07 2010<br \/>\nTotal number of runs:\t62<\/p>\n<\/blockquote>\n<p>Mediante <em>WinPrefetchView<\/em> o <em>Prefetch Parser<\/em> es posible conocer tambi\u00e9n el nombre de los ficheros accedidos por la aplicaci\u00f3n en la inicializaci\u00f3n, as\u00ed como la ruta mapeada en <em>Prefetcher<\/em>, lo que servir\u00e1 para localizarlos en el proceso de carga. Para Firefox estos son algunos ejemplos:<\/p>\n<blockquote>\n<p>FIREFOX.EXE-24B8FB1A.pf \tDEVICEHARDDISKVOLUME1WINDOWSSYSTEM32 \tNTDLL.DLL<br \/>\nFIREFOX.EXE-24B8FB1A.pf \tDEVICEHARDDISKVOLUME1WINDOWSSYSTEM32 \tKERNEL32.DLL<br \/>\nFIREFOX.EXE-24B8FB1A.pf \tDEVICEHARDDISKVOLUME1WINDOWSSYSTEM32 \tUNICODE.NLS<br \/>\nFIREFOX.EXE-24B8FB1A.pf \tDEVICEHARDDISKVOLUME1WINDOWSSYSTEM32 \tLOCALE.NLS<br \/>\nFIREFOX.EXE-24B8FB1A.pf \tDEVICEHARDDISKVOLUME1WINDOWSSYSTEM32 \tSORTTBLS.NLS<\/p>\n<\/blockquote>\n<p><strong>Resumen<\/strong><\/p>\n<p>En el proceso de investigaci\u00f3n de un sistema Windows, a la hora de componer la l\u00ednea temporal de eventos o para conocer la actividad del usuario, puede resultar de utilidad la consulta de los contenidos de <em>Prefetcher<\/em>. No s\u00f3lo para saber qu\u00e9 elementos ha ejecutado, o el n\u00famero de veces que han sido ejecutados, sino para tener informaci\u00f3n certera sobre la huella temporal.<\/p>\n<p>La mayor\u00eda de los usuarios est\u00e1ndar de plataformas Windows ni tan siquiera conoce la utilidad de <em>Prefetch<\/em>, ni d\u00f3nde se ubican los ficheros. Es por tanto que en la mayor\u00eda de los casos este directorio est\u00e1 repleto de informaci\u00f3n (existe una limitaci\u00f3n, s\u00f3lo se almacenan 128 entradas) que podemos explotar para el proceso forense. Teniendo en cuenta el desconocimiento de estas tecnolog\u00edas, no es de extra\u00f1ar que la mayor\u00eda de aplicaciones de gesti\u00f3n de privacidad eliminan los contenidos del directorio de <em>prefetching<\/em> en su proceso de limpieza. Existe un motivo claro para hacerlo.<\/p>\n<p>Visto | <a href=\"http:\/\/www.sahw.com\" target=\"_blank\" rel=\"noopener\">Sergio Hernando<\/a><\/p>\n<\/div>\n<\/div>\n<div id=\"_mcePaste\" style=\"overflow: hidden; position: absolute; left: -10000px; top: 923px; width: 1px; height: 1px;\">\n<p>Es posible explorar los contenidos del fichero, para obtener informaci\u00f3n adicional que puede resultar \u00fatil en la investigaci\u00f3n. Hay muchas herramientas que permiten leer los contenidos de los ficheros <em>.pf<\/em>, si bien es habitual emplear Prefetch Parser, Windows File Analyzer, <a href=\"http:\/\/code.google.com\/p\/prefetch-tool\/\">prefetch-tool<\/a> o <a href=\"http:\/\/www.nirsoft.net\/utils\/win_prefetch_view.html\">WinPrefetchView<\/a>.<\/p>\n<p>As\u00ed, para el caso de Firefox, seg\u00fan <em>prefetch-tool<\/em> se obtiene que ha sido ejecutado 62 veces con la huella temporal que se muestra. N\u00f3tese la diferencia respecto a la consulta anterior, ya que la efectuada en Linux correspond\u00eda con el sistema sin cargar, mientras que los de <em>prefetch-tool<\/em> corresponden con el sistema en ejecuci\u00f3n en el momento de escribir el art\u00edculo.<\/p>\n<blockquote>\n<p>Analyzing 21 of 129 files<br \/>\nFilename:\t\tfirefox.exe-24b8fb1a.pf<br \/>\nMD5:\t\t\t1b856921749e18e225b4f4ac5cf538d5<br \/>\nSHA1:\t\tda39a3ee5e6b4b0d3255bfef95601890afd80709<br \/>\nLast accessed time:\tSat Nov 06 20:16:24 2010<br \/>\nLast modified date:\tSat Nov 06 21:16:29 2010<br \/>\nFile creation date:\tSun Sep 05 20:57:07 2010<br \/>\nTotal number of runs:\t62<\/p>\n<\/blockquote>\n<p>Mediante <em>WinPrefetchView<\/em> o <em>Prefetch Parser<\/em> es posible conocer tambi\u00e9n el nombre de los ficheros accedidos por la aplicaci\u00f3n en la inicializaci\u00f3n, as\u00ed como la ruta mapeada en <em>Prefetcher<\/em>, lo que servir\u00e1 para localizarlos en el proceso de carga. Para Firefox estos son algunos ejemplos:<\/p>\n<blockquote>\n<p>FIREFOX.EXE-24B8FB1A.pf \tDEVICEHARDDISKVOLUME1WINDOWSSYSTEM32 \tNTDLL.DLL<br \/>\nFIREFOX.EXE-24B8FB1A.pf \tDEVICEHARDDISKVOLUME1WINDOWSSYSTEM32 \tKERNEL32.DLL<br \/>\nFIREFOX.EXE-24B8FB1A.pf \tDEVICEHARDDISKVOLUME1WINDOWSSYSTEM32 \tUNICODE.NLS<br \/>\nFIREFOX.EXE-24B8FB1A.pf \tDEVICEHARDDISKVOLUME1WINDOWSSYSTEM32 \tLOCALE.NLS<br \/>\nFIREFOX.EXE-24B8FB1A.pf \tDEVICEHARDDISKVOLUME1WINDOWSSYSTEM32 \tSORTTBLS.NLS<\/p>\n<\/blockquote>\n<p><strong>Resumen<\/strong><\/p>\n<p>En el proceso de investigaci\u00f3n de un sistema Windows, a la hora de componer la l\u00ednea temporal de eventos o para conocer la actividad del usuario, puede resultar de utilidad la consulta de los contenidos de <em>Prefetcher<\/em>. No s\u00f3lo para saber qu\u00e9 elementos ha ejecutado, o el n\u00famero de veces que han sido ejecutados, sino para tener informaci\u00f3n certera sobre la huella temporal.<\/p>\n<p>La mayor\u00eda de los usuarios est\u00e1ndar de plataformas Windows ni tan siquiera conoce la utilidad de <em>Prefetch<\/em>, ni d\u00f3nde se ubican los ficheros. Es por tanto que en la mayor\u00eda de los casos este directorio est\u00e1 repleto de informaci\u00f3n (existe una limitaci\u00f3n, s\u00f3lo se almacenan 128 entradas) que podemos explotar para el proceso forense. Teniendo en cuenta el desconocimiento de estas tecnolog\u00edas, no es de extra\u00f1ar que la mayor\u00eda de aplicaciones de gesti\u00f3n de privacidad eliminan los contenidos del directorio de <em>prefetching<\/em> en su proceso de limpieza. Existe un motivo claro para hacerlo.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Prefetcher es un componente de plataformas Microsoft Windows aparecido originalmente en Windows XP. Uno de&#8230;<\/p>\n","protected":false},"author":10,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[48],"tags":[],"class_list":["post-4017","post","type-post","status-publish","format-standard","hentry","category-seguridad"],"featured_image_urls":{"full":"","thumbnail":"","medium":"","medium_large":"","large":"","1536x1536":"","2048x2048":"","covernews-featured":"","covernews-medium":""},"author_info":{"display_name":"Sergio Zamenfeld","author_link":"https:\/\/www.brainlabs.com\/novedad\/author\/sergio\/"},"category_info":"<a href=\"https:\/\/www.brainlabs.com\/novedad\/category\/seguridad\/\" rel=\"category tag\">Seguridad<\/a>","tag_info":"Seguridad","comment_count":"0","_links":{"self":[{"href":"https:\/\/www.brainlabs.com\/novedad\/wp-json\/wp\/v2\/posts\/4017","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.brainlabs.com\/novedad\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.brainlabs.com\/novedad\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.brainlabs.com\/novedad\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/www.brainlabs.com\/novedad\/wp-json\/wp\/v2\/comments?post=4017"}],"version-history":[{"count":2,"href":"https:\/\/www.brainlabs.com\/novedad\/wp-json\/wp\/v2\/posts\/4017\/revisions"}],"predecessor-version":[{"id":7782,"href":"https:\/\/www.brainlabs.com\/novedad\/wp-json\/wp\/v2\/posts\/4017\/revisions\/7782"}],"wp:attachment":[{"href":"https:\/\/www.brainlabs.com\/novedad\/wp-json\/wp\/v2\/media?parent=4017"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.brainlabs.com\/novedad\/wp-json\/wp\/v2\/categories?post=4017"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.brainlabs.com\/novedad\/wp-json\/wp\/v2\/tags?post=4017"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}