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

4.7 KiB
Raw Blame History

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

Το Internet Printing Protocol (IPP), όπως καθορίζεται στο RFC2910 και RFC2911, χρησιμεύει ως θεμέλιο για την εκτύπωση μέσω του διαδικτύου. Η ικανότητά του να επεκτείνεται επιδεικνύεται από εξελίξεις όπως το IPP Everywhere, το οποίο στοχεύει στην τυποποίηση της εκτύπωσης μέσω κινητών και cloud, και την εισαγωγή επεκτάσεων για 3D εκτύπωση.

Αξιοποιώντας το πρωτόκολλο HTTP, το IPP επωφελείται από καθιερωμένες πρακτικές ασφάλειας, συμπεριλαμβανομένης της basic/digest authentication και της SSL/TLS κρυπτογράφησης. Ενέργειες όπως η υποβολή μιας εκτύπωσης ή η ερώτηση κατάστασης εκτυπωτή πραγματοποιούνται μέσω HTTP POST requests που κατευθύνονται στον διακομιστή IPP, ο οποίος λειτουργεί στην θύρα 631/tcp.

Μια γνωστή υλοποίηση του IPP είναι το CUPS, ένα ανοιχτού κώδικα σύστημα εκτύπωσης που είναι διαδεδομένο σε διάφορες διανομές Linux και OS X. Παρά τη χρησιμότητά του, το IPP, όπως και το LPD, μπορεί να εκμεταλλευτεί για τη μετάδοση κακόβουλου περιεχομένου μέσω PostScript ή PJL files, υπογραμμίζοντας έναν πιθανό κίνδυνο ασφάλειας.

# 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)

Αν θέλετε να μάθετε περισσότερα για το hacking εκτυπωτών διαβάστε αυτή τη σελίδα.

{% hint style="success" %} Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Υποστηρίξτε το HackTricks
{% endhint %}