Snowflake 的 CORTEX 等 AI 驱动型工具中数据泄露的隐藏安全风险
快速阅读: 《网络安全新闻》消息,研究表明,Snowflake的Cortex搜索服务因权限管理问题可能泄露敏感数据。尽管Snowflake已承认漏洞并着手修复,但提醒用户注意安全配置,避免潜在风险。
人工智能正快速革新技术领域,为效率提升与业务增长带来了前所未有的机遇。然而,随着人工智能逐渐融入数据分析平台,一个新的隐忧开始显现:高级功能可能意外削弱原本精心构建的安全控制。
最新的研究表明,在看似配置完善的环境中也潜藏意想不到的漏洞,特别是在人工智能服务与传统访问控制机制交互时。例如,Snowflake公司的Cortex搜索服务作为一种先进的人工智能驱动搜索与检索工具,承诺通过自然语言查询及增强的检索能力彻底改变组织与数据的互动模式。该服务旨在简化复杂的数据操作,使用户能够执行模糊搜索并借助大型语言模型的能力,而无需具备对底层表的直接SELECT权限。仅需拥有对服务的USAGE权限,用户即可通过Cortex搜索查询数据。
Cyera的研究人员发现了一个关键性的安全漏洞,涉及Cortex搜索如何与Snowflake的动态数据屏蔽策略协同工作。研究显示,该服务以“所有者权限”而非“调用者权限”的方式运行,这可能导致权限较低的用户访问根据既定安全策略应被屏蔽的敏感数据。根本问题出在人工智能服务的执行上下文中。当管理员使用如ACCOUNTADMIN这样的特权角色部署Cortex搜索服务时,该服务会继承此角色的所有权限。设置和使用过程中,任何被授予服务USAGE权限的用户都可以利用这些权限来检索他们本不应以明文形式查看的数据。这种行为打破了最小权限原则,而这一原则是信息安全的核心所在。
实行动态数据屏蔽以防止未经授权查看敏感信息的组织,可能在不知情的情况下通过Cortex搜索暴露相同数据。
这一漏洞的技术核心在于数据库系统中的两种权限模型差异。在“调用者权限”体系中,进程以调用者的权限执行,从而保持安全边界。然而,Cortex搜索采用的是“所有者权限”,这意味着它以创建服务的角色的增强权限执行,而不考虑谁发起查询。这一点在观察Snowflake中屏蔽策略的工作方式时尤为明显:
“`
CREATE MASKING POLICY mask_sensitive_data AS (val STRING) RETURNS STRING ->
CASE WHEN CURRENT_ROLE() = ‘ADMIN’ THEN val ELSE ‘*****’ END;
“`
虽然此策略在直接查询时能正确屏蔽敏感数据,但Cortex搜索通过在其服务角色的增强权限下执行查询绕过了这一防护措施。此外,仅有Cortex搜索服务USAGE权限的普通用户也能检索未屏蔽的数据,而这些数据对他们而言通常是隐藏的。
Snowflake在Cyera负责任地披露此问题后,已承认此问题,并开始实施缓解措施,包括调整执行上下文选项以及强化管理员警告以避免错误配置。
你是SOC或DFIR团队的一员吗?- 使用ANY.RUN实时分析恶意软件事件 -> 立即免费体验。
(以上内容均由Ai生成)