冠状病毒测试的公开结果 – 如何不保护您的数据

TL:DR – 出生日期或社会保险号码不是确保访问数据的好主意。

拼图 – 下面的两张图片有什么区别?

但是,让我们从头开始。 不幸的是,与 IT 世界通常的情况一样,便利性与安全性不齐。 我觉得这次差不多。 但是,有一组敏感数据不能做出妥协。 此类数据包括但不限于有关我们健康的信息。

我的朋友 Kacpra 发来一条关于如何获得实验室结果的消息,对此我感到震惊,因此我决定更详细地调查负责此问题的解决方案。

如上图所示 – 要通过"简化登录"功能访问您的结果,您需要两个信息:

  • 订单 ID,后续订单数量正在增加:
  • 订购人的出生日期[天=X=月]X=X]

根据某些假设,可分配到订单 ID 的出生日期组合数量仅为约 19,000 组合。 不难猜出,生成所有此类组合并检查它们是否与订单号匹配并不是一个大问题。

事实证明,我的假设是正确的,经过几百次列举后,设法匹配访问数据:

列举入侵者

这允许敏感的患者信息,如:

  • 名字;
  • 名称:
  • 佩塞尔:
  • 出生日期;
  • 居住地址;
  • 测试结果;
冠状病毒测试结果
冠状病毒测试结果

成功列举尝试的另一个例子:

列举打嗝入侵者
冠状病毒测试结果

一旦我确认了我的易感性,我向负责的软件报告了此错误,以及维修建议:

报告安全错误的电子邮件

怎么办,怎么生活?

针对此类攻击最常见的安全措施之一是实施 captcha。 在几次(例如三次)访问订单数据的尝试失败后,应用程序的用户将被要求重写显示的 captcha 代码。 但是,请注意,实施这种机制只是(或直到)攻击者减速,在最简单的情况下,攻击者将能够使用OCR扫描仪或专用的captcha阅读服务进一步简化出生日期。

更好和推荐的安全功能是通过 一个足够长的随机密码访问订单结果,该密码将进入客户的电话号码。

幸运的是,通过从谷歌实施重新CAPTCHA机制,错误很快就修复了:

Chcesz wiedzieć więcej?

Zapisz się i bądź informowany o nowych postach (zero spamu!).
Dodatkowo otrzymasz, moją prywatną listę 15 najbardziej przydatnych narzędzi (wraz z krótkim opisem), których używam przy testach penetracyjnych.

Nigdy nie podam, nie wymienię ani nie sprzedam Twojego adresu e-mail. W każdej chwili możesz zrezygnować z subskrypcji.

Bookmark the permalink.

Podziel się swoją opinią na temat artykułu