荷兰医疗保险公司VvAA两处IDOR漏洞导致13万医疗工作者数据泄露

本文详细披露了荷兰医疗保险公司VvAA门户网站存在的两处IDOR漏洞,攻击者可借此访问13万医疗工作者的敏感保险文件,包括包含勒索软件赔付条款的网络风险保险单。

荷兰医疗保险公司VvAA两处IDOR漏洞导致13万医疗工作者数据泄露

背景

如果勒索软件组织能够确切知道哪些医疗机构投保了涵盖勒索攻击的保险,且保险单包含保证支付赎金的条款,会怎样?

这将是每个勒索软件组织的梦想。今天我们将见证两个漏洞如何使这成为可能。

在深入技术细节之前,先简要介绍在没有适当协调漏洞披露的情况下进行道德黑客攻击的背景,以及一些关于为医疗机构提供赎金赔付的勒索软件保险的思考。

医疗领域勒索软件威胁增加

根据医疗部门机构CERT组织Z-CERT.nl的2023年度报告,当前医疗领域最大的威胁之一是勒索软件和金融欺诈。他们描述称,IT供应商比医疗机构本身更常成为攻击目标。

在欧洲,Z-CERT记录了29起欧洲医疗机构的勒索软件事件,其中3起发生在荷兰,包括初级医疗保健(第13页)。

我们有充分理由尽一切努力打破这一趋势,也许可以通过保险来保护自己?

覆盖赎金支付的保险

为什么有人会对公司进行勒索软件攻击?为了钱。没有钱,就没有(不道德的)黑客。

医疗诊所之所以不会被持枪窃贼抢劫或勒索,有一个很好的理由:那里根本没有钱…由于荷兰政府和医疗保险规范了这些诊所的收入,它们没有获得巨额利润。这可能解释了为什么(商业)供应商目前更常成为攻击目标。

但如果保险公司开始提供覆盖诊所所需赎金的保险呢?我们可能会为开始黑客攻击医疗诊所创造一个很好的理由?

保险福利说明 “福利:支付的赎金将得到报销。” — https://www.vvaa.nl/verzekeringen/cyber-en-data-risks-verzekering (2024年3月10日)

今天我们将仔细研究VvAA,这是荷兰医生和医疗诊所使用的最大保险和咨询公司之一。他们声称代表超过13万医疗工作者。包括我自己,我自2005年以来一直是会员,并在过去10年购买了保险(不,不是网络保险)。为什么?因为他们是一家伟大的公司,扎根于荷兰医疗领域,100年前由3名医生创立。

换句话说,他们了解医生的想法,与社区互动并努力做好事;证据在于实践,让我们开始黑客攻击。

公司历史 “始于192年3名医生的事业已发展成为超过13万医疗专业人士的集体。我们在社会和政治辩论中代表他们的声音,并为医疗周边的所有外围事务提供支持。这使得医疗专业人士及其组织能够专注于他们最重要的任务:为患者提供最佳护理。”来源

缺乏协调漏洞披露

一年多前,我们讨论了HAwebsso.nl的数据泄露事件,导致超过1.5万名荷兰医生的私人详细信息泄露,包括他们的电子邮件和哈希密码。这是一个有趣的发现,因为它揭露了一个存在至少3年(关于Archive.org日志甚至可能5年)的漏洞。

该黑客攻击中获得的数据可以轻松用于进行鱼叉式网络钓鱼攻击。

LHV迅速缓解了该漏洞并协调了披露,这是协调漏洞披露如何应用于医疗领域的一个很好的例子。

今天我们将看看VvAA。在发现漏洞时(2023年3月24日),他们没有发布适当的负责任披露或协调漏洞披露政策。

这使得道德黑客测试其基础设施问题有些风险,并且是帮助保护其资产和客户数据的人才的重大缺失。好消息是,在本报告之后,他们已经实施了该政策!

CVD政策 本报告几个月后发布了CVD政策

有人可能会问自己,如果你没有被明确允许黑客攻击系统,那么黑客攻击系统是否不道德?

有人可能声称,进行此类安全研究符合公共利益,可以与试图研究对我们社会有严重影响的新闻记者相媲美。另见DIVD的行为准则:

我们意识到我们在法律允许的边缘运作,因此我们遵循法院在漏洞披露案件中常用的三个标准:

  • 社会需求:我们进行漏洞披露是为了防止对尽可能多的互联网用户造成在线损害,并不服务于任何特定的财务、政治或个人利益。
  • 相称性原则:我们以适当的方式满足这一需求。我们的研究应增加而不是降低在线系统的完整性和可用性。
  • 辅助性原则:如果有几种方法可以满足需求,我们选择影响最小的一种。

一个现实世界的例子是荷兰记者Daniel Verlaan黑客攻击了欧盟国防部长的视频会议。据我所知,他没有获得研究许可,但他没有因这次黑客攻击而被起诉。博雷利先生在他黑客攻击期间告诉他:

“你知道这是刑事犯罪,嗯?你最好在警察到达之前迅速退出。” — 博雷利先生,2020年11月21日

一个明确的信号,我们仍有工作要做,以说服(政治)领导层我们需要支持像Daniel这样的道德记者/黑客。不要起诉或恐吓他们,甚至制定使他们的工作有风险的法律。

一个良好的发展是我们司法部长最近对DIVD的认可;因为DIVD不停扫描整个互联网以查找漏洞,并向系统所有者负责任地披露这些漏洞。无论他们在世界何处,无论他们是否有负责任披露政策。没有人会起诉消防员,对吧?顺便说一句,他们一直在寻找人才,所以如果可以的话加入他们!

IDOR漏洞1:获取您的个人文件

我们这次黑客攻击的最终目标是获取每个人的私人保险单文件。谁有涵盖勒索软件攻击的保险,包括保证的勒索软件赔付?让我们获取那些文件!

由于我在这里需要非常谨慎(没有CVD政策),我联系了一位也是VvAA保险客户的同事,询问她是否同意我尝试获取她的文件和保单。她同意了并分享了她的账户详细信息。

在他们的内部门户上拥有两个账户有助于我以安全的方式查找IDOR漏洞;我可以使用我朋友的ID而不是“随机”ID来攻击其他客户。

开始吧!登录我自己的账户后,我立即识别出URL中的/s/。这通常暗示背后使用了Salesforce。

URL中的/s/部分 URL路径中的/s/部分暗示他们的后端可能是Salesforce

页面源代码 页面源代码确认了这一点;Salesforce被用作其后端系统

Salesforce使用对象;背后的一切都是对象。您的发票有一个对象ID,您的个人资料有一个对象ID,所有其他存储的数据都可以通过引用ID来访问。

每当您能够找到一个ID时,您可以像这样构造URL: https://mijn.vvaa.nl/objectidhere 另见本博客以获取更多背景信息。

在使用Burp作为代理进行MITM流量时,我收集了看到的流量中使用的对象ID。当我访问我的联系详细信息时,一个是0011r00002IXXXXX。

对象ID的原始(隐藏)视图 我的个人资料对象ID的原始(隐藏)视图。审查了一些个人详细信息。在这里您可以看到我的未结案例和我订阅的服务。它包含我联系他们的通话记录。不是超级秘密,但这是他们用来记录我的客户服务交互的内容。

当我访问该URL时,我得到了另一个提示,表明Salesforce实例配置不当,暴露原始对象视图通常会暴露配置松散。在此处阅读有关如何保护此内容的更多信息。

案例详情 点击案例我可以更改状态和优先级。影响不大,但我不应该能够访问此内容。

这已经足以让我联系VvAA告知我的担忧;因此我在2023年3月24日午夜00:00通过电子邮件联系了他们的隐私官。同一天12:45,他们的CISO联系我安排了一次通话,讨论当前的发现。

那天14:30,我发现了导致所有文件泄露的IDOR。

步骤1

启动Burp并使用2个账户登录。左侧是攻击者,右侧是受害者。

攻击者和受害者账户 左侧是攻击者(Chantal)。右侧是受害者(Jonathan)

加载概览(Overzicht)页面时,它会共享您账户中可访问的文档/PDF文件。可以在右侧看到我有一些发票和保单协议在我的列表中。

“您的最新消息” “您的最新消息”包括共享文件。

填充此概览的请求使用relatienummer id(客户ID)来获取这些文件。此ID是一个整数,可以轻松枚举。

客户ID 审查了我的“RelatieNummer”/客户ID。此ID用于获取客户的所有文件。

如果您仔细查看此屏幕截图,您会看到它想要运行命令getMijnVvAADocs,并且它使用RelatieNummer变量仅获取当前登录用户的文档。

重要的是要提到,这是VvAA添加到他们自己网站的自定义功能。因此,此漏洞不是任何其他Salesforce实例的一部分,也不是Salesforce特定问题。因此,如果您运行一个实例,不必担心。

如果我们将该ID更改为我们受害者的客户ID会怎样?我们会得到其他用户的文档吗?

攻击者获取受害者文档 攻击者能够获取我们受害者的文档。

受害者保单详情 受害者的保单详情可以被攻击者下载

砰!我们可以访问受害者和

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计