lunes, 18 de julio de 2011

Phishing en Bolivia

Desde hace mucho tiempo recibo cantidad de emails (spam) en mi bandeja de entrada  que dicen por favor actualice su información de su cuenta bancaria 

  •  Banco Ganadero, Banco BISA, Banco de Crédito de Bolivia, 
    Banco Santa Cruz, Banco Solidario y Banco Central de Bolivia.  
Son algunos de los banco a los cuales he recibido 
Aquí esta un ejemplo de lo que deberían hacer antes de hacer click en los enlaces de los bancos verificar si el enlace corresponde al dominio del banco. 
Algo simple que puede salvar tu cuenta :) 

martes, 3 de mayo de 2011

Datos en los Datos (Extrayendo Información)

En esta oportunidad vamos a hablar de una herramienta forense que permite extraer información valiosa “metadatos” de distintos tipos o formatos de archivo.

Seguramente no se ve la importancia necesaria a esto ¿Tenemos los datos y ahora qué?
Bueno esa información ¿Qué tan importante es? , establezcamos un escenario

Supongamos que Pepito es detenido por una investigación de Pedofilia, a pepito le incautan  10 fotografías de la victima1 susceptibles a consumar un delito, en el proceso de aprensión se le confisca una cámara fotográfica con las que se presume que se han tomado las fotos,  paralelamente detienen a Juanito en   poder de 10 fotografías de otra  víctima2.

Si mediante un análisis forense, y en virtud a los metadatos relacionados, determinamos que las fotografías de la victima2 fueron tomadas con la misma de la victima1 y la cámara confiscada, se puede relacionar a Pepito y a Juanito en la comisión del delito. De esta forma se apreciará que las fotos fueron tomadas por Pepito  y que Juanito obtuvo las imágenes del alguna forma.

Esta información puede ser utilizada como evidencia un proceso legal en el cual se puede determinar si Pepito es culpable o inocente.


Exiftool puede extraer y modificar información de una gran gama de tipos de archivos como se muestra en la imagen anterior. No solo permite extraer también modificar los datos que se encuentran en los archivos, en nuestro caso determinaremos ¿Cuándo? , ¿con qué y tipo de cámara captura esta fotografía? e información adicional como exififd

Exif es un invento de JEIDA (Japan Electronic Industry Development Association) en un intento de normalizar el empleo de etiquetas a la hora de intercambiar ficheros de imágenes, y con el paso de los años se ha convertido prácticamente en un estándar de facto. 

Tan sólo basta con saber que Exif permite emplear etiquetas (marcadores) para almacenar datos críticos de una imagen, y que en virtud a Exif, una imagen digital comprimida se puede representar siempre acorde a una estructura de segmentos parecida a la siguiente:


Ahora que ya entramos en calor utilicemos a exiftool, la siguiente imagen fue tomada hace un tiempo


Los parámetros que se utilizaron para la extracción de datos son los siguientes
-a Permite extraer etiquetas repetidas
-u Extrae etiquetas desconocidas
-g1 Organiza la salida de información por grupos de etiquetas el 1 especifica la locación
exiftool.exe –a –u –g1 Pastelillo.jpg

Una imagen vale más que mil palabras , Gracias Morocha por el Muffin




lunes, 2 de mayo de 2011

Construyendo Paquetes TCP Raw

En esta ocasión tengo el agrado de presentar a nuestro nuevo amigo el señor Hping (ni tan nuevo).
Hping es una herramienta muy versátil, que permite la manipulación de paquetes TCP/IP desde línea de comandos. Es factible modificar la información contenida en las cabeceras de los paquetes ya sean TCP, UDP e ICMP, en función de los parámetros con que ejecutemos Hping


En la imagen anterior se puede observar que es una herramienta muy completa, el protocolo que utiliza en su forma “default mode” es TCP.
Cuando hacemos uso de la herramienta sin agregar parámetros realiza un Ping “común” pero con la particularidad de mostrar un poco más información en este caso envía un paquete al puerto 0 con una ventana de 64 bytes


  
La tercer Columna TTL (Time to live) indica la cantidad de saltos que tiene que transitar para llegar al host destino en el ejemplo claramente se observa que no hay un router de por medio, sport=0  (puerto destino) Flags=RA (Reset/ACK) Seq= i++ (Numero de Secuencia) Win=0 Capacidad de la ventana para recibir datos

Hping =Flood Syn + Ip Spoofing

Podemos realizar un ataque con Hping de la siguiente manera

Hping2 192.168.100.10 –rand-source –destport 80 –-syn –c 1000




192.168.100.10 = Equipo remoto
--rand-source = Modifica la Cabecera TCP asignando una IP de Origen Distinta en cada envío de Paquetes
--destport = Puerto Destino, en nuestro ejemplo se utiliza el puerto 80 del protocolo http
--syn o –S = Manipulamos la cabecera TCP levantando un bit en este caso el de sincronización SYN
-c =  Cantidad de Paquete que se va a enviar


Por otro lado en la maquina que se llevo a cabo el ataque SYN Flood se puede observar el comportamiento de los paquetes y la manipulación que se realizo.



De la misma forma el estado las conexiones entrantes haciendo uso de la herramienta nativa del S.O netstat

Hping no solo sirve para estas cosas, tiene muchas mas utilidades solo se expuso un pequeño e insignificante ejemplo de la Herramienta

Saludos


martes, 26 de abril de 2011

Fase de un Ataque (Según CEH)

No existe una regla clara de cómo se debe llevar a cabo un Ataque informático, el presente artículo  utiliza como apoyo los siguientes libros Digitales: “Official Certified Ethical Hacker Review guide” y “The CEH Prep Guide” y “Penetration Tester’s Open Source Tool Kitslos 2 primeros libros son guías  para obtener la certificación de CEH “Certified Ethical Hacker”  que propone seguir etapas para efectuar un ethical hacking.
Reconocimiento 

Esta etapa  que a su vez se divide en 2 formas Reconocimiento Pasivo que es llevado sin que la organización lo note, puede recopilar información por internet usando google, también se utiliza la Ingeniería Social y el Sniffing. La esencia del reconocimiento activo es de generar vital información acerca del rango de direcciones IP que utiliza, Dominios,DNS toda la información que se pueda recabar haciendo uso de Internet y las Herramientas Necesarias para obtener la información 

Escaneo  

La segunda Fase del Ethical Hacking consiste en determinar que puertos y que servicios y que Sistema Operativo está corriendo en el equipo en el cual se realizara la prueba de intrusión, existente distintos tipos de escaneos y técnicas para perpetrar un scan de acuerdo al escenario en el que se encuentre el Pentester, en un tópico anterior se hablo de distintas técnicas de scan utilizando la herramienta Nmap (Mapeador de redes).

Acceso
En esta etapa se utiliza toda la información recolectada y generada para comprometer un equipo aprovechando vulnerabilidades detectadas o encontradas, pueden ser ataques a aplicaciones, al S.O, Configuraciones por defecto.
Existentes numerosas herramientas y Framework para tener éxito en esta etapa aunque también es la más complicada porque se debe saltar Firewall’s evadir IDS y Muchas Aplicaciones que alertan por algún tipo de intrusión



Manteniendo Acceso

Una vez realizada la intrusión al equipo debemos dejar una puerta abierta para ingresar, troyanizar el Sistema Operativo, incluso con las propias herramientas nativas del equipo se puede llevar a cabo esta parte, crear Shell reversas, Tunneling.

Borrado de Huellas

Esta etapa final es en la cual el pentester debe eliminar todo rastro generado por los accesos, los scaneos y todo Log que genere las aplicaciones que corren en un determinado servicio.







martes, 19 de abril de 2011

Una de Firewall ;)

Un Firewall (Corta Fuegos) en un sistema con interfaces múltiples que está sujeto a diferentes redes, que cuenta con un mecanismo de filtrado para permitir o denegar el trafico entre las redes.

Los filtros de paquetes

El filtrado de paquetes analiza los paquetes en la  Capa de Red (3) y la Capa de Transporte (4) del modelo ISO/OSI. Eso significa que un filtro de paquetes utiliza principalmente el siguiente criterio para acometer su decisión de filtrado:
  • Los protocolos (ICMP, OSPF, AH, ESP, etc.),
  • La dirección IP de origen,
  • La dirección IP de destino,
  • El puerto de origen,
  • El puerto de destino,
  • Los indicadores TCP (SYN, ACK, RST, FIN, etc.).
En la figura anterior se observa el escenario, el intruso se encuentra afuera de la red corporativa, supongamos que debemos determinar el equipo remoto en este caso Web Server   al momento de realizar un Ping al WS  seguramente nos devolverá un mensaje ICMP de tipo 3 esto quiere decir que el host remoto “podría” estar Down y hasta ahí llego la historia no?. No!
 
Utilicemos a nuestro Nmap haber que nos dice , hacemos un Escaneo SYN  y utilizando nuestro wireshark se ve la secuencia de comunicación en el protocolo TCP/IP
 
Ahora sabemos que el host esta up , pero que si efectivamente están filtrados los paquetes los puertos ;( pero nuestra misión es determinar que S.O esta en el equipo remoto, y si esta filtrando el Fw como vamos a saber que puertos y que servicios están corriendo en el equipo para determinar el S.O.

Seguíamos con el escaneo con nuestro amigo Nmap en este caso utilizamos un parámetro de la sección de Burlar FW y demás!, el parámetro –g que indica el puerto por el cual saldríamos al equipo remoto.

De igual manera podemos utilizar los puertos más comunes y conocidos en los sistemas operativos ;) vamos a probar con los mas 139,445,443,80,25,21,53

 
En este caso esta se asume  que es Windows el que esta corriendo, por el servicio  que dice “Microsoft-ds” y si esta bloqueado , atrás de la shell se puede observar que no recibimos respuesta del equipo remoto , solo de nuestro equipo que esta enviando paquetes TCP con el Flag SYN Levantado 

 Hay que tener mucho cuidado ya que muchas veces puede que las herramientas arrojen  Falsos Positivos !
 

lunes, 18 de abril de 2011

TÉCNICAS DE ESCANEO DE PUERTOS III

UDP Scan

 Esta técnica esta orientada al protocolo UDP y sus puertos aunque parezca que no es importante algunos de estos servicios (TFTP,SNMP,NFS) están funcionando o utilizando este protocolo para el transporte de datos.

Consiste en enviar un paquete UDP vacío (0 byte de datos) al puerto que deseamos escanear, si el puerto responde con un mensaje ICMP 3 (destino inalcanzable) quiere decir que el puerto esta cerrado, En caso de no responder puede asumirse que el puerto esta abierto o silencioso
LHOST                                                            RHOST
Puerto Abierto

-------------------------------- [UDP] -------------------> [O]

Puerto Cerrado

--------------------------------[UDP]------------------->[x]

<----------------------------[ICMP = 3]----------------[x]

Puerto Silencioso

-------------------------------- [ UDP] -------------------> [~]

Utilizando nuestro Nmap podemos realizar el escaneo UDP Scan  mediante el siguiente comando:


Nmap –vv –P0 –sU ip_host_remoto


  ACK Scan

La mayoría de las técnicas de escaneo nos permiten identificar con exactitud los puertos abiertos o cerrados, pero generalmente los puertos silenciosos no se pueden identificar con claridad. El escaneo ACK está destinado a identificar de forma precisa cuándo un puerto se encuentra en estado silencioso. Esta técnica es usada también para poder escanear hosts que estén detrás de un firewall que bloquee los intentos de conexión (paquetes SYN).

Su funcionamiento se basa en el envío de paquetes ACK con números de secuencia y confirmación aleatorios. Cuando reciba el paquete, si el puerto se encuentra abierto, responderá con un paquete RST, pues no identificará la conexión como suya; si el puerto está cerrado responderá con un paquete RST,pero si no se obtiene respuesta (obviamente primero debemos asegurarnos que el host está en línea) podemos identificar claramente el puerto como filtrado (puerto silencioso).

LHOST                                                            RHOST
Puerto Abierto

-------------------------------- [ACK] -------------------> [O]

<---------------------------- [RST] ---------------- [O]

Puerto Cerrado

-------------------------------- [ACK] -------------------> [x]

<---------------------------- [RST] ---------------- [x]

Puerto Silencioso

-------------------------------- [SYN] -------------------> [?]

Utilizando nuestro Nmap podemos realizar el escaneo ACK Scan  mediante el siguiente comando:


Nmap –vv –PT  ip_host_remoto

En este caso no se recibe respuesta quiere decir que todos están filtrados


  
NULL Scan

Este escaneo tiene muchos puntos en común con el escaneo FIN. Su funcionamiento base es el mismo: enviamos un paquete malformado (en este caso se trata de un paquete TCP con todos los flags desactivados) y esperamos la respuesta. En caso de que el puerto destino esté cerrado, nos responderá con un paquete RST; y en caso de no recibir nada (nuestro paquete es ignorado), se trata de un puerto abierto o silencioso.

La ventaja frente al escaneo FIN radica en que ciertos firewalls vigilan los paquetes de finalización de conexión además de los de establecimiento, de forma que el escaneo nulo podrá realizarse allí dónde el FIN no sería posible. El resto de ventajas y desventajas son las mismas que en el escaneo FIN.

LHOST                                                            RHOST
Puerto Abierto

-------------------------------- [        ] -------------------> [O]

<---------------------------- [RST] ---------------- [O]

Puerto Cerrado

-------------------------------- [            ] -------------------> [x]

<---------------------------- [RST] ---------------- [x]

Puerto Silencioso

-------------------------------- [        ] -------------------> [?]

Utilizando nuestro Nmap podemos realizar el escaneo NULL Scan  mediante el siguiente comando:

Nmap –vv –P0 -sN  ip_host_remoto


 XMAS Scan

El escaneo Xmas se basa también en el principio de la respuesta RST por parte de un puerto cerrado al recibir un paquete incorrecto (como el escaneo FIN). En el caso del escaneo Xmas, se trata de un paquete con los flags FIN, URG y PSH activados (aunque ciertas implementaciones activan FIN, URG, PSH, ACK y SYN e incluso algunas activan todos los flags). Podría decirse que es lo contrario del escaneo Null, pero logrando el mismo efecto.

Al igual que el escaneo Null, se usa bajo ciertas circunstancias en las que el escaneo FIN no es posible; y también comparte con éstos sus particularidades.

LHOST                                                            RHOST
Puerto Abierto

-------------------------------- [XMAS ] -------------------> [O]

Puerto Cerrado

-------------------------------- [ XMAS ] -------------------> [x]

<---------------------------- [RST] ---------------- [x]

Puerto Silencioso

-------------------------------- [XMAS] -------------------> [?]

Utilizando nuestro Nmap podemos realizar el escaneo Xmas Scan  mediante el siguiente comando:
Nmap –vv –P0 -sX  ip_host_remoto


viernes, 15 de abril de 2011

TÉCNICAS DE ESCANEO DE PUERTOS II

TCP SYN

Esta técnica es también conocida como Half-open, (Medio Abierto) es muy parecida a la TCP Connect pero la gran diferencia es que no llega a establecer una conexión con el host remoto

Esta Técnica envía un paquete SYN al equipo remoto, si el equipo remoto responde con un SYN/ACK quiere decir que el puerto esta abierto y se termina devolviendo un paquete RST (Se envía un RST para que se lleve a cabo la conexión completamente) y no como se espera en el clásico saludo de los tres pasos; si llega un RST quiere decir que el puerto se encuentra Cerrado. En el caso de no recibir ningún tipo de paquetes quiere decir que el puerto esta Silencioso.

Para llevar acabo este tipo de escaneo un S.O *nix se debe tener los privilegios de root  debido a que este tipo de escaneo utiliza los Socket TCP raw.

LHOST                                                            RHOST
Puerto Abierto

-------------------------------- [SYN] -------------------> [O]

<---------------------------- [SYN/ACK] ---------------- [O]

-------------------------------- [RST] -------------------> [O]


Puerto Cerrado

--------------------------------[SYN]------------------->[x]

<----------------------------[RST]----------------[x]

Puerto Silencioso

-------------------------------- [SYN] -------------------> [?]

Utilizando nuestro Nmap podemos realizar el escaneo TCP Connect  mediante el siguiente comando:


Nmap –vv –P0 –sS ip_host_remoto





TCP FIN

Esta técnica es también conocida como Stealth Scan  (Escaneo Silencioso) es uno de los más discretos dentro de las técnicas mas convencionales se apoya en los estándares internacionales de TCP/IP.

Al momento de realizar el escaneo, el equipo local envía un paquete FIN al puerto del host destino que queremos escanear; Los estándares internacionales dicen que al momento de enviar un paquete FIN el equipo remoto responde con un RST si el puerto esta cerrado en el caso de no recibir respuesta se puede decir que el puerto esta Abierto o Filtrado.

La principal desventaja de este Tipo de escaneo es que nos deja una gran lista de falsos positivos.

La gran ventaja que tiene este tipo de escaneo es que la gran mayoría Firewall no detecta este tipo de escaneo, pero si un buen IDS bien configurado lo detectaría.
LHOST                                                            RHOST
Puerto Abierto

-------------------------------- [FIN] -------------------> [O]

Puerto Cerrado

--------------------------------[FIN]------------------->[x]

<----------------------------[RST]----------------[x]

Puerto Silencioso

-------------------------------- [SYN] -------------------> [?]

Utilizando nuestro Nmap podemos realizar el escaneo TCP Connect  mediante el siguiente comando:


Nmap –vv –P0 –sF ip_host_remoto


En este caso esta técnica nos muestra falsos positivos al decir que no se encuentran puertos abiertos y ¿por que? , si con la anterior técnica y al mismo HOST nos muestra una cantidad de puertos abiertos, es por que se realizo sobre un Windows XP y esta empresa (Microsoft) esta cansada de pasarse los estándares internacionales por donde más le parezca.

jueves, 14 de abril de 2011

TÉCNICAS DE ESCANEO DE PUERTOS I

“Cierren los puertos que se entran los barcos….”

TCP Connect

Esta técnica es la mas común, consiste en utilizar la llamada connect () a un nivel raw de TCP  para intentar establecer una conexión con cada uno de los puertos del host a escanear.

Si la Conexión se establece quiere decir que el puerto esta abierto, en el caso de recibir un RST quiere decir que el puerto se encuentra cerrado, si no se recibe ninguna respuesta se deduce que el puerto esta silencioso.

El escaneo de puertos utilizando esta técnica es rápido ya que se puede utilizar varios socket’s de forma paralela para realizar un barrido de puertos. La principal desventaja de este tipo de escaneo es que es ilógico que se realicen muchas conexiones en pocos segundos, además al realizar la conexión completamente  quedaría registrado en el equipo remoto.


LHOST                                                            RHOST
Puerto Abierto

-------------------------------- [SYN] -------------------> [O]

<---------------------------- [SYN/ACK] ---------------- [O]

Puerto Cerrado

--------------------------------[SYN]------------------->[x]

<----------------------------[SYN/ACK]----------------[x]

Puerto Silencioso

-------------------------------- [SYN] -------------------> [?]


Utilizando nuestro Nmap podemos realizar el escaneo TCP Connect  mediante el siguiente comando:
Nmap –vv –P0 –sT ip_host_remoto


Como se observa en la figura anterior, se ve como el LHOST .86 manda la bandera SYN  y el RHOST .11 devuelve un [SYN/ACK] y el LHOST .86 Responde con un [ACK] este asegura que el puerto esta Open |:¬)
Related Posts Plugin for WordPress, Blogger...