在医学界,组织和专家之间共享患者数据一直是一个问题。x光片、笔记、CT扫描和任何其他数据或相关文件都一直存在,并以其物理形式(幻灯片、文书)共享。

当病人需要将检查结果带到另一家诊所征求第二意见或向专家进行更详细的检查时,就会要求他们获得文件的副本,并将它们亲自交给接受检查的专家。即使在这个等式中引入了计算机,在某些情况下,这种手动传递在今天仍然是普遍的做法。

在“医疗领域”中,数据不以与政府和私营企业相同的方式存储和访问。医生没有中央储存库,以便看到患者的历史,因为有一名警察官员访问给定公民或车辆的犯罪历史。因此,即使具有记录的数字化,共享数据仍然存在问题。

在信息共享和技术方面,医疗行业落后于现代世界其他国家10年。通过将图像数字化成DICOM格式,医生们迈出了进入科技世界的第一步。但即使有了这些数字格式,病人还是有必要把带有数据的CD带到另一位专家那里进行分析。

按照落后10年的传统,直到最近,这些数字数据才被以一种可访问的方式存储和共享。我们今天看到的是,在私人的、通常是内部的系统(称为PACS服务器)上托管病人医疗数据的个人实践。这些服务器被放到公共互联网上,以允许其他“可信方”立即访问数据,而不是使用旧的手动共享方法。

问题是,当医疗行业最终以信息的形式进入21世纪时科技他们仍然留在信息后面秒,导致患者的私人数据暴露并以黑客挑选的挑战。这是我们在本案研究中探索的问题。

它在设置中

虽然到目前为止已经有数百个可利用的医疗设备/服务的例子被公开,但我将重点关注一个涉及PACS服务器框架的具体案例,这是一个在业内非常普遍的系统,值得关注,因为如果设置不当,它有可能暴露患者的私人数据。

我选择分析的服务器是基于一个名为Dicoogle的框架构建的。虽然我发现Dicoogle的设置是不安全的,但框架本身并没有问题。事实上,我很尊重这些开发者,他们为医学界创造了一种共享数据的方式,做出了巨大的贡献。与任何技术一样,安全往往取决于各个公司决定如何实现它。这种情况也不例外。

技术细节

让我们从发现和访问开始。一般来说,互联网上存在的任何东西理论上都可以搜索和找到。就互联网上的服务器而言,它是无法隐藏的。它只是一个IP地址,仅此而已。因此,使用Shodan.和一些谷歌搜索条件,在野外找不到运行Dicoogle的直播服务器并不困难。

当我们查看其访问控制时,问题开始了。我审查了特定的服务器,只需允许访问其前端Web面板。绝对没有IP或MAC地址限制。有良好的论据说这个数据库不应该首先暴露在互联网上,而是应该在本地网络上运行,只能由VPN访问。但由于安全性不可能考虑安全性,因此我不需要执行更多难以找到首页的安全服务器所需的任何更困难的目标侦察。

现在,我们可以姑且相信他们,并说,“也许世界各地有很多人需要合法访问,所以他们故意让它保持开放,但通过其他方式确保了它。”

在我们继续观察剩余的OPSEC失败之后,我们可以从我们的头脑中消除这种“无罪推定”。我要指出的是,我碰巧遇到过Dicoogle的实现是不受影响的,并且保持完整的。这个事实只是作为一个确认,在本例中,我们确实是在查看一个实现错误。

接着说,就像一个试图闯入房屋的窃贼在转动门把手之前不会拔出他的开锁装置一样,如果默认凭证仍然存在于被审计的系统中,我们就不需要尝试任何复杂的黑客手段。

可悲的是,这是这种情况。服务器有默认值得信誉,在第一次安装时将内置于Dicoogle中。

用户名:dicoogle.
密码:dicoogle.

这种类型的安全故障在任何行业中都非常常见。

然而,我们的工作还没有完成。我想用尽可能多的方法来评估这个设置,看看是否有任何其他安全失败。信用违约只是一个太弱的旁路,不能就此停止,而且问题显然很容易解决。所以我开始查看Dicoogle的开发者文档。

我意识到有许多API调用是为开发人员创建的,以构建与Dicoogle交互的定制软件。这些api要么是JavaScript、Python,要么是基于REST的。尽管该服务器有用于身份验证的模块,但默认情况下它们不会被激活,需要进行一些设置。因此,即使这个目标一开始就删除了默认凭证,也可以很容易地绕过它们,因为所有患者数据仍然可以通过api访问,而不需要任何身份验证。

这种血液不仅仅是在成立服务器的团队的手中,但不幸的是,责任也部分位于Dicoogle上。当您开发软件时,特别是几乎保证包含敏感数据的软件,应通过设计实现安全性,并且不应要求用户采取其他操作。据说,大多数责任都属于这项服务的主机,因为它们是处理客户敏感数据的那些。

现在稍微深入一点,您可以通过编程或REST API使用下列任意命令来访问该数据并绕过身份验证。

(SERVER_IP) ?查询= StudyDate(20141101到20141103):
使用这个查询的结果,攻击者可以获得单个用户的ID,执行以下调用:

/转储?UID = [RetreedID]
可以提取DICOM图像中的所有内部数据和元数据。

同样,我们可以使用这些API调用的组合访问数据库中包含的所有信息,而不需要任何身份验证。

黑市数据

“那么大笔交易是什么?”你可能会问。“此数据不包含信用卡,有时甚至没有社会安全号码。”我们已经看到,在黑市上,医疗数据对犯罪分子比信用卡更有价值,甚至是单独的社会安全号码。我们已经看到列表,显示有时销售的医疗数据有时是信用卡可以使用的10倍。

那么,为什么这类信息对罪犯如此有价值呢?犯罪分子对这个系统的破坏能造成什么危害呢?

首先,一份完整的患者档案将包含从SSN到地址、电话号码和所有相关数据的所有内容,使之成为一个完整的包身份盗窃。这些数据库包含完整的患者数据,可以在黑色市场上轻松转动并销售。卖给另一个罪犯可能会少钱,但它的资金更容易。现在,除了基本的ID盗窃和转售之外,让我们谈谈一些更具目标和有趣的用例。

最简单的例子就是破坏公物和赎金。在这种特殊情况下,由于黑客可以进入门户网站,删除并保存这些数据以换取赎金是绝对有可能的。

下一个潜在的犯罪更有趣,对罪犯来说可能更有利可图。正如我在本文中所描述的,医疗记录存储在竖井中,一个医疗专业人员不可能将患者数据与任何类型的中央数据库进行交叉检查。因此,出现了两种情况。

第一件事是修改病人数据以进行税务欺诈。罪犯可以获取患者的个人记录,包括CT扫描图像或x光片,并使用免费的DICOM图像编辑器和相关软件,修改合法的患者文件,以包含冒名顶替的信息。当冒名顶替者拿着一张CD去给医生当新病人时,医生是不会知道的。因此,冒名顶替者现在要求医疗保险福利或某种基于这种疾病的退税是相当可行的,他们实际上并没有。

第二种则更极端,也更有利可图。有记录在案的案件中,犯罪分子创建了假诊所,并代表受害患者,在他们不知情的情况下,将这些合法但窃取的数据提交给他们自己的假诊所。然后,他们就可以从保险公司那里获得医疗赔偿,而无需实际治疗病人。

外卖

这项研究有三个主要的外卖。第一个是医疗诊所的客户。作为我们在医学世界中有如此多的知名和经过验证的不安全,作为担心他们身份被盗的患者,可以询问如何在将数据携带到任何医疗机构时。如果他们没有有关如何安全存储数据的详细信息,则可能更好地询问您的数据旧式的方式:作为CD。虽然这可能在某种程度上可能是不方便的,但至少它将保持身份安全。

第二个结论是针对医疗诊所或诊所。如果你不准备投入时间和金钱在适当的安全上,提供这种类型的存储是不负责任的。要么坚持老派的病人数据方法,要么花时间确保你的病人身份的安全。

至少,如果您坚持推出自己的服务,请将其保持在组织的本地,并只允许访问预定义的机器。用户名和密码不足以构成安全措施,更不用说默认的用户名和密码了。或者,如果您没有技术人员来正确地实施PACS服务器,那么最好花钱购买信誉良好、有良好记录和安全实践记录的云服务。如果您没有准备好理解伴随它而来的必要约束,就不应该跳入现代信息世界。

最后,最后一次外卖是开发人员。过去五年有足够的例子来证明用户要么不知道或足够地关心安全性。这一责任的一部分在于您可以创建没有潜力的软件,可能很容易滥用或将用户放在危险中。