知识库 KB0235

SentinelAgent 与 think-cell 触发:"COMBASE.DLL STATUS_ACCESS_VIOLATION"

问题

我的计算机上安装了 SentinelOne 的 SentinelAgent 安全工具。使用 think-cell 的内部数据表后,有时会显示 COMBASE.DLL STATUS_ACCESS_VIOLATION 错误消息。

think-cell 错误消息.

在某些情况下,错误消息不会出现,而是会启动一个新的 Excel 窗口(常规的独立 Excel 应用程序的窗口)。

解决方案

通过安装以下 Microsoft Windows 更新可以解决该问题。

注释:在本文的之前一个版本中,我们根据从微软获得的信息,将 2022 年 10 月的第三周作为第一波 Windows 更新的预期发布日期。然而,微软最终将这一波更新推迟到 11 月。以下是截至 2022 年 12 月 1 日提供的信息。

对于下面列出的 Windows 版本,Microsoft 于 2022 年 11 月发布了可选版本(即 Microsoft 命名惯例中的 11C 版本)。参考 Microsoft 2022 年 11 月 15 日的发布信息 — 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 月,但我们尚未收到更新信息。不过,2023 年 1 月最有可能,因为 12 月的更新是为安全问题保留的。

  • Windows 11
  • Windows Server 2022
  • Windows 10 v2004

对于此 Windows 版本,最初预计 2023 年 1 月进行更新,但我们尚未收到更改信息。

  • Windows 10 v1809:1B(标准版本,2023 年 1 月第二个星期二)

预计 Microsoft 随后会将可选的“C” 版本转移到标准“B”版本。

如果在安装适当的 Windows 更新后仍然遇到问题,请与 我们的支持团队 联系。

重现步骤

如果您不确定遇到的是否是此错误或类似错误,请尝试以下再现步骤:

  1. 打开 PowerPoint
  2. 插入 think-cell 堆积图:
    插入think-cell元素堆积图 → 点击幻灯片以插入图表
    → 内部数据表将打开(Excel 进程显示在任务管理器 → (更多详细信息) → 详细信息
  3. 关闭内部数据表
    → 等到任务管理器 → (更多详细信息) → 详细信息中的 Excel 进程关闭(可能需要大约 30 秒)
    CRITICALWITHMSG COMBASE.DLL 10.0.18362.1645+0x1BEBBE: STATUS_ACCESS_VIOLATION或启动一个新的 Excel 窗口
    → 在关闭错误消息后,Excel 进程将关闭

分析

只有在同时启用 think-cell SentinelOne 的 SentinelAgent 时,受影响的 Windows 版本才会出现此问题。我们的开发人员对此问题进行了详细分析:

COMBASE.DLL 函数内的 CCtxChnl::OnCall 中发生崩溃。我们调查了 64 位 COMBASE.DLL 10.0.19041.1202 中的问题,下面的地址偏移量和符号名称来自该版本。CCtxChnl::OnCall 中的大多数代码对于为 this->_pIFaceEntry->_pID 的成员 null 而言似乎很可靠(例如从 CCtxChnl::OnCall 调用 CStdWrapper::IsNAWrapper,并且有代码对此进行处理)。但是,若 CCtxChnl::OnCall 中的 IsCallTracingEnabled 调用返回 true,则代码会尝试访问 this->_pIFaceEntry->_pID->_oid.Data1,而不会检查 this->_pIFaceEntry->_pID 是否为 null,这会导致访问冲突 (COMBASE.DLL!Imagebase+0x00000000001A77B0)。

临时解决方法

如果您还无法将 Windows 更新到某个固定版本,您的 IT 部门可以尝试此解决方法:

在固定的 Windows 版本可用之前,一位 think-cell 客户从 SentinelOne 收到了此解决方法。如需有关此解决方法的进一步信息,请联系您的 SentinelOne 支持人员,并参阅票证 #652625。

  1. 获取计算机的 SentinelOne 密码
  2. 以管理员身份运行 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
  3. 等待 5 分钟,然后重新启动计算机。

分享