19 de agosto de 2010

Fraude en línea especializado: Man in the Browser Attack

Zeus, Silon, Torpig y Yaludle son solo algunos de los troyanos letales de los más salvajes que están enfocados en procesos de fraude en línea. Este tipo de troyano, espera a que sus clientes o empleados certifiquen los datos de sus cuentas (log-in) en el sitio de la aplicación de banca en línea del banco para el que fueron creados, e interceptan la comunicación entre el navegador y el usuario o entre el navegador y el sistema operativo, aprovechándose de debilidades del software o de la comunicación entre aplicaciones del sistema. De esta forma la información es enviada a repositorios específicos (desde cuentas de gmail hasta servidores IRC (internet relay chat) en donde los datos son almacenados a la espera de que el atacante los analice y extraiga la información de acceso para cometer el fraude. Este tipo de ataques también son conocidos como "Zero day attacks".

Normalmente la victima debe ser muy lista e inteligente para poder darse cuenta de algún síntoma de este tipo de ataque ya que inclusive a través de SSL todo trancurre con extremada normalidad en su equipo.

Este tipo de troyano se manifiesta o se adquiere de muchas maneras, pero básicamente las mas comunes son:

  • Objetos BHO (Browser Helper Objects) conocidos como complementos del navegador en el caso de Internet Explorer.
  • Extensiones de Firefox (el mismo caso pero diferente navegador)
  • Api-Hooking: Programas insertados en el equipo que interceptan la comunicación entre el navegador y sus librerías DLL.
  • Librerías Javascript: Usando gusanos AJAX ( AJAX worms) se puede ver un ejemplo como prueba del concepto en http://myappsecurity.blogspot.com/2007/01/ajax-sniffer-prrof-of-concept.html.


Menos de un 20% de las victimas logran detectar este tipo de estafa a tiempo, y ello se debe a la total normalidad aparente del sistema en el momento del fraude.

Este tipo de ataque fué detectado por primera vez en Julio del 2007, cuando fué utilizado para robar información al  United States Department of Transportation. Sin embargo a partir de mediados del 2009 ha sido detectado de forma creciente. La red de equipos infectados con Zeus, por ejemplo se estima en más de 3.5 millones de computadores solamente en USA. En Julio 14 de este año (2010) la empresa de seguridad Trusteer hizo público un reporte según el cual un gran número de tarjetas de crédito de 15 bancos no mencionados habían sido comprometidas. La más reciente variante de este troyano es conocida como Kneber.

En la actualidad este tipo de ataques tienen mucho éxito y en latino-américa se han detectado varios casos en México, Perú y Argentina esperando su pronta propagación hacia otros países de la zona.

13 de agosto de 2010

Los 10 riesgos más comunes de las aplicaciones web según OWASP - versión 2010

OWASP, Open Web Application Security Proyect, entre muchos otros proyectos enfocados a la educación de los desarrolladores en los métodos de defensa de las aplicaciones web, publica todos los años su lista de los 10 más peligrosos riesgos de seguridad para aplicaciones web (OWASP Top 10 Application 
Security Risks – 2010), la cual me he permitido traducir para ustedes a continuación:

Los riesgos expuestos por la OWASP para este año 2010 en orden de importancia son:

A1 - Inyección.
Fallas de inyección, tales como inyecciones SQL, de comandos de Sistema Operativo y de LDAP, ocurren cuando datos no verificados se insertan en comandos y consultas. El atacante puede utilizar el intérprete de estos para introducir comandos no permitidos o acceder datos no autorizados.

A2. - Cross Site Scripting, XSS.
Las fallas de XSS suceden cuando una aplicación toma datos no autorizados y los envía al navegador sin la propia validación o códigos de escape. El XSS permite a los atacantes ejecutar scripts en el navegador de la victima que pueden secuestrar su sesión, modificar sitios web o redirigir al usuario a sitios web dañinos.

A3. - Autentificación y Manejo de Sesión Rotos.
Las funciones relacionadas con la autentificación y el control de sesión muchas veces no son implementadas correctamente, permitiendo a los atacantes comprometer claves de acceso, llaves de control y tokens de sesión, permitiendo a los atacantes asumir las identidades de las victimas.

A4. - Referecias directas a objetos inseguras.
Una referencia directa insegura ocurre cuando el desarrollador expone una referencia a una implementación interna de un objeto, tal como un archivo, directorio o claves y campos de bases de datos. Sin control de acceso a los mismos u otra protección, un atacante puede manipular este tipo de referencia para tener acceso a datos de forma no autorizada.

A5. - Cross Site Request Forgery (CRSF).
Un Ataque de CRSF, fuerza al navegador "logueado" de la victima a mandar un "request HTTP", incluyendo el cookie de sesión de la victima y cualquier otra información de validación de la victima a una aplicación web vulnerable. Esto permite al atacante forzar al navegador de la victima para acometer daños o estafas que la aplicación piensa son iniciados por un usuario legítimo.

A6. - Fallas de Configuración de Seguridad.
Una buena seguridad requiere tener una configuración segura definida y entregada para la aplicación en si misma, entorno, servidor de aplicación, servidor web, servidor de base de datos y plataforma. Todos estos ajustes deben ser definidos, implementados y mantenidos, ya que no necesariamente las partes del sistema son entregadas con dichas configuraciones por defecto. Esto incluye mantener todo el software al día, incluyendo todas las librerías de código usadas por la aplicación.

A7. - Almacenamiento criptográfico inseguro.
Muchas aplicaciones no protegen los datos sensibles, como números de tarjetas de crédito, números de identificación del usuario y credenciales de autentificación con los tipos de cifrado y hashing apropiados. Los atacantes pueden robar o modificar estos datos pobremente protegidos para conducir ataques de robo de identidad, fraudes de tarjetas de crédito y otros crímenes.

A8. - Fallas en restricción de acceso a URLs.
Muchas aplicaciones verifican los derechos de acceso antes de que el usuario acceda a la aplicación por primera vez, sin embargo este tipo de verificaciones deben efectuarse cada vez que cualquiera de las páginas de la aplicación sea accedidas, o los atacantes podrán forjar direcciones URL que accedan a páginas o recursos prohibidos.

A9. - Insuficiente protección en la capa de transporte.
Las aplicaciones frecuentemente fallan en los procesos de autentificación, cifrado y garantia de confidencialidad e integridad del trafico de red sensible. Cuando no fallan, entonces puede suceder que usen algoritmos de cifrado débiles, certificados expirados o inválidos, o que no los usen correctamente.

A10. - Redirecciones y reenvíos sin debida validación.
Las aplicaciones web, generalmente redirigen o envían a los usuarios a otras páginas y sitios web usando datos no validados para hacerlo. Sin la apropiada validación, los atacantes pueden pueden redirigir a las victimas a sitios de phishing o malware, o usar los reenvíos para acceder a páginas no autorizadas.

Nuevamente coloco a disposición del lector el enlace de la OWASP como en otros artículos ya que es una de las fuentes más importantes de información acerca de la seguridad de aplicaciones web en la actualidad.

Entradas populares