Download - Css2009 ruo ando
![Page 1: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/1.jpg)
Windows OS上でのフィルタドライバを用いた セキュアアクセス制御機構の構築
情報通信研究機構
安藤類央
サイエンスパーク株式会社
井上宜子
産業技術総合研究所
須崎有康
CSS 2009
![Page 2: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/2.jpg)
目次
1.
はじめに
2.
提案システム
3.
適用技術
4.
適用アクセス制御
5.
フィルタマネージャの詳細
6.
まとめと今後の課題
CSS 2009
![Page 3: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/3.jpg)
1.はじめに
• Linux OS上でのセキュアアクセス制御– 多くの機関で研究されている
• Windows OS上でのセキュアアクセス制御– 多くの人が使用している割に、あまり研究されていない。– クローズドソースのため、情報が入手しずらく、処理内容が分からない。‐
Windows OSの場合、簡素なファイルシステムドライバによ
るアクセス制御をすると、設定が簡単で、破られにくいシ ステムが出来上がる可能性がある。
‐
Windows OSのデフォルトのアクセス制御はあるが、今度 クラウド環境での仮想化されたWindows OSを防御する場 合に必要となると想定されるfine‐tuning(微調整)が効か
ない。
CSS 2009
![Page 4: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/4.jpg)
1.はじめに
• Windowsデバッグ機構に対する需要増大
• デバッグ関連技術の発達→ Linux OS同等の
セキュアアクセス制御が可能
Windows上でセキュアアクセス制御を行い
ゼロデイ攻撃などのセキュリティインシデントの被害を最小化する
CSS 2009
![Page 5: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/5.jpg)
2. 提案システム
書込み要求(PRE)
提案システム検出とアクセス制御
書込み要求(コミット)書込み要求
書込み完了通知
書込み完了通知(POST)
書込み完了通知
ApplicationFilter
ManagerDiskFile System
CSS 2009
![Page 6: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/6.jpg)
3. 適用技術
• Windows OS上でアクセス制御を行う手段
–ユーザーモード• DLLインジェクション
• APIフック
–カーネルモード
• フィルタドライバ
・ ファイルアクセスをすべて監視できる
・
OSと一番近い層で動く
・
アクセス制御に必要な情報が取得できる
CSS 2009
![Page 7: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/7.jpg)
3. 適用技術
3.1.
FilterManager
• Microsoftが提供するファイルシステムフィル タドライバ
• Windows XP SP2以降
• サードパーティの開発を簡素化– フィルタするIRPのみ編集
– 開発時間の短縮
– 挿入する階層を指定可能
CSS 2009
![Page 8: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/8.jpg)
3. 適用技術
Disk
FileSystem(FAT/NTFS)
FilterManager
Application
MiniFilter
Device
Kernel Mode
User
Mode
FilterManagerの構成
CSS 2009
![Page 9: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/9.jpg)
3. 適用技術
3.2.
FilterDriver
• FilterManagerとMiniFilter
• フィルタするIRPをFilterManagerに登録
• フィルタするIRPの処理を実装
IRP:ファイルIO要求の受け渡し
CSS 2009
![Page 10: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/10.jpg)
4. 適用アクセス制御
• MAC(Mandatory AccessControl)
– 所有者ではなくシステムがアクセス権を設定、制御する。
– 静的にアクセス権限を決定する。
– MACを実装配備するためには、デバイスドライバ、カー ネルモジュールが必要。
• TDE(Trusted
Domain Enforcement)
‐
プロセスのファイルへの読み書きをシステムが動的に変更 する。
‐
TDEを実装配備するためには、プロセス情報が取れるフィル タマネージャの機能が必要。
CSS 2009
![Page 11: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/11.jpg)
5. フィルタマネージャの詳細
・
MiniFilterの登録typedef
struct
_FLT_REGISTRATION {
USHORT Size;
USHORT Version;
FLT_REGISTRATION_FLAGS Flags;
CONST FLT_CONTEXT_REGISTRATION *ContextRegistration;
CONST FLT_OPERATION_REGISTRATION *OperationRegistration;
PFLT_FILTER_UNLOAD_CALLBACK FilterUnloadCallback;
PFLT_INSTANCE_SETUP_CALLBACK InstanceSetupCallback;
PFLT_INSTANCE_QUERY_TEARDOWN_CALLBACK InstanceQueryTeardownCallback;
PFLT_INSTANCE_TEARDOWN_CALLBACK InstanceTeardownStartCallback;
PFLT_INSTANCE_TEARDOWN_CALLBACK InstanceTeardownCompleteCallback;
PFLT_GENERATE_FILE_NAME GenerateFileNameCallback;
PFLT_NORMALIZE_NAME_COMPONENT NormalizeNameComponentCallback;
PFLT_NORMALIZE_CONTEXT_CLEANUP NormalizeContextCleanupCallback;
} FLT_REGISTRATION, *PFLT_REGISTRATION;
CSS 2009
![Page 12: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/12.jpg)
5. フィルタマネージャの詳細
フィルタするIRPの設定(1)typedef
struct
_FLT_OPERATION_REGISTRATION {
UCHAR MajorFunction;
FLT_OPERATION_REGISTRATION_FLAGS Flags;
PFLT_PRE_OPERATION_CALLBACK PreOperation;
PFLT_POST_OPERATION_CALLBACK PostOperation;
PVOID Reserved1;
} FLT_OPERATION_REGISTRATION, *PFLT_OPERATION_REGISTRATION;
ファイルシステム呼び
出し前のコールバック
関数
ファイルシステム呼び出し
後のコールバック関数
CSS 2009
![Page 13: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/13.jpg)
5. フィルタマネージャの詳細アクセス制御の仕組み
○PreOperation
○PostOperation
CSS 2009
![Page 14: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/14.jpg)
5. フィルタマネージャの詳細
ファイル情報構造体typedef
struct
_FILE_ACCESS_DATA{
BOOLEAN IsDirectory;
UNICODE_STRING FullPath;
ULONG
AccessRecord;
ULONG
AccessAttributes;
ULONG
ProcessID;
PWCHAR ProcessName;
ULONG
ProcessAttributes;
} FILE_ACCESS_DATA, *PFILE_ACCESS_DATA;
ファイルアクセスを
行うパス名
ファイルアクセス
の要求プロセス名
プロセスのアクセス属性
CSS 2009
![Page 15: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/15.jpg)
5. フィルタマネージャの詳細
No IRP要求 PRE POST1 IRP_MJ_CREATE ○ ○2 IRP_MJ_CLOSE ○ ×3 IRP_MJ_CLEANUP ○ ×4 IRP_MJ_READ ○ ×5 IRP_MJ_WRITE ○ ×6 IRP_MJ_SET_INFORMATION ○ ×
フィルタするIRPの設定(2)
CSS 2009
![Page 16: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/16.jpg)
5. フィルタマネージャの詳細
関数の型 FLT_PREOP_CALLBACK_STATUS機能 ・ファイル情報構造体の取得
・アクセス可否の判断・アクセス可否に応じた戻り値の設定
引数 1 PFLT_CALLBACK_DATA Data2 PCFLT_RELATED_OBJECTS FltObjects3 PVOID *CompletionContext
戻り値 1 FLT_PREOP_SUCCESS_WITH_CALLBACK
(成功)
2 FLT_PREOP_SUCCESS_NO_CALLBACK
(成功)
3 FLT_PREOP_COMPLETE
(成功/失敗)
失敗時の設定
戻り値をFLT_PREOP_COMPLETEに設定引数DataのIoStatus.Statusにエラー値を設定
CSS 2009
![Page 17: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/17.jpg)
6.まとめと今後の課題まとめ
Linux
:OSに入れ込む
Windows :OSの上か下でフィルタ
技術的課題
・
オープンと、リネーム後のファイル名取得処理が未実装
・
仮想マシンモニタへの通知機能の付加:今後普及が進むクラウド環境
上での、仮想化されたWindows OSの防御用にフィルタドライバを修正
今後の展開
・
仮想化OS上で動作するWindowsのファイルアクセスをモニターして、
ユーザーの動きを監視する
・ モニターをAIST
Web公開予定
CSS 2009
![Page 18: Css2009 ruo ando](https://reader036.vdocuments.pub/reader036/viewer/2022073101/559279d51a28abfc228b47b2/html5/thumbnails/18.jpg)
ご清聴ありがとうございました