eval-Befehl in Linux Bash verwenden
Dieser Artikel zeigt, wie man den Befehl eval
in Linux Bash verwendet. Dann werden wir uns mit der Schwachstelle befassen, die dieser Befehl verursachen kann.
Verwendung von den Befehl eval
in Bash
Der Befehl eval
interpretiert die angegebenen Argumente als Bash-Befehl.
Nehmen wir zum besseren Verständnis ein Beispiel. Wir haben eine Datei test.txt
mit This is how eval works!
.
Nachfolgend finden Sie den Inhalt des Bash-Beispielskripts.
x="cat test.txt"
echo "The value of the variable x: "
echo $x
echo "The result when we use eval command:"
eval $x
Zuerst drucken wir die Variable x
mit echo
. Das ist genau der Wert, den wir definiert haben.
Dann verwenden wir den Befehl eval
mit der von uns definierten Variable. Diesmal wird der Inhalt der Variablen als Befehl ausgeführt und der Inhalt von test.txt
ausgegeben.
Seien Sie vorsichtig bei der Verwendung von eval
in Bash
Der Befehl eval
ist böse. Seien Sie vorsichtig, wenn Sie diesen Befehl verwenden.
Betrachten Sie das folgende Beispiel eines einfachen Bash-Skripts, das den angegebenen Ausdruck berechnet und das Ergebnis auf dem Bildschirm ausgibt. Da das eval
die gegebene Eingabe als Bash-Befehl ausführt, wird dies auch ausgeführt, wenn der Benutzer einen böswilligen Befehl als Eingabe bereitstellt.
read -p "Enter the expression to calculate (2 + 3) " expression
result="expr $expression"
eval $result
Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.
LinkedIn