Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Hackers Libros
Hackers Libros
Net view es una utilería de línea de comandos extremadamente simple que presentará
listas de dominios disponibles en la red y luego mostrará todas las máquinas en el
dominio. He aquí cómo enumerar dominios en la red usando net view:
Como se muestra, nbtstat extrae el nombre del sistema (CAESARS), el dominio o grupo
de trabajo en que se encuentra (VEGAS2) y la dirección de control de acceso a medios
(MAC, Media Access Control). Estas entidades pueden identificarse por sus sufijos de
NetBIOS (el número hexadecimal de dos dígitos que se encuentra a la derecha del
nombre)
La utilería nbtstat tiene dos desventajas: está restringida a operar en un solo host a la
vez, y tiene una salida más bien inescrutable. Ambos problemas son atendidos por la
herramienta gratuita nbtscan de Alla Bezroutchko. Nbtscan usará “nbtstat” en toda
una red con asombrosa rapidez y formará la salida de manera adecuada:
Observe en esta salida que sólo el servidor PRNTSRV indica un usuario con sesión
iniciada. Es el único equipo de Windows 2000 que escucha en la salida, resaltando
nuestra exposición anterior de que los nombres de cuenta ya no se mostrarán en las
tablas de nombres de NetBIOS como opción predeterminada en una versión más
reciente de Windows. En cualquier caso, nbtscan es una estupenda manera de
encontrar los hosts que ejecutan Windows en una red.
Adivinación de contraseñas
Espionaje sobre autentificación
Subversión de la autentificación mediante ataques de servidor falso o de
intermediario
(MITM, Man In The Middle)
Ataque a vulnerabilidades en servicios de Windows
1. ADIVINACIÓN DE CONTRASEÑAS
Aunque suena muy poco glamoroso, la adivinación de contraseñas es probablemente
uno de los métodos más efectivos para ganar acceso a redes de Windows.
La adivinación de contraseñas puede realizarse contra todos los servicios que soportan
autentificación integrada de Windows, incluidos (pero no limitados a) servicios como
Internet Information Services (IIS), llamada a procedimiento remoto (RPC, Remote
Procedure Call) y servidores FTP. Nos concentraremos en adivinación de contraseñas
sobre el protocolo bloque de mensajes de servidor (SMB, Server Message Block), pero
sólo puede realizarse contra cualquier servicio para el que tenemos un cliente que
permite proporcionar un nombre de usuario y una contraseña. Por encima de eso,
cuando se gana acceso con algunas credenciales mediante algún protocolo, por lo
general vale la pena tratar las mismas credenciales mediante otros servicios, porque la
gente tiende a reciclar sus contraseñas. Esto se debe principalmente a requisitos
tediosos para la solidez de la contraseña y a la dificultad de tener que recordar
contraseñas complejas. Por ejemplo, si un extraño se las arregla para irrumpir en un
servicio FTP con algunas credenciales de usuario, podría usar las mismas credenciales
para irrumpir en otro servicio, como autentificación de Windows.
Ataques de diccionario
Es muy fácil implementar un operador que use la fuerza bruta para iniciar
1. Inyecciones de Errores
En su forma más simple, la inyección de errores puede describirse como la
introducción de datos mal formados en una aplicación, de manera automatizada. El
principal beneficio de la inyección de errores es que una vez que se ha construido el
inyector, puede dejarlo sólo hasta que el destino entre en el depurador. Esto le deja
tiempo libre para investigar otras áreas de la aplicación o escribir inyectores
adicionales. Se dispone de un número decente de inyectores, dependiendo de lo que
está tomando como destino. Nuestra experiencia ha demostrado que Peach Fuzzer
Framework de Michael Eddington se encarga de todo cuando se trata de crear
rápidamente inyectores efectivos.
Inyección de errores con Pech
Peach es un marco conceptual de inyección de errores basado en Python, no un
inyector. Proporciona un conjunto de clases y herramientas suplementarias que
ayudan al desarrollo rápido de inyectores. En el centro del inyector Peach se
encuentran los generadores, grupos y transformadores. Los generadores son
responsables de crear malformaciones de datos, los grupos controlan la iteración y
las relaciones entre las malformaciones y los transformadores convierten los datos
generados a otro formato, como Base64.
2. Ingeniería inversa
En ausencia de código fuente, siempre podemos desensamblar binarios y buscar
problemas de seguridad dentro del ensamblado. ¿Pero dónde empezar? Una opción
consiste en descargar parches de errores de seguridad anteriores y compararlos contra
las versiones sin parches. Las partes de los binarios que no coinciden seguramente
apuntarán a un problema de seguridad.
3. Desempaquetado de una actualización
Como se estableció, una manera de descubrir vulnerabilidades en Windows consiste
en desempaquetar el paquete de actualización de Microsoft y comparar el nuevo DLL
con el anterior. Una vez que se haya identificado el error en que estamos interesados,
en este caso MS07-17, primero descargamos la corrección y la desempaquetamos: