631 - Internet Printing Protocol(IPP)

Support HackTricks

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 εκτυπωτών διαβάστε αυτή τη σελίδα.

Υποστηρίξτε το HackTricks

Last updated