El RGPD, establece la necesidad de implantar medidas de seguridad en la empresa que garanticen un nivel de seguridad adecuado al riesgo. Sin embargo, a diferencia de la normativa vigente, no determina ni especifica cuáles deben ser estas medidas de seguridad. Es cierto que el estado de la técnica ha avanzado de forma vertiginosa en los últimos años, de tal forma que han surgido muchas medidas y procesos nuevos que podrían resultar útiles para dar cumplimiento a esta obligación. Este es el caso de la ingeniería inversa. El problema radica en que existen muchas dudas acerca de su legalidad y en los usos asociados a la misma, tanto desde el punto de vista de la propiedad intelectual como desde otras perspectivas del derecho.
A pesar de esto, ¿podría utilizarse la ingeniería inversa a favor de la privacidad y de la protección de los datos de carácter personal?
La Ingeniería inversa consiste, a grandes rasgos y de modo simplificado, en entender el funcionamiento de un mecanismo tecnológico, de manera que se pueda reproducir el mismo a partir del producto final. Esto aplicado al software o a protocolos de cifrado, supondría la obtención del código fuente o la posibilidad de descifrar mensajes o archivos encriptados. Es por ello que sus diferentes aplicaciones podrían ayudarnos a dar cumplimiento a diferentes normas de gestión de seguridad de la información que cobrarán más valor tras la plena exigibilidad del RGPD, el 25 de mayo de 2018.
Con carácter general, para proteger los datos personales tratados por una organización, esta debería definir una serie de procedimientos que le permitan garantizar la seguridad de los datos personales tratados en sus programas informáticos. Dejando de un lado los aspectos más técnicos y reflexionando acerca la utilidad práctica que puede ofrecer la ingeniería inversa en el mundo de la privacidad, podríamos señalar que se plantea como una medida eficaz para garantizar, a través de sus técnicas, la seguridad en los sistemas de información críticos, al permitir, a través del estudio del código del software, averiguar si este funciona correctamente, si presenta vulnerabilidades, si existe código malicioso inserto en ellos o si este código ha sido alterado con fines dañinos.
Hay que señalar que, para instituciones, empresas privadas y entidades públicas que tratan categorías especiales de datos, se plantea como una opción muy atractiva a la hora de garantizar la seguridad de los datos personales manejados a nivel incluso global, a través de diferentes sistemas de información. En aquellos casos en los que se tenga acceso al código fuente, el software podrá ser objeto de una auditoría de seguridad que garantice los estándares de seguridad exigibles al mismo. Pero en aquellos casos en los que el código fuente no sea accesible a estas, las técnicas de ingeniería inversa se presentan como una opción a valorar a la hora de garantizar que sobre el software se aplican las medidas de seguridad debidas. Un estudio en profundidad de un software permitiría verificar que el mismo funciona correctamente, realizando únicamente las tareas para las que ha sido diseñado, e incluso detectaría la presencia de puertas traseras u otro tipo de vulnerabilidades que podrían comprometer la información de cualquier organización. Una vez estos agujeros son conocidos, la empresa podría parchear sus sistemas de cara a mantener segura toda la información contenida en los mismos.
Los propios datos personales, así como las transmisiones de los mismos mediante redes de telecomunicaciones, deberían estar cifrados, sobre todo cuando estos estén categorizados como especiales. De esta manera se garantizará la seguridad de las comunicaciones de carácter privado, así como cualquier proceso llevado a cabo por una organización que esté basado en algoritmos matemáticos. En este sentido, la ingeniería inversa serviría como instrumento para descubrir los algoritmos de cifrado, que una vez descubiertos dejarían de ser seguros, debiendo las organizaciones modificar su política de cifrado de manera que se proporcione la suficiente robustez en la encriptación.
Por otra parte, utilizar técnicas de ingeniería inversa podría resultar vital en aquellos casos en los que sea necesario recuperar datos de carácter personal tras sufrir un desastre o una brecha de seguridad, al permitir la decodificación de archivos.
Del mismo modo se puede analizar en profundidad cualquier tipo de malware. Esta es quizás una de las aplicaciones que más importancia ha cobrado en los últimos años, ya que permite conocer qué es exactamente lo que este programa malicioso realiza, y poder así implementar las soluciones adecuadas que nos protejan del mismo. La importancia de analizar estos archivos es vital no solo para lograr la protección de los datos de carácter personal, sino para lograr la seguridad en infraestructuras críticas, como sucedió en el año 2010 tras los ataques detectados en una central nuclear de Irán por el virus Stuxnet, al que expertos en ingeniería inversa dedicaron numerosas horas de trabajo con el fin de descubrir su funcionamiento y poder restaurar la seguridad en sus instalaciones.
Dentro de los entornos de producción altamente dinámicos que presenta cualquier organización actualmente, la obsolescencia y la paralización del desarrollo o soporte de un software podría llegar a suponer un riesgo para la seguridad de los datos personales. En este caso la propia organización podría aplicar técnicas de reversing para conocer al detalle el funcionamiento del software con el objetivo de continuar con su desarrollo y mantenimiento, asegurando la disponibilidad de los datos, así como la interoperabilidad constante con el conjunto del sistema de información.
A pesar de los recelos que puede suscitar su utilización, podemos concluir afirmando que el uso de esta técnica se presenta como una herramienta de gran valor para lograr una protección de los datos de carácter personal lo más eficaz posible, siempre y cuando, eso sí, se garantice un uso responsable de las mismas, cumpliendo con la normativa vigente.
Sin embargo y a pesar de lo anteriormente expuesto, no debemos perder de vista que en nuestro país, por el momento, la ingeniería inversa es considerada legal únicamente cuando, partiendo de la legítima posesión de una copia del software, esta tenga como finalidad lograr la interoperabilidad entre varios programas, o, analizar o estudiar su funcionamiento, aun sin contar con la autorización expresa del titular de dicho programa, siempre que se haga durante la normal ejecución del mismo. En caso contrario, la recuperación del código fuente sin contar con la pertinente autorización se considerará una violación en materia de propiedad intelectual y derechos de autor, pudiendo incurrir en la comisión de varios tipos delictuales previstos en el Código Penal.
Nos encontramos ante una situación no desconocida para el mundo jurídico, pero de nuevo la tecnología avanza mucho más rápido que el derecho. Con la consolidación de Internet como instrumento que facilita la aparición de tecnologías disruptivas o el nacimiento y migración de servicios al mundo digital, es imprescindible que la tecnología y legalidad confluyan, de manera que se dote a este espacio de la suficiente seguridad jurídica, logrando el equilibrio entre los derechos de los terceros y la utilización de los novedosos desarrollos que nos ofrece la evolución del estado de la técnica.
Lefebvre – EL Derecho no comparte necesariamente ni se responsabiliza de las opiniones expresadas por los autores o colaboradores de esta publicación
Fuente: El Derecho