Martes, 5 de Diciembre de 2017: La ilegalidad no lo puede todo

Querido diario…

… tomando en cuenta que salí volando de un primer piso, me quedé con la costilla sumida en un sofá, comí las sobras de dos hermosillenses y una africana porque no tenía dinero para comer; me quedé a dormir debajo de un puente y hasta me rechazaron como operador de producción… ¿crees que la cárcel puede ser peor?.

Pff… novato.

Bueno, un amigo intentó ayudarme con técnicas ilegales, pero ya estoy registrado como prófugo de la justicia… ya no hay nada que hacer.

Domingo, 3 de Diciembre: Synack #Hack4Levels Challenge

Querido diario…

Este año Synack ha organizado un concurso de fin de año para motivar a los bug bounty hunters a participar en los assessments long term, que por estas fechas se empiezan a quedar descuidados porque todos vamos tras los “juicy bugs”; para sacar más dinero en fin de año. El premio es un viaje todo pagado a México, lo cual es un poco extraño dado que yo soy un mexicano viviendo en México; pero esto más que cuestión de dinero o el premio es una cuestión de orgullo y presunción.

Como estuve pasando cocaína entre fronteras… que por cierto, te debo esa historia, pero coff.. coff.. es que… bueno, son cosas complejas; no había tenido mucho tiempo de ponerme a trabajar en el challenge; hasta ayer que no tenía nada que hacer y dije “psss…”. ¿Qué puedo decir?, soy simplemente increíble… encontré algunos fallos y bueno, ya me piqué y estoy en plena carrera desesperada por alcanzar a los líderes del ranking:

Esos rusos… pero bueno, para el poco tiempo que he trabajado, no me está yendo tan mal:

Pero bueno, no te venía a platicar sobre eso… sino; hay un tipo de vulnerabilidad que ya está medio olvidada en la historia. En 2013 el OWASP Top 10 incluía las Open Redirects, pero desde hace dos Top 10 ya no viene, y han dejado de tener mucho peso; pero justo ayer me encontré una y la forma en que justifiqué su reporte es que se podía usar para phishing.

Las Open Redirects con errores de validación de entradas que permiten redirigir una aplicación hacia otra… usualmente se pueden identificar buscando variables de control como url=, site=, from=, u=, etc.

La estructura común es similar a:

www.belindofan.com.ar/index.php?refer_to=www.bigshot.beer

Pues bueno, si la variable refer_to no se encuentra validada, entonces podríamos modificar hacia donde nos envía la aplicación y mandar un link (el cual pasaría algunos tipos de controles compensatorios) y usarlo como phishing para robar credenciales o información.

No todas las vulnerabilidades son así de sencillas; el fallo que yo encontré era algo que yo di a llamar “bug augustiano interno de open redirect”, ¿por qué?, porque la aplicación no hacia referencia a un sitio con un dominio externo, sino hacia referencia a una sección dentro de la misma aplicación, algo tipo:

www.belindofan.com.ar/index.php?refer_to=seccion

Lo que terminaba creando un URL así:

seccion.belindofan.com.ar

Lo cual quiere decir que tenía problemas para poder sacar del contexto del dominio al usuario; pero ¿qué pasaría si se puede combinar con otro fallo?, un servidor de aplicaciones mal configurado que me permita subir una aplicación en un subdominio, o un servicio externo o incluso un ataque más dirigido a un usuario específico donde haga un DNS poisoning para redirigirlo a un subdominio donde yo monte un sitio web falso y robe la información.

Bueno, fue un error medio tricky, y difícil de justificar, pero al final lo aceptaron 😉

Querido diario.. jajaja esto es lo más gracioso del mundo 😛 así es como una cachanilla te da el avión:

Ouuu.. cachanilla  es el gentilicio de Mexicali.

Jueves, 30 de Noviembre de 2017: EOF

Querido diario… EOF en computación significa End Of File.

¿Hacer un MITM se considera ataque a las comunicaciones?, ¿hackear todas las empresas de una ciudad para conseguir un empleo es delito federal?, ¿borrar los CV’s de la gente de los correos de los reclutadores es violación a la Ley Federal de Protección de Datos Personales en Posesión de los Particulares?, ¿caerte de una planta alta contra la banqueta es daño al mobiliario urbano?…

Bueno…

Si no me entregó por mi cuenta llegará Enero y aplicará también Ley Fintech y Estrategía Nacional de Ciberseguridad y jamás veré la luz de Sol nuevamente…

Creo que mi abogado no me salvará está vez 🙁

Al menos, de entre todo lo malo; hay cosas chistosas:

Bueno…

He pasado cosas peores que la cárcel, ya vi todos los capítulos de Narcos, El chapo, Vikings (eso no sé que tenga que ver, pero igual lo vi) y… pues, creo que es un buen sitio para mi.

Miércoles, 29 de Noviembre de 2017: o_O

Querido diario…

¿Cómo se calcula la eficiencia de ejecución de un proyecto?, ¿cómo genero un proceso a partir de un servicio de consultoría?, ¿cómo calculo los costos asociados a la operación?, ¿cómo calculo los costos de operación?, ¿cómo calculo y distribuyo la transferencia de costos hacia los clientes intermedios, internos y finales?, ¿cómo desarrollo proyectos de mejora?…

Yo recuerdo que fui a la escuela, no fui muy seguido y no entré a muchas clases; pero de menos sabía medio lo que se veía en clase, pedía los apuntes para estu… bueno, ok, ok les sacaba reducción y los usaba de acordeones, pero puedo estar completamente seguro que nada de eso que necesito hacer me lo enseñaron en algún sitio.

Estoy teniendo un dejavu de cuando en Bimbo me subieron al montacargas y no sabía ni como prenderlo, o de en Skyworks cuando me dieron los cablecitos y los aparatos raros y ni inglés sabía para encender el osciloscopio 🙁

¡Ahhh! si, si sé que es un osciloscopio… no me preguntes como, pero si sé.

Querido diario, creoque es momento de preocuparme por mi futuro laboral… lo bueno es que vi en Calimax unos anuncios de se busca vendedor.

Martes, 28 de Noviembre de 2017: ¡Ayúdame!

Querido diario…

A veces intento no ser mala persona y ayudar a aquellos que acuden al gran, al único, al increíble… vendetta [inserte emoticón con lentes aquí].

El día de hoy me buscó un amigo y me dijo “gran y todo poderoso amigo mío, que me han hackeado, ayúdame, tú que estas en las alturas del cielo”… después de hacerlo sufrir un poco, cobrarle un café, un crossaint, burlarme de él y ver como el ceño se le transformaba en tristeza y frustración, decidí hacerle caso.

Bueno, pues resultado que al muchacho lo tenían hackeado desde hace varios hum… ¿años?, la verdad es qué ni sabe; sólo la semana pasada contrato a alguien para actualizar su sitio web y de pronto, ¡zascuash! que se da cuenta que tenía una C99 en el servidor web… eso estrictamente no debiese de ser tanto problema, porque pues lo máximo que uno podría imaginar que pasaría es que se heredan los privilegios al shell y se pueden ejecutar algunos comandos, pero obviamente debiesen estar limitados por los permisos del usuario… pero…

Bueno… para no hacerte el cuento largo, estaba ejecutando Apache como root; y como el sitio anterior era un CMS y a veces le daba problemas de permisos al subir archivos y crear directorios desde la aplicación, le dio un chmod 777 ./ a todo el ROOT directory. Ya cuando me empezó a contar eso la verdad es que me daban ganas de reñirme, pero intenté guardar la compostura, lo miré con cara de preocupación y le dije:

- Oye.. la señora que hace la limpieza de mi casa no se ha presentado en una semana, ¿trabajarías como mi sirvienta?

Jajajaja lo sé, lo sé… pero ¿qué puede hacer uno cuando le platican este tipo de cosas?

La verdad es que es complicado ya hacer algo cuanto te encuentras hackeado de esta forma, porque si vemos un simple ejemplo con una shell básica que yo hice en PHP y como se ve cuando se ejecuta, veremos lo siguiente:

Si lo vemos, lo único que estamos haciendo es pasar un parámetro el cual se está ejecutando como parte de la aplicación; lo cual lo hace poco posible de detectar. Al menos no sencillo, para hacerlo se requeriría tal vez algo como Imperva para poder detectar ese tipo de problemas.

Creo que la solución se encuentra en evitar que archivos de este tipo sean admitidos por la aplicación, tal vez incluso poder parsear los diferentes archivos que se suban, sean o no asociados a una extensión y poder evitar que se suban los que tengan contenido malicioso, porque desde el post se ve cuando se esta subiendo un system() que siempre va a ser malo.

Lo peor de todo esto es que una vez dentro no se sabe que tan lejos pudieron haber llegado, el hacerlo es demasiado complicado y puede que en lo que estamos intentando descubrirle, pasen cosas peores… no es burla, pero…

Querido diario… jajaja ya no me creen las técnicas chamaqueadoras 😛

Domingo, 27 de Noviembre de 2017: Remedio Augustiano

Querido diario… sólo tienes que mezclar

  • Una taza de agua
  • Un sobrecito de té Teraflú de limón
  • Exprimir medio limón
  • Endulzar con una cucharada de miel natural
  • 2 Tabcin de día o noche, dependiendo de a que hora lo tomes
  • Una aspirina
  • Un paracetamol
  • 2 Next
  • Un chorrito de RedBull

… Achuuuu!, gripe y calor cachanillo… que mala combinación +_+

Jueves, 23 de Noviembre de 2017: Arigato Mr. Jong

Querido diario… hace no mucho tiempo básicamente tuve que comprometer una ciudad completa. Intercepté correos, cámaras, entré a muchos sistemas SCADA, tomé dominios. Yo lo hacía porque necesita conseguir un empleo, de lo que fuese, pero nadie me daba uno; así que para darme más ventana lo que hacia era eliminar a la competencia.

En realidad fue una estrategia muy tonta, porque en Mexicali la gente aun va a entrevistas y prepara curriculums; así que no funcionaba mucho, pero era mi forma de darme ventaja.

Me volví tan hábil en poder intervenir y espiar la vida de las personas, que para todo ya hacia lo mismo MITM, MITM, MITM; de muchas maneras, pero todo decantaba en un MITM. Un día por ejemplo, intenté conseguir un boleto para un concierto de Belinda, e hice un MITM a la mayor parte de la ciudad… teras y teras de tráfico. Después empecé a usar mucho las pineapple; y un día leí algo muy feo de una persona muy mala, que ni siquiera conozco o había conocido; y lo hice leyendo lo que enviaba por whatsapp desde su celular a otra persona cuando me reconoció, que tampoco conocía; pero también fue mala. Incluso pude saber que desde meses atrás me tenía vigilado en redes sociales (vigilado a nivel normal, es decir todo el tiempo se la pasaba leyéndome).

Una amiga incluso me llegó a decir que si yo podía saber todo; y parecía que si.

Hoy estaba platicando con alguien que siempre ha dudado de mi, ultimamente ya no tanto, pero supongo le parecía muy improbable que alguien que estaba muriendo de hable dedicándose a ser un ingeniero de QA pudiese hacer todo lo que le decía; yo también no me habría creído. Pero ahora que ya sabe que es verdad, me preguntó si de verdad tenía que poner un postip en su webcam, y le respondí de una forma genial:

Como cuando era consultor le solía decir a los clientes “si alguien lo quiere hackear, no importa haga lo que haga, lo van a hackear; mi trabajo no es impedirlo, es que cuando suceda generé el menor impacto posible”; así le diría a quién me preguntase… teoricamente, si; puedo saber todo de todos, donde comes, donde duermes, en que ciudad estas, cuando sales de ella; la ruta que seguiste para llegar a tu trabajo, puedo conocer como te peinaste hoy, la foto que enviaste, los mensajes… si, teoricamente; puedo saber todo.

Querido diario.. Korea del norte tiene submarinos más pro que EEUU.

Lo más curioso de todo es cuando dices cosas que teoricamente no debieses de saber, pero se te olvida y se queda la gente con cara de “o_O” … como hoy, felicité a un amigo por su cumpleaños, y le dije “dice Facebook”, me dio las gracias y todo y a los 5min me dijo “hey, pero yo no tengo Facebook”.

¡Ups!.. perdón, no se como pasó jajaja 😛

Algo que tengo muy presente es que entre más información tengas, más preparado estas para todo. Si yo hubiese obtenido la información de esas dos personas que intercepté sin querer en un restaurante de sushi usando el pineapple hasta un año antes, habría sabido todo.

Tal vez el abuelo DeadSector de Raza Mexicana tenía razón… el hacking es un estilo de vida. Yo como le llevo la contra a todo mundo, siempre me burlé de eso.

Por eso es que muchas veces le decía a mi asesor Leonel de León que todo mundo sabía mi password y no me preocupaba. La verdad es que yo no soy uno de esos hacktivistas amante de las libertades, porque en el fondo me aprovecho de la falla en esas libertades; y la otra es que la información que quiero proteger esta protegida bajo métodos, que bien o mal creo que al menos dificultarían a mucha gente obtener. Si leen mis chats, bueno.. no me importa, mis correos, incluso si leen cuando me conectó a mi blog; no me importa… eso no quiere decir que no haya regresado la visita en más de una ocasión.

Ahora, algo importante es ¿qué haces con todo eso que sabes?. Depende, personalmente hace no mucho un amigo me dijo algo que me hizo molestar mucho; al mismo tiempo estaba engañando a su novia que juraba amar, con otra tipa; yo no hice más que exponer sus conversaciones de Facebook para que ella las leyese. Lo llamé como algo tipo justicia; supongo sabrán lo que pasó. Lo que intercepté en el sushi… es algo muy personal; y aunque lo hubiese mostrado no quería que la diferencia fuese por eso… en la escuela (si, si, yo fui a una escuela) vendía fotografías de las pocas mujeres que había que de pronto mandaban en cueros por messenger, hi5…

Creo que al vendetta de ese entonces; que era el vendetta pro; el hecho de tener información que dañase a alguien en automático sería sinónimo de hacerle pública; al vendetta de ahora… la usaría para mi beneficio personal o para vengarme de alguien cuando lo necesitase.

Lo sé Querido diario.. soy una mala persona.

Por cierto, tal vez debiese de publicarte… la gente se divertiría contigo.

Martes, 21 de Noviembre de 2017: Prófugo de la justicia chilanga

Querido diario…

Estoy todo destemplado de horarios; el día de ayer estaba viendo la cuarta temporada de Vikings y a las 7pm ya me estaba quedando dormido, me quedé tan dormido que ooootra vez volví a tirar el celular, y la pantalla china murió, y murió feo. Me quedé dormido y a las 2am ya estaba despierto… que era la hora a la que despertaba en Bogotá.

Me desperté y me puse a buscar un bug bounty para despejarme, y encontré uno… la mayoría de las personas creen que el hecho de que uses AJAX, React, V.JS y todas esas cosas raras en automático ya estas asegurado. Bueno, la realidad es que no; de hecho yo trabajaba como QA (si, si… doy pena) en una empresa donde usaban cosas monas así más Laravell, y lancé un Burp Suite a lo loco y deje inusables las aplicaciones porque les encontré fallos por todos lados.

Pero bueno, encontré un response más o menos así:

{“success”:true, “status”:”cosa”}

Así que intenté inyectar un tag de HTML en el status, y si, en efecto; lo reflejaba a la primera… así que pues ya tú sabe:

{“success”:true, “status”:”<onmouse over%3Dalert(1)>:cosa”}

Y pues ya, el día parecía muy bien, me resolvieron rápido y me lleve unos cientos de dólares.. cuando de pronto recibí una llamada de casa en el DF, acaba de ir una patrulla a buscarme por delitos como extorsión, asesinato imprudencial, homicidio calificado, tráfico de drogas y otras cosas más…

Me preocupe un poco, así que recordando que mi abogado había metido un amparo para evitar mi encarcelamiento, le pregunté que hacer.

Querido diario… tengo la extraña sensación de que debo de huir a EEUU aprovechando que vivo al lado, porque se va a poner feo.

Por cierto, quieroooooo esto de regalo de Navidad:

Es lo más genial del mundo 😛

Lunes, 20 de Noviembre de 2017: Adelante, atrás, adelante, atrás… atrás, adelante… atrás, atrás

Querido diario…

A veces cuando estas buscando un fallo, sobre todo de los que tienen que ver con input validation, en aplicaciones productivas; puedes tardarte mucho debido a la gran cantidad de variables que llevan. Hay variables para todo, no únicamente las típicas variables para enviar datos, sino hay variables de control, variables que se usan para confirmación de datos como los tokens, o información que viaja por las cookies; e incluso algunos que se usan para controlar el front-end de las aplicaciones.

Usualmente basta con usar un HTTP proxy, modificar y reenviar con el repeater (en Burp Suite), o algo parecido.. pero hoy encontré una extensión de Chrome interesante para cuando tienes que reenviar varios requests a la aplicación:

BugReplay es una extensión que te permite grabar varias requests y generar test cases para probar tus aplicaciones; le encontré muy útil para hacer varios calls en AJAX.

En el web site puedes registrar una cuenta para accerder a reportes y cosas así, pero a mi en lo personal eso no me pareció útil, es más como para QA’s pero… cofff.. coff.. espero jamás tener que ser eso en mi vida.

Querido diario.. hay niveles, ser QA fue de las cosas más denigrantes que he tenido que hacer en mi vida para sobrevivir.