質問

セキュリティ上の理由(知的財産の保護)のために、特定のハードドライブパーティション/ USBドライブがアクセスされないようにする方法を構築しようとしています。 Windowsが「ロックダウンされたドライブ/ USB」にアクセスしようとすると、試行は停止され、「ドライブにアクセスできません」のようなものが返されます。か何か。それは単なるアイデアです、誰もそれがもっともらしい/可能性があるものですか?もしそうなら、ポインタはありますか?

C / C ++

-ありがとう

役に立ちましたか?

解決

目標を達成するには、フィルタードライバーを作成する必要があります。ドライバーをディスクドライバースタックのどこかに配置し、ブロックするドライブ/パーティションのIRP_MN_START_DEVICEに失敗する必要があります。

ドライバーを作成するには、 Windows Driver Kit が必要です。 WDKにはフィルタードライバーのサンプルがあります。このメーリングリストは、ディスクフィルタードライバーに関する多くの情報を見つけるアーカイブを検索します。
フィルタードライバーの作成に関する良い記事は、こちらです。読み取り用に登録しますが、ドライバーを作成する場合は、このサイトに登録する必要があります。
関連する書籍リストは、こちらで見つけることができます。

他のヒント

パーティションの問題は簡単です。特定のユーザーによるアクセスを防ぐためにACLを使用します。

ドライブアクセスの場合、Windowsのどこかで無効にする設定がおそらくあります。最悪の場合、ドライバーを強制的に削除しようとする可能性があります(したがって、Windowsがドライブ/スティックを読み取る機能)。

USBドライブの場合、暗号化できます。

職場では、 Pointsecプロバイダーを使用して、ドライブにアクセスできるようにしますパスワードを持っている場合にのみ、どのマシンでも。

フリーウェア暗号化製品が利用可能であると確信しています

おそらくパーティションも暗号化できます。

(基本的に、他の方法で適切に管理できるもののc / c ++コードを作成する理由がわからない)

ドライブを暗号化する必要があります。それ以外の場合、攻撃者はドライブを別のマシンに接続して内容を抽出するだけです。

自分で暗号化を実装すべきではありません-他の誰かのレビューされたコードに頼る方がはるかに良いです。ドライブの暗号化には、 TrueCrypt をお勧めします。

次に、暗号化されたデータにアクセスするときにパスワードを要求するフックをアプリケーションに設定することができます。または、マシンにTrueCryptをインストールし、データを操作する正確な方法に応じて、ユーザーがデータにアクセスするときにドライブを接続するようにします。

注意してください。カーネルの作業に関係するものは、その分野での経験がまだない場合、開発時間は年単位で測定されます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top