tip

Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks

Información Básica

Desde aquí: La impresión en bruto es lo que definimos como el proceso de hacer una conexión al puerto 9100/tcp de una impresora de red. Es el método predeterminado utilizado por CUPS y la arquitectura de impresión de Windows para comunicarse con impresoras de red, ya que se considera como ‘el protocolo de red más simple, rápido y generalmente más confiable utilizado para impresoras’. La impresión en bruto por el puerto 9100, también conocida como JetDirect, AppSocket o PDL-datastream, en realidad no es un protocolo de impresión por sí mismo. En cambio, todos los datos enviados son procesados directamente por el dispositivo de impresión, al igual que una conexión paralela a través de TCP. En contraste con LPD, IPP y SMB, esto puede enviar retroalimentación directa al cliente, incluyendo mensajes de estado y error. Tal canal bidireccional nos da acceso directo a los resultados de los comandos PJL, PostScript o PCL. Por lo tanto, la impresión en bruto por el puerto 9100 – que es compatible con casi cualquier impresora de red – se utiliza como el canal para el análisis de seguridad con PRET y PFT.

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

Puerto predeterminado: 9100

9100/tcp open  jetdirect

Enumeración

Manual

bash
nc -vn <IP> 9100
@PJL INFO STATUS      #CODE=40000   DISPLAY="Sleep"   ONLINE=TRUE
@PJL INFO ID          # ID (Brand an version): Brother HL-L2360D series:84U-F75:Ver.b.26
@PJL INFO PRODINFO    #Product info
@PJL FSDIRLIST NAME="0:\" ENTRY=1 COUNT=65535  #List dir
@PJL INFO VARIABLES   #Env variales
@PJL INFO FILESYS     #?
@PJL INFO TIMEOUT     #Timeout variables
@PJL RDYMSG           #Ready message
@PJL FSINIT
@PJL FSDIRLIST
@PJL FSUPLOAD         #Useful to upload a file
@PJL FSDOWNLOAD       #Useful to download a file
@PJL FSDELETE         #Useful to delete a file

Automático

bash
nmap -sV --script pjl-ready-message -p <PORT> <IP>
bash
msf> use auxiliary/scanner/printer/printer_env_vars
msf> use auxiliary/scanner/printer/printer_list_dir
msf> use auxiliary/scanner/printer/printer_list_volumes
msf> use auxiliary/scanner/printer/printer_ready_message
msf> use auxiliary/scanner/printer/printer_version_info
msf> use auxiliary/scanner/printer/printer_download_file
msf> use auxiliary/scanner/printer/printer_upload_file
msf> use auxiliary/scanner/printer/printer_delete_file

Herramienta de hacking de impresoras

Esta es la herramienta que quieres usar para abusar de impresoras:

{% embed url="https://github.com/RUB-NDS/PRET" %}

Shodan

  • pjl port:9100

tip

Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks