Este documento describe cómo un ataque de botnet puede infectar dispositivos con JavaScript como iPhones a través de un punto de acceso no autorizado (rogue AP). El ataque involucra redirigir el tráfico de clientes a través de un proxy para servir archivos JavaScript maliciosos que convierten los dispositivos en "zombies". Una vez infectados, los dispositivos pueden ser utilizados para robar cookies, ejecutar código de forma remota y más. Para evitarlo, es importante conectarse solo a redes seguras y limpiar periódicamente la
Atacando iphone a través de wireless y javascript botnet
1. Owning iPhones con JavaScript
Botnets y Rogue APs
Ioseba Palop Salgado
ipalop@informatica64.com
2. Conceptos básicos
• Rogue AP: Punto de acceso con ‘picaresca
española’
• BotNet: Software ejecutado automáticamente
con la intención de capturar usuarios y
convertirlos en zombies.
• Payload: Funcionalidad ejecutada
aprovechando un error conocido a través de
un exploit.
3. ¿En qué consiste el ataque?
Servidor Proxy GET /a.js HTTP/1.1
Host: www.web.com
GET /a.js HTTP/1.1
Cliente/s Host: www.web.com
GET /a.js HTTP/1.1
Host: www.web.com
Response
a.js
Response
a.Js + pasarela.js
Response Rogue AP
a.Jsp + payload.js
Internet
4. ¿A quién le afecta?
• Todo cliente que interprete Javascript, ya sean
PCs, smartphones, TVs…
5. ¿Qué necesitamos?
• Punto de acceso
• Equipo linux con dos interfaces
de red
• SQUID (Proxy)
• Apache
• MySql
• Mala idea :D
6. ¿Cómo configuramos nuestro equipo?
• Necesitamos dos redes, una para el punto de
acceso y las víctimas, y otra con salida a
internet. Han de ser rangos diferentes.
7. ¿Cómo configuramos nuestro equipo?
• Dado que vamos a redirigir tráfico de una
tarjeta de red a otra, necesitamos que nuestro
equipo enrute.
9. ¿Cómo redirigimos tráfico al proxy?
• A través de IpTables, configuramos el equipo
para redirigir el tráfico del puerto 80 (se
puede redirigir https si se quiere) al puerto del
proxy.
• Necesitamos enmascarar los paquetes de las
peticiones de la víctima, ya que pertenecen a
otra red.
10. ¿Qué hace Apache?
• Servir ficheros js infectados.
• Modificar la expiración de estos ficheros para
que no caduquen.
• Alojar nuestro portal de control de zombies.
11. ¿Y ahora?
• Solo queda esperar a que alguien se conecte a
nuestro Ap… y tener una horda de zombies en
nuestro poder!!
12. ¿Qué puedo hacer con mi horda?
• Acceso a:
– Cookies
• Salvo HTTPOnly (more or less)
– Código HTML
– Campos introducidos en formularios
– URL
– Ejecución de código remoto
–…
13. ¿Cómo evitar ser infectado?
• Conectarse a redes seguras
• Sentido común