jueves, 27 de marzo de 2014

FASES DE UN PENTESTING 
  
 #Fase 3 M41NT41NN1NG 4CC3SS: Dejando una puerta abierta para la proxima visita! 

Una vez que el atacante obtiene acceso a un sistema, va a querer obtener información en archivos alojados en el equipo victima, información de la red (sniffeando tráfico, mapeando otros equipos) así como también escalar privilegios. Como todo esto lleva tiempo, lo mas lógico es que el atacante deje un backdoor (puerta trasera) en el equipo victima con el fin de lograr un acceso mas sencillo cada vez que quiera conectarse nuevamente. 
El Pentester debe realizar estas actividades con el fin de demostrar hasta donde se puede llegar una vez vulnerado el sistema, generando el reporte correspondiente. Obviamente, se podrá avanzar hasta donde lo permita el acuerdo firmado con la Organización (hay cuestiones éticas que discutiremos en algún momento). 
Otra cuestión a tener en cuenta en esta fase es la de borrado de huellas, dado que cada vez que nos conectamos a un equipo queda un registro de esa "visita" y de las cosas que modificamos, con lo cual se vuelve de suma importancia eliminar todo evidencia de nuestro paso por la pc victima. 
Cuando comencemos con las técnicas y herramientas para cada fase veremos como montar un backdoor en un equipo, así como también que debemos tener en cuenta a la hora de borrar nuestras huellas.                                                                                                                                                           
En la próxima entrada comenzaré con una herramienta para la fase de Information Gathering, MALTEGO! 
Saludos y...        
HAPPY HACKING!!!!!!!!!!!!!!

miércoles, 19 de marzo de 2014

FASES DE UN PENTESTING

 

 #Fase 2 3XPL01T1NG: Explotando las vulnerabilidades!  

"Nunca se debe atacar por cólera y con prisas. Es aconsejable tomarse tiempo en la planificación y coordinación del plan".  
                                                               Sun Tzu, El arte de la guerra, Capítulo III 


La siguiente fase es la que nos va a helar la sangre, la que nos hará latir a mil el corazón mientras miramos el monitor a la espera de los resultados. En esta fase nos dedicaremos a explotar las vulnerabilidades que encontramos en la etapa de INFORMATION GATHERING. Por eso es que hacía tanto hincapié en la importancia de la primera fase, ya que gracias a ella conoceremos la mayoría de los vectores de ataque que tiene el sistema a auditar. 

Entre los vectores de ataque que podemos identificar tenemos: 

SOFTWARE (APLICACIONES) 
SERVIDORES 
SSOO 
HUMANOS (Si si, el eslabón mas débil!) 
REDES WIFI 

SOFTWARE, SERVIDORES Y SISTEMAS OPERATIVOS: Como vimos en la entrada anterior, en la sub-fase de SCANNING, al escanear equipos de la organización obtendremos información sobre los servicios que están corriendo, así como también de los sistemas operativos utilizados. Estos servicios pueden ser aplicaciones conocidas (Servidores Web, bases de datos, Servidores FTP, Correo, etc.) o aplicaciones web propias de la organización. Estos servicios que se encuentran corriendo pueden tener bugs que nos permitan comprometerlos mediante el uso de exploits. Los exploits son programas que aprovechan cierta vulnerabilidad de un servicio/programa para conseguir un comportamiento no deseado del mismo. Hay diferentes tipos de exploits: Exploits del tipo Remoto, Local y ClientSide. 

El sitio web de la organización puede contener algunos fallos de seguridad que también pueden ser explotados a través de técnicas como SQLInjection o Cross Site Scripting. Estos fallos pueden ser detectados mediante herramientas que iremos viendo mas adelante. 

Es importante mantenerse actualizado para conocer los ultimos fallos de seguridad, dado que en muchos casos las organizaciones tardan en actualizar el software o en parchearlo para evitar ser atacados. Un sitio web muy interesante es el National Vulnerability Database http://nvd.nist.gov/ . Allí podemos encontrar una cantidad impresionante de vulnerabilidades, las cuales podemos buscar por nombre de fabricante, software, fecha, etc. 

HUMANOS: A través de la información recopilada sobre los usuarios de la organización (nombres, cuentas de email, perfiles en redes sociales, gustos. Ya veremos técnicas y herramientas para realizar esto) podemos hacer uso de la ingeniería social para, por ejemplo, llamar a un empleado y engañarlo para obtener cierta información que puede ser útil al momento de intentar atacar el sistema. Esto genera un ciclo dado que existe retroalimentación. Pensemos que:  
Obtenemos información de un usuario (haciendo uso de ingeniería social o escarbando en la red)  
Con los datos obtenidos podemos seguir buscando información en la red o hacer uso nuevamente de ingeniería social. 
Por ej: Obtenemos datos sobre la dirección de correo electrónico de un usuario perteneciente a la organización. Luego enviamos un mail a ese usuario, spoofeando la dirección del remitente haciéndonos pasar por un empleado del área de sistemas el cual le solicita que por un cambio en la gestión de seguridad de las claves de correo electrónico debe clickear en un enlace que lo llevará a un sitio de la empresa donde deberá ingresar su clave actual y la clave nueva. Obviamente ese enlace lo llevará a una página alojada en un servidor nuestro el cual guardará los datos (mas adelante veremos como realizar estas acciones). Con las credenciales de ese usuario, podemos ingresar a su correo y obtener mas información para continuar con nuestro ataque. Por eso los usuarios de las organizaciones deben ser capacitados sobre ciertos temas de seguridad, ya que son el eslabón mas débil en la cadena de la seguridad informática.   

REDES WIFI: Muchas veces, por como esta realizada la arquitectura de red, las redes wifi de las organizaciones permiten que  los usuarios conectados a ella puedan visualizar los equipos pertenecientes a la organización, lo cual permitiría a un atacante con acceso a ella capturar información sensible o atacar los mencionados equipos. Mas adelante veremos las técnicas para obtención de claves de redes wifi. 

Bueno, este es un breve resumen de lo que podemos hacer al encontrar vulnerabilidades en los sistemas de una organización a auditar. Todo esto será mejor comprendido con ejemplos prácticos que iremos viendo mas adelante. 
Lo importante es organizar bien toda la información y no comenzar a atacar todo lo que se pueda, hay que tomarse el tiempo necesario para acomodar los datos que tenemos y planificar bien el ataque. 

Nos vemos en la próxima entrada. 

HAPPY HACKING!