Das Ziel dieses Vorgehens ist es, die Befehlsausführung eines privilegierten Prozesses durch Manipulation des PATH-Umgebungsvariablen-Werts zu beeinflussen. Indem ein Befehl in einem vorrangigen Verzeichnis des PATH durch eine schädliche Datei ersetzt wird, kann ein Angreifer eventuell höhere Systemprivilegien erlangen.
Vorgehen:
-
Pfad-Modifikation:
bashCopy code
export PATH=/tmp:$PATHMit diesem Befehl wird
/tmpam Anfang derPATH-Umgebungsvariable platziert, sodass die Shell zuerst im Verzeichnis/tmpnach ausführbaren Dateien sucht. -
Navigiere zum
/tmpVerzeichnis:bashCopy code
cd /tmp/Dies setzt das aktuelle Arbeitsverzeichnis der Shell auf
/tmp. -
Erstellung der schädlichen Datei:
bashCopy code
echo '/bin/sh' > catDieser Befehl erstellt (oder überschreibt, falls sie bereits existiert) eine Datei namens
catim/tmp-Verzeichnis. Diese Datei enthält den Text/bin/sh, der ein Befehl ist, um eine Shell zu starten. -
Datei ausführbar machen:
bashCopy code
chmod +x catDurch Hinzufügen der “ausführbaren” Berechtigung zur
cat-Datei wird sichergestellt, dass sie als Programm oder Skript ausgeführt werden kann.
Zusammenfassung:
Nach Ausführung dieser Befehle existiert eine ausführbare Datei namens cat im /tmp Verzeichnis, die eine Shell startet, wenn sie aufgerufen wird. Wenn ein privilegierter Prozess oder ein Skript den Befehl cat ohne Angabe des vollen Pfads ausführt und der PATH dieses Prozesses zuvor manipuliert wurde, dann wird die schädliche cat-Datei anstelle des tatsächlichen cat-Werkzeugs ausgeführt. Dies könnte potenziell zu einer Eskalation von Privilegien führen, wenn der betroffene Prozess mit höheren Rechten läuft.