0

Dll 内のホール関数のメモリ ページの保護を変更して、実行できないようにしたいと考えています。

これは、同じ dll を仮想アドレス空間にマップした他のプロセスに影響しますか?

4

1 に答える 1

0

TL;DR: いいえ、違います。

NX ビットは、仮想/ページ レベルで機能します。各プロセスには独自の仮想アドレス空間があり、別のプロセスのアドレス空間に直接影響を与えることはできません (共有メモリを除く)。

異なるプロセスは、DLL のマップされたページを共有できます。1 つのプロセスがページを変更し、コピー オン ライトが開始され、そのプロセスがページの一意のコピーを取得しても、他のプロセスの DLL のビューは影響を受けません。

NX の詳細については、Intel® 64 and IA-32 Architectures Software Developer's Manual (Volume 3A リンク、全 7 巻) を参照してください。

また、コピー オン ライト保護に関する以前の Microsoft 記事も参照してください。

于 2013-04-14T04:59:42.200 に答える