Use el comando eval en Linux Bash

Yahya Irmak 24 marzo 2022
  1. Usa el comando eval en Bash
  2. Tenga cuidado al usar eval en Bash
Use el comando eval en Linux Bash

Este artículo muestra cómo usar el comando eval en Linux Bash. Luego, abordaremos la vulnerabilidad que puede causar este comando.

Usa el comando eval en Bash

El comando eval interpreta los argumentos dados como un comando Bash.

Pongamos un ejemplo para entender mejor. Tenemos un archivo, test.txt, que contiene This is how eval works!.

A continuación se muestra el contenido del script Bash de ejemplo.

x="cat test.txt"
echo "The value of the variable x: "
echo $x

echo "The result when we use eval command:"
eval $x

Primero, imprimimos la variable x con echo. Este es exactamente el valor que definimos.

Luego, usamos el comando eval con la variable que definimos. Esta vez, el contenido de la variable se ejecuta como un comando y se imprime el contenido de test.txt.

comando de evaluación bash

Tenga cuidado al usar eval en Bash

El comando eval es malvado. Tenga cuidado al usar este comando.

Considere el siguiente ejemplo de un script Bash simple que calcula la expresión dada e imprime el resultado en la pantalla. Dado que eval ejecutará la entrada dada como un comando Bash, esto también se ejecutará si el usuario proporciona un comando malicioso como entrada.

read -p "Enter the expression to calculate (2 + 3) " expression
result="expr $expression"
eval $result

Eval es el comando malvado

Yahya Irmak avatar Yahya Irmak avatar

Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.

LinkedIn

Artículo relacionado - Bash Eval