开脑洞:BloomFilter在PASSIVEDNS中的应用

1.1 简介

GDPR法案的出台,使得企业不得不开始重视用户的隐私.

在安全领域,PASSIVEDNS作为一招鲜手段对抗攻击者卓有成效,但是其短板也很明显,收集来用户query的数据的保存和使用存在巨大的隐私风险.

本文提出了一种办法,在保证PASSIVEDNS功能的前提下,不曝光具体 查询实体 身份.

本文为荷兰埃因霍温理工大学学生毕业论文.

其中使用的DNS数据提供者SURFNET为荷兰ISP提供商,主要用户为其国内学术研究机构.

1.2 Bloom Filter

  • 创建一个空的bitmap集合

  • 把第一个URL按照三种HASH算法,分别生成不同的HASH值

  • 分别判断5,17,9在Bitmap的对应位置是否为1,只要不同时为1,就认为该URL没有重复,于是把5,17,9的对应位置设置为1.

  • 把第二个URL按照三种HASH算法,分别生成不同的HASH值

  • 分别判断10,12, 9 在Bitmap的对应位置是否为1,只要不同时为1,就认为该Url没有重复,于是把10,12, 9 的对应位置设置为1

  • 把第三个URL按照三种HASH算法,分别生成不同的HASH值

  • 分别判断4,16, 11 在Bitmap的对应位置是否为1,只要不同时为1,就认为该Url没有重复,于是把4,16, 11 的对应位置设置为1

  • 把第四个URL按照三种Hash算法,分别生成三个不同的Hash值

  • 分别判断5,17, 9 在Bitmap的对应位置是否为1。判断的结果是 5,17, 9 在Bitmap对应位置的值都是1,所以判定该Url是一个重复的Url.

1.3 实例

选用MISP中的IOC,使用BloomFilter,结果如下.

参考报告:https://pure.tue.nl/ws/portalfiles/portal/109393905/CSE650_Gijs_Rijnders.pdf

发表评论

电子邮件地址不会被公开。 必填项已用*标注