近期,我一直在研讨CloudFront域名绑架相关的问题。尽管这并不是一种新出现的安全问题,但其重要性清楚明了:
1. CloudFront的某些默许行为不行直观,某些规范DNS装备会误导用户并让他们以为自己存在安全问题的域名现已装备正确了。
2. 在曩昔的一年里,过错装备的S3 Bucket现已成为了一个十分严峻的问题,其他的AWS安全问题也日益突出。
3. 因为过错装备的域名将导致严峻的问题出现,进犯者会将其视作要点进犯方针。
很明显,这方面的安全问题关于那些没有深入研讨过相关内容的人来说,肯定是不明显的。尽管HackerOne上有一些相关论题的评论,但我以为仍是有很多人没有意识到这些问题的严峻性的。
布景材料
CloudFront是亚马逊Web服务(AWS)供给的一种内容分发 *** (CDN),CloudFront用户需求创立CloudFront Distribution来保管其他来历的内容(例如S3 bucket),每一个CloudFront Distribution给用户供给了一个仅有的终端节点来指向他们的DNS记载(例如d111111abcdef8.cloudfront.net)。一切域名所运用的特定Distribution需求记载在一个CNAME域中。当CloudFront节点接纳到了一个恳求之后,它并不会主动将相应Distribution中的内容出现出来。相反,CloudFront运用了恳求中的HOST头来判断去运用哪一个Distribution。这意味着下面两件工作:
1. 假如HOST头跟CNAME域中的域名不匹配,恳求将失利。
2. 任何其他的CloudFront Distribution假如包含了HOST头中的指定域名,它将接纳到恳求并对其进行正常呼应。
这样一来,将会导致域名被绑架。
比如
域名test.disloops.com是一条只想disloops.com的CNAME记载。
disloops.com域名运用了一个CloudFront Distribution。
因为test.disloops.com没有添加到Distribution备用域名的CNAME域之中,发送至test.disloops.com的恳求将会失利。
其他用户能够创立一个CloudFront Distribution并将test.disloops.com添加到备用域名CNAME域中,并完成域名绑架。
这也就意味着,CloudFront所绑定的仅有节点跟仅有Distribution就没有任何含义了:
研讨剖析
我专门编写了一个名叫CloudFrunt的Python脚本来主动化地扫描存在此缝隙的域名:
1. 可接受域名列表;
2. 经过dnsrecon寻觅更多的相关域名;
3. 挑选出指向CloudFrontIP地址空间的域名;
4. 测验方针域名是否存在过错装备问题;
5. (可选)将它们添加到CloudFront Distribution之中;
脚本获取:【点我获取】
现在,咱们现已发现了90500个仅有的域名地址,与之绑定的IP地址大约有一百万个。所以我创立了一个EC2实例来对它们进行测验,并以并行的 *** 用CloudFrunt来对它们进行扫描。
成果剖析
脚本运行了几天之后,我发现了2000多个新的CloudFront Distribution域名
SharedArrayBuffer的作业原理云端该技能最早是于2018年10月6日由国外安全厂商Outflank的安全研讨人员初次揭露,并展现了运用Excel 4.0宏履行ShellCode的运用代码...
SMTP header injection复现挂马之后,咱们对这个挂马页面进行了屡次打听,企图发现更多信息。 通过屡次测验,咱们发现一切的页面拜访都具有缝隙进犯包的常见安全措施,页面会对恳求做必定的防...
21、charlie (新呈现)这四种日志功用默许不敞开,需求手艺敞开3.1 东南亚区域在曩昔的APT要挟或许网络进犯活动中,运用邮件投递歹意的文档类载荷对错常常见的一种进犯办法,一般投进的文档大多为...
MX7 也成功 附录3 C&C 26 26-A, --after [bytes] Number of bytes to s...
「24小时接单的黑客公司_找黑客消网贷-实力黑客哪里找」+ 7ms: Channel 09,详细的中间人进犯,大体上能够分为以下几个过程:if ($action == 'upload_zip') {然...