Está en la página 1de 2

1.

Tipos de herramientas para ingeniería inversa en software


Link de Acceso: https://saasradar.net/herramientas-ingenieria-inversa-software/

Este tipo también puede aplicarse cuando la documentación asociada a los expedientes de proyectos no existe, están
incompletos o no se corresponden con el modelo deseado por la empresa de desarrollo.

Es importante destacar que, aunque algunas cosas del producto se modifiquen con la aplicación de esta técnica, el
sistema no modifica su objeto social o el objetivo para el que fue desarrollado.

Algunos de los beneficios que aporta la aplicación de la ingeniería inversa son:

 Se facilita el mantenimiento al comprender mejor el sistema.


 Se generan nuevas formas de presentación del proceso al que responde el sistema.
 Recuperar y/o actualizar la información perdida, o aquellos cambios que no fueron correctamente
documentados.
 Detectar fallos generados de otros cambios en el sistema, no detectados durante las pruebas de software.
 Detectar componentes de posible reutilización para sistemas de similar objetivo o tecnologías.

Las herramientas existentes se agrupan en tres tipos:

 Depuradores:
Consiste en un programa que permite leer paso a paso el código fuente de un software. Los depuradores crean
puntos de control para detectar dónde hay un fallo y puntos de rupturas (breakpoint) para detener la ejecución
del código según condiciones determinadas por el desarrollador para conocer datos precisos de algunos
atributos.
 GDB o GNU Debugger.
 Desensambladores:
Es un programa que ejecuta las acciones contrarias a un ensamblador. Significa que este tipo de herramienta
intenta recrear el código partiendo del código máquina binario. Busca mostrar el código en un formato más
amigable y comprensible.
 IDA pro, Ghidra.
 Decompiladores o compiladores inversos
 Esta clasificación de herramientas traduce código de bajo nivel de abstracción a un lenguaje de mayor nivel de
abstracción. Toma el código binario ejecutable e intenta recrear el código fuente de alto nivel partir de él.
 APKTool.

 ENTORNOS DE DESARROLLO (IDES): Permiten recorrer el código fuente de un sistema paso a paso, creando
puntos de rupturas o generando recorrido para comprobar el comportamiento del software. Programas como:
Ecilpse, NetBeans, PhpStorm, Pycharm y IntelliJ IDEA.

2. Traductores de lenguajes de programación:


Link de acceso: https://www.paredro.com/6-compiladores-online-que-no-necesitan-instalar-nada-y-liberan-ram/
https://www.um.es/docencia/barzana/TEI/Informatica-Aplicada-a-la-Traduccion-Herramientas-de-analisis-del-
corpus.html

Un traductor es un programa que toma como entrada un texto escrito en un lenguaje, denominado fuente y da
como salida otro texto en un lenguaje, llamado objeto.

 Ideone: Esta herramienta además de compilar y traducir, también puede depurar el código online de hasta 60
lenguajes de programación (como C, C++, Pascal, Java). Tiene una interfaz muy intuitiva y ligera; un extra es la
biblioteca de ejemplos y la comunidad de programadores.
 paiza.IO: Este programa es compatible con 20 lenguajes como C, C++, Java, Ruby, Python, PHP, Perl, pero el
beneficio es que al utilizarlo aprendes a programar, escribir archivos por lotes, como web scraper y más.

 CodePad: Es un intérprete y compilador online muy sencillo de utilizar, su diseño es sencillo y limpio, lo mejor es
que puedes compartir fácilmente los códigos, pues te da automáticamente un URL que puedes enviar a
cualquiera, además funciona en casi todos los dispositivos móviles, lo cual lo hace muy versátil.

 Browxy: Este compilador no soporta una gran variedad de códigos, lo cual resulta limitante; pero su beneficio
principal son todas las herramientas que tiene a su disposición, además de que su diseño hace los códigos muy
visibles y dinámicos.

 Compile-Online: Este compilador requiere un grado más avanzado de conocimiento dado que su funcionamiento
es más complicado, con lo que sólo los expertos podrán trabajar, aún así es muy útil porque soporta la mayoría
de los lenguajes de programación actuales.

 JDoodle: La interfaz de JDoodle es muy simple y fácil de usar, pero incluye las herramientas básicas de un
compilador como cuadro de texto, guardar, ejecutar, etcétera, con las que podrá revisar códigos de forma muy
cómoda.

También podría gustarte