基になるデバイスへのアクセスはデフォルトでファイルのアクセス許可によってのみ制御されるため、USBスティックにシステム内の実際のデバイスに対応する世界書き込み可能なデバイスノードを持つPOSIXファイルシステムが含まれている場合、そのデバイスノードを使用して対応するデバイスにアクセスできます「プレーン」ユーザーとしてのデバイス。オーディオデバイスの1つであるWebカメラに対応するデバイスを想像してください/dev/sda
(キャラクターデバイスではなくブロックデバイスですが、引数は同じです)。
わかりやすくするための例を次に示します。アクセスしたいとしましょう/dev/sda
(それから、あなたがなることを可能にするプログラムを植えることを含めて、あなたはディスクの内容でほとんど何でもできますroot
;これはブロックデバイスですが、問題はキャラクターデバイスでも同じです)。ターゲットシステムで、ls -l /dev/sda
ショー
brw-rw---- 1 root disk 8, 0 Sep 8 11:25 sda
これ/dev/sda
は、b
メジャー番号8とマイナー番号0(8, 0
行の中央)を持つブロックデバイス(行の先頭)です。デバイスは、root
(読み取り/書き込み)およびdisk
グループのメンバー(読み取り/書き込み)のみがアクセスできます。
今、このシステムであなたがなることができないと想像してください、root
しかし、何らかの理由で、あなたはなしでユーザーとしてUSBスティックを取り付けることができますnodev
。現在の別のシステムで、root
USBキーに対応する特殊ファイルを作成できます。
mknod -m 666 usersda b 8 0
これusersda
により、すべてのユーザーが読み取りおよび書き込み可能なという特別なファイルが作成されます。
ターゲットシステムにキーをマウントすると、アクセス制限なしusersda
で、と同じようにデバイスを使用できます/dev/sda
...
(これは、復号化されたマッパーデバイスにアクセスできる限り、暗号化されたファイルシステムでも機能します/dev/mapper
。適切なエントリに一致するデバイスを作成します。)