viernes, febrero 29, 2008

Las Chapas

***************************************************************************************
Mercedes Oriol me pidió que escribiera para la revista Red Seguridad un artículo sobre como enfocamos nosotros las charlas, y esto es lo que salió, espero que os guste.

Artículo Publicado en Red Seguridad Feb'2008
***************************************************************************************

Las chapas

Lo reconozco, pasé mi infancia y adolescencia inundado por el “producto sub-cultural americano” y me he chupado todas las películas y todos los comics que el hermano del continente de enfrente nos ha facturado. Superman y Batman, los tres Rambos, las ene partes de Rocky Balboa gritando por Adrian, la peli de Casper y hasta las de Viernes 13 en todas sus ediciones y con todas las muertes y resurrecciones del “bueno de Jason”. ¿Qué futuro me podría esperar alejado del cine intelectual, del mensaje profundo y el debate interno? Siempre me gustaron más las pelis de Arnold “Sualseneger” dando leches o Los Cazafantasmas que las de profundas reflexiones. Estoy perdido para la causa del cine introspectivo y la charla densa.

¿Por qué me sucede esto? No lo sé, supongo que en esas pelis no tienes tiempo de pensar, directamente a la acción y cuando pone “The End” dices.. ¿Ya ha pasado una hora y media?

El tiempo, llenar el tiempo, ese es el objetivo, hacer que ese tiempo que usas para ver algo te alimente el ánimo, el intelecto o la motivación, pero sin que el paso de los segundos sea duro de masticar. En otra de las pelis americanas de mi adolescencia, El Gran Halcón, Bruce Willis y Danny Aiello, dos ladrones de guante blanco, sincronizan sus robos mediante el uso de canciones. “Tenemos dos minutos y cuarenta segundos… ok… entonces …Would you like to swing on a star. ¡Me encanta!

Esto me ha marcado de tal manera que cuando preparamos unas conferencias y estamos organizando las agendas siempre echamos cuentas:

“Vamos a ver, el registro, la keynote, la primera charla, la segunda charla, el café, la tercera charla, la cuarta, la despedida, el catering, la sesión de tarde…mmm… tres por siete veintitrés me llevo una…mmm. ¡Vale!, vamos a tener sentada a la audiencia el tiempo de ver la Trilogía Extendida del Señor de los Anillos e incluso nos queda un ratito para ver el making-off de la peli o el reportaje sobre el idioma élfico”

A partir de ese momento tenemos que conseguir el mismo efecto, o al menos alguno similar, al que se consigue viendo esas tres películas, para evitar que el espectador de la charla no se vaya. Cuando digo “no se vaya” no quiero decir que se vaya “físicamente” pues es probable que la educación de la buena y sufrida audiencia deje depositado, en señal de cortesía, su bien cuidado cuerpo mientras su mente repasa los quehaceres de su trabajo, la lista de la compra o si ha enviado ese mail tan importante para la reserva de la casita rural para pasar el fin de semana en compañía de ese amiguito suyo que conoció por el Adult Friend Finder.

Sí, seguro que mi discurso es muy interesante cuando hablo de las VPNs, “…y con ISA Server 2006 podemos utilizar PPTP que cifra y autentica la conexión con PPP y enruta el tráfico de red con GRE. También podemos con ISA Server 2006 utilizar L2TP que permite cifrar y autenticar nuevamente con PPP pero enruta con IP y nos permite usar ESP con lo que no solo ciframos y autenticamos a nivel de PPP sino que lo hacemos a nivel de máquina evitando de esta forma los ataques de MITM…” …. Mmm… sueno interesantísimo, ¿verdad?

Seguro que es un tema apasionante y hasta los más enfermos por la tecnología (que somos muchos) lo podremos encontrar hasta erótico, pero reto al más pintado a que se chupe una sesión continua de 4 horas así. Yo ya lo intenté en mis etapas de alumno en la universidad …y no soy capaz, por lo que mis visitas a la cafetería se hicieron más continuas…

Hay que entretener al oyente, hay que atraparle, hay que, al igual que se hace con la pareja, mantener el interés vivo para que no se vaya de nuestro lado ese tiempo que nos regala. Nosotros, cuando preparamos una sesión técnica, hacemos la lista de cosas necesarias:

“Vamos a ver ¿tenemos la agenda? Sí, ¿Tenemos la PPT? Sí, ¿Tenemos las demos? Sí, ¿Tenemos los chistes? No… Horror, a currar a saco en los chistes”

No todas las sesiones tienen que ser “humorísticas”, pero nuestro estilo va por ahí. Nunca seremos actores dramáticos a los Marlon Brando y a mí me han comparado con una versión más chusquera y cutre del macho ibérico español representado por Torrente, pero cada uno puede decidir su estilo. Lo que sí hacemos es aplicar una serie de reglas básicas.

Reglas básicas para no ser un coñazo en una charla técnica.

- La “namber guan”: Toda presentación técnica tiene que tener demos. Está muy bien lo que contamos, y seguro que todo el mundo cree en nosotros, pero como mentes técnicas y experimentales prefieren verlo.

- La “chu”: La presentación que se proyecta que sea un guión, no que sea un librito de lectura para el ponente. La audiencia sabe leer y si al final sólo se va a leer un discurso, pues nada, lo das impreso o lo mandas con tu amigo el “emilio” por Internet y nos ahorramos el desplazamiento y el vernos las caras.

- La “zri”: La charla tiene que tener argumento. Elige el guión, plantea un asesinato y que se resuelva a lo largo de la charla, o ves narrando acontecimientos hasta el gran final, pero no sea inconexa.

- La “fur”: Toda charla debe estar preparada antes. Sí, tienes una gran labia, te encanta oírte hablar y eres un/a gran conversador/a, pero cuando das una charla técnica, lo que importa es que la gente aprenda algo y que no se pierda. De esto adolecen muchas de las “charlas magistrales” dónde el/la ponente, con tres ideas en la cabeza da vueltas a lo mismo durante unos largos cuarenta y cinco minutos dónde podríamos haber visto un episodio de CSI Miami.

- Entretén a la audiencia. Siéntela cerca, mírala, estate con ellos, no en lo alto en un atril pensando en “¿Cómo iré?”. Tú estás allí con ellos pasando el mismo tiempo.

En nuestro trabajo, como ponentes de charlas técnicas de seguridad, teníamos un problema. Utilizamos el guión de una película que ya habían visto, se trata de la película de Los 10 mandamientos. “Si no usas cifrado en la red … un atacante te podría ver el trafico. Si no usas SIP con TLS… un atacante podría hacer wiretapping de tus mensajes VoIP. Bla, bla, bla… podría bla, bla, bla”

Nada, rollazo y nadie nos hacía ni caso. Solución: Cambiemos de peli, pasemos a “Twin Peaks”. Empieza la sesión y lo que hacemos es una demostración de cómo grabar las conversaciones de VoIP de alguien que llama por teléfono. De repente la audiencia abre la boca mientras piensa… “¡Coño!, yo tengo VoIP, ¿podrían haber grabado lo que le he dicho a la rubia de contabilidad?” A partir de aquí todos, o la gran mayoría, encantados, deciden que les interesa el tema este del cifrado AES, la autenticación Kerberos y esto del SIP-TLS.

Está bien, la gente se queda, pero si la charla es muy larga al final algunos se aburren… “¿y si traemos a un cómico que haga de maestro de ceremonias?”. Lo probamos y sí, a la gente le gusta, pero el cambio entre el cómico y el técnico es drástico, se nota mucho, así que… “¿qué os parece si fusionamos algunas cosas del cómico con el técnico y hacemos que sea el mismo técnico el que divierta a la audiencia sin necesidad de usar un cómico?”. “Perdone usted, yo soy un señor ingeniero, muy inteligente, muy estudiado, y muy serio y muy reconocido y que sé mucho y no necesito hacer el payaso”. Cierto, usted está en lo cierto, por eso, como para contar IPSec, L2TP o PPP no hace falta ser tan “tan”, quizá, y sólo quizá hay que seleccionar otro ponente. Algunos son buenos speakers otros son grandes ingenieros pero muy malos speakers. No pasa nada no se puede ser todo en la vida. Hay muy buenos speakers que son muy malos ingenieros.

En nuestro trabajo de speakers técnicos hemos sido Batman Y Robin luchando contra el Pingüino, hemos sido Sheriffs que luchan contra los cuatreros de las webs, Darth Vader y Obi Wan luchando por no caer en el lado oscuro de la fuerza, Legolas y Gimly perdidos en la Tierra Media por no usar los servicios de Geo-localización para los dispositivos móviles, Los Cazafantasmas atrapando fantasmones en la Web 2.0 que está llena de ellos, también conocidos como técnicoless, hemos sido estrellas de rock que se quejan por volver a hacer una gira por España, unos Rusos vendiendo el Linux comunista a nuestra audiencia, árbitros de fútbol o los 4 Fantásticos luchando contra las inyecciones de código en las aplicaciones web realizadas por el maléfico Doctor Muerte. Vale, nosotros nos pasamos algunas veces de tuerca y cogemos los disfraces… que le vamos a hacer… uno ha nacido para faralá y no tuvo oportunidad de mostrarse.

¿Hay que hacer el payaso para dar una charla? Pues no, no es necesario, pero lo que sí debes es buscar el equilibrio entre el tiempo que vas a tener a la audiencia y lo entretenido de las charlas que van a recibir, compensar tiempo, mensaje y entretenimiento. Ah, y recuerda que un buen ponente por muy entretenido que sea, si su charla es muy larga puede ser cansino.

Así que nada de dar chapas aburridas, y, si lo vas a hacer, avísame que ya me busco en Internet un buen manual sobre eso y nos ahorramos el tiempo y el dinero los dos.

Saludos Malignos!

jueves, febrero 28, 2008

Heroes

Hola mis héroes!

El lanzamiento de Windows Server 2008, Visual Studio 2008 y SQL Server 2008 estaba centrado en los Héroes, es decir, en los trabajadores de la tecnología que hacen cosas buenas para que el mundo avance, relegando las tecnologías a lo que son: herramientas para hacer algo. No son fines son medios.

Tras el día de ayer, Windows Server 2008 está lanzado, así que Windows Server 2003 pasa a ser la versión antigua. Ha tenido 4 años y algo de ciclo de venta y ahora entra en la fase de soporte hasta llegar a la fase de retiro allá por 2012 según cuentan los planes. Spectra seguirá parcheando y manteniendo el producto hasta el 2012, pero ahora se vende Windows Server 2008. Muchos de nuestros técnicoles favoritos ya pueden comprar, quiza en algún sitio pirata, Windows 7, pero este no llegará hasta que Windows Server 2008 acabe su ciclo, es decir, allá por el 2012 (chispa más o menos) para la versión servidora.

Tras acabar el evento algunas cosas seguro que serán mejorables pero de lo que no cabe duda es de que en el evento que ayer terminó la subsidiario de Spectra Ibérica se dejó el alma.

Organizar un evento en el que se ha hecho trabjar a tantos partners juntos para realizar charlas técnicas de dos días a coste 0 para todos los asistentes, moviendo máquinas y personas (allí estaba todo el mundo coño!), preparando sesiones, coordinando agendas de tanta gente, gastando pasta en dar todo lo que se podía a los asistentes, intentando agradar al máximo, etc... es un trabajo brutal.

La subsidiaría fue tan al máximo que la gente que participamos en el evento fuimos los únicos que nos tuvimos que pagar la comida (Sí, spectra echó todo el presupuesto que tenía allí). Pero... todo por conseguir tener este eventazo. Yo he estado en eventos los últimos 7 años y os aseguro que es el más grande que he visto organizado en España en este tiempo. La gente estaba demacrada después de haber estado organizando esto y muchos están de vaciones desde hoy hasta el miercoles por el cansancio y la tensión acumulada.

La otra cara la ponía Elvis, un estudiante de la Universidad Pontificia de Salamanca en Madrid, recién llegado de la Republica Dominicana, que se llevó la Harley Davidson. Tomando una cerveza en la fiesta de después le dije:"Venga va, tú preferías a la rubia, ¿verdad?". Inma del Moral fue la encargada de dar el premio. "Chico, yo le iba a decir, tú vienes con la moto, ¿no?" me contestó. Luego, para constatar la realidad le dije: "Ahora en serio Elvis, tú eres familia de alguno de los organizadores o algo, ¿no? qué ya sabemos que todos los premios están amañados". Pero no, él ha venido a hacer un Master de Seguridad Informática (y además con un poco de mala suerte será alumno mio...) y estaba pletórico.

Allí en la fiesta estabamos los crapulillas, "la beauty", los ITs y los Devs, los estudiantes y los profesionales, los de siempre y gente nueva, muchos amigos...y mucha comida y bebida junto con el concierto de musia pop.

En el evnto entregué unos calzoncillos firmados que me solicitaron y además me regalaron muchas cosas, me dieron mil besos y mil abrazos y lo disfruté como nadie. A esas horas... ¿a quién le importaba ya que fueramos tan malos todos?.

Estabamos allí todos, tan contentos, con el alcoholimetro que Intel había regalado a los asistentes para que supieran cuando parar cuando de repente una llamada del teléfono rojo hizo que se quitara la bebida a los asistentes, se retiraran los perritos calientes y los canapés y que apareciera gente recolectando dinero. ¿Qué pasó? Pues que se había cumplido la amenaza, la UE ratificaba la multa de 899 millones de Euros a Spectra y había que recortar gastos.

En fin, con lo bien que ibamos... y nos quitaron la orgía sexual del final...

Saludos Malignos!

miércoles, febrero 27, 2008

No Lusers - Nº 19: SIMAX... o Menox


Dedicado a mi amigo Iñaki Ayucar, creador de SIMAX

Saludos Malignos!

La Sin de Spectra

Me olvidaba!!

Hoy es el lanzamiento también de SQL Server 2008 y hoy tenemos que hablar de Seguridad en SQL Server 2008, pero claro, ahí hay poco que mejorar, pues SQL Server 2005 se ha convertido en la 0.0 de Spectra.


Informe de Secunia de bugs en SQL Server 2005

Saludos Malignos!

Regreso al hogar


Hola a todos desde mi "Madrí"!

Ayer fue un día genial. Llegar al Palacio de Congresos y ver a tal cantidad de gente allí fue increible. Estaban registradas más de 6.000 personas y vinieron unas 3.000 que disponína de una agenda de formación enorme. Era como estar en un Mini-Teched, de dos días en lugar de 5 días. La diferencias con el Teched son muchas y lógicamente en el Teched vienen ponenetes internacionales que no están en el Lanzamiento pero sí que había cosas chulas.

En este lanzaminto hay sesiones plenarias con charlas de presentación como la de Emilio Duró sobre como ser feliz, marketing de producto para que la gente conozco el presente y el futuro de Windows Server 2008, SQL Server 2008 y Visutal Stuido 2008 y sesiones técnicas como los track de desarrollo con dispositos móviles, las sesiones de LinQ, el Directorio Activo y los Hands On Lab.

En la sala de exposiciones están otros encuentros como los Corners dónde se producen charlas al "Ask the Expert" y dónde te puedes econtrar con Fernando Guerrero, Pablo Peláez, Iñaki Ayucar y su simulador Simax, David Salgado, David Carmona, al gran Sauron, Unai Zorrilla, José Manuel Alarcón, Pedro Laguna, Rubén Alonso, Silverhack, Juan Luís Rambla, David Cervigón, Miguel Hernández, Filemaster, Dani Comino, etc... así como muchos fabricantes que han hecho un despligue enorme para estar allí y aportar el máximo de valor a la charla y gente de prensa, como no.

Todo esto aderezado de bebida, comida (picnic malo!), perritos calientes o cafés gratis, el sorteo de un Harley Davidson, recogida de goodies y si no, participar en uno de los hands on lab que hay allí gratutitos para los que tengan sus plazas.

Aun queda otro día, dónde el abuelo y yo hablamos de 14:00 a 15:00 horas en la sala plenaria sobre seguridad y queda todo un día de hands on lab, la charla de Steve Balmer y demás, pero con lo que vi ayer os puedo decir que este ha sido el mayor despliegue a la hora de organizar un evento por parte de Spectra que yo haya visto jamas en España en mi tierna y corta vida trabajando por aquí.

Si estás por allí nos vemos y charlamos. Yo iré sobre las 12 y llevaré la ropa interior en la mano que me han encargado que lleve unos calzoncillos firmados ...(me piden unas cosas)...bueno... también he de decir que me han regalado un nanocoptero (gracias preciosa!) y una libreta de Spiderman Manga (el gran David) y me mola!

Yo me lo estoy pasado genial con toda la gente que me encuentro. Reencontrarme con el abuelo o el gran Germi (mi padrino cuando yo empecé con esto) siempre me alegra (las cosas como son), y despues de estar aquí en casa no es que tenga especiales ganas de regresar a Londres. Mola estar con tu gente.

Saludos Malignos!

martes, febrero 26, 2008

No Lusers Nº 18: Freak




He pensado que II ...


¡Hola malignos!

Ya muchos habéis leido el hackeo que le han realizado a la web de Jazztel, así que creo que es momento para hablar un poco de ello. Un anonimo que prefiere "seguir en el economato" se había enterado de esto y le hizo un poco de análisis al sitio, así, como por jugar y eso, a ver que era lo que se escondía detrás de allí.

Tras mirar la web el sitio tenía XSS,SQL Injection, Blind SQL Injection, XSS, un cucharón, etc... Cuando he estado viendo la web no he podido evitar el ir a hacer una checklist del artículo de "He Pensado que..." y casi, casi están todas.

En fin, aquí os dejo algunas capturitas de los cucharones que ciruclan "por ahí", que tienen su gracia.

La "sam" o algo así

El administrador de discos...o algo así

El drivers_etc_hosts...o aglo así

En fin, será que no hay dinero para gastar en buenos técnicos y seguridad informática...

Ahora están "en ello", pero... ¿Lo harán bien o irán a las siguiente fases? ¿Descubrirán dónde tienen el SQL Injection y se dejarán los Blind SQL Injection? ¿Seguro que arreglan todo?

Saludos Malignos!

lunes, febrero 25, 2008

Estamos Lanzados!

Muchos me habéis preguntado ya que cómo va a ir lo del lanzamiento y eso, así que os informo cuales van a ser mis planes, para ver si os encajan.

El día 25 por la tarde llegaré a Madrid a ver si me entero de que es lo que vamos a hablar el día 27 el abuelo y yo (XD). El día siguiente el día 26, en la sala de Exposiciones EN LA ZONA DE SQL SERVER 2008 estará la seta de mis compañeros de I64 dónde estarán mis compañeras y dónde estaré yo a partir de las 12 de la mañana para que el que quiera me pueda encontrar. Así que si:

- Eres un ganador de algún premio y te vas a pasar a recogerlo.
- Quieres saludarnos.
- Quieres información de la empresa.
- Quieres apuntarte a los hols gratutitos que se van a realizar en la Sala Londres.
- Te apetece que te haga un dibujo de No Lusers.
- Quieres invitarme a un café.
- Me vas a hacer un regalo.


Pues estaré por allí supongo que el tiempo suficiente para desayunar y comer gratis, que la vida en Londres no es de grandes comidas...

El día 27 por la mañana, llegaré al evento sobre las 12 también, pero esta vez para ir directo al auditorio porque creo que sobre esa hora, chispa más o menos, cantamos el abuelo y yo. Después del evento, (y de que hable el amigo Steve... nosequé, que va a hablar vía Interné... o algo así...) me quedaré por allí con el abuelo para despedirnos y planificar su venida a Londres que me lo traigo 10 días a este pozo de inmundicia y perdición...para preparar la charlita de Blackhat... y si os apetece nos tomamos unas cervezas...

Así que, si puedes venir me molará saludarte, tomar un café contigo y tirarnos unas fotos, ¡leñe! ¡Qué no se diga que no os quiero ... malignamente (snif).

Saludos malignos!

PD: Si vines a por tu premio del reto hacking... avísame que me lo lleve!

RMS se va...

Como ya sabéis Bill pasó a mejor vida, a una vida llena de tiempo para dedicarlo a hacer lo que le gusta. Y... como todo esto va por barrios, pues también se quería ir nuestro amigo RMS.

RMS estaba ya necesitando tiempo, pues depués de ver todo lo que tiene que hacer para navegar (y eso que existe el firefox!) y, teniendo en cuenta que su ad está actualmente activo (notense los cambios de estado en el anuncio) pues será que necesita tiempo. Así que, raudo puso un anuncio hace casi un año en el que decía: "I would like to hand over Emacs maintenance to one person or a small team."

Y ahí quedó el misterio. Ahora, casi un año después alguien preguntó sobre qué había pasado con esta petición y el gran RMS ha dicho: "Stefan and Yidong offered to take over, so I am willing to hand over Emacs development to them." así que parece que al final... se va!

Suerte con lo de tu anuncio... con el otro....!

Saludos Malignos!

No Lusers - Nº 17: Blind Justice!

Hay un superheroe en este Interné listo para luchar contra la injusticia aplicando "Blind SQL Injection Justice"...


DaleDuro


Saludos malignos!

domingo, febrero 24, 2008

Informáticos por Londres:
El Chico Maravillas

Le habéis podido ver haciendo esas cosas que hacemos nosotros en las charlas. Es MVP de Spectra en C#, ha trabajado en Spectra con Windows Mobile en Redmon, con Google en UK y ahora con Yahoo!, siempre, jugando con aplicaciones para móviles. Ahora está viviendo en Londres (aunque ahora esté de viaje en California). Es Ricardo Varela, mi primo Laggy.

Ready to shoot

1.- Después de haber currado en Spectra, en evil Google y ahora para Yahoo! creo que es obligada esta pregunta, ¿es verdad que los informáticos no ligan?

En realidad lo de que los informaticos no ligan es una cortina de humo creada precisamente por las empresas que mencionas, con el apoyo de IBM, Dell, Oracle y algunas mas. Se intenta ocultar el hecho que todos conocemos: que Informatica es la tercera profesion mas sexy de todas, despues de bombero y masajista y seguida por fisico nuclear. No hay nada mas seductor que un informatico.

(yo lo he dicho, ahora si cuela, cuela...)

2.-¿Es sexy tu compañero de piso?

[]

3.-¿Cuántos discos de Música te compras al mes?

Pues creo que la media esta en 2-3 por semana asi que unos 10 por mes. Me gusta muchisimo coleccionar discos

4.-¿Cuánta pasta cuesta compartir un piso en Londres… no sé, por la zona de Pimlico por ejemplo?

La vivienda es lo mas caro de Londres, eso es cierto... pero merece la pena pagar un poco mas por vivir en una zona cercana al centro. Ademas si te puedes buscar un companyero puede que se os quede el alquiler en unas 700-800 libras al mes. Sumale a eso Council Tax, agua, electricidad, drogas y otros costes fijos y nos ponemos en que te gastas algo menos de 1000 libras en vivir por aqui. Eso si, buscate un companyero apanyado, no un peor de la vida como el mio, que se pasa todo el dia viendo porno en internet (eso aumenta la factura, claro)

5.-¿Tu peli favorita?

Uf! Dificil me lo pones. En pelis, musica y libros es dificil elegir uno solo... estoy entre decirte una nueva (como Matchpoint) o una clasica (como El Padrino)

6.-¿Cuántos NDAs tienes activos en esta entrevista ahora mismo?

Dejame pensarlo: el de MVP de Microsoft, el de ex-employee de Google, el de employee de Yahoo... creo que de IEEE solo tengo el de conflict of interest asi que... solo tres! :)

7.-¿Si no fueras informático serías…?

Estrella del rock, claro! Tambien me gustan pinchadiscos en un bar de los setenta o panadero en una panaderia de playa...

8.-¿Cuántos papeles te exigen si quieres alquilar un piso en Londres?

Hasta el graduado escolar, me temo. Lo mejor para venirse aqui (si la empresa no te hace el papeleo) es tener algun amigo que pueda avalarte la firma. Creo que Inma comento en su entrevista el problema circular entre "necesito direccion para tener cuenta en el banco" y "necesito cuenta para poder alquilar". Una vez tienes resuelto lo de la cuenta, te pediran una autorizacion del banco, una referencia de tu anterior casero (si tenias) y un deposito (de entre un mes y dos meses dealquiler) por adelantado. No es tan dificil como parece, sobre todo si pueden contactar con alguien aqui antes de venirte.

9.-¿Y si en la casa ha habido un asesinato antes.. .también te los piden?

Creo que entonces son mas relajados con los papeles... ya me extranyba a mi que nos hubieran hecho el papeleo tan rapido!

10.- ¿Quién te ha impresionado cuando le has conocido?

Aparte de mis amigos, quieres decir? Esto no lo digo en broma: tengo la suerte de haber conocido a un monton de gente bastante impresionante, supongo que tambien porque las cosas que yo encuentro "impresionantes" tienen mas que ver con el caracter y lo que la gente puede aportar a algo que con el simple asombro. El problema es que si te doy nombres aqui no le sonaran a la mayoria. Si te refieres a alguien famoso que haya conocido y que me llevara una impresion bastante mejor de lo que podia haber pensado, yo destacaria a Bill Gates. Se que es el demonio y todo eso peero... es una persona bastante increible.

11.-¿Con quién has compartido urinarios (no es una pregunta porno, las porno vienen luego) en esas empresas de dios?

Mmm... especificamente encontrarmelos en el servicio creo que solo a Don Box en Microsoft. Si contamos reuniones y/o cafeterias podemos anyadir a Pat Helland (famoso por DCOM), Michael Howard (famoso por ser fino y seguro), Guido Van Rossum (famoso por Python), Larry Page, Sergey Brin y Eric Schmidt (famosos por la cosa esa de buscar por links), Joshua Block (famoso por su trabajo en Java), Rasmus Lerdorf (famoso por PHP)... e incluso Steve Ballmer (famoso por lanzar sillas).

Pero aparte de los famosos, creo que en todos esos sitios la ventaja es el resto de gente que conoces y lo que puedes aprender.

12.-¿Son buenos los ingenieros españoles o tenemos que aprender de otros países?

Esta es una pregunta con truco: los que son buenos, son muy buenos y los que no... pues un poco menos. Yo creo que en media Espanya esta bastante al nivel formativo que tienen otros paises, a pesar de que nuestro sistema universitario esta yendo de mal en peor ultimamente (espero que queden universidades donde sigan dando C en los primeros cursos). Creo que lo que mas pagamos a la hora de trabajar codo con codo con ingenieros de fuera es nuestro nivel de ingles. Esto no tiene matices: para trabajar en ingenieria TIENES que saber ingles. El suficiente para entender documentos tecnicos (que suelen estar solo en ingles) y para comunicarte en un entorno de trabajo y por escrito.

Esto no es tan dificil como parece pero... aun nos cuesta un poco

13.-¿Qué echas de menos de España?

Mi familia, mis amigos, el sol, la calidad de vida que solemos gastar por termino medio...

14.-¿Y qué es lo que más te gusta de Londres que no tenías en España?

La heterogeneidad de gente, la oferta cultural, el hecho de que vivir en otro sitio hace que mires las cosas de otro modo...

15.-¿Qué coño haces actualmente en Yahoo!?

En mi tarjeta pone que soy "Mobile Integration Engineering Lead". Basicamente mi equipo de frikis y yo nos ocupamos de integrar y extender los productos de Yahoo para el mercado europeo. Esto viene a ser desde retocarlos para que se ajusten al "branding" de algun operador (para los que no entienden euskera: cambiarle los colorines) a anyadir nuevas formas de hacer validacion de usuarios (para evitar que los ninyos pequenyos busquen porno desde su movil, que para eso ya esta el ordenador) o lanzar el producto en nuevos paises.

16.-¿Y en el IEEE?

Este anyo estoy mas bien parado. Sigo haciendo actividades en el comite de estudiantes pero por el tema del trabajo estoy teniendo que ausentarme presencialmente hasta dentro de unos meses de los otros dos proyectos en que participaba: IEEEXtreme (la competicion de programacion) y el comite de Nuevas Iniciativas (para evaluar y financiar nuevos proyectos dentro de IEEE).

17.-¿Por qué Yahoo! Le dice que no a Bill?

A Bill? Creo que al que le han dicho que no es a Ballmer, mas bien :P

No se, creo que Bill Gates llevaba Microsoft "de otra forma" y que el movimiento general de adquirir Yahoo ha sido cuando menos extranyo...

Ya veremos en que acaba esto pero mi opinion personal de usuario final es que quiza las dos companyias funcionan mejor separadas, al menos tal como estan las cosas ahora

18.-¿Es este el año de Linux en el desktop?

Sin duda, igual que el anyo pasado, y el otro, y el otro... Es mas, te adelanto que el anyo que viene TAMBIEN lo sera.

Yo uso Linux como mi sistema principal desde hace anyos. Creo que el problema es que la gente espera alguna especie de aparicion radical "a-la-windows95" que tome al asalto el mercado de escritorio. Se estan haciendo avances en el tema, eso si, pero creo que hasta que alguna de las grandes no se remangue y se ponga a hacer el "trabajo sucio" de recoger los flecos sueltos que le quedan a Linux desktop tanto en el area "personal" (drivers, configuracion) como en el area "business"
(gestion centralizada, herramientas de integracion), no se puede pegar "el salto dimensional"

Mi opinion es que la cosa va a mejor y que el dia que haya una Ubuntu que tenga un sistema como la Management Console de Win2000 y una Ubuntu Server que lleve algo como System Management Server (o similar)... estaremos hablando de otra cosa.

19.-¿Es el pagerank el primer algoritmo para un buscador basado en análisis de links?

Esta pregunta va con cuernos, no? A ver, la idea de Larry y Sergey con Pagerank no es la primera que se basa en analisis de links. Yo soy de la opinion de que ninguna idea es del todo original, todas se basan en experiencias y en influencias de tu entorno, nadie vive en una burbuja. Si miramos las publicaciones sobre pagerank (como
http://dbpubs.stanford.edu:8090/pub/showDoc.Fulltext?lang=en&doc=1999-66&format=pdf&compression=) podemos ver que tienen referencias a investigaciones anteriores, como toda idea que se precie.

Pero yo soy de la opinion que lo importante no es solo la idea (que puede ser original o no), lo que hace a algo realmente bueno o no es la implementacion de esa idea. Y Larry y Sergey definitivamente hicieron una implementacion bastante buena (tan buena que cotiza a varios cientos de dolares por accion, vamos).

20.-¿Qué consejo le darías a un ingeniero español que quisiera dar el salto a una de las grandes?

Que no se lo piense mucho y a por ello! Si no te atreves desde luego ya tienes el NO asegurado. Si te da problemas el idioma: ve a una academia, haz una estancia en el extranjero unas semanas, lee y ve peliculas solamente en ingles. Lo que sea para que te sientas seguro de poder ensenyar lo que sabes en una entrevista. Y una vez estes en la entrevista, recuerda que mas importante que "saberse la respuesta"
es "razonar adecuadamente". Ah! Y si necesita algun contacto y le puedo echar una mano, que me de un silbidito!

No Lusers - Nº 16: Ping!




sábado, febrero 23, 2008

Corolario al Solucionario del Reto Hacking VI

Hola a todos,

Dani ha publicado un solucionario del Reto Hacking VI perfecto, pero supongo que muchos os preguntáis que coño pasa por mi cabeza cuando preparamos un juego de estos. Os doy mis impresiones.

Fase 1:

Estaba pensada para ser pasada usando Aritmethic Blind SQL Injection, es decir, jugando con las matemáticas. Pero había varias formas de pasarlo.

- Arithmetic Blind SQL Injection: Utilizando maxint 2147483647 y sumarle el valor ASCII de la letra para que salga el mensaje de "uy, uy, uy": 2147483647 – Contador + (select ASCII(letra) from tabla)

          -> Será verdad cuando salga “Uy,uy,uy”
          -> Será falso cuando salga “vamos garrupitaze”

- Generando división por 0:
          -> (1/1) ->Verdad cuando salga “vamos garrupitaze”
          -> (1/0)->Falso cuando salga “error de ACCESS”.

- Devolviendo 1 o vacio. Si era verdad sale el mensaje de “vamos, vamos, garrupitaze” y si no, aparece el mensaje de error de ACCESS.

          -> (select 1 from garrupito where 1=0)
          -> (select 1 from garrupito where 1=1)

¿Cómo saber el nombre de las tablas y los campos? Pues es ACCESS, así que imaginación o… haber asistido a alguna sesión de Mandingo de Bruteforceo de Aplicaciones web. Una vez que tienes la lógica te creas un pequeño diccionario y pruebas sustituyendo. Por ejemplo, descubrir tablas con los casos anteriores sería.

- Artithmetic: 2147483647 * (select 1 form tabla): Si tabla existe sale “uy,uy,uy”, de lo contrario tabla no existe.

- División por cero: (1/(select 1 from tabla)) -> Si existe sale “vamos, vamos, garrupitaze”.

- Devolviendo 1 o vacío: (select 1 from tabla) -> Si existe sale “vamos,vamos, garrupitaze”.

Averiguar el nombre de los campos se hace igual pero para que no moleste basta con poner algo como:

          (select 1 from tabla_descubierta where campo=valor or 1=1)

Si el campo no existe o no es del tipo de datos adecuado peta y devuelve valor vacio. (Recordad que ACCESS no tiene optimizador de consultas). El resto… ya está en el solucionario de Dani.

Fase 2:

La forma sencilla de pasarse la segunda fase es cambiar la extensión al archivo por .rar y listo. Hubo que poner contraseña para que al descargar la imagen el navegador no detectase el rar y te lo permita descargar como .rar. No hubiera tenido gracia. La pass no era parte del reto, solo para evitar eso y Dani explica esa fase a las mil maravillas en su solucionario… y… habrá Reto Hacking VII para después de semana santa, creo que el Viernes 4 de Abril, será la fecha perfecta. ¿os parece bien?

Apuntes Finales

Sobre la DLL y el código .NET. Pues.. teníamos petada el registro de la dll en el IIS, la desregistramos, la volvimos a registrar y listo. Como no esperábamos que nadie encontra la ruta del log (como pasó con el retohacking4) pues no le pusimos pass al log. En el momento que SealTeam nos avisó, le pusimos pass y luego arreglamos lo de la dll. La forma de Sealteam valió porque encontró el fallo, así que no pasa nada.

No sólo SealTeam siguió la pista del juego de ajedrez y vista, ¿verdad mandingo? y quiero publicar el solucionario de Palako, si consigo que me lo envíe junto con una pequeña herramienta que hubiera ayudado a más de uno con la fase dos, ¿verdad penyaskito?. El gran RoMaNSoFt deberá publicar su solucionario en "su sala de trofeos particular" o si no no sería él ¿verdad Roman?. A Bambú, Kabracity, TheSur y g30rg3_x mi enhorabuena por sacarlo. A los que lo saquéis con solucionario y todo os pondré un positivo, por hacer los deberes y estudiar, así que a currar y ¡nos vemos en el Reto Hacking VII!

Saludos Malingos!

No Lusers - Nº 15: Grupo de Ayuda




viernes, febrero 22, 2008

Solucionario Reto Hacking VI por Dani Kachakil - Parte II

***************************************************************************************
- Solucionario Reto Hacking VI por Dani Kachakil - Parte I
- Solucionario Reto Hacking VI por Dani Kachakil - Parte II
***************************************************************************************

Parte 2: Subir nota

Como no queremos conformarnos con ese miserable cuarto de punto que obtenemos al superar la primera fase, vamos a intentar subir nota superando también la segunda y última fase del reto. Al acceder a esta parte, nos encontraremos con un ejercicio curioso para hacer en casa. Nos descargamos un fichero PNG y tenemos que responder a la pregunta de cómo se puede hacer mate en un solo movimiento si jugamos con las blancas.

Fichero PNG

Cualquiera que conozca las reglas del ajedrez sería capaz de determinar rápidamente que con esa disposición de piezas no hay forma de hacer mate en una sola jugada, sino que hacen falta dos: adelantar el peón a E8 (promocionando a dama) y moviendo la torre de F2 a F7.

Parece que la pregunta tiene truco, así que intentamos introducir diferentes movimientos (incluso aunque sean inválidos) y otras cadenas de texto buscando alguna vulnerabilidad sin éxito. La pista decía que teníamos que agudizar la vista, que la cosa va de partes otra vez y el enunciado de la propia fase nos indica que el ejercicio lo tenemos que trabajar en casa. ¿Será otra prueba de esteganografía?...

Hay un pequeño detalle que me llamó la atención y es que a pesar de que el formato PNG no tiene pérdida de calidad, la imagen del tablero no era del todo nítida, como si estuviera comprimida en JPEG. Parece que la elección del formato no ha sido casual, pero no vemos nada especial en la imagen y tampoco en la metainformación que podría contener.

Vamos a documentarnos un poco sobre el formato PNG, ya que conociendo su estructura interna tal vez encontremos algo útil. Es curioso que el formato defina una etiqueta específica para marcar el fin de la imagen (IEND) y es más extraño aún encontrar tanta información después de esa etiqueta. Este hecho podemos comprobarlo incluso con la funcionalidad de búsqueda del bloc de notas.

PNG en la herramienta más poderosa jamás creada

Si utilizamos un editor hexadecimal y eliminamos todo el contenido que aparece después de la etiqueta IEND, comprobamos que el nuevo fichero generado se visualiza exactamente como estaba, así que deducimos que esa parte realmente no pertenece a la imagen y que a su vez es ignorada por el código que está renderizando el PNG. Por otro lado, entre tanto texto ilegible también llama la atención encontrarnos con el texto "Rar!" justo después del final de la imagen. Caracteres que casualmente coinciden con los de la cabecera de cualquier fichero comprimido con RAR. En realidad esta técnica se puede considerar como aplicación de esteganografía, ya que logra el objetivo de esconder un mensaje (en forma de fichero) dentro de otro.

Ahora solamente nos queda extraer esa parte interesante (desde "Rar!" hasta el final del fichero), guardándola como nuevo fichero con la extensión ".rar", volcando el contenido con algún editor hexadecimal. También se podría haber renombrado el PNG directamente sin modificarlo, aunque no sé si esto dependerá de la implementación del descompresor que usemos (como mínimo parece funcionar bien con el WinRAR v3.50)

Sin embargo, al abrir el fichero comprimido nos encontramos con un último paso, ya que se encuentra protegido por contraseña, pero probando con "garrupito" conseguimos abrirlo (de no haber sido tan trivial, tendríamos que haberlo hecho con fuerza bruta). Dentro del RAR encontramos otro fichero PNG en el que está la solución que ya conocíamos: más o menos dice que es imposible resolverlo en un solo paso. El reto termina introduciendo la frase exacta (incluyendo algún error ortográfico que aparecía por ahí).

Agradecimientos y comentarios

En esta ocasión el reto se publicó a la hora prevista (20:00) con una puntualidad increíble, lo cual se agradece. También me ha gustado la idea de mostrar la tabla de concursantes, ya que contenía información interesante como la hora de registro de cada uno, la evolución por fases en tiempo real, el tiempo invertido en cada una de ellas, etc.

Esperemos que la próxima vez las pistas sean un poco menos rebuscadas y más útiles (tal vez la insistencia en profundizar en la pista de Alonso era innecesaria). Tampoco estaría de más que no se permita el acceso a los ensamblados de la aplicación ASP.NET ni a los ficheros de log, que siempre hay algún copión suelto por ahí, aunque reconozco que la técnica usada para ello es muy buena y no se me habría ocurrido… ;-)

Gracias a los que han hecho posible este reto (Chema, Rodol, Álex y Filemaster). Gracias a las ideas y puntualizaciones de RoMaNSoFt, Mandingo y Palako, que han enriquecido este documento. Gracias a SealTeam por hacernos pasar un rato divertido jugando un poco con alguna DLL de este reto y del anterior. En general, gracias a todos los que habéis participado en este reto y, como siempre, gracias a ti que estás leyendo esto, esperando que te haya sido de utilidad.

Saludos, Daniel Kachakil.
***************************************************************************************
- Solucionario Reto Hacking VI por Dani Kachakil - Parte I
- Solucionario Reto Hacking VI por Dani Kachakil - Parte II
***************************************************************************************

jueves, febrero 21, 2008

No Lusers - Nº 14: Killer

Solucionario Reto Hacking VI por Dani Kachakil - Parte I

***************************************************************************************
- Solucionario Reto Hacking VI por Dani Kachakil - Parte I
- Solucionario Reto Hacking VI por Dani Kachakil - Parte II
***************************************************************************************

Introducción

Este documento describe una solución al Reto Hacking VI de Informática 64, el primero de la segunda temporada, que se publicó el 1 de febrero de 2008 en la siguiente dirección web: http://retohacking6.elladodelmal.com

Pistas

Esta vez las pistas prometían ser útiles… Se publicaron unas horas antes del reto, adelantando la existencia de dos partes y diciendo lo siguiente:

Primera parte

Sé que cuando lleguéis a esta parte vais a estar un poco... descolacados. Como un piloto de Formula 1 con el coche cruzado en la salida. Ya sabéis lo que mi primo el nano piensa sobre qué se debe hacer para ganar, ya que nunca es algo hecho. Si fuera fácil no habría que hacer tanto trabajo. Sí, sé que el reto será fácil, pero ganar nunca.

Una vez lleguéis allí, debéis saber que yo me siento agradecido por todos los que os habéis sumado a esta edición del reto. Sé que restar tiempo a vuestras horas de ocio, trabajo y en definitiva vida dividiéndoos entre la familia y amigos y el Reto Hacking es un gran trabajo, pero espero que con este reto se multiplique un poco vuestro conocimiento sobre lo ya conocido con una forma nueva de trabajo.

Segunda parte

Para la segunda parte... la cosa está de partes otra vez. Deberéis agudizar la Vista en este examen de reflejos. El que tenga más reflejos lo sacará antes....

Parte 1: Un poco de práctica para aprobar el examen

Para acceder a la primera fase, lo primero que teníamos que hacer era registrarnos eligiendo nuestro nombre de usuario e introduciendo una dirección de correo válida, donde recibiremos la contraseña correspondiente generada aleatoriamente. Accediendo con estos datos en la página de login, observamos que cambia el menú de navegación, apareciendo tres nuevos elementos:

• Práctica: En este apartado encontramos un formulario con un campo de texto y un botón de enviar que nos invita a practicar con el álgebra de Garrupito, preguntándonos cual es el valor de 1000+1.

• Examen: Aquí encontramos un formulario similar al anterior, preguntándonos por el valor de Garrupito.

• Subir nota: Para poder subir nota, primero tendremos que aprobar el examen. (Esta sección corresponde a la segunda fase y se habilitará cuando tengamos aprobado el examen).

Tras echarle un vistazo a las secciones disponibles, decidimos empezar por el principio, practicando un poco. La primera prueba necesariamente tenía que ser 1001, por ser la más lógica y evidente, pero no conseguimos nada, al igual que tampoco sirve de nada interpretar el valor como binario, o el operador de suma como concatenación y otras pruebas de ese estilo. Probamos con diferentes cadenas de texto aleatorio, comillas simples y dobles, operadores lógicos (and, or, not, xor), matemáticos (+, -, *, /, ^), de manejo de cadenas (len, trim, rtrim) y comprobamos que todas ellas son procesadas con normalidad. De momento, podemos asegurar las siguientes observaciones:

• Al introducir un valor numérico o expresión booleana (ya sea verdadera o falsa), obtenemos como respuesta "Vamos, vamos, garrupintizate!" [R1]

• Al introducir cualquier cadena o expresión errónea, obtenemos como respuesta "ACCESS: Error al convertir valor numérico" [R2]

Llegados a este punto, Chema publica un post con una pista adicional (más bien insistiendo en la pista existente), lo que nos lleva a pensar que no vamos por buen camino, ya que si no interpretamos la pista adecuadamente, parece ser que no lograremos nada. Retomando la primera pista, deducimos inmediatamente que se trata del piloto de Fórmula 1 Fernando Alonso y según la nueva pista, tendremos que buscar unas declaraciones que nos indicarán el camino a seguir para ganar. Tras haber leído decenas de declaraciones del piloto, me quedé con unas que decían que había que dar el máximo, otras que hablaban de vueltas y otras en las que decía que había que ir siempre al límite, pero no sabía qué hacer con ello.

De todas formas, para mí fue fundamental el tercer post ("O resolvéis el misterio de la primera pista o vais a tener que hacer algo más de dos millones de peticiones algo así como...."). Directamente me vino a la cabeza el valor máximo que se puede almacenar en un entero de 32 bits con signo (al que llamaremos MAXINT), que no son dos millones, sino más de dos mil millones: 2147483647 (231 – 1). Al introducir este valor, obtenemos una nueva respuesta: "Uy que cerca, casi estás garrupintizado!" [R3]

Esto me llevó a pensar que iba bien, que había que buscar un límite pero que no era exactamente ese valor, así que fui probando inútilmente diferentes valores en busca de ese otro límite inexistente. En ese momento me di cuenta de que el mensaje de error contenía una pista clave (la palabra "ACCESS") y eso parecía indicar que ahí detrás existía un motor de bases de datos Access (Microsoft Jet) procesando nuestras peticiones, por lo que intentaremos encontrar la forma de verificar la existencia de este motor de base de datos, buscando algún mecanismo que nos diferencia dos tipos de respuesta para los valores verdadero y falso (proceso de "booleanización"), realizando posteriormente las subconsultas que nos interesen sobre ese mecanismo.

Como primer paso, ya vimos que obteníamos tres posibles respuestas según el tipo de entrada (valor numérico [R1], valor no numérico [R2] o MAXINT [R3]), por lo que únicamente nos falta relacionar un par de ellas con una subconsulta adecuada. Si hacemos caso a la pista, parece que debemos usar las respuestas R1 y R3, de forma que nuestra subconsulta devuelva un valor MAXINT si es verdadera y cualquier otro valor si es falsa (o viceversa). Por ejemplo, introduciendo la siguiente subconsulta:

2147483647 * (select max(1) from tabla)

La mayoría de funciones de agregado (MAX, MIN, AVG, etc) devuelven el valor nulo si no tienen datos de entrada (es decir, si la consulta no devuelve registros). Las operaciones matemáticas que involucran al valor nulo no provocan ningún error y devuelven también el valor nulo. Sin embargo, la función COUNT devolvería cero en ese caso. Para la consulta anterior, si la tabla tiene algún registro, la subconsulta devolverá 1, que multiplicado por el valor MAXINT lógicamente dejará intacto este valor y obtendremos la respuesta R3. Por el contrario, si la tabla no tiene registros, entonces la subconsulta devolverá el valor nulo, que multiplicado por MAXINT también devuelve el valor nulo y obtendremos R1. Si la tabla no existe, la consulta devolverá un error (R2), por lo que la existencia de una tabla se puede determinar fácilmente, simplemente ejecutando una consulta de este tipo. Una consulta equivalente a la anterior podría ser esta (en la que seleccionamos un solo registro, con valor 1):

2147483647 * (select top 1 1 from tabla)

Sobre este tipo de subconsultas también se podrían haber hecho otras variaciones que consiguen el mismo resultado, como utilizar una suma o una resta en vez de la multiplicación. Por ejemplo:

2147483646 + (select max(1) from tabla)
2147483648 – (select max(1) from tabla)


También existía otra posibilidad, que tal vez resultara más evidente y natural, ya que en este caso no necesitamos usar la pista, ni llegar a ningún tipo de valor especial. El método se basa en que una división por cero devuelve un resultado que no está definido como numérico (por lo que nos devolverá el mensaje del error R2), mientras que una división por cualquier otro valor no nulo, devolverá un número (es decir, como respuesta obtendremos el mensaje R1). Si la tabla no existe, o no tiene registros, esta consulta fallará:

1 / (select count(*) from tabla)

Otro tipo de variación de este método es el de provocar un desbordamiento, multiplicando un valor muy alto por cero (obteniendo R1 como respuesta) o por un valor mayor que uno (obteniendo R2). Por ejemplo:

(2^1023) * (select max(2) from tabla)

Habiendo concluido el reto, Chema me comentó que la consulta que ejecutaba el servidor estaba basada en la conversión al tipo numérico a través de la función de valor absoluto (ABS), lo cual me llevó a deducir que otro tipo de inyección también podría ser válido, siempre que no exista alguna mecanismo que escape o duplique los paréntesis (cosa que tampoco se hacía). Por tanto, esta consulta también funcionaría, siendo tal vez la más flexible de todas ellas:

0) or (select count(*) from tabla

Como última opción, también podríamos haber recurrido a las consultas pesadas, en las que no importa el mensaje que se nos devuelva, sino el tiempo que tarde el procesamiento de nuestra petición. De todas formas, este método es demasiado invasivo y no me parece razonable su uso en un reto ni en otro tipo de servidores, ya que el retardo se consigue consumiendo muchos recursos del servidor, teniendo como efecto colateral que todas las peticiones restantes (las de los demás participantes y usuarios en general) se demoren mientras se ejecuta nuestra consulta pesada. En el momento en que se lanza una consulta mientras se está ejecutando una consulta pesada, nunca sabremos cual de las dos es la que ha generado el retardo y el método deja de ser válido. Una consulta pesada no es comparable a ejecutar instrucciones del tipo waitfor o sleep (que en Access no tienen su equivalente), ya que éstas han sido diseñadas específicamente para dejar pasar el tiempo de espera indicado, pero sin consumir gran cantidad de recursos del servidor, por lo que su uso sería perfectamente válido.

Ahora que tenemos tantas posibilidades a nuestro alcance, vamos a resolver esta fase utilizando la que se suponía que teníamos que utilizar, es decir, la que hace uso del valor MAXINT, pero antes que nada nos aseguraremos de la existencia del motor de base de datos de Access. Sabemos que Access tiene algunas tablas de sistema que son accesibles por defecto. Dependiendo de la versión, nos podremos encontrar con las siguientes tablas: MSysAccessObjects (versiones 97 y 2000), MSysAccessStorage (versiones 2003 y 2007). Comprobamos que en nuestro caso tenemos éxito con la segunda prueba y de momento podemos suponer que vamos por buen camino:

2147483647 * (select max(1) from MSysAccessObjects) -> R2 (Error)
2147483647 * (select max(1) from MSysAccessStorage) -> R3 (Verdadero)


Recordemos que el examen consiste en introducir el valor correcto de Garrupito, por lo que todo apunta a que dicho valor se encuentra en la base de datos a la que tenemos acceso a través de la técnica de Blind SQL Injection descrita. Las bases de datos de Access no tienen catálogo accesible, por lo que tendremos que adivinar el nombre de la tabla y de sus campos. Sería razonable ejecutar este tipo de consultas:

2147483647 * (select max(1) from garrupito) -> R3 (Verdadero)
2147483647 * (select count(*) from garrupito) -> R3 (Verdadero)
2147483647 * (select max(1) from garrupito where garrupito > '') -> R2 (Error)
2147483647 * (select max(1) from garrupito where valor > '') -> R3 (Verdadero)


Ya tenemos la tabla (garrupito), el número de registros (1), el campo que nos interesa (valor) y su tipo (texto), así que ahora podemos aplicar esa técnica que ya conocemos, a la que hacía referencia la primera pista. Primero obtenemos la longitud del valor o número de caracteres, como siempre (búsqueda binaria):

2147483647 * (select max(1) from garrupito where len(valor) > 64) -> R1 (F)
2147483647 * (select max(1) from garrupito where len(valor) > 32) -> R3 (V)
2147483647 * (select max(1) from garrupito where len(valor) > 48) -> R1 (F)
2147483647 * (select max(1) from garrupito where len(valor) > 40) -> R1 (F)
2147483647 * (select max(1) from garrupito where len(valor) > 36) -> R1 (F)
2147483647 * (select max(1) from garrupito where len(valor) > 34) -> R1 (F)
2147483647 * (select max(1) from garrupito where len(valor) > 35) -> R3 (V)
2147483647 * (select max(1) from garrupito where len(valor) = 36) -> R3 (V)


Aunque la última consulta realmente es innecesaria, si hacemos el procedimiento a mano nunca está de más una comprobación adicional por si nos hemos equivocado en algún punto. Por último, iremos obteniendo el valor de cada carácter utilizando el mismo método, actuando sobre los valores ASCII. Siempre que se pueda, es preferible evitar una consulta con el operador LIKE, ya que éste no distingue entre las mayúsculas y las minúsculas.

2147483647 * (select max(1) from garrupito where asc(mid(valor,{i},1) > {Xi}

Una vez hayamos obtenido los 36 valores ASCII los reconvertimos de nuevo en caracteres para formar la cadena que buscamos. Este es el valor de Garrupito (como siempre, os dejo la parte final para que terminéis los deberes en casa):

9DB7D157-CD68-42a3-A366-C32BE377????

A pesar de su formato hexadecimal de 32 caracteres (que podría ser una hash MD5, por ejemplo), antes de intentar hacer algo raro con esa cadena vamos a probar lo más sencillo, es decir, introducirla directamente como respuesta a la pregunta del examen. Finalmente comprobamos que la solución era así de simple, teniendo en cuenta que teníamos que introducir la cadena exacta, respetando las mayúsculas (y cómo no, respetando también esa "a" minúscula que había por ahí). ;-)

Como comentario adicional, Palako descubrió que el valor MAXINT estaba almacenado en un registro de una tabla llamada "valores", en el campo "valor", lo cual también podría ser aprovechado para construir consultas algo más complejas.

***************************************************************************************
- Solucionario Reto Hacking VI por Dani Kachakil - Parte I
- Solucionario Reto Hacking VI por Dani Kachakil - Parte II
***************************************************************************************

miércoles, febrero 20, 2008

No Lusers - Nº 13: Selección ...de Hackers!

Se cierra el Reto Hacking VI

Hola compañeros!

Este Jueves a las 23:59 se cierra el Reto Hacking VI, es decir, que el viernes se hará público el primer solucionario para que los ninos que quieren aprobar en septiembre lo intenten el fin de semana.

El reto lo ganó Dani Kachakil y se llevó 10 puntos, Mandingo se atascó en la segunda fase pero pudo quedar por delante de Palako por 5 minutos. RoMaNSoFt empezó días más tarde pero ha sido el más rápido en pasar la segunda fase por lo que tiene un punto extra por ello. Kachakil ha sido el más rápido en la primera fase, con lo que se lleva también un puntito extra. Sin embargo, nadie se llevó la Matricula de Honor y consiguió acabarlo en las 4 horas primeras. Todos los resultados en el Hall of Fame.

Reto Hacking VI

En fin, esta es la tabla del Reto Hacking VI...¿Queréis que juguemos al Reto HAcking VII?

Saludos Malignos!

martes, febrero 19, 2008

Ladrones con mucha jeta

Los muy jeta encima te adoctrinan... pero ¡qué morro!



Saludos Malignos!

Meter.com

Las grandes ideas surgen así, en un garaje o en un cuartucho de mala muerte. En nuestro caso ha sido la segunda opción. Algunos ya sabéis que cuando entramos en el nuevo piso a mí me tocó la habitación del asesinato, es decir, la habitación en la que había sangre en la pared, una almohada ensangrentada y en la que “sospechosamente” habían cambiado la alfombra y la cama.

Allí se nos ocurrió nuestro último negocio. Habíamos estado viendo la campaña que tiene cubierto Londres con el Match.com, el servicio ese para conocer gente. En ella, el plato fuerte son Cupido y Destino, dos crápulas que viven como adolescentes, olvidados de ti y en los que tú no puedes confiar. ¿Cuántos de vosotros habéis esperado a Cupido o a Destino y os habéis comido lo que viene siendo …nada?

Cupid & FAte

Sin embargo, nosotros vimos claramente que esta web está destinada al fracaso ya que, como me explico un compañero de Chicago que conocí hace cuatro años en una fiesta de Sybari en Amsterdam “The most important thing in life is meter”.

¿Cuál es el problema de estas redes sociales? Empiezas con un complejo sistema de registro. Qué si te gusta el cine de autor europeo, qué si has leído a Marcel Proust, qué si te gusta la opera… etc… Continúas con el complejo sistema de registro de “qué buscas”, en el que no pones sólo que quieres sexo, porque van a pensar cualquier cosa de ti, así que rellenas amistad, compartir cosas, lo que surja, etc…

Y al final sucede lo que sucede, que si te hace un "poke", que si te invita como amigo (uy, que mal suena esto de la zona de los amigos…) que si le regalas un pez para la pecera… Esto no funciona. Tú lo que quieres es “meter”.

Así que vamos a arreglarlo con nuestro nuevo servicio “Meter.com”. Allí sabemos la verdad sobre ti “porque uno siempre reconoce a sus iguales”. Sabemos que tú no quieres tener 50 entradas en tu chorboagenda, que prefieres tener 3 entradas y 20 salidas. Nada de que sí es guapa, alta y deportista, sabemos, que como descubrimos gracias al Popeye de Makinavaja un “shumino e’ como un billete d’mil pela, que po’ mu’ arrugao que eté ziempre tié un való innntrinsico”. Y lo más importante, sabemos que tú también lo sabes.

Así que olvídate de los cuestionarios, aquí sólo tienes que rellenar una casilla, la que pone que quieres “Meter”.

Dionisio & Maligno

Así que, no te preocupes de esos dos crápulas de “Cupido & Destino” y fíate más de “Dionisio & Maligno”.

Nosotros sí que sabemos lo que quieres…

Saludos de Dionisio & Maligno!

lunes, febrero 18, 2008

No Lusers - Nº 12: Windows 7

El SO operativo de Diós

En la guerra entre el bien y el mal, cualquier ayuda es buena. No importa quién, no importa cuándo, no importa cuánto. Siempre que sea a favor de tu bando hay que aprovecharla. En este caso me ha llamado la atención la noticia de la Monja Webmaster del Vaticano que ha salido en todas partes y que ha dicho: “We don’t know the OS that God uses, but the Vatican uses Linux”. [No sabemos qué OS usa Dios, pero el Vaticano usa Linux]

Toma ya, victoria, la iglesia está con el lado del bien. Lógicamente es muy loable la descripción que nos ha dado la Sor Tecla sobre los OS del Vaticano, pero me llama la atención que al mirar por ahí en la web del Vaticano aparezcan cosas como que la librería lleva ASP…

¿irá con Mono?

O también tienen Jsps…

JSPs

Con Tomcat…

TomCat

Y parece que estas cositas así porque Dios hace oídos sordos y ojos ciegos sobre esto.

Ser o No Ser

Y el nuevo servicio de búsqueda lo han contratado como un servicio .NET..

.ASPX

Al final, como todas las grandes multinacionales... usan de todo. De todas formas… ¿Quién va a atacar al Vaticano teniendo a Dios de su parte? Y.. decir medias verdades tampoco es pecadillo, ¿no? así que yo creo que Dios usará Windows Mobile para poder estar conectado desde todas partes… puestos a especular sobre ello.

Saludos Malignos!

PD: Uy, que fuerte queda el saludo en este post...

domingo, febrero 17, 2008

¡Hasta Semana Santa!

No, no es que me despida hasta la Semana Santa, si no que al contrario os voy a dejar el planinng de trabajo que hay hasta esa fecha. Para que no os quedéis apolandrinados en la silla. Yo participaré en, de momento, las acciones de Madrid.

***** Madrid *****

- 26 y 27 de Febrero: Lanzamiento de Windows Server 2008. Allí participaré junto con el abuelo Parada el día 27, la última sesión de la mañana con una charlita sobre seguridad en Windows Server 2008. Una sesión de 1 horita juntos. Más info: Agenda y Registro.

Nota: Durante el lanzamiento habrá Hands On Lab gratuitos sobre Windows Server 2008 dirigidos por los compañeros de Informática64 en la Sala Londres. Más info: Agenda completa y detallada del lanzamiento

- 3 al 6 de Marzo: ProtégeIT. Dentro de la campaña de Hands On Lab Juan Luís Rambla (MVP Windows Security), Silverhack y yo diseñamos una formación de 96 horas de duración para aprender Seguridad Informática. Se va a impartir en 4 semanas a lo largo de los próximos meses. El primero, el seminario dedicado a Network Security comienza el próximo día 3 de Marzo y yo bajaré de Londres para estar por allí en una sesión. Más info: Madrid - ProtégeIT

-> ProtégeIT! (I): Network Security 03 al 06 Marzo 08:30-14:30
-> ProtégeIT! (II): Client Security 31 Marzo al 03 Abril 08:30-14:30
-> ProtégeIT! (III): Server Security 05 al 08 Mayo 08:30-14:30
-> ProtégeIT! (IV): Web Security 02 al 05 Junio 08:30-14:30


- 18 Febrero a 14 de Marzo. Hols en Madrid. Una semana dedicada a Forefront y System Center y otra a Windows Server 2008. Más info: Hols en Madrid.

***** Internet –Webcasts *****

La sema Próxima Rubén Alonso (MVP de SharePoint) realizará dos webcasts dedicados a:

- 19/02: Webcast: Implementación de entornos de colaboración con Microsoft Office Sharepoint Server 2007. Más Info: Agenda y Registro.

- 21/02: Webcast: Inteligencia de negocio con Microsoft Office Sharepoint Server 2007. Más info: Agenda y Registro.

***** Sevilla *****

- 3 al 7 de Marzo. Una semanita de Hands On Lab en Sevilla en ABD con Joshua Saenz (MVP Exchange Server) “jugando” con Exchange Server 2007 y Windows Vista.
Más info: Hands On Lab en Sevilla.

***** Salamanca *****

- 6 de Marzo: Asegura tus dominios. David Cervigón, Spectra IT Evangelist y Alejandro Martín darán en la Universidad de Salamanca un evento dirigido a profesionales y estudiantes con dos tracks distintos. Uno sobre cómo se realiza un test de Intrusión y otro sobre como “juguetear” con Widnows Server 2008. Más info: Asegura tus Dominios.

- 10 de Marzo: ProtégeIT. La campaña ha sido llevada también a Salamanca y tendrá las siguientes fechas:

-> ProtégeIT! (I): Network Security 11 al 13 Marzo 08:30-14:30
-> ProtégeIT! (II): Client Security 15 al 17 Abril 08:30-14:30
-> ProtégeIT! (III): Server Security 20 al 22 Mayo 08:30-14:30
-> ProtégeIT! (IV): Web Security 17 al 19 Junio 08:30-14:30


Más info: ProtégeIT Salamanca.

- 10 al 13 de Marzo: Hols Análisis Forénse. Silverhack realizará dos seminarios en Salamanca dedicados a Análisis Forense en horario de 15:30-18:30.

-> Análisis forense I. Escenario Malware en entorno Windows.
-> Análisis forense II. Análisis de procesos. Uso de aplicaciones.


Más info: Hols de Análisis Forense en Salamanca.

***** Pamplona *****

- 20 de Febrero: Teclear No es sustitutivo de Pensar. Carlos Segura (MVP SharePoint) y Sergio Jiménez realizan un evento sobre cómo se debe atacar correctamente un proyecto de desarrollo.

Más info: Agenda y Registro

Ale, a ser malignos y a aprender muchas cosas!

sábado, febrero 16, 2008

Intento ser bueno pero...

Siempre intento redimirme, pero al final, no me dejan. Quiero convertirme en uno de los buenos, ser alguien menos maligno, pero... algo al final sucede. Sniff.

No había posteado sobre esto, pero el otro día estabamos charlando y salió este tema. Veréis, en Noviembre se iba a celebrar el congreso de Hispalinux, así que, como el Chico Maravillas y yo habíamos hecho la charla sobre Las 4 Fantáticas [SQL Injection, Blind SQL Injection, LDAP Injection & Blind LDAP Injection] en el Open Day y a la gente le había gustado decidimos enviar las charlas a otros stios.

A Blackhat había decidio enviar yo tiempo ha la charla de LDAP Injection & Blind LDAP Injection y al Chico Maravillas se le ocurrio... "oye, ¿por qué no enviamos la charla al congreso de Hispalinux para que vean que no somos tan malosos?"

Sin embargo la pena se adueño de nosotros...

Mail de rechazo de la charla

En fin, parece que la charla de seguridad Web no encanjaba en ninguna parte del programa del congreso de Hispalinux.

Bueno, no llegamos a Hispalinux, pero al menos nos la cogieron en Blackhat... algo es algo, ¿no?

Saludos Malignos!

No Lusers - Nº 11: Posting about Linux






viernes, febrero 15, 2008

Amor, Amor, Amor

Ayer fue el día de los enamorados, y con toda la cripación, se me pasó. En fin, os dejo unas muestras de amor de Viernes:

¿Por qué nos gustan las mujeres?



¿Están o no están ricas las chicas?

¿Por qué las queremos?


¿Es o no amor?

¿Esto es amor?


¿Seguro que es amor?

Saludos Malignos de fin de semana!

No Lusers - Nº 10: "Invirtiendo en Seguridad"



Entrada destacada

10 maneras de sacarle el jugo a tu cuenta de @MyPublicInbox si eres un Perfil Público

Cuando doy una charla a algún amigo, conocido, o a un grupo de personas que quieren conocer MyPublicInbox , siempre se acaban sorprendiendo ...

Entradas populares