hacktricks/network-services-pentesting/pentesting-631-internet-printing-protocol-ipp.md

3.8 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 %}

Internet Printing Protocol IPP

Das Internet Printing Protocol (IPP), wie in RFC2910 und RFC2911 spezifiziert, dient als Grundlage für das Drucken über das Internet. Seine Erweiterbarkeit wird durch Entwicklungen wie IPP Everywhere demonstriert, das darauf abzielt, mobiles und Cloud-Drucken zu standardisieren, sowie durch die Einführung von Erweiterungen für 3D-Druck.

Durch die Nutzung des HTTP-Protokolls profitiert IPP von etablierten Sicherheitspraktiken, einschließlich Basis-/Digest-Authentifizierung und SSL/TLS-Verschlüsselung. Aktionen wie das Einreichen eines Druckauftrags oder das Abfragen des Druckerstatus werden durch HTTP POST-Anfragen an den IPP-Server durchgeführt, der auf Port 631/tcp arbeitet.

Eine bekannte Implementierung von IPP ist CUPS, ein Open-Source-Drucksystem, das in verschiedenen Linux-Distributionen und OS X verbreitet ist. Trotz seiner Nützlichkeit kann IPP, ähnlich wie LPD, ausgenutzt werden, um bösartige Inhalte über PostScript oder PJL-Dateien zu übertragen, was ein potenzielles Sicherheitsrisiko darstellt.

# Example of sending an IPP request using Python
import requests

url = "http://printer.example.com:631/ipp/print"
headers = {"Content-Type": "application/ipp"}
data = b"..."  # IPP request data goes here

response = requests.post(url, headers=headers, data=data, verify=True)
print(response.status_code)

Wenn Sie mehr über Hacking von Druckern erfahren möchten, lesen Sie diese Seite.

{% 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)

Unterstützen Sie HackTricks
{% endhint %}