martes, 21 de octubre de 2008

El colmo de un CISSP/CEH: que su blog sea catalogado como "malicious"

Después de haber pasado un inicio de semana en injusta ignominia, bloqueado por el Websense desde la red de la empresa donde trabajo, en la dudosa categoría de "Malicious Web Site", me he animado nuevamente a escribir, haciendo a un lado el oprobio y concentrándome en el propósito original de este blog, que es... ahora que lo pienso, no tengo otro propósito mas que escribir un poco de lo que sé y que creo que le pueda ser de interés a alguien.

Pero, ¿por qué "malicious"? Si yo no hago phishing, ni pharming, ni tampoco soy spammer ni cracker. Una cosa es que sepa cómo hacerlo, y otra muy diferente es que lo haga o que enseñe cómo se hace. En eso precisamente radica el Ethical Hacking, en conocer y usar adecuadamente y con responsabilidad las herramientas para encontrar huecos de seguridad y ofrecer alternativas de solución.

Hablando de Ethical Hacking, hace unos días terminé lo que fue mi última intrusión, hasta el momento, en un sistema ajeno con permiso del dueño. Seguramente no sería tan relevante, si no fuera por la manera que al final usé para poder ver información confidencial.

Para darles un poco más de contexto a mis lectores (¡ya son 5!), les diré que el Ethical Hacking, o Pen-Test (prueba de penetración), consiste en llevar a cabo una serie de pruebas controladas, automáticas o manuales, con diversas herramientas de hacking para intentar ganar acceso y comprobar qué tan vulnerable es una red o un sistema. Hay ethical hacking en prácticamente cualquier nivel: de sistemas operativos, redes, redes inalámbricas, aplicaciones web, sistemas criptológicos, bases de datos, etc. Pero lo más importante en cualquier prueba de penetración no es solamente encontrar las vulnerabilidades, sino proporcionar las soluciones, y eso es lo satisfactorio.

Ahí estaba yo, a la mitad de la noche, inspirado por el café, escribiendo un programa en Java... import java.net.*; import java.io.*; etc. Y es que después de dos escaneos sin vulnerabilidades relevantes, la única alternativa que veíamos (mi taza de café y yo) era hacerlo artesanalmente: programando mi propia herramienta. Los scanners me ayudaron en cierta manera para automatizar el proceso de descubrimiento e identificación, pero si quería llegar más lejos (o más adentro, según la perspectiva), tenía que hacerlo a mano, artesanalmente. El Diccionario de la Lengua Española define artesano como "quien hace por su cuenta objetos de uso doméstico imprimiéndoles su sello personal", por lo tanto como yo hago objetos (bueno, hago las clases y luego los objetos con new) y les imprimo mi sello personal, entro en la categoría artesanal. Además, yo siempre he dicho: "programar es un arte". Mi programa, hecho en 100% Java, funcionó y me permitió terminar la penetración en menos de lo que terminaba mi última taza de café.

El caso es que aproveché una vulnerabilidad de la aplicación en el manejo de sesiones. Externamente la aplicación se veía bien, con su forma de acceso por usuario y contraseña, pero al analizar las respuestas del servidor HTTP observé patrones que me ayudaron a formarme una imagen mental de lo que ocurre allá en el servidor. No puedo revelar más detalles de la intrusión, pero para cuando terminé mi café no sólo había encontrado la puerta para entrar, sino que ya tenía evidencia de información confidencial que usuarios de ese sitio habían subido, confiados de que sus documentos estarían seguros, pero el simple hecho de confiar a alguien más nuestra información, la hace potencialmente vulnerable.

Este tipo de ejercicios son muy enriquecedores por el conocimiento que proporcionan (sin mencionar la retribución económica), pero debo aclarar que sólo lo hago por la vía legal; una intrusión sin permiso no está en mis planes, ni tampoco está en mi código de ética.

Ya para concluir, si por alguna razón este sitio vuelve a ser bloqueado por nuestros amigos de Websense y están leyendo estas líneas gracias a una traducción de Google (¿sería buena idea escribir esto en inglés?), lamento informarles que en este sitio no enseño técnicas para hacking, ni tampoco publico exploits, y los únicos consejos que publico son con el ánimo de incrementar la cultura de la seguridad de la información... y compartir una que otra taza de buen Java.

:wq!

CISSP: Certified Information Systems Security Professional, por (ISC)2.
CEH: Certified Ethical Hacker, por EC-Council.

13 comentarios:

Anónimo dijo...

Que mal que a una pagina como esta que solo trata de intruir a las personas acerca de la etica que debe de tener un programador o un inspector de seguridad sea clasificada como mala.

muy bueno su comentario acerca de la etica lo felicito y siga escribiendo que ya tiene otro lector.

Gracias por esta pagina profe.

Atte. Jose G. Hinojosa Canales

AdRiAnA YaMiLeTh dijo...

Justo el día de hoy acabo de ver una definición de ética que abre mi panorama acerca de lo que escribes, y digo esto porque siempre termino leyendo dos veces lo que escribes a fin de digerirlo de la mejor manera.

Es bueno que no te hayan quitado esa intención de poder seguir transimiento tus conocimientos y poder así aprender de ti.

Continua con esto, ya que creo que van aumentando tus lectores =D

Saludos!

AdRiAnA YaMiLeTh dijo...

pd. que buen diseño!!

Anónimo dijo...

ING. SALUDOS DESDE LA CUNA DEL PASITO DURANGUENSE, REALMENTE ENCUENTRO EN USTED A UNA PERSONA ORIGINAL, CON ETICA, PROFESIONALISMO Y SOBRETODO COMPARTIDO EN CONOCIMIENTOS, ENTIENDO QUE SU TIEMPO, COSTO$$$$$$ Y SACRIFICIO PERSONAL ASI COMO FAMILIAR HAS SIDO BASTANTE; QUE LE HAN COSTADO, PRUEBA DE ELLO SON LAS CERTIFICACIONES, QUE SUPONGO YO, SON MUY ELEVADAS EN COSTOS.
PERO COMO SOY UN HUMANO NATURAL CON LA IGNORANCIA DE NACIMIENTO, NOS PODRIA ORIENTAR ACERCA DE CADA UNA DE LAS CERTIFICACIONES, COSTOS, PROCEDIMIENTOS Y SOBRE TODO LOS BENEFICIOS, Y POR QUE NO, LAS RESPONSABILIDADES AL OBTENER TALES CERTIFICACIONES.

POR OTRA PARTE TIENE AQUI (DURANGO CAPITAL) VARIOS ASIDUOS A SU BLOG, TRATANDO DE COMPRENDER, SEGUIR Y APLICAR SUS ENSEÑANSAS QUE MUY DESINTERESADAMENTE NOS COMPARTE, ESPERAMOS MUY PRONTO CONOCERLO, TENERLO POR ESTAS TIERRAS PARA COMPARTIRLE ALGO DE NOSOTROS MISMOS, PROPIO DE UN SER: LA AMISTAD SINCERA, DESINTERESADA Y REAL, COMO LO HACE USTED ATRAVEZ DE SU BLOG.
SU SEGUIDOR: ISOME

Anónimo dijo...

Felicidades nuevamente por su aniversario de vida inge! (22/11)

es cómico que hayan bloqueado la web, se puede hacer una analogía como cuando dicen en las peliculas " lo tuvimos que eliminar; sabia demasiado" jaja

pero bueno, nuevamente podemos disfrutar de su blog, que los que tenemos el honor de conocerle, sabemos que su único fin es instruirnos acerca de la seguridad informatica, tema que es muy polémico e interesante..

Felicidades y Gracias!

Bytes!

Anónimo dijo...

Por fiiiiiiiinnnn !!! ...

Ya era hora...mire, que le contaba, hasta cambio de imagen y todo...Me ha encantado todos los diseños...!!

Please, mantengase en linea bloguera!!...

Saluditos =)

Blüte

Anónimo dijo...

jejeeej jjjejej jjeejej jeeeee jjjejee jjeeeej jjejjee jejjee jeeeee jjjjeej jjeeeej jeeeee jjjeejj jjeeeej jjejjee jjjejee jjeejej jeeeee jjeejee jjeejej jeeeee jjjeeje jjeejej jjeejjj jjejeej jjejjjj jjeeeje jjejjee jjejjjj jjeejjj jjjeejj jeeeee jjjeeee jeejjj jjeeeej jjeeejj jjeeeej jeeeee jjjeje jejeej jeeeee jjjeejj jjeeeej jjejjee jjjejej jjeejee jjejjjj jjjeejj jeeeej

Knaverit dijo...

Qué tal, Torito:

Sí, ya vi que "saltaste de regioblogs p'aca". Me da gusto. Eres bienvenido, junto con tus comentarios encriptados. :-D

Sería interesante leer algo de lo que escribiste "hace un ratotote" en el Ezine que mencionas (especialmente si todo fue 'whitehat').

Gracias por sumarte a mis 5, ahora 6 lectores, como dices (creo que ya perdí la cuenta, de tantos que son).

jjjeejj jjeeeej jjejjee jjjejej jjeejee jjejjjj jjjeejj jejjje

Knaverit dijo...

Gracias, Isome:

A ver qué día tengo el gusto de ir a Durango. Te agradezco tus comentarios. Gracias por seguir leyendo estas líneas.

Estoy escribiendo algo referente a las certificaciones en IT... próximamente.

Saludos desde la cuna del... ¿cabrito? :-D

:wq!

Knaverit dijo...

Gracias por sus comentarios, José, Adriana, Adán y Blüte. Me animan. Conforme se me ocurran otras cosas, seguiremos escribiendo.

Saludos a todos. Gracias nuevamente.

:wq!

Anónimo dijo...

Saludos desde la cuna del bacalao :P
'\x05\x13\x02\x02\x05\x00\x1cB\x11\x0c\x13L\x13\n\x01\x08\x01\x08\x1e\x0c\nB\x0b\x16\x0f\x18\x0eO\x01\x0e\rA\x01\x08\x1cB\x0c\x06\x0f\x1f\x00\x05\x07\x12C\x04\x02\x02\x1d\x0b\x11\x17\x00\x08\x0e\x1cB[JA\x1f\x0e\x03\rA\x01\x14\x1f\x02\x0eB\x15\x02\x15\r\x15\x0e\x16\x00\rS\\Q^B\x18C\r\x03A\n\x0c\x02\x16\x04\x02\x15\x1d\x03\x12MA\x06\x0b\x05\x07\x04\t\x0bL\x0b\x05\x07\x04\x06\x04\x06A\x05\x08\x04\t\x0b\t\x04O\x08\x0b\t\x04\x06\x04\x05B\x0b\t\x04\t\x0b\n\x07A\t\x0b\t\x0b\x05\x08\x0bC\x0b\x06\x0b\n\x07\x0b\tA\x1c\x00\x1d\x03A\x17\x08L\x15\x0e\x0f\x03\n\x04\x02AU2'

Por cierto, estaria bueno ver algo tecnico en tu blog. Hace mucho que no veo nada relacionado con seguridad, y pues verlo en un blog no estaria nada mal.
btw, haz hecho algo con esteganografia?

Anónimo dijo...

Qué tal Romeo... Espero que estés bien.

Está bueno tu blog. Ya ganaste otro lector.

¿Ya leíste lo de la creación de un certificado falso usando una colisión de md5?

Dicen que es una vulnerabilidad de PKI ¿tú lo consideras así?

http://www.win.tue.nl/hashclash/rogue-ca/

Saludos,

Knaverit dijo...

Que tal, David. Gracias por tus comentarios.

Fíjate que me enteré hace poco del caso que mencionas de la vulnerabilidad de PKI por colisiones de MD5. Aunque la probabilidad de explotación es mínima, sí representa una debilidad en la infraestructura de llave pública (PKI); y digo "mínima" porque la gran mayoría de los involucrados en PKI ya no usan MD5, sino SHA1 y también porque se requiere de fuerza bruta para lograr la colisión del MD5 de dos certificados (el original y el falso). Por otra parte, actualmente hay formas mucho más sencillas de engañar al usuario promedio que se conecta para realizar transacciones por Internet de forma "segura" (basta con recordar la falsa sensación de seguridad que da el famoso "candadito amarillo"), pues la gran mayoría de los usuarios (incluidos muchos expertos) no toman la precaución de revisar el contenido de los certificados que se usan para SSL, o desconocen por completo su existencia y su utilidad, y esto es aún peor.

Saludos.