【注意喚起】Winセキュリティーのメモリ整合性保護がOFFになっている・・・あなたのPCはOK?【2023/8/8】
この記事を読むのに必要な時間は約 19 分です。
目次
この記事について
ある日気がつくと「Windowsセキュリティー>デバイスセキュリティー>コア分離>メモリ整合性がOFF」になってしまっていて、ONにしようとしてもできなくなっているというケースがあります。(私も先日Win11の機材で発生しました…)
この事象は、メモリ整合性保護を有効にすることができない(できなくなる)ドライバーが適用されてしまっているために発生します。(OSアップグレード以前より利用している「現在の適切な署名はないが自動例外登録されているドライバー」の自動例外登録が外れた場合にも発生する可能性があります)
放置で問題のないケースもあるとのことですが、セキュリティーの問題ですのであまり気持ちの良いものではありません。
そこで、問題を解消してメモリ整合性保護を有効にする手段をお伝えします。
この記事では「通常にソフト(アプリ)を削除しても残ってしまった」という場合や「ドライバーを含んでいるであろうソフト(アプリ)が見当たらない」というケースの対処がメインとなります。最初は必ず通常のアンインストールから開始するようにしてくださいね。
なお、現時点(2023年8月)でのこの事象発生は「ロジクール・ロジテックグループのWinUpで提供されるドライバーが原因」というものが多いようです。(どういうわけか2012年のドライバーなど古いものが提供されています)
もちろん、そのほかのドライバー(古いプリンターなど)でも発生する事象で、古いドライバーなどにおいて新しい署名方式で署名されていないなど「Winが不正と判断するドライバー」が(導入時にブロックされることなく)導入されると発生します。
参考:
クリックするとデバイスセキュリティにビックリマークが出ていてメモリ整合性はオフです。お使いのデバイスは脆弱な状態にある可能性がありますと表示されます
オンにしてもオフになります。
対象 | 内容 |
---|---|
キーワード | Windowsセキュリティー、デバイスセキュリティー、コア分離
メモリ整合性、Logitec、Logicool、ドライバ、不正、不適合 有効にできない、cmd、.dll、.sys、削除 |
OS/ソフト | Windows11、Windows10、Windowsセキュリティー |
対象読者 | メモリ整合性保護が無効(off)になっていて、有効(on)に直したい方 |
最終更新日 | 2023/8/8初版 |
発生する事象
「Windowsセキュリティー>デバイスセキュリティー>コア分離>メモリ整合性」を確認すると無効になっている状態が発生。トーストやタスクバーのインジケーター内のWinセキュリティーのアイコンで通知される場合もある。
Winセキュリテーの表示状態
次のような表示内容になります。(内容は同じですが、表示はOSバージョンにより異なる場合があります)
この画面で「互換性のないドライバーを確認する」をクリックすると問題ドライバーが確認できます。
私の場合はこのような表示となりました。(内容を展開しています)
これらの互換性のないドライバーを削除するか、互換性のある新しいバージョンに置き換えないとメモリ整合性保護を有効にすることはできないのです。
通常の削除方法
最初は必ず通常のアンインストールから開始します。
アンインストールすべきと思われるソフト(アプリ)が見当たらない場合やアンインストールしても問題発生源のドライバーが残ってしまっている場合に「とにかくメモリ整合性保護を有効にする方法」以下を実行するようにしてください。
なお、この記事のメインは通常の削除操作ができないケースの対処ですので、通常の削除操作はリンクでの他サイト記事紹介となります。
削除操作各種
1)コンパネのプログラムと機能・設定のアプリと機能・スタートメニューでの右クリックからの削除操作
2)デバイスマネージャーからの削除操作(Win7の記事ですがWin10/11でも同じ操作です)
Windows Update の履歴からの削除操作
※ この方法では、時間が経ちすぎたKBや削除できないKB、どのKBに含まれていなものかわからない、KBナンバーが特定できないKBは削除ができません。見当たらない場合は素直に諦めましょう。
なお、コマンドラインからの削除方法もあるのですが、よほどの上級者以外にはおすすめしません。
一応参考としては載せておきます。
とにかくメモリ整合性保護を有効にする方法
ここでは「とにかくメモリ整合性保護を有効にしたい」という意向の場合の方法を掲載します。実際には悪影響の有無を確認してから問題のあるドライバーを削除するのが適切です。
できる限り、ページ下部の「詳細な対処方法」で掲載している手順も踏んで、慎重に実行するようにしてくださいね。
ドライバーの削除による悪影響の判断
・ドライバーをむやみに削除すると「最悪の場合はPC(OS)が起動しない」ということもあります。万が一に備えて、削除操作の前に「明示的に手動で」復元ポイントを作成しておくようにしてくださいね。
・本当に不要なものかを慎重に調査します。
・自分で調べても不明な場合は、必ずベンダーに問い合わせてください。
・周辺機器のドラーバーについては問題はないことが多いようですが、チップセットやCPUなどの重要ドライバーである場合は絶対に自分で対処しないでください。PC販売メーカーや各ベンダーに問い合わせて指導どおりに対処するか、回収してもらたうえで対処してもらうようにしてください。
・あくまで自己責任の操作になります。厳重に留意してください。
※ 今回の私のケースでは「全て周辺機器であり、Win標準のドライバーでの動作に問題はないパーツ類」のドライバーと確認して削除しています。また、ロジクールユニファイドなど問題がなく必要なドライバは削除していません。
原因ドライバーを調べる
最初にどのドライバーが問題になっているのかを調べます。本来はcmdなどから導入されているドライバーの一覧なども調べるべきなのですが、「詳細な対処」の項に別掲載します。
「Windowsセキュリティー>デバイスセキュリティー>コア分離>メモリ整合性>互換性のないドライバーを確認する」の順に進んで問題となっているドライバーを特定します。
今回のケースでは、公開名のあるドライバーと無いドライバーの2種類に分かれているのが見て取れると思います。
多くの場合、公開名の無いドライバーの実態も.sysで公開名のあるドライバーと同じなのですが、xxxx.infというような名前がつけられたセットになっていないものです。
できる限り残滓なく削除するため、公開名のあるものは公開名を使用して削除します。その後に公開名のない.sysを手動で削除します。
それでは具体的な削除手順を見てみましょう。
cmdを管理者として実行する
1)OS管理者のユーザーでサインインします。
2)タスクバーの検索にcmdと入力するとコマンドプロンプト(アプリ)が表示されますので、右クリックから管理者として実行します。画像のように管理者となっているのを確認してくださいね。
公開名のあるドライバーを削除する
はじめに公開名のあるドライバーを削除します。互換性のないドライバーで確認した公開名のoemxx.infの名称を書き出してくださいね。
名称が準備できたら次のコマンドを打ち込みます。コマンドをワードなどにコピーして名称部分を書き出したものに準備し、cmdに貼り付けると間違いが少ないのでそのようにした方が良いかと思います。
コマンド:「 pnputil /delete-driver oemxx.inf /uninstall /force 」
pnputil /delete-driver oemxx.inf /uninstall /force ⇒ oem7.inf など削除したいものに書き換える
私の場合の例:
pnputil /delete-driver oem7.inf /uninstall /force
pnputil /delete-driver oem20.inf /uninstall /force
pnputil /delete-driver oem37.inf /uninstall /force
More:
1)コマンドには「 dism /Image:d:\ /remove-driver /driver:oem1.inf 」というタイプもあるのですが、ドライブレターの指定が必要になります。間違えることがないようにドライブレターの指定が必要ない「 pnputil /delete-driver oemxx.inf /uninstall /force 」を利用することをおすすめします。
2)pnputil コマンドで削除した場合はデバイスマネージャーからの削除が失敗するケースでも削除ができます。それでもうまく行かない場合は、OSが起動していない状態で同じ操作を行います。回復操作や回復ドライブ、インストールメディアからPCを起動してコマンドプロンプトを実行してください。
※ ビットロッカー暗号化を有効にしている場合は、無効化した後に操作することをおすすめします。
準備ができたら、cmd(管理者)で削除を実行します。
上記のようになれば成功です。何らかのエラーが発生した場合は、コマンドラインの内容が適正でないケースがほとんどです。
文字の間違いや半角スペースの有無、文字やスペースが全角になっていないかをもう一度慎重に確認してくださいね。
※ うまくいきましたら「 exit 」と入力してコマンドプロンプトを終了します。
ここまでうまくいきましたら、PCを再起動し ⇒ 再起動後にもう一度「互換性のないドライバーを確認する」で確認します。
公開名のあるドライバーが表示されなくなり、公開名のないドライバーだけが表示された状態になっている確認ができましたら次に進みます。
公開名のないドライバーを削除する
公開名のあるドライバーの処理が完了し、公開名のないドライバーが残っている場合は同様に削除します。
こちらは、手動で当該のものを削除する形になりますので、「誤った操作をしないよう厳重に注意を払って操作」してくださいね。
1)エクスプローラーの表示を変更する
エクスプローラーのオプションで表示を変更します。 ⇒ 隠しフォルダなどを表示する・保護されたファイルを表示する
警告ダイアログが出ますので、はい ⇒ 適用 ⇒ OK と進みます。
これで目的のファイフを表示させ、操作ができる環境になります。
2)目的のファイルを見つける
.sysファイルを探し出します。
エクスプローラーで、PC>OS(C):>Windows>system32>drivers と進み目的のドライバーを見つけ出します。見つかりましたら、右クリック操作からの削除または選択してディリートキーを押下することで削除します。
3)再起動して確認するときちんと消えています。
この状態でメモリ整合性の保護をONに切り替えると見事にOKでした。PCの再起動が必要となりますので再起動してくださいね。また、エクスプローラーの表示オプションももとに戻します。
めでたしめでたしです…。
ただし、本来はもう少しきちんと確認などを行って実行するのが本筋です。
詳細な対処方法
このパートでは、本来実行したほうがよい確認手順などを追加掲載します。削除しても問題のないドライバーであるのかどうかの判断に利用してくださいね。
慎重にという方は手順に加えてくださいね。
cmdでサードパーティーのドライバーの一覧を取得する
cmdでサードパーティーのドライバーの一覧を取得するコマンドです。こちらで取得したドライバーとメモリ整合性保護を妨げているドライバーを比較検討してみてくださいね。
「 Dism /online /Get-Drivers /Format:Table 」
こんな感じになります。
Autorunsでサービス・スタートアップ・ドライバーを確認する
マイクロソフトが提供しているユーティリティーです。Winで動作しているほぼすべてのプロセスを一覧できます。
また、管理者として実行すると個々のサービスなどの停止なども自由自在です。
プログラムグループに登録されていないものも見られますので、プログラム名からプログラム(ソフトやアプリ)のフォルダを見つけるとフォルダ内にuninstall.exeがあれば、それを使用してプログラムをアンインストールするこよも可能になります。
削除する前にドライバーを停止して試験することも可能です。
さらに、項目をクリックすると下部に項目の詳細や場所が表示されますので、見つけ出して削除する際にも大変便利です。
※ 管理者として実行することとOSのビット数にあったものを起動することに注意してくださいね。
ダウンロード Autoruns と Autorunsc(2.8 MB) はじめに
このユーティリティは、スタートアップ モニターの自動起動の場所に関する最も包括的な知識を持ち、システムの起動またはログイン中に実行するように構成されているプログラムと、インターネット エクスプローラー、エクスプローラー、メディア プレーヤーなどのさまざまな組み込み Windows アプリケーションを起動するときに表示されます。 これらのプログラムとドライバーには、スタートアップ フォルダー、Run、RunOnce、およびその他のレジストリ キーに含まれています。 自動実行レポートエクスプローラーシェル拡張機能、ツール バー、ブラウザー ヘルパー オブジェクト、Winlogon 通知、自動起動サービスなどです。 自動実行は、他の 自動開始ユーティリティを超えています。
自動実行の[署名された Microsoft エントリを非表示にする] オプションを使用すると、システムに追加されたサードパーティの自動開始イメージを拡大し、システムで構成されている他のアカウント用に構成された自動開始イメージを確認できます。 ダウンロード パッケージにも含まれているのは、CSV 形式の Autorunsc で出力できるコマンドラインと同等です。
自動的に起動される実行可能ファイルの数に驚くでしょう。
デバイスマネージャーからドライバーを消去する方法の詳細版
デバイスインスタンスの取得などを含む詳細な手順です。
今回の記事は以上です。