Ejecución arbitraria de código

El término ejecución arbitraria de código (del inglés arbitrary code execution (ACE)) hace referencia, en el campo de la seguridad informática, a la capacidad de un atacante para ejecutar comandos o inyectar código en una aplicación a su antojo,[1]​ aprovechando generalmente alguna vulnerabilidad (por ejemplo, un desbordamiento de búfer). Una vulnerabilidad de ejecución arbitraria de código es una falla de seguridad en el software o hardware que permite la ejecución arbitraria de código. Un programa que está diseñado para explotar dicha vulnerabilidad se denomina exploit de ejecución arbitraria de código. La capacidad de desencadenar la ejecución arbitraria de código en una red (especialmente a través de una red de área amplia como Internet) a menudo se denomina ejecución remota de código (del inglés remote code execution (RCE)).

La ejecución de código arbitrario significa que si alguien envía un conjunto de datos especialmente diseñado a una computadora, puede obligarla a hacer lo que quiera. Aunque esta debilidad particular puede no causar problemas reales en el mundo real, los investigadores han discutido si sugiere una tendencia natural de las computadoras a tener vulnerabilidades que permitan la ejecución de código no autorizado.[2]

Referencias

editar
  1. García, David (14 de abril de 2020). «Bestiario de una memoria mal gestionada (I)» (html). Telefónica, división de ciberseguridad para empresas. Archivado desde el original el 14 de abril de 2020. Consultado el 14 de abril de 2020. «Por cierto, lo llamamos arbitrario porque, en realidad, la CPU ya está ejecutando código; la gracia de lo arbitrario es que se deja al arbitrio del atacante decidir qué código se ejecuta, puesto que es quien toma el control del proceso. De eso trata una explotación de este tipo: desviar la ejecución normal y determinada de un proceso a un agente extraño introducido en aquel de forma arbitraria por un atacante a través de un exploit.» 
  2. Johnson, Pontus (2021). Intrinsic Propensity for Vulnerability in Computers? Arbitrary Code Execution in the Universal Turing Machine. doi:10.48550/ARXIV.2105.02124. Consultado el 8 de diciembre de 2023.