Post205 nn

La ingeniería inversa es una técnica que se usa para obtener mayor información de una aplicación o software del que se desconoce su diseño y funcionamiento. Esta es muy usada por expertos en ciberseguridad para buscar vulnerabilidades en aplicación y en al campo de análisis de malware es usada para encontrar códigos maliciosos.

 

Algunos usos más de la ingeniería inversa son:

 

  1. Interfaz: La ingeniería inversa se puede usar cuando se requiere que un sistema se conecte con otro sistema y cómo se establecerán los dos sistemas de negociación. Tales requisitos típicamente existen para la interoperabilidad.

  2. Espionaje militar o comercial: Aprender sobre las últimas investigaciones de un enemigo o competidor robando o capturando un prototipo y desmantelando, lo que puede resultar en el desarrollo de un producto similar, o en una mejor contramedida contra él.

  3. Obsolescencia: Los circuitos integrados a menudo se diseñan en sistemas propietarios y se construyen sobre líneas de producción que se vuelven obsoletas en solo unos pocos años. Cuando los sistemas que usan estas partes ya no se pueden mantener (ya que las partes ya no están hechas), la única forma de incorporar la funcionalidad a la nueva tecnología es aplicar ingeniería inversa al chip existente y luego rediseñarlo utilizando herramientas más nuevas, empleando el conocimiento adquirido como una guía. Otro problema originado por obsolescencia que puede resolverse mediante ingeniería inversa es la necesidad de soportar (mantenimiento y suministro para operación continua), dispositivos heredados que ya no son compatibles con su fabricante de equipo original (OEM). Este problema es particularmente crítico en las operaciones militares.

  4. Análisis de seguridad del producto: Para examinar cómo funciona un producto, cuáles son las especificaciones de sus componentes, estimar costos e identificar posibles infracciones de patentes. Adquirir datos confidenciales mediante el desmontaje y el análisis del diseño de un componente del sistema. Otra intención puede ser eliminar la protección contra copia, o la elusión de restricciones de acceso.

 

¿Es legal la ingeniería inversa?

 

No existe una ley de propósito general contra la ingeniería inversa. Es decir, la práctica de la ingeniería inversa en sí misma es legal. Sin embargo, "la ingeniería inversa ha estado bajo sitio se abre en una nueva ventana en las últimas décadas", según The Yale Law Journal. Aunque nada en la Ley de Espionaje Económico prohíbe explícitamente la ingeniería inversa, hay una serie de preocupaciones legales y éticas que surgen.

 

La Electronic Frontier Foundation (EFF) enumera las siguientes áreas de la ley de los EE. UU. Como aplicables a quienes practican la ingeniería inversa

 

  • Derecho de autor y uso justo
  • Secreto comercial
  • Disposiciones antielusión enumeradas en la Ley de Derechos de Autor del Milenio Digital (DMCA)
  • Derecho contractual
  • La Ley de Privacidad de las Comunicaciones Electrónicas (ECPA)

 

Depuradores y decompiladores para ingeniería inversa

 

radare2_strings

Ejemplo de radare2

 

Para realizar ingeniería inversa sobre un ejecutable existen diversas herramientas que son conocidos como desensambladores o depuradores.

 

Algunos depuradores de

 

  • IDA
  • Imnunity
  • Debugger
  • OllyDbg
  • Radare2

En posteriores artículos vamos a ver ejemplos y más detalles de cada uno de estos.

 

Aprende a ser un desarrollador

 

El sólido conocimiento de un lenguaje de programación es necesario para el proceso de ingeniería inversa. El Software Guild ofrece un programa de 12 semanas a tiempo completo o un programa de nueve meses a tiempo parcial en línea, para que pueda aprender un lenguaje de programación con la ayuda de instructores calificados a un ritmo que funcione para su vida. Al finalizar, estará preparado para las posiciones de desarrollador junior en Java o C # / .NET. Aplicar al código de bootcamp hoy.

 

Si bien la ingeniería inversa sirve como una valiosa introducción al desarrollo de software, la codificación de campos de arranque como The Software Guild ofrece un entorno de aprendizaje intensivo centrado en los resultados para aquellos interesados en la programación de carreras.

 

Créditos de la imagen: https://www.welivesecurity.com/la-es/2016/08/17/radare2-reversing/

 

 



Artículos que te pueden interesar