web-dev-qa-db-ja.com

DEP / ASLRなどのメモリ保護なしでソフトウェアを展開しても安全ですか?

SOE Windowsマシンのいくつかのソフトウェアパッケージには、デフォルトでDEPおよびASLRメモリ保護がオフになっています。さらに厄介なのは、これらのアプリケーションがSYSTEMとして実行され、独自のドライバーをロードすることです。

これらは予想されるメモリ保護であり、これらは最新のアプリケーションであることを考えると、それらがアプリケーションに対して無効化/無効化される理由はありますか?

私は、管理者として、それなしで強制的に有効にできますか?そのようなアプリケーションが環境に存在するリスクは何ですか?

3
NULLZ

DEP/ASLRは単なるセキュリティのレイヤーです。すべてに対して、特に高度な攻撃に対してあなたを保護するわけではありません。 @ConsideredHarmfulの考えとは異なり、DEP/ASLRがメモリの場所をランダム化することで攻撃に複雑さの層を追加するだけなので、DEP/ASLRが単独で無効になることは脆弱性ではありません。

セキュリティパラダイム一般的には、単一の「破壊できない」セキュリティレイヤを考え出そうとするのではなく、可能な限り多くのセキュリティレイヤを適用する必要があるため、1つのレイヤが侵害された場合、他の層が保護します。民主主義のように! ASLR/DEPを無効にすると、潜在的な攻撃者が攻撃しやすくなりますが、これは世界の終わりではありません

2
tabdiukov

このようなアプリケーションが環境に存在するリスクは、システム内の任意のコード実行への、アプリケーション内の悪用可能なメモリ破損の軽微なエスカレーションです。最新のアプリケーションがASLRを無効にする説得力のある理由(特に、ドライバーなどのアンマネージコードを読み込んでいる場合)がないため、これはコンパイル時に失敗する可能性があります。さらに、ドライバーを読み込んでいる場合、メモリ破損の攻撃面は純粋なマネージコードよりもはるかに大きくなります。

私の環境では、セキュリティが重要なデバイスでこれらのアプリケーションを許可しません。

1