Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 1

Ahora probaremos otra forma de inyectar SQL. Veamos si la base de datos sigue arrojando mensajes de error. Este método se denomina "esperar un retraso", y el retraso en sí se escribe de la siguiente manera: esperar el retraso 00:00:01'. Lo copio de nuestro archivo y lo pego en la barra de direcciones de mi navegador.

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Todo esto se llama "inyección SQL ciega de forma temporal". Todo lo que estamos haciendo aquí es decir "espere un retraso de 10 segundos". Si te fijas, en la parte superior izquierda tenemos la inscripción "conectando...", es decir, ¿qué hace nuestra página? Espera una conexión y, después de 10 segundos, aparece la página correcta en su monitor. Con este truco, le pedimos a la base de datos que nos permita hacerle algunas preguntas más, por ejemplo, si el usuario es Joe, entonces debemos esperar 10 segundos. ¿Está vacío? Si el usuario es dbo, espere 10 segundos también. Este es el método de inyección ciega de SQL.

Creo que los desarrolladores no solucionan esta vulnerabilidad al crear parches. Esto es inyección de SQL, pero nuestro programa IDS tampoco lo ve, como los métodos anteriores de inyección de SQL.
Probemos algo más interesante. Copie esta línea con la dirección IP y péguela en el navegador. ¡Funcionó! La barra TCP en nuestro programa se volvió roja, el programa notó 2 amenazas de seguridad.

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Bien, veamos qué pasó después. Tenemos una amenaza para el shell de XP y otra amenaza es un intento de inyección SQL. En total, hubo dos intentos de ataque a la aplicación web.

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Bien, ahora ayúdame con la lógica. Tenemos un paquete de datos de manipulación en el que IDS dice que ha respondido a varias manipulaciones de shell XP.

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Si bajamos, vemos una tabla de códigos HEX, a la derecha de la cual hay una bandera con el mensaje xp_cmdshell + &27ping, y obviamente esto es malo.

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Veamos qué pasó aquí. ¿Qué hizo SQL Server?

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

El servidor SQL dijo "puedes tener la contraseña de mi base de datos, puedes obtener todos los registros de mi base de datos, pero amigo, no quiero que ejecutes tus comandos conmigo en absoluto, ¡eso no es genial en absoluto"!

Lo que debemos hacer es asegurarnos de que incluso si el IDS informa una amenaza para el shell de XP, la amenaza se ignora. Si está utilizando SQL Server 2005 o SQL Server 2008, si se detecta un intento de inyección SQL, el shell del sistema operativo se bloqueará, lo que le impedirá continuar con su trabajo. Es muy molesto. Entonces, ¿qué vamos a hacer? Deberías tratar de preguntarle al servidor muy cariñosamente. ¿Debería decir algo como, “por favor, papi, ¿puedo tener estas galletas”? Eso es lo que hago, en serio, ¡le pido al servidor muy educadamente! ¡Estoy pidiendo más opciones, estoy pidiendo una reconfiguración y estoy pidiendo que se cambie la configuración del shell de XP para que el shell esté disponible porque lo necesito!

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Vemos que IDS ha detectado esto; verá, ya se han observado 3 amenazas aquí.

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Solo mire aquí: ¡explotamos los registros de seguridad! Parece un árbol de Navidad, ¡tantas cosas están colgadas aquí! ¡Hasta 27 amenazas de seguridad! ¡Hurra chicos, atrapamos a este hacker, lo atrapamos!

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

No nos preocupa que robe nuestros datos, pero si puede ejecutar comandos del sistema en nuestra "caja", ¡esto ya es serio! Puedes dibujar la ruta de Telnet, FTP, puedes tomar el control de mis datos, eso está bien, pero no me preocupo por eso, simplemente no quiero que te hagas cargo del caparazón de mi "caja".

Quiero hablar de cosas que realmente me atraparon. Trabajo para organizaciones, he estado trabajando para ellas durante muchos años, y les digo esto porque mi novia piensa que estoy desempleado. Ella piensa que todo lo que hago es pararme en el escenario y charlar, esto no puede considerarse trabajo. Pero yo digo: “no, mi alegría, ¡soy un consultor”! Esa es la diferencia: digo lo que pienso y me pagan por ello.

Permítanme decirlo de esta manera: a nosotros, como piratas informáticos, nos encanta romper el caparazón, y para nosotros no hay mayor placer en el mundo que "tragarse el caparazón". Cuando los analistas de IDS escriben sus reglas, puede ver que las escriben de una manera que protege contra la piratería de shell. Pero si habla con el CIO sobre el problema de la extracción de datos, le ofrecerá pensar en dos opciones. Digamos que tengo una aplicación que hace 100 "piezas" por hora. ¿Qué es más importante para mí: garantizar la seguridad de todos los datos en esta aplicación o la seguridad de la carcasa de la "caja"? ¡Esta es una pregunta seria! ¿Qué debería preocuparte más?

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

El hecho de que tenga una carcasa de "caja" rota no significa necesariamente que alguien haya obtenido acceso al funcionamiento interno de las aplicaciones. Sí, es más que probable, y si aún no ha sucedido, puede suceder pronto. Pero tenga en cuenta que muchos productos de seguridad se basan en la premisa de que un atacante deambula por su red. Entonces prestan atención a la ejecución de comandos, a la inyección de comandos, y debes tener en cuenta que esto es algo serio. Señalan vulnerabilidades triviales, secuencias de comandos entre sitios muy simples, inyecciones de SQL muy simples. No les importan las amenazas complejas, no les importan los mensajes cifrados, no les importa ese tipo de cosas. Se puede decir que todos los productos de seguridad buscan ruido, buscan "ladridos", quieren detener algo que te muerde el tobillo. Esto es lo que aprendí al tratar con productos de seguridad. No necesita comprar productos de seguridad, no necesita conducir el camión en reversa. Necesita personas competentes y capacitadas que entiendan la tecnología. ¡Sí, Dios mío, gente! No queremos gastar millones de dólares en estos problemas, pero muchos de ustedes han trabajado en este campo y saben que tan pronto como su jefe ve un anuncio, corre a la tienda gritando "¡tenemos que conseguir esto!". Pero en realidad no lo necesitamos, solo tenemos que arreglar el desorden que está detrás de nosotros. Esa fue la premisa de esta actuación.

Un entorno de alta seguridad es algo en lo que dediqué mucho tiempo para comprender las reglas de cómo funcionan los mecanismos de protección. Una vez que comprende los mecanismos de protección, eludir la protección no es difícil. Por ejemplo, tengo una aplicación web que está protegida por su propio firewall. Copio la dirección del panel de configuración, la pego en la barra de direcciones del navegador y voy a la configuración e intento aplicar secuencias de comandos entre sitios.

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Como resultado, recibo un mensaje de firewall sobre una amenaza: me bloquearon.

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Creo que es malo, ¿estás de acuerdo? Estás ante un producto de seguridad. Pero, ¿y si pruebo algo como esto: pongo el parámetro Joe'+OR+1='1 en la cadena

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Como puede ver, funcionó. Corrígeme si me equivoco, pero hemos visto cómo la inyección de SQL vence al firewall de la aplicación. Ahora supongamos que queremos iniciar una empresa de seguridad, así que pongámonos el sombrero del fabricante de software. Ahora encarnamos el mal porque es un sombrero negro. Soy consultor, así que puedo hacer esto con productores de software.

Queremos construir e implementar un nuevo sistema de detección de intrusos, por lo que comenzaremos una campaña de detección de manipulaciones. Snort, como producto de código abierto, contiene cientos de miles de firmas de amenazas de intrusión. Debemos actuar éticamente, por lo que no robaremos estas firmas de otras aplicaciones para insertarlas en nuestro sistema. Simplemente vamos a sentarnos y reescribirlas todas: ¡oigan, Bob, Tim, Joe, vengan aquí y revisen rápidamente todas esas 100 firmas!

También necesitamos crear un escáner de vulnerabilidades. Usted sabe que Nessus, el buscador automático de vulnerabilidades, tiene unas buenas 80 firmas y scripts que verifican vulnerabilidades. Nuevamente actuaremos éticamente y personalmente los reescribiremos todos en nuestro programa.
La gente me pregunta: "Joe, haces todas estas pruebas con software de código abierto como Mod Security, Snort y similares, ¿qué tan similares son a los productos de otros proveedores?" Yo les respondo: “¡No se parecen en nada!”. Debido a que los proveedores no roban cosas de los productos de seguridad de código abierto, ellos mismos se sientan y escriben todas estas reglas.

Si puede hacer que sus propias firmas y cadenas de ataque funcionen sin usar productos de código abierto, esta es una gran oportunidad para usted. Si no puede competir con los productos comerciales, moviéndose en la dirección correcta, debe encontrar un concepto que lo ayude a darse a conocer en su campo.

Todo el mundo sabe que bebo. Déjame mostrarte por qué bebo. Si alguna vez ha realizado una auditoría de código fuente en su vida, definitivamente se emborrachará, créame, después de eso comenzará a beber.

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Así que nuestro lenguaje favorito es C++. Echemos un vistazo a este programa: Web Knight es una aplicación de firewall para servidores web. Tiene excepciones predeterminadas. Es interesante: si implemento este firewall, no me protegerá de Outlook Web Access.

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

¡Maravilloso! Esto se debe a que muchos proveedores de software están sacando reglas de algunas aplicaciones y poniéndolas en su producto sin hacer un montón de investigación adecuada. Entonces, cuando implemento una aplicación de firewall de red, creo que todo lo relacionado con el correo web está mal hecho. Porque casi cualquier correo web viola la seguridad predeterminada. Tiene un código web que ejecuta comandos del sistema y consulta LDAP o cualquier otra base de datos de usuario almacenada directamente en la web.

Dime, ¿en qué planeta se puede considerar seguro algo así? Solo piénsalo: abres Outlook Web Access, presionas b ctrl+K, buscas usuarios y todo eso, administras Active Directory directamente desde la web, ejecutas comandos del sistema en Linux si usas "squirrel mail" u Horde o lo que sea algo más. Está sacando todas esas evaluaciones y otros tipos de funcionalidades inseguras. Por lo tanto, muchos cortafuegos los excluyen de la lista de amenazas de seguridad; intente preguntarle al fabricante de su software sobre esto.

Volvamos a la aplicación Web Knight. Robó muchas reglas de seguridad de un escáner de URL que escanea todos estos rangos de direcciones IP. ¿Y qué, todos estos rangos de direcciones están excluidos de mi producto?

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

¿Alguno de ustedes quiere instalar estas direcciones en su red? ¿Quiere que su red se ejecute en estas direcciones? Sí, es asombroso. Bien, desplacémonos hacia abajo en este programa y veamos otras cosas que este firewall no quiere hacer.

¡Se llaman "1999" y quieren que su servidor web esté en el pasado! ¿Alguno de ustedes recuerda esta basura: /scripts, /iishelp, msads? Quizás un par de personas recordarán con nostalgia lo divertido que fue hackear esas cosas. “Recuerda, hombre, cuánto tiempo hace que “matamos” servidores, ¡fue genial!”.

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Ahora, si observa estas excepciones, verá que puede hacer todas estas cosas: msads, impresoras, iisadmpwd, todas estas cosas que nadie necesita hoy. ¿Qué pasa con los comandos que no puede ejecutar?

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Estos son arp, at, cacls, chkdsk, cipher, cmd, com. Al enumerarlos, se siente abrumado por los recuerdos de los viejos tiempos, "amigo, ¿recuerda cómo nos hicimos cargo de ese servidor, recuerda esos días"?

Pero esto es lo que es realmente interesante: ¿alguien ve WMIC aquí o tal vez PowerShell? Imagine que tiene una nueva aplicación que funciona mediante la ejecución de secuencias de comandos en el sistema local, y estas son secuencias de comandos modernas, porque desea ejecutar Windows Server 2008, y voy a hacer un excelente trabajo para protegerlo con reglas diseñadas para Windows. 2000. De modo que la próxima vez que un proveedor se acerque a usted con su aplicación web, pregúntele: "Oye, ¿has proporcionado cosas como bits de administración o ejecución de comandos de PowerShell? ¿Has verificado todas las demás cosas, porque vamos a actualizar y utilizar la nueva versión de DotNET"? ¡Pero todas estas cosas deberían estar presentes en el producto de seguridad por defecto!

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Lo siguiente de lo que quiero hablarles es de las falacias lógicas. Vamos a 192.168.2.6. Se trata de la misma aplicación que la anterior.

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Puede notar algo interesante si se desplaza hacia abajo en la página y hace clic en el enlace Contáctenos.

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Si observa el código fuente de la pestaña "Contáctenos", que es uno de los métodos de pentesting que hago todo el tiempo, notará esta línea.

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

¡Piénsalo! Escuché que muchos al ver esto dijeron: "Wow"! Una vez hice una prueba de penetración para, digamos, un banco multimillonario y noté algo similar allí. Por lo tanto, no necesitamos inyección SQL o secuencias de comandos entre sitios: tenemos lo principal, esta barra de direcciones.

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Entonces, sin exagerar, el banco nos dijo que tenían ambos, y un especialista en redes y un inspector web, y no hicieron ningún comentario. Es decir, consideraron normal que un archivo de texto pueda abrirse y leerse a través de un navegador.

Es decir, puede leer el archivo directamente desde el sistema de archivos. El jefe de su equipo de seguridad me dijo: “sí, uno de los escáneres encontró esta vulnerabilidad, pero la consideró menor”. A lo que respondí, está bien, dame un minuto. ¡Escribí filename=../../../../boot.ini en la barra de direcciones y pude leer el archivo de arranque del sistema de archivos!

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

A esto me dijeron: “no, no, no, estos no son archivos críticos”! Respondí, pero es Server 2008, ¿no? Dijeron que sí, que es él. Digo, pero este servidor tiene un archivo de configuración ubicado en el directorio raíz del servidor, ¿verdad? "Correcto", responden. “Genial”, digo, “¿y si el atacante hace esto?” y escribo filename=web.config en la barra de direcciones. Dicen: ¿y qué, no ves nada en el monitor?

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Yo digo: ¿qué pasa si hago clic derecho en el monitor y selecciono la opción "Mostrar código de página"? ¿Y qué encontraré aquí? ¿"Nada crítico"? ¡Veré la contraseña del administrador del servidor!

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

¿Y dices que no hay problema aquí?

Pero mi parte favorita es la siguiente. No me dejas ejecutar comandos en el cuadro, pero puedo robar la contraseña de administrador y la base de datos del servidor web, explorar toda la base de datos, eliminar todas las fallas de la base de datos y del sistema, y ​​llevarme todo. ¡Este es el caso cuando el malo dice "hey hombre, hoy es un gran día"!

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

¡No dejes que los productos de seguridad se conviertan en tu enfermedad! ¡No deje que los productos de seguridad lo enfermen! ¡Encuentra algunos nerds, dales todos esos recuerdos de Star Trek, haz que se interesen, anímalos a quedarse contigo, porque esos nerds apestosos que no se duchan a diario son los que hacen que tus redes funcionen de la siguiente manera! Estas son las personas que ayudarán a que sus productos de seguridad funcionen correctamente.

Dime, ¿cuántos de ustedes son capaces de permanecer en la misma habitación durante mucho tiempo con una persona que constantemente dice: “¡ay, necesito imprimir este guión con urgencia!”, y que está ocupado con esto todo el tiempo? Pero necesita personas que hagan que sus productos de seguridad funcionen.

Para reiterar, los productos de seguridad son tontos porque las luces siempre fallan, constantemente hacen cosas de mierda, simplemente no brindan seguridad. Nunca he visto un buen producto de seguridad que no requiera un tipo con un destornillador para ajustarlo donde se necesita para que funcione más o menos normalmente. Es solo una gran lista de reglas que dicen que es malo, ¡y eso es todo!

Entonces, muchachos, quiero que presten atención a la educación, a cosas como la seguridad, los politécnicos, porque hay muchos cursos gratuitos en línea sobre temas de seguridad. Aprenda Python, aprenda ensamblador, aprenda pruebas de aplicaciones web.

Conferencia HACKTIVITY 2012. La Teoría del Big Bang: La Evolución del Pentesting de Seguridad. Parte 2

Esto es lo que realmente le ayudará a proteger su red. ¡Las personas inteligentes protegen las redes, los productos de red no protegen! Vuelva al trabajo y dígale a su jefe que necesita más presupuesto para gente más inteligente, sé que es una crisis ahora, pero dígale de todos modos que necesitamos más dinero para educar a la gente. Si compramos un producto pero no compramos un curso sobre cómo usarlo porque es caro, ¿por qué lo compramos si no vamos a enseñarle a la gente cómo usarlo?

He trabajado para muchos proveedores de productos de seguridad, he pasado casi toda mi vida implementando estos productos y me estoy cansando de todos estos controles de acceso a la red y esas cosas porque he instalado y ejecutado todos estos productos basura. Un día fui a un cliente, querían implementar el estándar 802.1x para el protocolo EAP, por lo que tenían direcciones MAC y direcciones secundarias para cada puerto. Vine, vi que estaba mal, me di la vuelta y comencé a presionar los botones de la impresora. Ya sabe, la impresora puede imprimir una página de prueba del equipo de red con todas las direcciones MAC y las direcciones IP. Pero resultó que la impresora no es compatible con el estándar 802.1x, por lo que debe excluirse.

Luego desconecté la impresora y cambié la dirección MAC de mi computadora portátil a la dirección MAC de la impresora y conecté mi computadora portátil, evitando así esta costosa solución MAC, ¡piénselo! Entonces, ¿qué bien puede hacerme esta solución MAC si una persona puede simplemente hacer pasar cualquier equipo por una impresora o un teléfono VoIP?

Entonces, para mí hoy, pentesting se trata de pasar tiempo tratando de comprender y comprender un producto de seguridad que mi cliente ha comprado. Ahora, cada banco en el que hago una prueba de penetración tiene todos estos HIPS, NIPS, LAUGTHS, MACS y un montón de otras siglas que simplemente apestan. Pero estoy tratando de averiguar qué están tratando de hacer estos productos y cómo lo están tratando de hacer. Luego, una vez que descubro qué metodología y lógica usan para brindar protección, sortearla no se vuelve nada difícil.

Mi producto favorito, con el que les dejaré, se llama MS 1103. Es un exploit basado en navegador que rocía HIPS, Host Intrusion Prevention Signature o Host Intrusion Prevention Signatures. De hecho, está destinado a eludir las firmas HIPS. No quiero mostrarles cómo funciona porque no quiero tomarme el tiempo para demostrarlo, pero hace un gran trabajo al eludir esta protección, y quiero que lo adopten.
OK chicos, me voy ahora.

Algunos anuncios 🙂

Gracias por estar con nosotros. ¿Te gustan nuestros artículos? ¿Quieres ver más contenido interesante? Apóyanos haciendo un pedido o recomendándonos a amigos, VPS en la nube para desarrolladores desde $4.99, un análogo único de servidores de nivel de entrada, que fue inventado por nosotros para usted: Toda la verdad sobre VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps desde $19 o como compartir servidor? (disponible con RAID1 y RAID10, hasta 24 núcleos y hasta 40GB DDR4).

Dell R730xd 2 veces más barato en el centro de datos Equinix Tier IV en Amsterdam? Solo aqui 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV desde $199 ¡en los Paises Bajos! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - ¡desde $99! Leer acerca de Cómo construir infraestructura corp. clase con el uso de servidores Dell R730xd E5-2650 v4 por valor de 9000 euros por un centavo?

Fuente: habr.com

Añadir un comentario