Empezando con PowerShell >_

Hola a todos:

Para empezar, no os voy a soltar el rollo de que es Powershell, un cmdlet, etc. Ya hay mucha información en internet y con una búsqueda en duckduckgo, Google o bing encontraréis dicha información de forma más que sencilla, ya sabéis que intentamos no repetir trabajo, sobre todo cuando es un tema más que documentado. Lo que vam os a intentar es que aprendamos con ejemplos que nos puedan servir para aprender practicando, al principio evidentemente serán sencillos, pero poco a poco los iremos complicando y dándoles uso dentro del mundo de sistemas, redes, virtualización, forensics, pentesting, etc. Espero que todos incluyendo nosotros aprendamos juntos, con esto os animo a que nos dejéis comentarios, preguntas, que nos cuestionéis, en definitiva, que interactuéis con nosotros.

Continuar leyendo «Empezando con PowerShell >_»

Analisis del registro de windows – RegRipper – Part I

Hoy toca hablar de RegRipper, aunque antes… deberíamos hablar del registro de windows, pero como hay mucha información sobre el mismo por internet y no me gusta repertir lo mismo una y otra vez, os agrego un par de links para los que no sepáis qué es el registro de windows y como está estructurado os vayáis haciendo a la idea.

Continuar leyendo «Analisis del registro de windows – RegRipper – Part I»

Recuperando las contraseñas de las wifi a las que nos hemos conectado – NETSH

Hola a todos!

Este post es un TIP rápido que puede ser útil a muchos, ya sea a nivel forense, nivel de pentester o incluso para los pobres sysadmins, pero antes de empezar como siempre os recomiendo leer nuestra renuncia de responsabilidad.

Escenario: Tenemos acceso físico a un equipo windows y necesitamos por cualquier motivo recuperar a que WIFIs se ha conectado el equipo, obteniendo el SSID, configuración de seguridad de la mismo el tipo de red, contraseña de acceso, etc.

Bueno, llegados a este punto y de forma muy rápida os comento que con un triste comando obtendremos toda esta información, cosa que para algunos nos va genial 🙂 y para otros puede ser un marrón….

netshwlanshowprofiles

Evidentemente, he ocultado un poco la información para proteger dichas redes, pero os podéis hacer una idea con el resultado, con el comando anterior veremos todos los perfiles de conexión realizados con la wifi del equipo en cuestión.

Genial @fpalenzuela pero no veo la información que me has prometido.

Efectivamente, seguimos …..

netshwlanprofiles2

El parámetro name=»*» es para que nos muestre TODOS los perfiles y el parámetro key=clear es autoexplicativo.

Bueno, ya tenemos todos los datos de todas las redes wifi , ya que con el comando ejecutado nos aparecerá en pantalla todas las redes, con todas las configuraciones y contraseñas, para facilitar la lectura de todos los resultados podemos redirigir la salida de todos los datos a un archivo con el siguiente comando.

c:\>netsh wlan show profiles name=»*» key=clear > salidawlans.txt

 

BONUS…

Hay otro comando que os dejo aquí tambien, que os dará otra info… incluyendo las conexiones realizadas, abrid una «cmd» en modo administrador y …..

wlanreport

El parámetro duration=»64″ equivale a que nos muestre la información de los últimos 64 días….

Echad un vistazo a la info que os genera este comando…..     conocer las herramientas que disponemos en nuestros sistemas, puede ser una grata sorpresa….  os invito a investigar todo lo que se puede hacer con este comando… NETSH una pequeña navaja suiza disponible en windows… y olvidada por muchos…

Espero que os sea de utilidad.       🙂

— Como siempre los comentarios son siempre bien recibidos… nos gusta tener feedback… —

 

Análisis forense en Windows. Sistema de archivos NTFS

Introducción

Hasta aquí hemos iniciado labores forenses, hemos empezado a utilizar herramientas de la suite Sleuthkit y hemos trabajado sobre un sistema Windows. Antes de profundizar más, debemos entender bien cómo funciona el sistema de archivos sobre el que vamos a trabajar la gran mayoría de las veces, debemos entender que corre por debajo de las herramientas, que hacen las herramientas, en que se basa su funcionamiento y esto, os lo aseguro, en algún momento os salvará de una situación comprometida. Vamos a aprender algo del sistema de archivos NTFS que usan por defecto los sistemas modernos Windows.

Obviamente, es imposible explicar en un solo post todo sobre NTFS, por ello, lo primero que debo decir es que esto va a ser una introducción. Más adelante, según vayamos avanzando iremos profundizando más y más en cómo funciona, de momento tan solo quiero explicar cuatro cosillas breves para ayudar en esos primeros pasos tambaleantes que damos todos. AVISO: Este post va a ser más aburrido que los anteriores, pero es un paso que debemos dar si queremos llegar a ser realmente buenos. Mas tarde, llegaremos a Ext3-4, Reiser, ZFS, os lo prometo.

Pero hoy toca Windows, la vida es dura chavales.

 

Historia NTFS

Para comprender el presente, dicen los legos que hay que remitirse al pasado y desde ahí comprender el presente. Es lo que voy a hacer ahora, porque seguro que todos nos hemos  preguntado de donde viene este sistema ¿Verdad?

NTFS se basa, proviene si lo queréis decir así,  del sistema de archivos HPFS (Sistema de Archivos de Altas Prestaciones, es decir un sistema de archivos de alto rendimiento), que fue creado por Microsoft con el sistema operativo de IBM OS/2. Se caracterizaba por permitir nombres largos, metadatos e información de seguridad, así como de autocomprobación e información estructural. Además, aunque poseía tabla de archivos (como FAT), ésta se encontraba posicionada físicamente en el centro de la partición, de tal manera que redundaba en menores tiempos de acceso a la hora de leerla/escribirla.

 

Vale, esto esta genial, pero ¿Qué es NTFS?

NTFS, amigos lectores, significa  «New Technology File System» o Sistema de Archivos de Nueva Tecnología y es  el último tipo de archivos soportados por sistemas Windows. Es un sistema de archivos de alto desempeño que (en teoría) se repara a sí mismo y aporta diversas características avanzadas como seguridad a nivel de archivos, compresión, y auditoría.

Aporta seguridad para los datos, ya que tiene la capacidad de cifrar y descifrar todo tipo de datos, archivos y carpetas. Asimismo usa un conjunto de caracteres Unicode de 16 bits para los archivos y carpetas. Se supone también, que es un sistema tolerante a fallos. Este sistema puede examinar el archivo de registros (logs) y utilizarlo para restaurar el disco hacia un estado suficientemente sólido con una pérdida mínima de datos.

Los volúmenes que contienen NTFS, tienen dentro de si una “Master File Table” (MFT) o Tabla Maestra de Archivos. La cual contiene un registro para cada archivo y carpeta sobre el volumen. Los primeros bytes de la tabla están reservadas para los metadatos utilizados en implementar y mantener la estructura del sistema de archivos. Estos metadatos son almacenados en un conjunto de archivos del sistema.

Veamos cuáles son sus diversas partes y funciones tomando como ejemplo nuestro ya viejo conocido Windows 7 Pro de 64 bits.

Típica imagen de un sistema de archivos NTFS

Captura_ftk

A continuación os voy a contar la función de cada uno de los componentes principales dentro de un sistema de archivos NTFS típico y tópico. Por orden en la imagen:

  1. $AttrDef – Lista que  contiene los atributos de los archivos.
  2. $BadClus – Esto contiene una lista de clústers o sectores que tienen errores irrecuperables.
  3. $Bitmap – Lista que muestra la disponibilidad y uso de los clústers.
  4. $Boot – Se utiliza para montar el volumen NTFS durante el proceso de “bootstrap”.
  5. $I30: – Papelera, índice de elementos borrados.
  6. $LogFile – Las transacciones previas son listadas y almacenadas para furutas posibles restauraciones.
  7. $MFT – Archivo de registro base para un volumen NTFS, muy importante para análisis forense.
  8. $MftMirr – Los primeros cuatro registros del MFT son almacenados aquí para posibles restauraciones en caso de fallo o corrupción de la MFT primaria.
  9. $Secure – Lista de control de acceso, tiene descriptores de seguridad únicas para los archivos sobre el volumen.
  10. $Volumen – Mucha información relacionada al volumen, es almacenada en esta tabla.
  11. $Upcase – Esto es utilizado para convertir todos los caracteres en mayúscula a caracteres Unicode minúscula.
  12. $ – Esta es la carpeta Raíz.
  13. $Extend – Extensiones opcionales como cuotas e identificadores de objetivos son listados aquí.

¿Y cómo funciona NTFS?

La estructura NTFS es bastante simple, aunque es más complicada que, por ejemplo, en el sistema FAT.

Cada archivo está representado en un registro en la MFT (Tabla Maestra de Archivos). Asimismo, cada entradas en la MFT se clasifica en orden alfabético, esto le permite utilizar una búsqueda binaria, lo que acelera enormemente el trabajo del sistema con ese archivo. Para optimizar aún más el gestor de memoria caché utiliza un algoritmo lazywriter al escribir los datos directamente en el disco, y se almacena en la memoria hasta que la carga en la CPU no se reduce,  después esta carga en memoria disminuye en  un proceso de fondo.

Llegados aquí, la aviesa y avispada gente de sistemas ya está gritando: “¿Y qué pasa si hay un apagón mientras los datos aún están almacenados en la memoria? Obviamente se pierden, pero no tembléis, desde esta humilde web os damos la solución, se llama SAI (Sistema de Alimentación Ininterrumpida). Problema arreglado. Bromas aparte, al trabajar si o si, con este tipo de sistemas en entornos que requieran estabilidad y seguridad de no pérdida de los datos, estos aparatos son de obligada instalación.

 

Sector de Arranque de una partición NTFS

Cuando se asigna a un volumen de almacenamiento la configuración  por defecto de  NTFS, el programa de formato asigna los primeros 16 sectores para el sector de arranque y el código “bootstrap”. Al referirme a “Bootstraping” normalmente me refiero al inicio de un proceso auto sostenible, que se supone, actúa sin ingresos externos. Cuando hablo de ordenadores el término se refiere al proceso de cargar el software básico en la memoria de la computadora después de la puesta en funcionamiento o reinicio.

Captura-boottrap

Tabla Maestra de Archivos (MFT) NTFS     

El sistema de archivos NTFS contiene un único archivo llamado Tabla Maestra de Archivos (o MFT). Los volúmenes NTFS tienen, al menos, una entrada almacenada en la MFT.

La información relacionada a los atributos como tamaño, tiempo, fecha, además de permisos,  son guardados o bien, dentro de entradas MFT o en memoria asignada fuera del MFT, que es descrita por entradas MFT. Cuando el número de archivos sobre el volumen NTFS se incrementa, el tamaño del MFT aumenta también. También, cuando un archivo es borrado desde un volumen NTFS, los valores en el MFT son marcados como libres y este espacio puede ser reutilizado de nuevo. Inciso breve para los amigos forenses y aspirantes a forenses (Este tabla es MUY IMPORTANTE para nosotros, permite entre otras muchas cosas, extraer timelines muy completos de la vida de ese equipo). Por favor repasad algún post anterior del que ha escrito esto aquí. Continuemos…

Las utilidades que desfragmentan volúmenes NTFS sobre sistemas Windows no pueden mover entradas MFT, y como la desfragmentación innecesaria del MFT descompone el desempeño del sistema de archivos, NTFS reserva espacio para que el MFT mantenga su desempeño conforme se expanda, manteniendo así de manera eficaz su desenpeño.

hd-ntfs

Por último y no por ello menos importante aquí se aprecia la copia de los 16 primeros records de la MFT, también llamada MFT Mirror,  en caso de análisis forense no debemos olvidarnos nunca de esto, en un fallo que todos hemos cometido y que yo os recuerdo para que no os pase a vosotros.

 

Ventajas y desventajas NTFS

Ventajas:

  • NTFS es la mejor opción para volúmenes de unos 400 MB o más. El motivo es que el rendimiento no se degrada en NTFS, como ocurre en FAT, con tamaños de volumen mayores.
  • La posibilidad de recuperación está diseñada en NTFS de manera que un usuario nunca tenga que ejecutar ningún tipo de utilidad de reparación de disco en una partición NTFS.
  • Compatibilidad mejorada para discos duros más grandes.
  • Mejor seguridad porque puede utilizar permisos y cifrado para restringir el acceso a archivos específicos para usuarios aprobados.

Desventajas:

  • No se recomienda utilizar NTFS en un volumen de menos de unos 400 MB, debido a la sobrecarga de espacio que implica.
  • No es posible formatear un disco con el sistema de archivos NTFS; Windows NT formatea todos los discos con el sistema de archivos FAT porque la sobrecarga de espacio que implica NTFS no cabe en un disco.

 

De momento con esto ya vale por hoy, en próximas entregas hablaremos sobre permisos NTFS, las reglas ACL, privilegios y permisos, para ir abriendo boca jugaremos un poco con una opción muy poco conocida como son los ADS (o Alternate Data Stream). Iremos poco a poco adentrándonos en este sistema de archivos con el que, os lo aseguro, os va a tocar pegaros muuuuuchas veces, ya que para bien o para mal, a nivel escritorio es el más utilizado y en servers también tiene una buena cuota.

 

¡Hasta la próxima!