Comprensión del monitor de proceso
Hoy, en esta edición de Geek School, vamos a enseñarte cómo la utilidad Process Monitor te permite echar un vistazo debajo del capó y ver qué hacen realmente tus aplicaciones favoritas entre bastidores: a qué archivos están accediendo, las claves de registro a las que acceden. uso, y mas.
NAVEGACION ESCOLAR- ¿Qué son las herramientas de SysInternals y cómo las usa??
- Entendiendo el Explorador de Procesos
- Uso de Process Explorer para solucionar problemas y diagnosticar
- Comprensión del monitor de proceso
- Uso de Process Monitor para solucionar problemas y encontrar trucos de registro
- Uso de Autoruns para lidiar con procesos de inicio y Malware
- Uso de BgInfo para mostrar información del sistema en el escritorio
- Uso de PsTools para controlar otras PC desde la línea de comandos
- Analizar y administrar sus archivos, carpetas y unidades
- Envolviendo y usando las herramientas juntas
A diferencia de la utilidad Process Explorer que hemos pasado unos días cubriendo, Process Monitor pretende ser una visión pasiva de todo lo que sucede en su computadora, no una herramienta activa para matar procesos o cerrar identificadores. Esto es como echar un vistazo a un archivo de registro global para cada evento que ocurre en su PC con Windows.
¿Quiere entender en qué claves de registro su aplicación favorita está almacenando sus configuraciones? ¿Quieres averiguar qué archivos está tocando un servicio y con qué frecuencia? ¿Quiere ver cuándo una aplicación se está conectando a la red o abriendo un nuevo proceso? Es Monitor de proceso al rescate..
Ya no hacemos muchos artículos de hackeo del registro, pero cuando comenzamos, usábamos Process Monitor para averiguar a qué claves de registro se accedía, y luego modificamos esas claves de registro para ver qué sucedería. Si alguna vez te has preguntado cómo algún geek descubrió un truco en el registro que nadie había visto, probablemente fue a través de Process Monitor..
La utilidad Process Monitor fue creada al combinar dos utilidades de la vieja escuela diferentes, Filemon y Regmon, que se usaron para monitorear los archivos y la actividad del registro como sus nombres implican. Si bien esas utilidades aún están disponibles, y si bien pueden satisfacer sus necesidades particulares, estaría mejor con Process Monitor, porque puede manejar un gran volumen de eventos mejor debido al hecho de que fue diseñado para hacerlo..
También vale la pena señalar que Process Monitor siempre requiere el modo de administrador porque carga un controlador de núcleo bajo el capó para capturar todos esos eventos. En Windows Vista y versiones posteriores, aparecerá un cuadro de diálogo de UAC, pero para XP o 2003, deberá asegurarse de que la cuenta que usa tenga privilegios de administrador..
Los eventos que procesa el monitor capturas
Process Monitor captura una tonelada de datos, pero no captura todo lo que sucede en su PC. Por ejemplo, a Process Monitor no le importa si mueve el mouse y no sabe si sus controladores están funcionando de manera óptima. No va a rastrear qué procesos están abiertos y desperdiciar CPU en su computadora; después de todo, ese es el trabajo de Process Explorer..
Lo que hace es capturar tipos específicos de operaciones de E / S (entrada / salida), ya sea que se realicen a través del sistema de archivos, el registro o incluso la red. También hará un seguimiento limitado de algunos otros eventos. Esta lista cubre los eventos que captura:
- Registro - Esto podría ser crear claves, leerlas, eliminarlas o consultarlas. Te sorprenderás de cuán a menudo sucede esto..
- Sistema de archivos - esto podría ser creación de archivos, escritura, eliminación, etc., y puede ser tanto para discos duros locales como para unidades de red.
- Red - Esto mostrará el origen y el destino del tráfico TCP / UDP, pero lamentablemente no muestra los datos, lo que hace que sea un poco menos útil..
- Proceso - Estos son eventos para procesos y subprocesos en los que se inicia un proceso, un subproceso se inicia o sale, etc. Esto puede ser información útil en ciertos casos, pero a menudo es algo que debería mirar en Process Explorer..
- Perfilado - Process Monitor captura estos eventos para verificar la cantidad de tiempo de procesador utilizado por cada proceso y el uso de la memoria. Una vez más, probablemente querrá usar Process Explorer para rastrear estas cosas la mayor parte del tiempo, pero es útil aquí si lo necesita.
Por lo tanto, Process Monitor puede capturar cualquier tipo de operación de E / S, ya sea que ocurra a través del registro, el sistema de archivos o incluso la red, aunque los datos reales que se están escribiendo no se capturan. Solo estamos viendo el hecho de que un proceso está escribiendo en una de estas corrientes, para que luego podamos descubrir más sobre lo que está sucediendo..
La interfaz del monitor de proceso
Cuando cargue por primera vez la interfaz de Process Monitor, se le presentará una enorme cantidad de filas de datos, con más datos volando rápidamente y puede ser abrumador. La clave es tener alguna idea, al menos, acerca de lo que está mirando, así como lo que está buscando. Este no es el tipo de herramienta por la que pasas un día relajante navegando, ya que en un período de tiempo muy corto, verás millones de filas.
Lo primero que querrá hacer es filtrar esos millones de filas al subconjunto de datos mucho más pequeño que desea ver, y le enseñaremos cómo crear filtros y concentrarse exactamente en lo que desea encontrar . Pero primero, debe comprender la interfaz y qué datos están realmente disponibles.
Mirando las columnas por defecto
Las columnas predeterminadas muestran una tonelada de información útil, pero definitivamente necesitarás un poco de contexto para comprender qué datos contiene cada uno, porque algunos de ellos pueden parecer que sucedió algo malo cuando son eventos realmente inocentes que ocurren todo el tiempo bajo la capucha. Aquí es para qué se utiliza cada una de las columnas predeterminadas:
- Hora - esta columna es bastante autoexplicativa, muestra la hora exacta en que ocurrió un evento.
- Nombre del proceso - El nombre del proceso que generó el evento. Esto no muestra la ruta completa al archivo de manera predeterminada, pero si se desplaza sobre el campo, puede ver exactamente qué proceso fue.
- PID - El ID de proceso del proceso que generó el evento. Esto es muy útil si está tratando de entender qué proceso svchost.exe generó el evento. También es una excelente manera de aislar un proceso único para monitoreo, asumiendo que el proceso no se reinicia solo.
- Operación - este es el nombre de la operación que se está registrando y hay un icono que coincide con uno de los tipos de eventos (registro, archivo, red, proceso). Estos pueden ser un poco confusos, como RegQueryKey o WriteFile, pero intentaremos ayudarle a superar la confusión..
- Camino - este no es el camino del proceso, es el camino a lo que se esté trabajando en este evento. Por ejemplo, si hubo un evento WriteFile, este campo mostrará el nombre del archivo o carpeta que se está tocando. Si esto fuera un evento de registro, mostraría la clave completa a la que se accede.
- Resultado - Esto muestra el resultado de la operación, que codifica como SUCCESS o ACCESS DENIED. Si bien puede sentirse tentado a asumir automáticamente que un BUFFER DEMASIADO PEQUEÑO significa algo realmente malo, no es el caso la mayoría de las veces..
- Detalle - Información adicional que a menudo no se traduce en el mundo habitual de solución de problemas de geek..
También puede agregar algunas columnas adicionales a la pantalla predeterminada yendo a Opciones -> Seleccionar columnas. Esta no sería nuestra recomendación para su primera parada cuando comience la prueba, pero como estamos explicando las columnas, vale la pena mencionarlo ya.
Una de las razones para agregar columnas adicionales a la pantalla es que puede filtrar rápidamente esos eventos sin sentirse abrumado por los datos. Aquí hay algunas de las columnas adicionales que utilizamos, pero puede encontrarlas en otras en la lista, dependiendo de la situación..
- Línea de comando - Si bien puede hacer doble clic en cualquier evento para ver los argumentos de la línea de comandos para el proceso que generó cada evento, puede ser útil ver rápidamente todas las opciones..
- nombre de empresa - La razón principal por la que esta columna es útil es que simplemente puede excluir todos los eventos de Microsoft rápidamente y limitar su monitoreo a todo lo que no sea parte de Windows. (No obstante, querrás asegurarte de que no tienes ningún proceso rundll32.exe extraño que esté ejecutando Process Explorer, ya que podrían estar ocultando malware)..
- PID de los padres - esto puede ser muy útil cuando está resolviendo un proceso que contiene muchos procesos secundarios, como un navegador web o una aplicación que sigue lanzando elementos incompletos como otro proceso. Luego puede filtrar por el PID principal para asegurarse de que captura todo.
Vale la pena señalar que puede filtrar por datos de columna incluso si la columna no se muestra, pero es mucho más fácil hacer clic derecho y filtrar que hacerlo manualmente. Y sí, volvimos a mencionar los filtros aunque todavía no los hemos explicado..
Examinando un solo evento
Ver cosas en una lista es una excelente manera de ver rápidamente una gran cantidad de puntos de datos diferentes a la vez, pero definitivamente no es la forma más fácil de examinar una sola pieza de datos, y solo hay tanta información que puede ver en la lista. lista. Afortunadamente, puede hacer doble clic en cualquier evento para acceder a un tesoro de información adicional.
La pestaña Evento predeterminada le brinda información que es en gran parte similar a lo que vio en la lista, pero agregará un poco más de información al participante. Si está viendo un evento del sistema de archivos, podrá ver cierta información como los atributos, el tiempo de creación del archivo, el acceso que se intentó durante una operación de escritura, el número de bytes que se escribieron y la duración.
Pasar a la pestaña Proceso le brinda mucha información sobre el proceso que generó el evento. Si bien generalmente querrá usar Process Explorer para tratar con los procesos, puede ser muy útil tener mucha información sobre el proceso específico que generó un evento específico, especialmente si es algo que sucedió muy rápidamente y luego desapareció de la red. lista de procesos. De esta manera se capturan los datos..
La pestaña Pila es algo que a veces será extremadamente útil, pero a menudo no será útil en absoluto. La razón por la que querría mirar la pila es para poder solucionar problemas examinando la columna del Módulo en busca de algo que no se vea bien..
Como ejemplo, imagine que un proceso intentaba constantemente consultar o acceder a un archivo que no existe, pero no estaba seguro de por qué. Puede mirar a través de la pestaña Apilar y ver si hay algún módulo que no se vea bien, y luego investigarlo. Es posible que encuentre un componente desactualizado, o incluso un malware, que esté causando el problema.
O bien, puede encontrar que no hay nada útil aquí para usted, y eso también está bien. Hay una gran cantidad de otros datos para mirar.
Notas sobre los desbordamientos de búfer
Antes de seguir avanzando, vamos a querer anotar un código de resultado que comenzará a ver mucho en la lista y, según todos los conocimientos que haya tenido hasta ahora, es posible que se preocupe un poco. Entonces, si comienza a ver el DESBORDAMIENTO DE BUFFER en la lista, no asuma que alguien está intentando piratear su computadora..
Página siguiente: Filtrar los datos que captura Process Monitor