Es ist einfach für sich selbst zu testen.
CVE-2014-6271
CVE-2014-6271 ist der ursprüngliche Shellshock-Fehler. Führen Sie diesen Code an der Bash-Eingabeaufforderung aus, um festzustellen, ob Sie anfällig sind:
env VAR='() { :;}; echo Bash is vulnerable!' bash -c "echo Bash Test"
Wenn die Ausgabe ist:
Bash Test
Dann geht es dir gut. Wenn Sie andererseits sehen:
Bash is vulnerable! Bash Test
Dann bist du bash
verwundbar.
CVE-2014-7169
Es gibt eine neuere verwandte Sicherheitsanfälligkeit . Um dies zu testen, führen Sie diesen Code aus:
env X='() { (a)=>\' sh -c "echo date"; cat echo
Wenn Sie die folgende Ausgabe sehen:
date cat: echo: No such file or directory
Dann geht es dir gut.
Alle Versionen von bash bis 4.3, der aktuellen Version, waren anfällig für Shellshock. Da Patches ständig aktualisiert werden, ist das Aktualisieren Ihrer Version wahrscheinlich eine gute Idee.
Wer ist anfällig?
Laut Qualys kann eine Remote- Nutzung von Shellshock in den folgenden Situationen möglich sein:
- Apache-Server, die mod_cgi oder mod_cgid verwenden, sind betroffen, wenn CGI-Skripts entweder in bash oder in Spawn-Subshells geschrieben werden. Solche Subshells werden implizit von system / popen in C, von os.system / os.popen in Python, system / exec in PHP (bei Ausführung im CGI-Modus) und open / system in Perl verwendet, wenn eine Shell verwendet wird (was davon abhängig ist in der Befehlszeichenfolge)
- ForceCommand wird in sshd-configs verwendet, um Remote-Benutzern eingeschränkte Befehlsausführungsfunktionen bereitzustellen. Dieser Fehler kann verwendet werden, um dies zu umgehen und eine beliebige Befehlsausführung bereitzustellen. Einige Git- und Subversion-Implementierungen verwenden solche eingeschränkten Shells. Die regelmäßige Verwendung von OpenSSH ist nicht betroffen, da Benutzer bereits über Shell-Zugriff verfügen.
- DHCP-Clients rufen Shell-Skripts zum Konfigurieren des Systems auf, wobei die Werte von einem potenziell böswilligen Server übernommen werden. Dies würde die Ausführung beliebiger Befehle, normalerweise als root, auf dem DHCP-Client-Computer ermöglichen.
- Verschiedene Daemons und SUID / privilegierte Programme können Shell-Skripts mit Umgebungsvariablenwerten ausführen, die vom Benutzer festgelegt / beeinflusst werden, wodurch beliebige Befehle ausgeführt werden können.
- Jede andere Anwendung, die an eine Shell angehängt ist oder ein Shell-Skript ausführt, wobei bash als Interpreter verwendet wird. Shell-Skripts, die keine Variablen exportieren, sind für dieses Problem nicht anfällig, auch wenn sie nicht vertrauenswürdigen Inhalt verarbeiten und in (nicht exportierten) Shell-Variablen und offenen Subshells speichern.
Um unter Windows anfällig zu sein, muss man jedoch eine Version eines der oben genannten Dienste verwenden, die aufruft bash
.