7.9 KiB
Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!
Inne sposoby wsparcia HackTricks:
- Jeśli chcesz zobaczyć swoją firmę reklamowaną w HackTricks lub pobrać HackTricks w formacie PDF, sprawdź PLAN SUBSKRYPCJI!
- Zdobądź oficjalne gadżety PEASS & HackTricks
- Odkryj Rodzinę PEASS, naszą kolekcję ekskluzywnych NFT
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @carlospolopm.
- Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do HackTricks i HackTricks Cloud github repos.
Podstawowe informacje
Z tej strony: Drukowanie bezpośrednie to proces nawiązania połączenia z portem 9100/tcp drukarki sieciowej. Jest to domyślna metoda używana przez CUPS i architekturę drukowania systemu Windows do komunikacji z drukarkami sieciowymi, ponieważ jest uważana za „najprostszą, najszybszą i ogólnie najbardziej niezawodną protokół sieciowy używany do drukarek”. Drukowanie bezpośrednie na porcie 9100, zwane również JetDirect, AppSocket lub strumieniem danych PDL, nie jest protokołem drukowania samym w sobie. Zamiast tego wszystkie wysyłane dane 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 przesyłać bezpośrednie informacje zwrotne do klienta, w tym status i komunikaty o błędach. Taki dwukierunkowy kanał daje nam bezpośredni dostęp do wyników poleceń PJL, PostScript lub PCL. Dlatego drukowanie bezpośrednie na porcie 9100 - obsługiwane przez prawie każdą drukarkę sieciową - jest używane jako kanał do analizy zabezpieczeń za pomocą PRET i PFT.
Jeśli chcesz dowiedzieć się więcej na temat hakowania drukarek, przeczytaj tę stronę.
Domyślny port: 9100
9100/tcp open jetdirect
Wyliczanie
Ręczne wyliczanie
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
Automatyczne
PJL (Printer Job Language)
PJL (Printer Job Language) to język sterujący drukarkami laserowymi, który umożliwia zarządzanie różnymi aspektami drukowania, takimi jak konfiguracja, monitorowanie i kontrola zadań drukowania. PJL jest używany przez drukarki laserowe HP i niektóre inne modele drukarek.
Słabe punkty
-
Brak uwierzytelnienia: Wiele drukarek HP obsługuje PJL bez wymagania uwierzytelnienia, co oznacza, że osoba zdalnie podłączona do sieci może uzyskać dostęp do funkcji zarządzania drukarką bez konieczności podawania hasła.
-
Wrażliwe komendy: PJL zawiera wiele komend, które mogą być wykorzystane do wykonania nieautoryzowanych działań, takich jak resetowanie drukarki, zmiana konfiguracji, wydrukowanie poufnych dokumentów itp.
Ataki
-
Zmiana konfiguracji: Atakujący może wykorzystać komendy PJL, aby zmienić konfigurację drukarki, taką jak adres IP, maskę podsieci, bramę domyślną itp. Może to prowadzić do dezorganizacji sieci i utraty dostępu do drukarki.
-
Wykonanie poleceń: Atakujący może wykorzystać komendy PJL do wykonania poleceń na drukarce. Może to obejmować resetowanie drukarki, wydrukowanie poufnych dokumentów, zmianę ustawień fabrycznych itp.
-
Przechwytywanie danych: Atakujący może wykorzystać komendy PJL do przechwycenia danych drukowanych przez drukarkę. Może to obejmować przechwytywanie poufnych dokumentów, haseł, informacji o sieci itp.
Zabezpieczenia
Aby zabezpieczyć drukarkę przed atakami PJL, należy podjąć następujące kroki:
-
Włącz uwierzytelnianie: Skonfiguruj drukarkę tak, aby wymagała uwierzytelnienia przed udostępnieniem dostępu do funkcji zarządzania drukarką.
-
Ogranicz dostęp do sieci: Skonfiguruj drukarkę tak, aby ograniczyć dostęp do niej tylko do zaufanych adresów IP lub podsieci.
-
Zaktualizuj oprogramowanie: Regularnie aktualizuj oprogramowanie drukarki, aby zapewnić najnowsze poprawki zabezpieczeń.
-
Monitoruj logi: Regularnie monitoruj logi drukarki w celu wykrywania podejrzanej aktywności.
-
Wyłącz niepotrzebne usługi: Wyłącz niepotrzebne usługi drukarki, które mogą być potencjalnymi punktami ataku.
Narzędzia
Poniżej znajdują się niektóre narzędzia, które mogą być przydatne podczas testowania penetracyjnego drukarek obsługujących PJL:
-
PJLTester: Narzędzie do testowania penetracyjnego drukarek obsługujących PJL. Pozwala na wysyłanie komend PJL i analizowanie odpowiedzi drukarki.
-
PJLScan: Narzędzie do skanowania sieci w poszukiwaniu drukarek obsługujących PJL. Pozwala na identyfikację drukarek i przeprowadzenie testów penetracyjnych.
-
PJLExploit: Narzędzie do wykorzystywania słabych punktów w drukarkach obsługujących PJL. Pozwala na automatyczne wykonywanie ataków, takich jak zmiana konfiguracji, wykonanie poleceń itp.
nmap -sV --script pjl-ready-message -p <PORT> <IP>
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 hakowania drukarek
To jest narzędzie, które chcesz użyć do nadużywania drukarek:
{% embed url="https://github.com/RUB-NDS/PRET" %}
Shodan
pjl port:9100
Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!
Inne sposoby wsparcia HackTricks:
- Jeśli chcesz zobaczyć swoją firmę reklamowaną w HackTricks lub pobrać HackTricks w formacie PDF, sprawdź SUBSCRIPTION PLANS!
- Zdobądź oficjalne gadżety PEASS & HackTricks
- Odkryj Rodzinę PEASS, naszą kolekcję ekskluzywnych NFT
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @carlospolopm.
- Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do HackTricks i HackTricks Cloud github repos.