SentinelAgent とthink-cellトリガー: "COMBASE.DLL STATUS_ACCESS_VIOLATION"
問題
SentinelOne の SentinelAgent セキュリティ ツールがコンピューターにインストールされています。think-cell の内部データシートを使用した後、エラー メッセージ「COMBASE.DLL STATUS_ACCESS_VIOLATION
」が表示されました。
エラー メッセージが表示されず、代わりに (通常の単独で動作する Excel アプリケーションの) 新しい Excel ウィンドウが起動することがあります。
解決策
この問題は、次のMicrosoft Windows更新プログラムをインストールすると解決できます。
注記: 前回の記事では、Microsoftから受け取った情報に基づき、Windows更新プログラム第一弾の予想リリース日は2022年10月の第3週とお伝えしました。しかし、Microsoftは最終的にこれを11月に遅らせました。2022年12月1日現在入手可能な情報をお知らせします。
Windowsの以下のバージョンについて、Microsoftは2022年11月、オプションのリリースを発表しました(Microsoftの命名規則では11Cリリース)。2022年11月15日のMicrosoftのリリース情報KB5020030(OSビルド19042.2311、19043.2311、19044.2311、19045.2311)プレビューを参照してください。
- Windows 10 v22H2 (ビルド19045)
- Windows 10 v21H2 (ビルド19044)
- Windows 10 v21H1 (ビルド19043)
- Windows 10 v20H2 (ビルド19042)
次のWindowsバージョンについては、もともと11月に更新プログラムの発表が予想されていましたが、当社ではまだ更新情報を受領していません。ただし、12月の更新はセキュリティの問題向けなので、2023年1月になる可能性があります。
- Windows 11
- Windows Server 2022
- Windows 10 v2004
このWindowsバージョンでは当初、2023年1月に更新が予定されていましたが、まだ変更情報を受領していません。
- Windows 10 v1809: 1B (標準リリース、2023年1月の第2火曜日)
Microsoftはその後、オプション「C」の更新プログラムを標準「B」に移行すると予測されています。
該当する Windows の更新プログラムをインストールしても問題が続く場合は、弊社サポート チーム までお問い合わせください。
再現手順
このエラーまたは類似のエラーが発生しているかどうか不明な場合は、次の再現手順をお試しください:
- PowerPointを開きます。
- 積み上げグラフ think-cell を挿入します。
[挿入] → think-cell → [要素] → [積み上げ] → スライドをクリックしてグラフを挿入する
→ 内部データシートが開きます。 ([タスクマネージャー]でExcelのプロアセスを表示) ([詳細]) → [詳細] - 内部データシートを閉じます
。[タスク マネージャー]でExcelのプロセスが終了するまで待ちます([詳細]) → [詳細(最長で 30 秒かかる場合があります)
。CRITICALWITHMSG COMBASE.DLL 10.0.18362.1645+0x1BEBBE: STATUS_ACCESS_VIOLATION
あるいは新しい Exc]el ウィンドウを起動します
。エラー メッセージを閉じると、Excelプロセスが終了します。
分析
この問題は、think-cell および SentinelOne の SentinelAgent が同時に有効に設定されている場合、影響のある Windows バージョンでのみ発生します。当社の開発者が問題を詳細に分析しました:
CCtxChnl::OnCall
関数内の COMBASE.DLL
でクラッシュが発生しました。64 ビット COMBASE.DLL 10.0.19041.1202 で問題を調査しました。次のアドレス オフセットとシンボル名は、このバージョンのものです。CCtxChnl::OnCall
のほとんどのコードは、null
である this->_pIFaceEntry->_pID
メンバーに対してロバストであるようでした (例えば CStdWrapper::IsNAWrapper
は CCtxChnl::OnCall
から呼び出され、これを処理するコートがありました)。ただし、CCtxChnl::OnCall
での IsCallTracingEnabled
の呼び出しが true
を返す場合、コードは this->_pIFaceEntry->_pID
が null
であるかを確認せずに this->_pIFaceEntry->_pID->_oid.Data1
にアクセスしようとし、アクセス違反の発生につながりました (COMBASE.DLL!Imagebase+0x00000000001A77B0
)。
一時的な回避策
Windowsをまだ修正バージョンに更新できない場合、貴社のIT部門にはこちらの解決策をお試しいただけます:
think-cell のお客様には、Windows の修正バージョンが利用できるようになる前に SentinelOne からこの回避策が提供されています。この回避策について追加の情報を希望される場合は、SentinelOne のサポートにお問い合わせの上、チケット番号「652625」をお伝えください。
- マシン用のSentinelOne パスフレーズを入手してください。
- 管理者として CMD を実行します。
cd "C:\Program Files\SentinelOne\Sentinel Agent <X.X.X.XXX\>"
sentinelctl config agent.relinking.com false -k "PASS PHRASE FROM STEP ONE"
sentinelctl config agent.relinking.com
(戻り値はfalse
となるはずです)。 - 5分待機して、マシンを再起動してください。