注意:WindowsはASLRを誤って実装し、修正が利用可能です
Vista以降、Windowsにはアドレス空間配置のランダム化(ASLR)が付属しています。 ASLRは、メモリ破損の脆弱性の悪用を防ぐためのコンピュータセキュリティ技術です。 攻撃者が、たとえばメモリ内の特定の悪用された機能に確実にジャンプするのを防ぐために、ASLRはランダムに配置します。 実行可能ファイルのベース、スタック、ヒープ、およびスタックの位置を含む、プロセスの主要なデータ領域のアドレス空間の位置 ライブラリ。 Windows 8以降には、この手法を役に立たないバグがありますが、修正することができます。
ASLR(アドレス空間配置のランダム化)機能は、WindowsVistaで最初に導入されました。 これにより、コード再利用攻撃を防ぐことができます。 ASLRは、コードを実行するためのランダムなメモリアドレスを提供します。
広告
Windows 8、Windows 8.1、およびWindows 10では、ASLR機能が正しく機能しません。 設定のデフォルトが間違っているため、ASLRはランダムメモリアドレスを使用していません。
更新:Technetには、sutiationについて説明している公式のブログ投稿があります。 ここでそれを読んでください: 必須のASLRの動作を明確にする.
投稿によると:
構成の問題は脆弱性ではなく、追加のリスクを生み出さず、アプリケーションの既存のセキュリティ体制を弱めることもありません。
CERTへの投稿 問題を詳細に説明します。
EMETとWindowsDefender Exploit Guardはどちらも、システム全体のボトムアップASLRを有効にすることなく、システム全体のASLRを有効にします。 Windows Defenderエクスプロイトガードには、システム全体のボトムアップASLRに対するシステム全体のオプションがありますが、デフォルトのGUI値である「デフォルトでオン」は、基になるレジストリ値(未設定)を反映していません。 これにより、/ DYNAMICBASEのないプログラムは再配置されますが、エントロピーはありません。 この結果、そのようなプログラムは再配置されますが、再起動後、さらには異なるシステム間でも毎回同じアドレスに再配置されます。
ありがたいことに、問題を修正するのは簡単です。
Windows 8、Windows 8.1、およびWindows10でASLRを修正する
- を開きます レジストリエディタアプリ.
- 次のレジストリキーに移動します。
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ kernel
レジストリキーに移動する方法を見る ワンクリックで.
- 右側で、MitigationOptionsという名前の新しいREG_BINARY値を作成し、その値データを次のように設定します。
00,01,01,00,00,00,00,00,00,00,00,00,00,00,00,00
- レジストリの調整によって行われた変更を有効にするには、 Windows10を再起動します.
時間を節約するために、次のレジストリ調整をダウンロードできます。
レジストリの微調整をダウンロード
それでおしまい。