9100 - Pentesting Raw Printing (JetDirect, AppSocket, PDL-datastream)

Support HackTricks

기본 정보

여기에서: 원시 인쇄는 네트워크 프린터의 9100/tcp 포트에 연결하는 과정을 정의합니다. 이는 CUPS와 Windows 인쇄 아키텍처가 네트워크 프린터와 통신하는 데 사용하는 기본 방법으로, ‘프린터에 사용되는 가장 간단하고 빠르며 일반적으로 가장 신뢰할 수 있는 네트워크 프로토콜’로 간주됩니다. 원시 포트 9100 인쇄는 JetDirect, AppSocket 또는 PDL 데이터 스트림이라고도 하며 실제로 자체적으로 인쇄 프로토콜이 아닙니다. 대신 전송된 모든 데이터는 인쇄 장치에 의해 직접 처리됩니다, 마치 TCP를 통한 병렬 연결처럼. LPD, IPP 및 SMB와 대조적으로, 이는 클라이언트에게 상태 및 오류 메시지를 포함한 직접 피드백을 보낼 수 있습니다. 이러한 양방향 채널PJL, PostScript 또는 PCL 명령의 결과에 대한 직접 접근을 제공합니다. 따라서 거의 모든 네트워크 프린터에서 지원되는 원시 포트 9100 인쇄는 PRET 및 PFT와 함께 보안 분석을 위한 채널로 사용됩니다.

프린터 해킹에 대해 더 알고 싶다면 이 페이지를 읽어보세요.

기본 포트: 9100

9100/tcp open  jetdirect

열거

수동

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

자동화

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

프린터 해킹 도구

이것은 프린터를 악용하는 데 사용할 도구입니다:

Shodan

  • pjl port:9100

HackTricks 지원하기

Last updated