2/2/07

Ingeniería inversa, experiencias laborales II

(Post no mobile) Y finalmente llegó el día. Fuí al despacho de mi cliente, iba armado con egadget definitivo, un pendrive usb que se caía a pedazos y un mini cd con drivers para Windows 98, propiedad de un servidor (no de mi empresa, ¿qué bueno soy, eh?). Aquello funcionó como la seda, el 98 detectó la memoria y pude llevarme los datos al portátil en el que pude hacer la conversión.

En mi empresa un programa principal, la conversión de datos de ciertos programas de la competencia a nuestro programa no era demasiado impresionante, aún sin ser total, es una ayuda tremendamente buena, y un argumento de venta magnífico. Este año hemos sacado un nuevo programa que rivaliza con el principal, y allí la conversión de datos sí que es prácticamente total, y sí que da gusto venderlo.

Mi pregunta es, ¿hasta qué punto es completamente legal?. Los programadores para hacer eso seguro que han tenido que husmear en ficheros de la competencia. En lo que respecta a mí me parece maravilloso, funciona bien y es una herramienta de trabajo fabulosa.

En respuesta a Neobius- Mis jefes ni se plantean la posibilidad de liberar el software que fabrican porque ya ganan millones (de euros) desde hace años vendiendo software privativo. Otra cosa es que, debido a que las administraciones están migrando los escritorios a Linux, deciden hacer una versión compatible con Linux, o parametrizar el Wine para rule.

8 comentarios:

  1. Hola Converso, bueno interesante el fin de la historia, al final has conseguido hacer tu trabajo a pesar de los obstaculos que te ponia el cliente.

    Sobre la legalidad o no de esa practica que comentas mi respuesta es que creo que es totalmente legal, no tienen porque haber accedido a ninguna informacion privilegiada para conseguir realizar ese programa. Yo creo que simplemente viendo la documentacion, y conociendo la funcion que realiza el programa no deberia ser dificil hacerle una ingenieria inversa al algoritmo del programa de la competencia. De todas formas yo creo que debe ser totalmente legal.

    Por ultimo, tengo dos curiosidades, respondeme solo si quieres y puedes, tu empresa conoce que tu tienes este blog y que en el hablas a veces de la empresa (a pesar de que nunca has dicho ni el nombre, ni nada malo sobre ella)?? por los comentarios que haces la empresa parece grande e importante, cuantos empleados tiene??

    Saludos ;-)

    PD: Una ultima cosa, lo de que tus jefes no piensan liberar el software lo sabes porque se lo has preguntado o porque te lo imaginas??

    ResponderEliminar
  2. Sí, yo tambien creo que es legal, al fin y al cabo lo que convertimos son ficheros de datos.
    En cuanto a mi empresa, no saben que tengo este blog, aunque, como tú dicen, nunca he hablado mal de ellos, al contrario, sería ingrato por mi parte, ya que estoy muy feliz haciendo el trabajo que hago. Debemos ser alrededor de 45 empleados.
    No he hablado directamente de este tema, pero sé lo que piensan, piensalo, a una persona que se tiene una fortuna gracias al soft privativo... no creo que le atraiga la idea de hacerlo libre. Aunque estoy convencido que lo que podrían hacer es que el programa sea gratis y las actualizaciones y el soporte de pago. Eso sí que sería estupendo.

    ResponderEliminar
  3. Yo tampoco creo que sea ilegal husmear en ficheros ajenos jajajaja. Seamos sinceros, todas las empresas y las personas lo hacen/hacemos. Además una cosa sería tener un topo que te vaya pasando datos sobre el desarrollo o los proyectos (eso sí lo veo anti-ético e ilegal aunque también se hace) pero una vez que lanzas el producto el mismo debe tener un colchón que amortigue eso. Sea lo que sea que hagas. Yo soy un librepensador al respecto y eso que me dedico a la creación y aca el plagio (tanto ajeno como mío* xD siempre esta a la orden del día).
    Yo considero que uno cuando hace algo tiene que hacerlo de la mejor manera que pueda y sepa y tratar de anticiparse a la reacción de la competencia. Una vez que el producto sale a la calle ya está, es un ser indefenso. Yo siempre me nutro de las modificaciones que le hacen a mis cosas para aprender a crecer y elaborar siempre productos de mejor calidad. Obviamente siempre habrá alguien mas capaz que uno y que si se pone lo hará mejor... es ahí donde nace mi nuevo desafío sino sería muy aburrido no?

    Respecto a lo de tu blog, siempre es mejor que sea privado creo yo. Quizas uno escribiendo acá libera sus emociones, tensiones, paranoias y eso no siempre es bueno que lo sepan aquellos que te pagan el sueldo. Además sería como darles ventaja. Es como casarse con tu psicóloga que ya sabe todas tus rayaduras!

    (*)cuando se trata de plagios míos, ya no son plagios sino que son "inspiraciones" basadas en productos ajenos. Solo Dios crea... los demás somos cocteleros xD

    ResponderEliminar
  4. Anónimo8:37 p. m.

    Querido Converso,

    Siento darte la mala noticia, pero la ingeniería inversa está a punto de convertirse en un delito, si prospera el proyecto de reforma del Código Penal que está en marcha.

    "El que por cualquier medio o procedimiento y vulnerando las medidas de seguridad establecidas para impedirlo, accediera sin autorización a datos o programas informáticos contenidos en un sistema informático o en parte del mismo, será castigado con pena de prisión de seis meses a dos años."

    La actual redacción deja a la entera interpretación del Juez entender si la ingeniería inversa te puede llevar a la cárcel o no...

    En este mismo ámbito entra el desarrollo de drivers y la investigación de fallos de seguridad.

    Más información en:
    http://www.congreso.es/public_oficiales/L8/CONG/BOCG/A/A_119-01.PDF
    http://www.bufetalmeida.com/?id=179
    http://ciberderechos.barrapunto.com/ciberderechos/07/01/18/1042252.shtml

    ResponderEliminar
  5. gonav, llevas razon, yo no se exactamente a que se referirira converso con lo ingeniera inversa, pero yo no me referia a la ingenieria inversa propiamente dicha, yo creo que si uno tiene un programa, la documentacion de ese programa, sabe el proceso que tiene que hacer con unos datos y tiene una lista de resultados no es dificil averiguar exactamente el algoritmo de programa, sin tener en ningun momento que acceder a informacion privilegiada o a "las tripas del programa".

    Por ejemplo si yo se que los impuestos X se calculan con Y procedimiento y ademas tengo los resultado de un programa tras haber aplicado dicho procedimiento pues es bastante sencillo trabajar con esos datos. A eso mas o menos me referia yo con lo de "ingenieria inversa", no me referia a desensamblar un programa y ver su codigo en ASM (AKA Assembler =Ensamblador). Por lo que el procedimiento que yo he descrito antes a pesar del nuevo codigo penal no seria delito.

    Bueno pues esa aclaracion y tambien preguntarte una cosa gonav:

    Dices que en ese mismo ambito entra el desarrollo de drivers y la investigacion de fallos de seguridad, entonces segun el nuevo codigo penal seria delito que yo me comprara una impresora y que al no haber driver para linux yo desarrollara el driver?? o seria delito el fuzzing??

    Saludos ;-)

    ResponderEliminar
  6. Anónimo2:09 a. m.

    Neobius,

    Resulta difícil precisar nada, pues la "filosofía" de todas estas leyes es la ambiguedad, de forma que te proporcionan el derecho jurídico a denunciar a alguien, dejando en manos de los jueces la interpretación. El ejemplo lo vemos con la Ley de Propiedad Intelectual.

    Con la actual redacción, se puede interpretar que el desensamblado, fuzzing o cualquier otra técnica similar es delito, independientemente de su intencionalidad. Como te digo, esto se deja en manos de los jueces.

    Aunque han admitido errores graves en la redacción y han prometido modificar el texto, hasta que no esté aprobada la versión definitiva no sabremos las implicaciones en toda su extensión. Hay aspectos preocupantes como por ejemplo mantener la penalización del diseño de herramientas de "hacking" para fines delictivos o no.

    Te aconsejo leer los enlaces que he puesto, donde hacen una valoración más detallada del proyecto de Ley, especialmente el análisis de Javier de la Cueva.

    ResponderEliminar
  7. Vale, gracias por la respuesta gonav ;-)

    ResponderEliminar
  8. En cualquier caso, este tipo de práctica que tenemos en mi empresa, la usamos con total discreción, los programas de conversión de datos los tenemos sólo algunos del personal, y los clientes no se quejan, al contrario, se quedan tan contentos.... lo único que en la publicidad lo anunciamos, pero claro, ese anuncio no implica que hayamos tocado los programas de la competencia...

    en fin, que las cosas como sigan así van a peor.

    ResponderEliminar

Tolerancia cero con las faltas de respeto, palabras malsonantes y comentarios denigrantes sobre la sublime saga de Stars Wars..