{{#include ../banners/hacktricks-training.md}} # Informations de base Depuis [ici](http://hacking-printers.net/wiki/index.php/Port_9100_printing) : L'impression brute est ce que nous définissons comme le processus de connexion au port 9100/tcp d'une imprimante réseau. C'est la méthode par défaut utilisée par CUPS et l'architecture d'impression Windows pour communiquer avec les imprimantes réseau, car elle est considérée comme ‘_le protocole réseau le plus simple, le plus rapide et généralement le plus fiable utilisé pour les imprimantes_’. L'impression brute sur le port 9100, également appelée JetDirect, AppSocket ou PDL-datastream, **n'est en réalité pas un protocole d'impression en soi**. Au lieu de cela, **toutes les données envoyées sont directement traitées par le dispositif d'impression**, tout comme une connexion parallèle sur TCP. Contrairement à LPD, IPP et SMB, cela peut envoyer des retours directs au client, y compris des messages de statut et d'erreur. Un **canal bidirectionnel** nous donne un **accès** direct aux **résultats** des commandes **PJL**, **PostScript** ou **PCL**. Par conséquent, l'impression brute sur le port 9100 – qui est supportée par presque toutes les imprimantes réseau – est utilisée comme canal pour l'analyse de sécurité avec PRET et PFT. Si vous voulez en savoir plus sur [**le hacking des imprimantes, lisez cette page**](http://hacking-printers.net/wiki/index.php/Main_Page). **Port par défaut :** 9100 ``` 9100/tcp open jetdirect ``` # Énumération ## Manuel ```bash nc -vn 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 ``` ## Automatique ```bash nmap -sV --script pjl-ready-message -p ``` ```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 ``` ## Outil de hacking de printers C'est l'outil que vous voulez utiliser pour abuser des imprimantes : {{#ref}} https://github.com/RUB-NDS/PRET {{#endref}} # **Shodan** - `pjl port:9100` {{#include ../banners/hacktricks-training.md}}