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

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

Protocolo de Impresión de Internet IPP

El Protocolo de Impresión de Internet (IPP), como se especifica en RFC2910 y RFC2911, sirve como base para la impresión a través de internet. Su capacidad de ser extendido se muestra en desarrollos como IPP Everywhere, que busca estandarizar la impresión móvil y en la nube, y la introducción de extensiones para impresión 3D.

Aprovechando el protocolo HTTP, IPP se beneficia de prácticas de seguridad establecidas que incluyen autenticación básica/digest y cifrado SSL/TLS. Acciones como enviar un trabajo de impresión o consultar el estado de la impresora se realizan a través de solicitudes HTTP POST dirigidas al servidor IPP, que opera en puerto 631/tcp.

Una implementación bien conocida de IPP es CUPS, un sistema de impresión de código abierto prevalente en varias distribuciones de Linux y OS X. A pesar de su utilidad, IPP, al igual que LPD, puede ser explotado para transmitir contenido malicioso a través de archivos PostScript o PJL, destacando un posible riesgo de seguridad.

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

Si quieres aprender más sobre hackear impresoras, lee esta página.

{% hint style="success" %} Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE)

Apoya a HackTricks
{% endhint %}