ファイルの隠し方
DESCRIPTION
第01回北関東情報セキュリティ勉強会 目覚ましLT資料TRANSCRIPT
![Page 1: ファイルの隠し方](https://reader038.vdocuments.pub/reader038/viewer/2022100600/556a89c9d8b42ac9298b47dc/html5/thumbnails/1.jpg)
ファイルの隠し方
@mfumi2
![Page 2: ファイルの隠し方](https://reader038.vdocuments.pub/reader038/viewer/2022100600/556a89c9d8b42ac9298b47dc/html5/thumbnails/2.jpg)
自己紹介
● セキュキャン2012 セキュアなOSを作ろうクラス
● Bitvisorを少しいじってました
![Page 3: ファイルの隠し方](https://reader038.vdocuments.pub/reader038/viewer/2022100600/556a89c9d8b42ac9298b47dc/html5/thumbnails/3.jpg)
本題: ファイルを隠すには?● ファイル名を偽装する● フォルダを深くする● 暗号化する
![Page 4: ファイルの隠し方](https://reader038.vdocuments.pub/reader038/viewer/2022100600/556a89c9d8b42ac9298b47dc/html5/thumbnails/4.jpg)
本題: ファイルを隠すには?● ファイル名を偽装する
→ 例えばテキストならgrepでばれる● フォルダを深くする
→ 検索で一発● 暗号化する
→ 何か隠してあることがばれる ブルートフォースの可能性
![Page 5: ファイルの隠し方](https://reader038.vdocuments.pub/reader038/viewer/2022100600/556a89c9d8b42ac9298b47dc/html5/thumbnails/5.jpg)
別のアプローチ● ファイルシステムの空きスペースを利用する
![Page 6: ファイルの隠し方](https://reader038.vdocuments.pub/reader038/viewer/2022100600/556a89c9d8b42ac9298b47dc/html5/thumbnails/6.jpg)
ファイルシステムについて● ファイルを管理● 基本的にファイルはいくつかのブロックからなる
4KB
10KBのファイル
![Page 7: ファイルの隠し方](https://reader038.vdocuments.pub/reader038/viewer/2022100600/556a89c9d8b42ac9298b47dc/html5/thumbnails/7.jpg)
方法1: 空き領域に勝手に書き込む
● 例)空き領域をビットマップで管理していた場合
1
1
0
1
0
0
ここが空いてる!
![Page 8: ファイルの隠し方](https://reader038.vdocuments.pub/reader038/viewer/2022100600/556a89c9d8b42ac9298b47dc/html5/thumbnails/8.jpg)
方法1: 空き領域に勝手に書き込む
● 問題点消される可能性がある
![Page 9: ファイルの隠し方](https://reader038.vdocuments.pub/reader038/viewer/2022100600/556a89c9d8b42ac9298b47dc/html5/thumbnails/9.jpg)
方法2: 空き領域に勝手に書き込む ver.2
● 空き領域管理のメタデータも修正する
1
1
0
1
0
0
ここを使うここを1にする
空き領域管理ビットマップ
![Page 10: ファイルの隠し方](https://reader038.vdocuments.pub/reader038/viewer/2022100600/556a89c9d8b42ac9298b47dc/html5/thumbnails/10.jpg)
方法2: 空き領域に勝手に書き込む ver.2
● 管理上は使用領域となっているがファイルシステム上のどのファイルも使用していないファイルが存在 → fsck 等でばれる
![Page 11: ファイルの隠し方](https://reader038.vdocuments.pub/reader038/viewer/2022100600/556a89c9d8b42ac9298b47dc/html5/thumbnails/11.jpg)
方法3: 不良セクタ領域を使用● 不良セクタの管理情報を勝手に書き換えて使用
0
0
1
0
1
0
ここを1にする
不良セクタ管理ビットマップ
ここを利用
![Page 12: ファイルの隠し方](https://reader038.vdocuments.pub/reader038/viewer/2022100600/556a89c9d8b42ac9298b47dc/html5/thumbnails/12.jpg)
方法3: 不良セクタ領域を使用● 空き領域を利用するよりは見つけにくい● でもたくさん不良セクタがあれば不自然
![Page 13: ファイルの隠し方](https://reader038.vdocuments.pub/reader038/viewer/2022100600/556a89c9d8b42ac9298b47dc/html5/thumbnails/13.jpg)
方法4: ファイルのスラック領域を利用
● 10KBのファイルのため4KBのブロックを3つ割り当てる → 4KB×3-10KB = 2KB の余り! → この領域がスラック領域
4KB
10KBのファイル
![Page 14: ファイルの隠し方](https://reader038.vdocuments.pub/reader038/viewer/2022100600/556a89c9d8b42ac9298b47dc/html5/thumbnails/14.jpg)
方法4: ファイルのスラック領域を利用
● 問題点対象ファイルが更新されれば消える可能性 → 変更の低いファイルが狙い目
![Page 15: ファイルの隠し方](https://reader038.vdocuments.pub/reader038/viewer/2022100600/556a89c9d8b42ac9298b47dc/html5/thumbnails/15.jpg)
方法5: ファイルシステムの領域外を利用
● 現在普通にUbuntuを新規HDDにインストールすると2048セクタ目からファイルシステムがはじまる(いわゆるAFT) → HDD先頭2000セクタほど使える
ブートローダ
空き
パーティション
![Page 16: ファイルの隠し方](https://reader038.vdocuments.pub/reader038/viewer/2022100600/556a89c9d8b42ac9298b47dc/html5/thumbnails/16.jpg)
応用● これらの領域をうまく利用して隠しファイル
システムを実装すれば利便性up!
![Page 17: ファイルの隠し方](https://reader038.vdocuments.pub/reader038/viewer/2022100600/556a89c9d8b42ac9298b47dc/html5/thumbnails/17.jpg)
まとめ● ファイルを隠す方法はいろいろある● ファイルシステムは奥が深い