Archivo ejecutable

Archivo ejecutable
Información sobre la plantilla
Archivo ejecutable.jpg
Concepto:Archivo binario cuyo contenido se interpreta por el ordenador como un programa. Generalmente, contiene instrucciones en código máquina de un procesador en concreto, pero también puede contener bytecode que requiera un intérprete para ejecutarlo. Además suele contener llamadas a funciones específicas de un sistema operativo (llamadas al sistema).

El Archivo ejecutable es el que pone a funcionar el programa. Dependiendo del tipo de que se traten las instrucciones, hablaremos de ejecutables portables (se pueden ejecutar en varias plataformas) y no portables (destinado a una plataforma concreta). Por ejemplo, un ejecutable Java es portable ya que utiliza un bytecode no asociado a un procesador en concreto. Sin embargo en un sentido más general, un programa ejecutable no tiene por qué necesariamente contener código de máquina, sino que puede tener instrucciones a interpretar por otro programa. Este tipo de ejecutables son conocidos con el nombre de scripts.

Qué es un archivo ejecutable

Archivo que tiene la capacidad de poder ser ejecutado de forma independiente, o en otras palabras, que no necesita ser ejecutado por una aplicación externa. Estos archivos son ejecutados y controlados por el sistema operativo. Un archivo ejecutable contiene un programa, y generalmente necesitan de otros archivos para funcionar (aunque no es necesario). Un ejemplo de archivo ejecutable en Windows son los .EXE, o los .COM en MS-DOS. En general, los archivos ejecutables son el principal medio de transmisión de virus y malwares.

Archivos autoejecutables

Un caso que merece mención son los archivos autoejecutables, que ya incluyen en su interior las instrucciones para realizar las labores necesarias por su cuenta. La ventaja de estos autoejecutables es que no precisan el programa original para ejecutarse, por lo que pueden ser ejecutados en cualquier computador.

También se dice muchas veces que un procesador de texto ejecuta un documento, o un reproductor ejecuta un video, aunque no sería correcto técnicamente hablando, puesto que no son archivos ejecutables, sino más bien ejecutados por el programa que los lee. Un archivo ejecutable debe traer en su interior siempre las instrucciones necesarias para ejecutar o iniciar un programa.

Funcionamiento

Un ejecutable es un archivo diseñado para poder iniciar un programa. En su interior están pues las instrucciones precisas para poder ejecutar un programa determinado o varios. Los ordenadores pueden realizar todo tipo de tareas, pero para ello debe indicárseles como. En su memoria base suelen cargarse las instrucciones básicas, y el sistema operativo carga comandos adicionales, que le permiten realizar las tareas más simples. La tarea de un programador cuando hace un programa es decirle al ordenador como debe usar esos comandos básicos que ya sabe para poder realizar lo que el programa quiere hacer, sea mostrar una imagen, escribir texto, guardar un documento… etc.

Extensiones mas comunes

Generalmente la extensión más común para los ejecutables es la .EXE en Windows (que viene de abreviar EXECUTABLE en inglés), pero también existen diversos tipos de ejecutables con extensiones distintas: por ejemplo, los .COM (que fueron los primeros), los .BAT (archivos de procesamiento de lotes, que permitían encadenar la ejecución de varios programas sucesivamente), incluso algunas librerias como .DLL que contienen información adicional para el sistema operativo y pueden ser ejecutados por este.

Es de reseñar que en general cualquier archivo ejecutable necesita un sistema operativo para ejecutarse, puesto que es el sistema operativo quien le permite al ordenador entender lo que dice el archivo y llevarlo a cabo, (recordemos que es el S.O. quien carga en el ordenador las órdenes básicas que luego servirán para ejecutar el programa). Hay excepciones a esta norma, pero son pocas.

El archivo ejecutable puede venir solo o bien acompañado de más archivos. El caso es que será siempre él quien inicie la ejecución, carga y manejo de esos archivos. Es como el interruptor que dá paso a que la luz se encienda. Para crearlos, el programador suele usar un lenguaje de programación que le permitirá crear un código fuente entendible para él y luego codificarlo para que pueda ser entendido por el ordenador (proceso que se llama ensamblaje). La codificación genera un resultado en código ASCII, que puede ser leido por el ordenador, pero no por el porpio programador. Los lenguajes de programación varían según la plataforma y el objetivo, existiendo muchos y muy distintos.

Analizar la actividad de un ejecutable

Es posible utilizar herramientas en línea que nos muestran las diferentes acciones que realizarán en el sistema. Estos sitios web permiten simular virtualmente la ejecución de un archivo sospechoso en el sistema, y proporcionan un informe detallando su actividad. La comprensión e interpretación de los resultados del análisis requerirá sólidos conocimientos del funcionamiento de Windows. Sin embargo, estas herramientas en línea son accesibles tanto a personas curiosas que desean tener una visión global de las acciones de un ejecutable, como a personas expertas que desean obtener información más detallada.

Limites de esta herramienta en línea

Estas herramientas en línea proporcionan valiosa información acerca de las acciones de un archivo, pero también tienen fallas, y podrán ser totalmente ineficaces en algunos archivos infectados sometidos a un análisis. Efectivamente, algunos archivos "inmunizados" son capaces de decidir si son ejecutados en entorno virtual o si son analizados, y en ese caso, el informe no ofrecerá información pertinente.

Otras direcciones

A continuación una lista no exhaustiva de sitios que ofrecen un servicio similar, proporcionando informes más o menos detallados y permitiendo analizar varios tipos de archivos:

Fuentes