mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
24 lines
2.4 KiB
Markdown
24 lines
2.4 KiB
Markdown
{{#include ../banners/hacktricks-training.md}}
|
||
|
||
# Internet Printing Protocol \(IPP\)
|
||
|
||
Το **Internet Printing Protocol (IPP)**, όπως καθορίζεται στο **RFC2910** και **RFC2911**, χρησιμεύει ως θεμέλιο για την εκτύπωση μέσω του διαδικτύου. Η ικανότητά του να επεκτείνεται επιδεικνύεται από εξελίξεις όπως το **IPP Everywhere**, που στοχεύει στην τυποποίηση της εκτύπωσης από κινητές συσκευές και το cloud, και την εισαγωγή επεκτάσεων για **3D printing**.
|
||
|
||
Αξιοποιώντας το πρωτόκολλο **HTTP**, το IPP επωφελείται από καθιερωμένες πρακτικές ασφάλειας, συμπεριλαμβανομένων της **basic/digest authentication** και της **SSL/TLS encryption**. Ενέργειες όπως η υποβολή ενός εκτυπωτικού έργου ή η ερώτηση κατάστασης εκτυπωτή πραγματοποιούνται μέσω **HTTP POST requests** που κατευθύνονται στον διακομιστή IPP, ο οποίος λειτουργεί στην **port 631/tcp**.
|
||
|
||
Μια γνωστή υλοποίηση του IPP είναι το **CUPS**, ένα ανοιχτού κώδικα σύστημα εκτύπωσης που είναι διαδεδομένο σε διάφορες διανομές Linux και OS X. Παρά τη χρησιμότητά του, το IPP, παρόμοια με το LPD, μπορεί να εκμεταλλευτεί για τη μετάδοση κακόβουλου περιεχομένου μέσω **PostScript** ή **PJL files**, υπογραμμίζοντας έναν πιθανό κίνδυνο ασφάλειας.
|
||
```python
|
||
# 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 printers διαβάστε αυτή τη σελίδα**](http://hacking-printers.net/wiki/index.php/Main_Page).
|
||
|
||
{{#include ../banners/hacktricks-training.md}}
|