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

3.6 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

Il Internet Printing Protocol (IPP), come specificato in RFC2910 e RFC2911, funge da base per la stampa su internet. La sua capacità di essere esteso è dimostrata da sviluppi come IPP Everywhere, che mira a standardizzare la stampa mobile e cloud, e l'introduzione di estensioni per la stampa 3D.

Sfruttando il protocollo HTTP, IPP beneficia di pratiche di sicurezza consolidate, tra cui autenticazione base/digest e crittografia SSL/TLS. Azioni come l'invio di un lavoro di stampa o la richiesta dello stato della stampante vengono eseguite tramite richieste HTTP POST dirette al server IPP, che opera sulla porta 631/tcp.

Un'implementazione ben nota di IPP è CUPS, un sistema di stampa open-source prevalente in varie distribuzioni Linux e OS X. Nonostante la sua utilità, IPP, simile a LPD, può essere sfruttato per trasmettere contenuti dannosi tramite file PostScript o PJL, evidenziando un potenziale rischio per la sicurezza.

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

Se vuoi saperne di più su hacking delle stampanti leggi questa pagina.

{% hint style="success" %} Impara e pratica AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Supporta HackTricks
{% endhint %}