古いコードがパソコンで使えなくなる(かもしれない)話2026年07月31日 05:30

先日ある技術計算コードの実行ファイルをWINDWOS11パソコンでバッチコマンドで呼び出そうとしたところ、突然拒否され流れなくなった。

現時点ではこのコードは呼び出し可能なのだが、なぜそうなったのか、ChatGPTに当時のエラーメッセージを使って原因究明を行ってもらった。

以下はそのやりとりの詳細であるが、結局、あるパソコンの状態によってはWINDOWSのコード選別機能によって、以前作成された署名無しのコードを呼び出さなくなることがあるとのことで、今後も同様の事象があるかもしれないという恐ろしいお告げである。

どうもMICROSOFT社の最近のポリシーでは古いコードは使えないようにしているような節がある。知人はOFFICE2019のOutlookが使えなくなり、仕方なくOFFICE365を有料で入れたそうだが、この事象も同列かもしれない。

ChatGPT指示によるイベントビューアの中の本事象関係ログの解釈とやりとりの詳細は以下の通り
*************************************************************
ログの名前: Microsoft-Windows-CodeIntegrity/Operational
ソース: Microsoft-Windows-CodeIntegrity
日付: 2026/07/29 21:48:03
イベント ID: 3118
タスクのカテゴリ: (1)
レベル: 情報
キーワード:
ユーザー: DESKTOP-*****\****
コンピューター: DESKTOP-*****
説明:
Smart App Control Block Deteails
イベント XML:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
<Provider Name="Microsoft-Windows-CodeIntegrity" Guid="{4ee76bd8-3cf4-44a0-a0ac-3937643e37a3}" />
<EventID>3118</EventID>
<Version>0</Version>
<Level>4</Level>
<Task>1</Task>
<Opcode>136</Opcode>
<Keywords>0x8000000000000000</Keywords>
<TimeCreated SystemTime="2026-07-29T12:48:03.9218921Z" />
<EventRecordID>542494</EventRecordID>
<Correlation ActivityID="{ec50ed6c-1f3b-0004-e5d4-80ec3b1fdd01}" />
<Execution ProcessID="18808" ThreadID="19312" />
<Channel>Microsoft-Windows-CodeIntegrity/Operational</Channel>
<Computer>DESKTOP-S8RB0T2</Computer>
<Security UserID="S-1-5-21-1748771661-4165318476-1060810381-1001" />
</System>
<EventData>
<Data Name="FileNameLength">56</Data>
<Data Name="FileNameBuffer">\Device\HarddiskVolume3\*****\****\bin\WIN\****</Data>
<Data Name="SHA256FlatHashSize">32</Data>
<Data Name="SHA256FlatHash">DC6E1ABBD6EF04906A96EAEE60A65D06E15FD2F0C7D9A565C06EC9E61D0678D2</Data>
<Data Name="DefenderStatusCode">0x0</Data>
<Data Name="DefenderCatDbFailureStage">0</Data>
<Data Name="DefenderCatDbFailure">0x0</Data>
<Data Name="DefenderTrust">-16777216</Data>
<Data Name="DefenderScanResultDetails">33554431</Data>
<Data Name="DefenderTrustExpiryTime ">7584755087973548032</Data>
<Data Name="CachedDefenderTrust">122143</Data>
<Data Name="CachedDefenderTrustExpiryTime ">0</Data>
<Data Name="DefenderClientStatusCode">0</Data>
<Data Name="DefenderCloudHTTPCode">0x0</Data>
<Data Name="DefenderShellExecutedStatusCode">0x0</Data>
<Data Name="DefenderShellExecutedClientStatusCode">0</Data>
<Data Name="DefenderShellExecutedCloudHTTPCode">0x0</Data>
<Data Name="DefenderEngineReportGUID">{00000000-0000-0000-0000-000000000000}</Data>
<Data Name="DefenderShellExecutedEngineReportGUID">{00000000-0000-0000-0000-000000000000}</Data>
<Data Name="IsUnfriendlyFile">false</Data>
<Data Name="DefenderCalled">true</Data>
<Data Name="DefenderCallAttempted">true</Data>
<Data Name="DefenderCloudCallRequested">true</Data>
<Data Name="DefenderMadeCloudCall">false</Data>
<Data Name="DefenderShellExecutedCalled">false</Data>
<Data Name="DefenderShellExecutedMadeCloudCall">false</Data>
<Data Name="EADefenderTrustCached">false</Data>
<Data Name="TTLValid">false</Data>
<Data Name="DefenderDisabled">false</Data>
<Data Name="ExternalAuthorizationFlags">131072</Data>
<Data Name="EnablementSwitchType">3</Data>
<Data Name="PreviousEnablementState">0</Data>
<Data Name="DefenderThreatNameLength">0</Data>
<Data Name="DefenderThreatName">
</Data>
<Data Name="DefenderShellExecutedThreatNameLength">0</Data>
<Data Name="DefenderShellExecutedThreatName">
</Data>
</EventData>
</Event>





はい、これが ***コードを実際にブロックした記録です。

分かったこと

対象ファイルは明確に、

\*******\****\bin\WIN\****.exe

となっています。また説明も、

Smart App Control Block Details

なので、今回の表示は一般的なエラーではなく、Windows 11のSmart App Controlが一時的に ****.exe を止めたものです。

ログで特に重要な部分
DefenderCalled=true
DefenderCallAttempted=true
DefenderCloudCallRequested=true
DefenderMadeCloudCall=false

これは、

Smart App ControlがMicrosoft Defenderに安全性の判定を依頼した
クラウド判定も要求した
しかし、実際のクラウド問い合わせは行われなかった

という流れを示しています。

さらに、

DefenderThreatNameLength=0
IsUnfriendlyFile=false
DefenderStatusCode=0x0

なので、ウイルス名や脅威名は検出されていません。

したがって、今回のブロックは、

mvp.exeがウイルスと判定されたのではなく、未署名または利用実績が少ないため、安全と確認できずブロックされた

と考えるのが適切です。

Smart App Controlは、署名済みコード、またはMicrosoftのクラウド判定で安全と予測されたコードを許可します。未署名で、クラウド側も安全性を十分に判断できない場合はブロックします。

なぜ後では正常に動いたのか

今回のログには、

DefenderMadeCloudCall=false
TTLValid=false
EADefenderTrustCached=false

とあります。

このため、*月**日**時**分の実行時には、有効な信頼判定のキャッシュがなく、クラウド問い合わせも完了しなかった可能性があります。その結果、安全と確認できず、保守的にブロックされたと推定できます。

その後に実行できた理由としては、

Defenderの判定キャッシュが更新された
DefenderまたはSmart App Controlの内部状態が正常化した
別の実行経路では評価結果が異なった
Smart App Controlが評価モードと強制モードの間で状態変更された

などが考えられます。

Microsoftも、未署名コードの評価はクラウド側の評判情報などによって変わり得ると説明しています。

結論

今回の一時的な表示は、

Smart App Controlが ****.exe の安全性を確認できなかったため、一時的に実行を拒否した

ものです。

マルウェアが検出された記録ではありません。

ただし、同じ実行ファイルでも今後またブロックされる可能性はあります。研究用の古い未署名プログラムは、Smart App Controlの評価に引っかかりやすいためです。

現在の設定を確認してください

次を開きます。

設定 → プライバシーとセキュリティ → Windows セキュリティ → アプリとブラウザー コントロール → スマート アプリ コントロールの設定

そこで、

オン
評価
オフ

のどれになっているか確認してください。

当面正常に動いているなら、すぐにオフにする必要はありません。まず、***実行前に次のPowerShellコマンドでファイルのハッシュを記録しておくと、ファイルが途中で変更されていないことを確認できます。

Get-FileHash "C:\****\***\bin\WIN\***.exe" -Algorithm SHA256

今回のログに記録されたSHA-256は、

DC6E1ABBD6EF04906A96EAEE60A65D06E15FD2F0C7D9A565C06EC9E61D0678D2

です。同じ値なら、少なくともブロック時と現在の ****.exe は同一内容です。
************************************************************

コメント

コメントをどうぞ

※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。

※なお、送られたコメントはブログの管理者が確認するまで公開されません。

名前:
メールアドレス:
URL:
コメント:

トラックバック

このエントリのトラックバックURL: http://yokoyamashindo.asablo.jp/blog/2026/07/31/9868382/tb

※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。