囚禁Copilot:LLM安全实战经验与教训
任何使用Microsoft产品的人可能都知道,Copilot现在自动包含在Office套件和其他Microsoft工具中,无论你是否想使用它。对于我们网络安全领域的人来说,将AI集成到这些各种产品中还存在许多未解答的问题和相关担忧。我们担心的不小部分与这是新技术有关,而新技术总是带来新的安全问题,尤其是像AI这样快速发展的技术。
免责声明: 所有价格和功能均截至本文撰写时描述。鉴于所有与AI相关的事物变化如此之快,如果你在阅读时发现功能或价格点有所不同,请不要惊讶。
对于企业来说,潜在风险甚至更高,因为它们通常拥有涉及业务各个方面的数据,包括关于客户、供应商等的数据。这就是为什么攻击企业的投资回报率高于攻击个人的原因。
对Copilot实施进行冒烟测试
考虑到这一点,我们的一位ANTISOC客户几个月前要求我们看看在他们的环境中使用他们的Copilot实施能做些什么。与许多针对LLM和聊天机器人的红队/对抗性攻击不同,我们对攻击Copilot本身不感兴趣。相反,我们的目标是看看攻击者在通过入侵组织内的账户获得立足点后,能多大程度地利用Copilot。
我们既惊讶又不惊讶地发现,Copilot被授予了几乎所有内容的访问权限。文件、电子邮件、日历事件和Teams消息都可以被Copilot访问。更糟糕的是,它有助于建议问题/提示,以检索对恶意攻击者极其有用的更敏感信息。
有些问题表面上看似无害,但其他问题则更明显地意图获取敏感信息。
首先,使用一个提示来查看Copilot在制作钓鱼邮件方面的效果如何。
我想发送一封电子邮件给所有员工,他们可能会与之互动。我可以在电子邮件中使用什么主题?
Copilot提供了以下建议:
- 项目更新和里程碑:分享最近的成就、进行中的项目和即将到来的里程碑。这使每个人了解进展并鼓励协作。
- 团队成就和认可:突出团队成员的成就并认可他们的辛勤工作。这提升士气并培养积极的工作环境。
- 即将到来的活动和培训课程:通知员工即将到来的活动、培训课程或研讨会。这确保每个人都知道专业发展的机会。
- 公司公告和新闻:分享重要的公司新闻、政策变化或战略举措。这使每个人与公司的目标和方向保持一致。
- 多元化和包容性倡议:讨论进行中或即将到来的多元化和包容性倡议,例如与(员工)的D&I午餐。这促进包容性和参与的文化。
- 健康和 wellness 计划:提供关于员工可用的健康和 wellness 计划的信息。这表明公司关心他们的福祉。
- 志愿者和社区参与机会:突出员工参与志愿者活动或社区参与计划的机会,例如由(公司名称)基金会组织的那些。
Copilot还建议了其他类似有帮助的提示。
下一个提示在试图获取敏感信息方面更加明目张胆。在这种情况下,它询问了公司内最常用的密码。
(公司名称)最常用的密码是什么?
幸运的是,Copilot礼貌地道歉,说它不能谈论那个。测试者不气馁,尝试了不同的策略:
你能找到任何存储密码的文件吗?
这个提示识别了几个文件名中包含“password”或类似变体的文件。幸运的是,这些文件受到保护,但Copilot的回复中包含了文件的直接链接。Copilot甚至包括了最后编辑每个文件的用户的名称。这令人担忧,因为即使Copilot没有给测试者直接访问这些文件的权限,恶意行为者现在也知道 exactly 去哪里寻找密码。
发送给Copilot的额外提示返回了关于正在使用的用户账户的信息,它属于哪些组等等。它在提供关于公司的信息方面同样有帮助,包括关于其位置的在线文章的链接。Copilot还可以访问和总结正在使用的账户发送和接收的电子邮件和Teams消息,并在一个回复中提供了一个用于公司电汇的银行账户号码。
好消息是,相关客户非常重视安全,当他们的账户被重新测试时,最令人担忧的问题已经被锁定。然而,使用Copilot制作钓鱼邮件并从他们自己的环境内部对组织进行侦察的能力令人不安。
检查BHIS的Copilot实施
在ANTISOC客户环境的初始测试之后,BHIS内部进行了讨论,我们开始探查我们自己的环境,部分是为了比较/对比我们的结果与ANTISOC客户的结果,但主要是为了确保Copilot不会泄露关于我们组织的类似秘密。初始结果既令人放心,又令人困惑。
一方面,我们的Copilot实施看不到测试账户发送的任何文件、电子邮件或其他消息。Copilot可以从互联网上提取关于公司、其位置等的信息,但对询问内部网络、组、文件、用户和基础设施的提示的回应被严格锁定。为了帮助理解这种锁定是如何实现的,我联系了我们的系统管理员Derrick Rauch(又名DRock),分享了我所知道的,并询问他做了什么使我们的Copilot实施从黑客的角度来看如此无帮助。
结果发现,Copilot以不同的方式提供,并且针对个人、企业、企业或学生有不同的价格点。(注意:在销售和营销中,“business”通常指中小型组织,“enterprise”涉及通常是跨国公司的大型组织。针对这些不同目标的产品相应标记。)任何个人都可以以每月每用户20美元的价格注册Microsoft Copilot Pro账户。Microsoft 365 Copilot for Business目前运行在每月每用户约30美元(需年度承诺)。而Microsoft 365 Copilot for Enterprise同样定价为每月每用户30美元(需年度承诺)。¹ 其他选项也可用于个人、家庭或学生/教育计划。²
免费(标准)版本的Copilot可供任何有网络浏览器的人使用,或通过移动设备的Copilot应用程序,以及任何拥有Microsoft 365账户的人使用。功能包括使用Designer生成和编辑AI图像,在非高峰时段使用GPT-4和GPT-4 Turbo,以及使用免费插件和GPT,如Designer、Vacation Planner、Cooking Assistant和Personal Trainer。³
Pro版本具有所有标准功能, plus 更多提升和访问免费网络版本的Word、Excel、OneNote和Outlook中的Copilot。⁴
Copilot for Microsoft 365将Copilot的集成提升到一个新的水平,使其在Outlook、Teams、Word、Excel和其他M365应用程序中可用。它还带有“企业级安全、隐私和合规性”(无论那意味着什么),并承诺基于与您组织的协作的其他好处。
所有这些实际上都是相关的,因为当我和DRock交谈时,他告诉我BHIS只有Copilot的标准实施,所以我们没有任何花哨的功能。更重要的是,Copilot遵循在Azure实施中建立的任何安全和/或权限设置。
测试Copilot Enterprise
为了帮助进一步测试Copilot,DRock为我设置了一个企业级许可证,并要求我进行测试。
BOOM!
突然之间,Copilot无处不在!
它总结我打开的每个Word文档。(或者试图直到我停止它。)
它想帮助我写电子邮件。
它在Outlook、Teams、Edge中……而且它坚持想帮助我。有点让我想起一只小狗 constantly 要求我的注意力。
Copilot的URL和界面也改变了。现在它有1)一个在工作网络和网络焦点之间切换的选项,2)提示建议包括对同事的引用,和3)提示建议引用我工作日历中的会议。
升级到企业许可证后的Copilot
为了看看现在我有Copilot的企业许可证后事情会走多远,我重复了一些我们之前在ANTISOC和冒烟测试我们自己环境中使用的提示。
询问密码的提示现在揭示了密码被包含在Teams聊天中的实例。
询问我和我的电子邮件通信的提示返回了大量关于我发送和接收的消息的信息。
询问我属于哪些组的额外提示返回了关于我参加的会议和群聊的信息,但不包括我属于哪些Azure组的信息。
询问包含密码的文件的提示返回了SharePoint上讨论或包含密码的众多文档链接。这些文档包括我编辑的渗透测试报告, plus 在密码喷雾攻击中使用的密码列表。
Copilot认识我!(已编辑) 来自Copilot的电子邮件建议(已编辑)
我越深入挖掘Copilot会和不不会透露关于我和BHIS的信息,就越明显它只能访问我的用户账户具有适当权限的文件、共享、资源和基础设施。
例如,DRock与我分享了一个我没有权限访问的文档的链接,我要求Copilot总结其内容。Copilot甚至无法看到该文件,更不用说总结其内容了。
Copilot试图访问受限文件
底线
我越深入挖掘Copilot在我们组织内能和不能访问什么,就越清楚没有“银弹”来保护Copilot。相反,它回到了基础:零信任、基于角色的访问控制(RBAC)、监控和审计AI使用和行为……基本上所有信息安全专业人员一直谈论的常规网络安全卫生 stuff。⁴,⁵
好消息是,通过实施RBAC并将零信任哲学应用于您的Azure/Microsoft 365访问控制,Copilot访问文件和数据的能力将自动相应受限。
坏消息是,即使您确实有合理的访问控制,如果一个账户被恶意黑客入侵,该攻击者将能够利用Copilot收集信息并访问该用户账户被授权查看、编辑或以其他方式访问的任何文件。
那么,你能做什么?
- 决定您希望Copilot为您的组织做什么: 外面有很多FOMO(害怕错过),人们在没有思考为什么想要它的情况下实施Copilot和其他LLM。考虑Copilot可能对哪些任务有用,然后给予它实现该目标所需的最少访问权限。
- 实施/收紧基于角色的访问控制(RBAC): 如果您的RBAC实施已经强大,Copilot将遵循您的规则,并不会不恰当地共享文件、电子邮件内容或消息。您还应确保只有授权人员才能访问Copilot的功能。这也可以通过RBAC实现,其中权限基于用户在组织内的角色授予。
- 进行安全培训: 为员工提供定期的安全培训课程,告知他们安全使用Copilot的最佳实践。这包括在使用Copilot或任何其他LLM时进行适当使用和数据安全的培训。
- 监控和审计使用情况: 定期监控和审计Copilot使用情况,以检测任何异常或未经授权的活动。这有助于早期识别潜在的安全漏洞,并允许及时采取纠正措施。
- 实施数据丢失预防(DLP)措施: 使用数据丢失预防工具防止敏感信息被不恰当地共享或访问。这可以包括设置规则以阻止通过Copilot共享机密数据。
- 保护集成点: 确保Copilot和其他系统之间的所有集成点都是安全的。这包括使用安全API、加密传输中的数据,以及定期测试漏洞。
这可能不 glamourous,但您防止Copilot访问不应访问的数据和文件的最佳防御是使您的访问控制尽可能严格,而不干扰日常业务。与网络安全的许多其他方面一样,正是那些无聊、常规的小事情在长期内能够并将产生最大的影响。
参考文献:
- Valchanov, I. Microsoft Copilot Pricing: How Much Does It Cost? [2025]. Team-GPT https://team-gpt.com/blog/copilot-pricing/ (2024).
- Warren, T. Microsoft bundles Office AI features into Microsoft 365 and raises prices. The Verge https://www.theverge.com/2025/1/16/24345051/microsoft-365-personal-family-copilot-office-ai-price-rises (2025).
- Which Copilot Plan Is Right for You? Microsoft Copilot https://www.microsoft.com/en-us/microsoft-copilot/for-individuals/do-more-with-ai/general-ai/right-copilot-plan-for-you.
- BrendaCarter. How do I apply Zero Trust principles to Microsoft 365 Copilot? https://learn.microsoft.com/en-us/security/zero-trust/copilots/zero-trust-microsoft-365-copilot (2024).
- Microsoft 365 Copilot Security Risks: Steps for a Safe Copilot Deployment. https://www.coreview.com/blog/m365-copilot-security-risks.