Cron-Jobs und PATH
Missbrauch geplanter Aufgaben
Cron-Jobs und PATH ist eine kostenlose Ethical Hacking Academy-Lektion auf CoddyKit. Dies ist Lektion 3 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Ethical Hacking Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Ethical Hacking Academy-Kurs umfasst insgesamt 4 Lektionen.
Cronjobs als Angriffsvektor
Der cron-Daemon führt geplante Aufgaben aus, häufig als root. Wenn Sie beeinflussen können, was ein Cronjob von root ausführt — sein Skript, seine Eingaben oder die Auflösung seiner Befehle — können Sie Code als root ausführen.
Cron enumerieren
Lesen Sie die System-Crontab und die Cron-Verzeichnisse. Notieren Sie, wer jeden Job ausführt und welche Skripte dabei aufgerufen werden.
cat /etc/crontab
ls -la /etc/cron.d /etc/cron.daily /etc/cron.hourly
cat /var/spool/cron/crontabs/* 2>/dev/nullNach versteckten Jobs suchen
Manche Jobs befinden sich nicht in offensichtlichen Dateien. pspy überwacht die Prozesserstellung ohne root-Rechte und macht Cron-Befehle sichtbar, sobald sie ausgeführt werden — auch solche, deren Konfiguration Sie nicht lesen können.
./pspy64
# watch for periodic root processesBeschreibbare Cron-Skripte
Der einfachste Missbrauch: Ein Cron-Job von root führt ein Skript aus, in das Sie schreiben können. Hängen Sie eine Payload an und warten Sie auf den nächsten Lauf.
ls -la /opt/backup.sh # -rwxrwxrwx root
echo "cp /bin/bash /tmp/rootbash; chmod +s /tmp/rootbash" >> /opt/backup.shWildcard-Injection
Wenn ein Cron-Job von root in einem Verzeichnis, das Sie kontrollieren, ein Wildcard-Muster wie tar -czf backup.tar.gz * verwendet, können Sie Dateien erstellen, deren Namen als Kommandozeilenoptionen fungieren (Argument-Injection). Dadurch wird tar gezwungen, Ihren Befehl auszuführen.
touch -- "--checkpoint=1"
touch -- "--checkpoint-action=exec=sh shell.sh"
echo "cp /bin/bash /tmp/rb; chmod +s /tmp/rb" > shell.shWas ist PATH?
PATH ist die Liste der Verzeichnisse, in denen die Shell nach Befehlen sucht. Wenn ein Skript einen Befehl nur über seinen Namen aufruft (z. B. backup statt /usr/bin/backup), wird die erste passende Datei in PATH verwendet.
echo $PATH
# /usr/local/bin:/usr/bin:/binPATH-Hijacking
Wenn ein als root ausgeführtes Skript einen Befehl ohne absoluten Pfad aufruft und Sie ein beschreibbares Verzeichnis an den Anfang seines PATH setzen können, legen Sie dort eine schädliche Binärdatei mit diesem Namen ab. root führt dann Ihre Version aus.
echo -e "#!/bin/bash\ncp /bin/bash /tmp/rb; chmod +s /tmp/rb" > /tmp/backup
chmod +x /tmp/backup
export PATH=/tmp:$PATHRelativer Pfad in SUID-Binärdateien
Dasselbe Problem tritt bei benutzerdefinierten SUID-Binärdateien auf, die system("service ...") ohne vollständigen Pfad aufrufen. Durch PATH-Hijacking wird Ihr Code anschließend als root ausgeführt — eine Kombination aus PATH-Missbrauch und dem SUID-Konzept.
Ausnutzen eines beschreibbaren PATH-Verzeichnisses
Auch ohne PATH zu ändern genügt es, wenn ein vorhandenes PATH-Verzeichnis (wie /usr/local/bin) beschreibbar ist und ein root-Job einen dort gefundenen Befehl aufruft: Legen Sie Ihre Binärdatei einfach an dieser Stelle ab.
ls -ld /usr/local/bin # check for write permissionDen Angriff zeitlich abstimmen
Eine auf Cron basierende Rechteausweitung erfordert Geduld — Sie müssen auf den Zeitplan warten. Notieren Sie das Intervall, platzieren Sie Ihre Payload und prüfen Sie nach dem Start des Jobs das Ergebnis (z. B. Ihre SUID-Shell).
watch -n 5 ls -la /tmp/rootbashSchutzmaßnahmen und Ethik
Administratoren sollten in Skripten absolute Pfade verwenden, die Berechtigungen für Cron-Skripte und deren Verzeichnisse einschränken, Wildcards in Pfaden unter Angreiferkontrolle vermeiden und innerhalb von Cron einen sicheren PATH setzen. Testen Sie diese Techniken nur dort, wo Sie dazu autorisiert sind.
Schnelltest
Testen Sie Ihr Wissen über Cron und PATH.
Zusammenfassung
Sie haben die Rechteausweitung über Cron und PATH kennengelernt:
- Cron-Jobs von root, die beschreibbare Skripte aufrufen oder Wildcards verwenden, sind ausnutzbar
- pspy macht versteckte geplante Prozesse sichtbar
- PATH-Hijacking missbraucht Befehle, die ohne absoluten Pfad aufgerufen werden
- Platzieren Sie die Payload, warten Sie auf den Zeitplan und verschaffen Sie sich root-Zugriff
Als Nächstes: Kernel-Exploits.
Lerne Ethical Hacking Academy mit einem KI-Tutor — kostenlos
Schreibe und führe echten Code in deinem Browser aus, bekomme sofortige Hilfe von einem 24/7 KI-Tutor und setze dein Lernen im Web oder in der App fort.
- Kurse
- 31
- Lektionen
- 111
Häufig gestellte Fragen
Ist die Lektion „Cron-Jobs und PATH“ kostenlos?
Ja — der vollständige Text von „Cron-Jobs und PATH“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Ethical Hacking Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Ethical Hacking Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Cron-Jobs und PATH“?
Missbrauch geplanter Aufgaben Du übst Ethical Hacking Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Ethical Hacking Academy zu starten?
Keine Vorkenntnisse erforderlich. Ethical Hacking Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 3 von 4.
Wie lange dauert die Lektion „Cron-Jobs und PATH“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Ethical Hacking Academy-Lektion Code schreiben und ausführen?
Ja. Jede Ethical Hacking Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Enumeration
- SUID- und Sudo-Missbrauch
- Cron-Jobs und PATH
- Kernel-Exploits