欺骗性IDN安全风险检测与测量研究
2019-09-28 00:10:40 Author: mp.weixin.qq.com(查看原文) 阅读量:58 收藏

笔记作者:sshruoshui@SecQuan 

原文作者:Aisha Ali-Gombe, Towson University;Sneha Sudhakaran, Louisiana State University;Andrew Case, Volatility Foundation;Golden G. Richard III, Louisiana State University; 

原文标题:DomainScouter: Understanding the Risks of Deceptive IDNs

原文来源:RAID 2019 

原文链接:https://www.usenix.org/system/files/raid2019-chiba.pdf

这是一篇关于DNS安全问题检测与测量的文章。RAID 2019在call for paper中明确指出“measurement papers are encouraged”。针对互联网基础设施和服务的大规模测量是一个急需研究也很值得研究的方向。开展这类研究工作的关键是:不断地向自己提出问题,然后找出合理的解决方法。因此,分析这类文章的关键也在于,找出研究问题。

论文的研究是欺骗性国际化域名(IDN)的检测与测量问题,作者论文围绕6个问题展开,具体而言,:

1.1 研究问题1:什么是欺骗性IDN?

作者所指的欺骗性IDN是指与正常品牌域名(看起来)相似,常常用于在垃圾邮件中欺骗用户点击或者在钓鱼网站中欺骗用户输入个人信息。从这个解释来看,作者的研究对象是恶意域名的子集。作者将欺骗性IDN分为2个类别:针对英语域名的欺骗性IDN、针对非英语域名的欺骗性IDN。为什么呢?因为英语IDN和非英语IDN具有不同的特征。从欺骗方式上,作者将欺骗性IDN分成3种类型:(1)组合抢注(combosquatting):以“知名域名 + 关键词”的方式抢注域名;(2)形近域名(homograph):将品牌域名中的某些字符替换成视觉上相似的字符;(3)混合式抢注(homograph + combosquatting):同时使用(1)(2)两种策略的域名。好了,基于上述定义,可以派生出6种IDN攻击方式,即 -| combo | homo | homocombo | :-: | :-: | :-: | :-: | eng domain| eng-combo|eng-homo|eng-homocomo| noneng domain| noneng-combo|noneng-homo|noneng-homocomo|

定义了欺骗性IDN的含义后,作者提出的下一个问题是:如何检测欺骗性IDN?

1.2 研究问题2:如何检测欺骗性IDN?

为了检测欺骗性IDN,作者提出了DomainScouter系统。首先定义系统的输入输出,输入是注册的IDN和品牌域名。DomainScouter基于视觉相似性、品牌信息和顶级域特征等多种特征信息,自动检测欺骗性IDN。系统输出是:检测到的欺骗性IDN、目标品牌、以及IDN域名的欺骗性评分(定量)。系统总体架构如图所示。 作者将IDN域名检测分解成5个步骤,分别是:IDN抽取、品牌域名的选择、图像生成、特征抽取和计算评分。

1.2.1 IDN抽取

IDN抽取是指从域名注册机构数据库中抽取已注册IDN。某种意义上,这不是一个技术性问题。因为,每个顶级域是分开运营的,没有统一的数据库查询接口。如果想要研究所有顶级域的IDN域名,怎么办呢?作者首先把顶级域名结构研究了一番。-| legacy | new | new IDN TLD | :-: | :-: | :-: | :-: | gTLD| legacy gTLD
(22个)|new gTLD
(1042个)|new IDN gTLD
(84个)| ccTLD| legacy ccTLD
(245个)|-|new IDN ccTLD
(42个)| 为了收集所有TLD下的已注册IDN数据,作者使用了商业WHOIS数据库:Whois XML API. https://www.whoisxmlapi.com/. 最终的数据集如下: 

1.2.2 品牌域名的选择

品牌域名的选择是指选择成为欺骗性IDN攻击目标的品牌域名。(1)对于英语欺骗性IDN:为了减少数据集中的偏置(bias),作者从3个top sites列表中(Alexa、Umbrella、Majestic)中选取前1000的域名,去重,最终得到2310个英语品牌域名。(2)对于非英语欺骗性IDN:由于非英语品牌域名远远少于英语品牌域名,作者还是依赖于上面3个top sites列表,不过将选取范围扩大到前100万,去重,最终得到4474个非英语品牌域名。注意,作者利用黑名单排除了一些恶意域名。

1.2.3 图像生成

图像生成是指生成已注册IDN域名和品牌域名的图像,用于计算域名的视觉相似性。具体地,生成3类图像:(1)RAW images:直接从域名的字符生成,用于识别形近域名。(2)PSR images:公开后缀移除图像(PSR,public suffix-removed),公开后缀是指域名中无法由互联网用户控制的字符。例如:example[.]co[.]jp的PSR为:[.]co[.]jp。PSR图像有助于识别与目标品牌域名后缀不同的欺骗性IDN。(3)WS images:使用单词分段方法生成的字段(word segment)图像。帮助识别基于组合策略的欺骗性IDN。

1.2.4 特征抽取

作者使用了3类特征:(1)视觉相似性特征(3个):用于获取欺骗性IDN最显著的特征,即视觉特征,可以衡量欺骗性IDN对用户的迷惑程度。为了评估图像相似度,作者使用了结构相似性(SSIM)。两个域名的相似性取RAW、PSR、WS相似性中的至大值。那么欺骗性IDN的目标品牌域名就是:与欺骗性IDN结构相似性最大的品牌域名。(2)品牌域名特征(9个): 假设 越知名的域名,成为欺骗性IDN攻击目标的可能性越大。因而,作者使用3个top sites列表(Alexa、Umbrella、Majestic)的品牌域名的RAW、PSR、WS图像作为特征。(3)TLD特征(4个):作者发现欺骗性IDN并不总与品牌域名属于相同的顶级域。因此,提取了特定顶级域中的IDN域名、品牌域名的RAW、PSR、WS图像作为特征。作者为每类特征赋予了一定的权重(如何确定的?)。

1.2.5 计算评分

计算欺骗性IDN分值,是指估计用户被该IDN欺骗的概率。使用有监督机器学习算法进行计算。 假设 欺骗性IDN已经用于钓鱼攻击和社工攻击。训练:如何获取标记数据集?依靠多个黑名单,将输入IDN标记为欺骗性的和非欺骗性的。测试:预测输入IDN为欺骗性IDN的概率,作为欺骗性IDN评分。所以,输出结果是:欺骗性IDN、他们的目标品牌域名以及欺骗性评分。作者比较了逻辑回归、朴素贝叶斯、决策树支持向量机、随机森林等多个模型,最终选择了随机森林。

1.3 研究问题3:如何评估DomainScouter的有效性?

作者从研究的性质、检测性能两个方面与前人工作(Baojun Liu等人(DSN,2018);Yuta Sawabe等人(APAN,2018))进行了比较。(1)研究性质。作者从数据集、目标品牌域名、欺骗性IDN类型和研究方法四个方面进行了比较。结论:从数据集上看,作者使用的数据集要更加全面;从目标品牌域名看,作者研究了两大类IDN域名,域名数量也远超前人;从欺骗性IDN类型看,作者研究了6类欺骗性IDN,比前人更系统;从方法上,作者使用结构相似性(SSIM)算法,前人使用光字符识别算法(OCR)。都需要手工优化相似性阈值。但是作者研究了跨顶级域的欺骗欺骗性IDN,前人没有。(2)检测性能。作者首先分析了前人与自己的实验设置,然后比较了检测出的欺骗性IDN数量。对于Baojun Liu等人的工作,需要设置检测eng-homo IDN域名的结构相似度阈值,Liu等人将阈值设置为0.95,但作者发现,此时误报率(FP)较高,作者将阈值调高至0.99后,误报率明显降低。对于Yuta Sawabe等人的系统,作者使用Sawabe等人提供的非ASCII码和相应的ASCII码字符之间的映射关系重现eng-homo IDN域名检测。DomainScouter的系统设置,作者标记了10000个IDN(其中,242个欺骗性、9758个良性),用于训练机器学习模型。正例通过参考hpHosts ,Google Safe Browsing,Symantec DeepSight三个黑名单,结合作者人工确认。242个正例只包含eng-homo欺骗性IDN。负例采用随机抽取的方法,结合人工确认。作者在训练数据集中使用了10折交叉验证:TPR=0.981,TNR=0.998,FPR=0.002,FNR=0.019,F1=0.972。

性能比较。作者采用给三个系统提供相同的输入(4426317个IDN域名),衡量其检测出的欺骗性IDN数量的方法比较。作者利用维恩图(Venn Diagram)展示了三种系统检测出的欺骗性IDN的交集。如图所示。

1.4 研究问题4:互联网中的欺骗性IDN具有哪些特点?会造成哪些影响?对于商标保护有哪些启示?

1.4.1欺骗性域名的特性

(1)欺骗性类型。DomainScouter一共检测出8284个域名,包括5类欺骗性IDN,即368个engcombo、1547个eng-homo、3697个eng-homocombo、144个nonengcombo、2528个noneng-homocombo IDNs,但是没有检测到noneng-homo IDNs。如图所示。

 

(2)目标品牌域名。作者分别统计了被欺骗性IDN攻击排名最高的英语品牌域名和非英语品牌域名。

(3)创建日期。利用whois数据库抽取欺骗性IDN注册时间。

1.4.2欺骗性域名的影响

(1)访问数量。利用pDNS数据集(DNSDB)衡量一段时间内欺骗性IDN存在多少访问量。(2)生命周期。利用pDNS数据集(DNSDB)找到欺骗性IDN的查询首次出现和最后一次出现的时间。利用Kaplan-Meier估计法估计IDN的生存周期。这种方法常用于估计网络安全中的生存周期。如图所示。

(如何计算出生存概率?

1.4.3品牌域名保护

主要是识别欺骗性IDN是否被其目标品牌域名采取保护措施了。为此,作者利用WHOIS数据集抽取目标品牌域名和欺骗性IDN域名的注册邮箱,如果两者邮箱相同,则说明目标品牌域名采取了保护措施,否则,没有保护。接着,作者讨论了这种方法存在的限制。

1.5 研究问题5:DomainScouter计算的IDN欺骗性评分是否能够反映IDN的欺骗性?

对此,作者无计可施。设计了2个在线问卷调查。(1)询问受访者人口信息及其对IDN的了解。(2)检查用户可能被欺骗性IDN攻击的程度。

1.6 研究问题6:如何防御欺骗性IDN?

(1)对于客户端应用,可以检测欺骗性IDN,提醒用户。
(2)对于域名注册商/机构,严格遵守域名注册时“最小混淆”的指导原则,但是应该改进他们的方法。比如,采用本文所提的方法。
(3)对于域名所有者,主动注册相似域名,利用Domain-Name Dispute-Resolution Policy(UDRP)解决争端。
(4)对于CA,不要给欺骗性IDN签发证书。
关于安全学术圈, 有兴趣加入学术圈的请联系[email protected]


文章来源: http://mp.weixin.qq.com/s?__biz=MzU5MTM5MTQ2MA==&mid=2247484609&idx=1&sn=c419266e62fc6b1f8ea3a1e8bbed2df3&chksm=fe2efb4ac959725c5a71e3232167129e34ac5d1ffa4250c7cbcd7385b3f48a3607188a218955#rd
如有侵权请联系:admin#unsafe.sh