domingo, 27 de abril de 2014

Saludos a todos,

En nuestra entrada anterior vimos unos parámetros básicos del comando DIG, y serán los que usaremos para mostrar como funciona la transferencia de zona.

Para lograrlo, he configurado un servidor DNS de laboratorio y realizar pruebas en un entorno controlado, en las versiones más recientes de cualquier tipo de servidor DNS (bind para GNU/Linux, Server para la familia Windows) la transferencia de zona viene deshabilitada por defecto, pero en realidad sigue siendo común encontrar sitios donde sin ser necesario la han activado, sea por error, por curiosidad, o en algunos casos -tristemente- algunos administradores de red comienzan a habilitar funciones al azar "solo por probar" cuando algo no funciona correctamente.

Para este ejercicio me he valido de otro equipo, diferente donde está montado el servidor, y que está conectado a otra red, lo que significa que tiene una IP diferente a la asignada al servidor. En este ejercicio verán que uso la dirección IP del servidor, en lugar de una dirección de dominio, esto se da porque no tengo un servicio contratado con mi ISP donde repliquen los DNS asociados a mi domino, mas sin embargo, el procedimiento es el mismo.

dirección IP atacante

dirección IP del servidor

Y bien, solo bastará con usar la secuencia de comando de la siguiente forma:

dig dominio @nombre del registro NS axfr

y el resultado es el volcado de la configuración de nuestro servidor, del cual también se podría deducir su función por su nombre:


Espero les sea de utilidad, y prometo cambiar el servidor DNS de windows, por uno en GNU/Linux.


domingo, 23 de marzo de 2014

A todos buena tarde, por fin pude volver, siento haber retrasado por tanto tiempo esta entrada, pero por múltiples cosas no había podido terminarla, espero sepan comprender, y continuando con nuestro apartado de recolección de información, nuestro siguiente paso será aprender algo acerca de la transferencia de zona.

Una zona es un conjunto de nombres de un dominio, y dentro de un servidor DNS es posible crear diferentes subdominios que puedan contener más zonas, o delegar a servidores DNS secundarios, pero para que no hayan problemas de resolución de nombres, o para brindar disponibilidad de servicio, la configuración de los servidores puede ser copiada entre sí, a esta copia se le denomina transferencia de zona. 

esquema de un DNS Primario y secundario.
Como vemos, hasta ahí todo parece normal, pero, las transferencias de zona están a la mano de todas las personas, y un error de configuración, puede comprometer los nombres de dominio alojados en el servidor, permitiendo ver el direccionamiento interno, y los host que pueden estar a la mano dentro de una red LAN.

Para realizar una transferencia de zona, necesitamos 4 cosas: 


  1. Consola de comandos: ¡Imprescindible!
  2. Dominio a auditar.
  3. Comando DIG: (Domain Information Groper) Este comando permite realizar consultas a un servidor DNS y sus tipos de registros, con este comando se podrán realizar consultas de resolución de nombres y direcciones IP.
  4. Name Server o registro NS: Esto es simplemente el nombre del servidor al cual se le harán las peticiones de resolución en un dominio específico, y se puede obtener a través de las consultas de resolución hechas al dominio que estaremos auditando. 
Aunque el uso del comando DIG es extenso y con múltiples funcionalidades, nos centraremos en identificar los diferentes tipos de registros y la resolución de direcciones IP. La sintaxis es sencilla, comenzarmos con "dig" seguido del dominio y finalmente una serie de parámetros que podrán ser consultados al escribir en la consola el comando dig -h
Comenzamos solciitando información básica del dominio con el comando dig eltiempo.com



Si quisiéramos consultar únicamente los registros NS del dominio usamos el comando dig eltiempo.com NS, como vemos en la imágen, también se encarga de resolver las direcciones IP de los servidores en cuestión.



Acá un ejemplo de consulta de todos los registros, con el parámetro ANY




Viendo esto nos bastará por ahora para conocer la funcionalidad del comando DIG y será lo que necesitaremos para nuestra próxima entrada, en donde montaremos un servidor DNS casero y haremos la transferencia de zona desde internet.

Espero les sea de utilidad esta entrada, ¡Saludos cordiales!


sábado, 7 de septiembre de 2013

Estimados usuarios, como lo comenté al inicio de este blog, no pretendo ser un gurú informático ni nada parecido, es por eso que lo que acá se presenta es a manera de guía.

En el mundo del software libre y de GNU/linux existe la particularidad de tener a la mano variedad de herramientas, que aunque parezca que cumplen la misma función puede que alguna se adapte a nuestras necesidades o tenga un mejor entorno gráfico entre otras cosas. 

Toda esta introducción la hago con el fin de adentrarlos en otra herramienta para realizar levantamiento de información y proveer alternativas para realizar una prueba de penetración, The Harvester, como ya es costumbre en el blog, acá dejo algunas generalidades y la forma de instalar y/o configurar el aplicativo en mención.

Ya sabremos con que fin lo haremos, así que comenzaremos, como es un script en python ejecutaremos el siguiente script: 

python theHarvester.py -d edatel.com.co -b google
Explicaré brevemente las partes del comando:

python (Invocamos el compilador intérprete -gracias a la corrección de CP en los comentarios-)
theHarvester.py (Nombre  del script)
-d edatel.com.co (Nuestro conejillo de indias de turno)
-b google (el motor de búsqueda)

Y obtendremos algo como esto que es la lista de correos del dominio extraido, ya habíamos hablado en la anterior entrada las utilidades de eso: 

 

Dentro de las posibilidades de Harvester está la resolución de nombres de dominio (DNS) que nos brindará los hosts con sus respectivas direcciones IP de los dominios configurados, del cual veremos mas adelante su utilidad.


Quiero confesar que siento un vacío al terminar esta entrada, siento que carece de contenido, pero todo ya ha sido explicado anteriormente, si tienen dudas no olviden comentar, ¡Hasta la próxima!

martes, 28 de mayo de 2013

No solo de computadores vive el hacker, como ya vimos el factor humano es un factor indispensable para poder realizar una auditoría de seguridad, ya que por lo general los ataques que incluyen la interacción con un usuario son los más efectivos.

Con la siguiente demostración, y la herramienta maltego (que previamente instalamos y configuramos aquí) recolectemos información de correos electrónicos, y a partir de éstos hallazgos buscaremos información personal sobre gustos, lugares frecuentados, perfiles en las redes sociales. Aunque esto pareciera no tener sentido, porque se está auditando una compañía y no una persona, los pondré en situación, muchos usuarios tienen acceso a internet, por ende a sus correos personales o corporativos, si en la fase de recolección de información encontramos por ejemplo, que el gerente general de la compañía es aficionado a un equipo de fútbol, será mucho más cómodo enviarle a su correo un enlace o archivo malicioso donde se prometa noticias o actualizaciones de su equipo favorito, pero que en realidad comprometa la seguridad del equipo, y por ende cumplir nuestro objetivo.

Primero vamos a generar una nueva gráfica:




Seleccionamos "Domain" y lo arrastramos a la zona libre de la izquierda, hecho esto, cambiaremos el valor de "Domain name" a nuestro conejillo de indias de turno "cun.edu.co"




Bien, ahora extraéremos algunos de los correos electrónicos que están asociados al dominio, seguiremos la indicación de la gráfica, primero click derecho sobre la entidad que contiene el dominio, "run transform", luego "Email addresses from Domain" y allí tendremos 3 opciones, las seleccionaremos todas: 








Y obtendremos como resultado algo parecido a esto: 




Bien, ¿Y ahora?, pues comenzaremos a investigar, tomaremos el primer resultado, le daremos click derecho, seleccionamos "Type Actions" y luego "Google me!", como se imaginarán, es para buscarla en google




Iremos a la primera búsqueda que nos arroja google




 y bueno, encontramos cosas bastante interesantes, por ejemplo que este sujeto es el administrador del dominio


Prosigamos investigando




Esta vez no usaremos ninguna acción, sino realizaremos la búsqueda manual en google




Y como verán tendremos un resultado de LinkedIn la popular red social para subir los currículos laborales




Bien, como lo notaron, el sujeto ya no trabaja allí, para reducir el número de falsos positivos, podemos confirmar si la dirección de correo existe o no, gracias a otra de las grandes funcionalidades de maltego, damos click derecho sobre la entidad a confirmar, "Run Transform", "Other transforms" y seleccionamos "Verify email address exists" 




Y obtendremos una confirmación de si la dirección existe o no





Espero hayan disfrutado de la entrada, y no limiten a lo aquí demostrado, sino que continúen explorando las diferentes opciones contenidas dentro de la herramienta. 

¡Hasta la próxima!





Estimados lectores,pensando en la manera de realizar los tutoriales de manera completa y buscando la forma de siempre hacer las entradas de manera corta, decidí crear páginas aparte dentro del blog, donde se encontrará la instalación y configuración de las herramientas que se usarán en las prácticas, y dentro de las entradas ubicaré el vínculo que los llevará a la página con la información referente al aplicativo, su instalación y configuración.

¡Saludos!

jueves, 23 de mayo de 2013

Nunca me cansaré, ni dejaré de expresar en cuanto foro, blog, lista de correo haya, que el paso mas importante para hacer una prueba de penetración (pentest) es el reconocimiento del objetivo, y es que no se puede ir por ahí, a ciegas, lanzando xploits de manera aleatoria, o realizando ataques de fuerza bruta, esto aunque puede funcionar,es muy poco profesional, a demás de alertar antivirus,  firewalls, IDS, IPS, llenar registros de eventos y "poner en guardia" a administradores de red que están siempre alerta.

Las técnicas de reconocimiento están divididas en dos tipos:
  • Reconocimiento pasivo: Consiste en revisar la información pública del objetivo, direcciones, teléfonos, correos electrónicos, licitaciones, empresas prestadoras de servicio, horarios de atención, etc. 
  • Reconocimiento activo: Esta técnica es mucho mas invasiva consiste en consultar registros DNS, realizar escaneos de red, identificación de banners, identificación de la estructura web y posibles vulnerabilidades, busca de comunidades SNMP, consultas Whois, y búsqueda de información por medio de motores de búsqueda.
Aunque pueden faltar muchas más formas de obtener información, por el momento trabajaremos con estas, el tema es bastante largo, así que trataré de agilizar lo que mas pueda para poder entrar de lleno a las prácticas.

¡Un saludo!

jueves, 2 de mayo de 2013

Muchos piensan que un ataque a un sistema solo consiste en ingresar a un par de computadores, robar datos privados, publicarlos por toda la red, luego dejar un mensajito "cool" en la página web del atacado para después hacer divulgación en las redes sociales. Esa ha sido la mala fama que se muchos han hecho al rededor de la seguridad informática, pues bien, nada mas alejado de la realidad está lo antes mencionado, los pasos mas comúnes aunque algunos se pueden ver como "opcionales" dependiendo del sistema a atacar:

  1. Reconocimiento: Esta fase es una de las más importantes, ya que con ella nos podemos hacer un imaginario de la estructura de la red a auditar, así como direcciones IP, direcciones físicas, correos electrónicos, números de teléfono, posibles nombres de usuario y datos que puedan ser interesantes o contengan información que nos permitan acercarnos a la vćtima.
  2. Escaneo: Ya tenemos muy bien identificado al objetivo, ahora necesitamos saber, si tienen algún puerto abierto, alguna versión de software vulnerable, una posible inyección SQL, algún servidor desactualizado o si por lo contrario, la vulnerabilidad está de cara al usuario.
  3. Ganar acceso: Esta es la parte donde se canta victoria, si todo va bien, se habrá completado con éxito estaremos dentro de nuestro sistema objetivo, Se realiza realizando alguna explotación de una vulnerabilidad encontrada, el uso de alguna contraseña por defecto, ataque por fueza bruta, o el método que sea necesario para lograr el objetivo.
  4. Mantener acceso: No solo basta con tener acceso por una vez al objetivo, ni tener memorizado el proceso realizado en el paso 3, ya que en cualquier momento pueden detectar la vulnerabilidad y cerrarla, así que se debe dejar a la mano alguna herramienta que permita de manera silenciosa acceder al objetivo sin ser detectado.
  5. Cubrimiento de huellas: A nadie le gusta ser atrapado en nada ilegal, por eso los atacantes maliciosos son bastante cuidadosos con esto (algunos) y se encargan de borrar toda pista que pueda dar un indicio de su paradero, incluso, se puede llegar a borrar evidencia de como se realizó el ataque.
 Bien, eso es todo por el momento, con esta entrada les estaré dando la antesala a las cosas que vendrán para el blog, espero les emocione tanto como a mí.  Un abrazo y hasta la próxima.

 
Copyright © 2011 Experiencias de un Newbie. Designed by Wpdesigner, blogger templates by Blog and Web