Seguridad Informática, Antivirus, ARP Poisoning, BackTrack, Black Hat SEO, SQLi, Contraseñas, Cracking, DDOS, Defacing, Directory Traversal, Dorks, Exploits, Hashes, Ingeniería Social, Keyloggers, Malware, Metasploit, MITM, Moodle, Packers, Crypters, Parches, Pentesting, Phising, Rogueware, Seguridad Wireless, Session Hijacking, Shell, Sniffers, Spam, SslStrip, Troyanos, User-Agent Cloaking, Vulnerabilidades, XSS, 4n4lDetector, ParameterFuzz, Bypass Antivirus por Germán Sánchez Garcés.
Descubre 4n4lDetector Pro y Pescan.io
Analiza archivos de forma avanzada con 4n4lDetector Pro y prueba la versión online en Pescan.io. Todo desde tu navegador o tu escritorio.
Intelligent String para priorizar IOCs útiles, heurísticas de flujo anómalo, generación de reglas YARA con un clic, carving de encabezados PE, y detección de firmas Microsoft manipuladas. Compatible con 32/64-bit y formatos comunes (.exe, .dll, .sys, .ocx, .scr, .drv, .cpl). Funciona desde cualquier navegador o en tu escritorio con CLI, GUI y plataforma web integrada. Incluye hash intelligence, gamificación interna, Interest Words, y más de 10,000 reglas para detección avanzada de malware.
viernes, 6 de abril de 2012
El típico 404... ¿o no?
martes, 31 de enero de 2012
De fiesta con UniGUI Framework
Para deleite de programadores en Delphi tirando a ser muy curiosos, va más bien encaminada la entrada. Esta vez tocaremos un poco de todo, seguridad web, desde Cross Site Scripting hasta Full Path Disclosure, pasando por edición de binarios en hexadecimal, acortadores URL y un par de softwares de regalo en mi querido Visual Basic 6 y ensamblador.
Hasta hace bien poco, un nuevo concepto de desarrollo web se cruzó por mi camino, gracias a un compañero de trabajo, era el llamado UniGUI Framework. Destinado en exclusiva, para dar opción a desarrolladores que trabajan con Delphi, de poder diseñar proyectos destinados a aplicaciones web. El Framework entre otras funciones de publicación, trae la de exportar el proyecto a librerías DLL para su integración en ISS o Apache mediante Mod ISAPI.
¿Y como no? ¡Tenía que reventarlo!
Así que cargando mis jeringuillas de sustancias psicotrópicas, me topé con un Cross Site Scripting, en el control de errores que trae de forma interna la aplicación y aunque no vean el típico mensaje de alert, observen bien la imagen, pues podemos llamarle Blind-XSS.
Cualquier URL agregada de forma externa por un atacante, o interna por el propio programador en el código de la librería, se adjunta a la ruta actual y prescinde del protocolo, en el cual se realizan las peticiones.
¿Por qué ocurre esto? ¡Muy simple! La librería se encarga de filtrar los slashes modificándolos por barras invertidas. Esto quiere decir que el Cross Site Scripting existe y es explotable, pero su margen de acción, se ve reducido para ataques externos, a no ser que logremos bypassearlo.
Detrás de “Access denied”, encontramos ese Full Path Disclosure tan llamativo, que muestra la letra de la unidad y el tipo de servidor que utilizo ¡Genial más datos para realizar un ataque!
Después de hacer pruebas con diferentes navegadores y ver su eficiencia ;) , lo que más asombro me causó, es lo que os muestro en la siguiente captura.
¡Google Chrome se lleva la palma! Así que él solito, fuerza la petición y muestra el enlace corregido. Por si alguno no se había dado cuenta, el servidor de Bit.ly trabaja con un certificado firmado por una autoridad certificadora, con lo que podremos explotar la vulnerabilidad mediante protocolo seguro, pudiendo así, visitar cualquier página sin restricciones.
Podremos incluir un IFRAME sin ningún tipo de problema, gracias al Bypass de Google Chrome y el certificado de Bit.ly, para no sé... ¿visitar enelpc?
O echarle imaginación, y tirar de onMouseOver para jugar en Firefox a ser hackers malos.
Pero nosotros somos buenos ¿verdad? Y queremos corregir vulnerabilidades a toda costa, así que como ya reporté con anterioridad el fallo al foro de UniGUI y no me hicieron ni p*** caso, decidí armarme de valor y buscar entre las strings en hexadecimal del binario, para ver de que forma podría contrarrestar el dichoso ataque.
El HTML que muestra la ruta y la unidad de disco, se muestra mediante una llamada a una variable de tipo string, la cual en caso de contener un valor añadido no alfabético, por ejemplo un número o símbolo en la URL, busca la nueva ruta y si no la encuentra, terminamos con el aviso de acceso denegado en pantalla.
La enfermedad debía de venir acompañada de la cura, y ya que encontré la variable, no me quedó otra que suprimirla de forma definitiva del control de errores, así que un par de Offsets en 00, corregían ambas vulnerabilidades y me daban pie a sacar un nuevo proyecto en VB6. El parche muestra en hexadecimal, la opción de seleccionar los caracteres y la localización en el binario a modificar, más de un avispado le habrá sacado similitud a un AVFucker, ya que si lo desean también puede hacerse con tal función.
Ya que dependiendo de la versión de UniGUI y del proyecto, la ubicación del valor vulnerable puede cambiar, me armé una opción más simple programada en ensamblador y compilada con MASM. Gracias a un código similar de diablo2oo2, que modifica ambos Offsets y corrige la vulnerabilidad para todas sus versiones, buscando una cadena exclusiva de este tipo de binarios, logré modificarlo.
El resultado a la inyección, sería el siguiente:
Saludos 4n4les! ;)

































