mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-25 22:20:43 +00:00
93 lines
4.7 KiB
Markdown
93 lines
4.7 KiB
Markdown
|
||
|
||
<details>
|
||
|
||
<summary><strong>Learn AWS hacking from zero to hero with</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||
|
||
Other ways to support HackTricks:
|
||
|
||
* If you want to see your **company advertised in HackTricks** or **download HackTricks in PDF** Check the [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
|
||
* Get the [**official PEASS & HackTricks swag**](https://peass.creator-spring.com)
|
||
* Discover [**The PEASS Family**](https://opensea.io/collection/the-peass-family), our collection of exclusive [**NFTs**](https://opensea.io/collection/the-peass-family)
|
||
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
||
* **Share your hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
||
|
||
</details>
|
||
|
||
|
||
# Basic Information
|
||
|
||
From [here](http://hacking-printers.net/wiki/index.php/Port\_9100\_printing): Raw printing is what we define as the process of making a connection to port 9100/tcp of a network printer. It is the default method used by CUPS and the Windows printing architecture to communicate with network printers as it is considered as ‘_the simplest, fastest, and generally the most reliable network protocol used for printers_’. Raw port 9100 printing, also referred to as JetDirect, AppSocket or PDL-datastream actually **is not a printing protocol by itself**. Instead **all data sent is directly processed by the printing device**, just like a parallel connection over TCP. In contrast to LPD, IPP and SMB, this can send direct feedback to the client, including status and error messages. Such a **bidirectional channel** gives us direct **access** to **results** of **PJL**, **PostScript** or **PCL** commands. Therefore raw port 9100 printing – which is supported by almost any network printer – is used as the channel for security analysis with PRET and PFT.
|
||
|
||
If you want to learn more about [**hacking printers read this page**](http://hacking-printers.net/wiki/index.php/Main_Page).
|
||
|
||
**Default port:** 9100
|
||
|
||
```
|
||
9100/tcp open jetdirect
|
||
```
|
||
|
||
# Enumeration
|
||
|
||
## 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
|
||
```
|
||
|
||
## Automatic
|
||
|
||
```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
|
||
```
|
||
|
||
## Printers Hacking tool
|
||
|
||
This is the tool you want to use to abuse printers:
|
||
|
||
{% embed url="https://github.com/RUB-NDS/PRET" %}
|
||
|
||
# **Shodan**
|
||
|
||
* `pjl port:9100`
|
||
|
||
|
||
<details>
|
||
|
||
<summary><strong>Learn AWS hacking from zero to hero with</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||
|
||
Other ways to support HackTricks:
|
||
|
||
* If you want to see your **company advertised in HackTricks** or **download HackTricks in PDF** Check the [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
|
||
* Get the [**official PEASS & HackTricks swag**](https://peass.creator-spring.com)
|
||
* Discover [**The PEASS Family**](https://opensea.io/collection/the-peass-family), our collection of exclusive [**NFTs**](https://opensea.io/collection/the-peass-family)
|
||
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
||
* **Share your hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
|
||
|
||
</details>
|
||
|
||
|