mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
63 lines
2.8 KiB
Markdown
63 lines
2.8 KiB
Markdown
# 9100/tcp - PJL (Printer Job Language)
|
||
|
||
{{#include ../banners/hacktricks-training.md}}
|
||
|
||
## Podstawowe informacje
|
||
|
||
Z [tutaj](http://hacking-printers.net/wiki/index.php/Port_9100_printing): Drukowanie surowe to proces nawiązywania połączenia z portem 9100/tcp drukarki sieciowej. Jest to domyślny sposób używany przez CUPS i architekturę drukowania Windows do komunikacji z drukarkami sieciowymi, ponieważ jest uważany za ‘_najprostszy, najszybszy i ogólnie najbardziej niezawodny protokół sieciowy używany do drukarek_’. Surowe drukowanie na porcie 9100, znane również jako JetDirect, AppSocket lub PDL-datastream, w rzeczywistości **nie jest protokołem drukowania samym w sobie**. Zamiast tego **wszystkie dane wysyłane są bezpośrednio przetwarzane przez urządzenie drukujące**, tak jak w przypadku połączenia równoległego przez TCP. W przeciwieństwie do LPD, IPP i SMB, może to wysyłać bezpośrednie informacje zwrotne do klienta, w tym komunikaty o statusie i błędach. Taki **dwukierunkowy kanał** daje nam bezpośredni **dostęp** do **wyników** poleceń **PJL**, **PostScript** lub **PCL**. Dlatego surowe drukowanie na porcie 9100 – które jest obsługiwane przez prawie każdą drukarkę sieciową – jest używane jako kanał do analizy bezpieczeństwa z PRET i PFT.
|
||
|
||
Jeśli chcesz dowiedzieć się więcej o [**hackingu drukarek, przeczytaj tę stronę**](http://hacking-printers.net/wiki/index.php/Main_Page).
|
||
|
||
**Domyślny port:** 9100
|
||
```
|
||
9100/tcp open jetdirect
|
||
```
|
||
## Enumeracja
|
||
|
||
### Ręczna
|
||
```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
|
||
```
|
||
### Automatyczny
|
||
```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
|
||
```
|
||
## Narzędzie do hackowania drukarek
|
||
|
||
To jest narzędzie, które chcesz użyć do nadużywania drukarek:
|
||
|
||
|
||
{{#ref}}
|
||
https://github.com/RUB-NDS/PRET
|
||
{{#endref}}
|
||
|
||
## **Shodan**
|
||
|
||
- `pjl port:9100`
|
||
|
||
{{#include ../banners/hacktricks-training.md}}
|