你有没有在输入域名时把字母输错但是出现了你想要看到的网页?像appple.com、taobaoo.com这样的网页如果模仿了原网页,可以成为钓鱼网站。那么如果把脚本代码包起了一样差不多的名字感染进开发者的电脑里呢?想想就不寒而栗。大约10年前,有种名为Typosquatting的古老攻击手法——国内有将之翻译成“误植域名”的。这个词的前半部分“Typo”意思是排版错误,其实已经表达了这种攻击手法的内涵。
所以Typosquatting如果要分类的话,大概是可以划归到钓鱼攻击中去的。不过这类攻击手法主要是寄希望于用户可能会输错某些域名。
最近来自德国汉堡大学的学生,利用Typosquatting攻击,将他自己的代码感染到了超过17000台开发者的计算机中。注意哦,是开发者的计算机!而且里面很多人还是为美国 *** ,甚至军方组织工作的。
究竟是怎么感染的?
这名汉堡大学的学生现年25岁,名叫Nikolai Philipp Tschacher。他在自己的学士论文里大致阐述了这种攻击手法,论文名为《Typosquatting in Programming Language Package Managers》,有兴趣的同学可以去搜一下。
整个过程其实很简单:他首先去浏览一些专门探讨编程语言的社区网站(如PyPI、RubyGems、NPM),记录了其中下载量较高的214个包。然后他自己伪造了这214个包,里面包含他自己的脚本代码(虽然并非恶意的),名字与这214个包非常相似。
虽然不是域名,不过他也将之称作Typosquatting攻击。实际上里面的确没有包含什么恶意代码,只是给那些下载的开发者以警示:您安错包啦!另外,这段代码还会向Tschacher的计算机发送一个Web请求,这样他就能够记录他的代码执行了多少次,是否获取到管理员权限。
攻击结果很“理想”
最终的结果是很“喜人”的,几个月时间内,他的代码就在超过17000个独立域名中执行了超过45000次,其中超过一半还获得了管理员权限。意外发现是,其中有两个域名后缀为.mil,表明这是美军有人也运行了这段脚本。Tschacher在论文中说:
“另外还有23个域名以.gov结尾,是美国 *** 机构的域名。这个数字是值得人们关注的,因为拿下美国研究工作室和 *** 机构的主机,会带来灾难性的后果。”
这件事比较有趣的地方在于,Tschacher攻击目标并非普通终端用户,而是开发者。如果Tschacher真的有意进行攻击,并植入了恶意代码,那么打击面和传播速度都并非一般的钓鱼网站可比。但凡从开发者入手的攻击,总是能够在短期内极速传播,因为如果开发过程都在神不知鬼不觉的情况下被植入恶意代码,那么终端用户遭遇攻击也就显得理所应当。
很多时候,将 *** 和企业作为目标的的攻击者,都很喜欢从开发者下手。因为开发者对敏感 *** 拥有很高的访问权限,能做的事自然就多多了。
延伸阅读:有关Bitsquatting
是不是感觉这群被感染的开发者很弱智?然而实际上,Typosquatting也有比较高级的应用。最后这部分作为简单的延伸:早在2011年的时候,安全研究人员Artem Dinaburg曾经介绍过一种名为Bitsquatting的攻击,基本理念就是取自于Typosquatting,但它并不依赖于用户输错域名,而是利用计算机的随机单比特错误。
其实所谓的比特错误是发生在硬件产品上的,比如内存、CPU缓存因为环境或者灰尘、辐射之类的,会莫名产生比特错误(如著名的UltraSparc II CPU就存在这种问题)。比如我们要访问一家网站,域名是n.com。其二进制表达方式是这样的:
01101110 | 0101110 | 01100011 | 01101111 | 01101101 |
如果内存模块发生比特错误,某一位比特发生错误,就会变成下面这样。你在访问n.com这个域名的时候,二进制数据是需要过一次内存的,但最终我们访问到的实际上是o.com,这个过程真正实现了神不知鬼不觉。如果有人注册一个o.com域名,用于模仿n.com网站,则钓鱼成功率几乎可以达到100%。
01101111 | 0101110 | 01100011 | 01101111 | 01101101 |
这听起来似乎很悬,前两年国外有安全专家特别做了针对Bitsquatting的实验(首先选择一些可能产生一比特之差的域名注册,比如说micrgsoft.com,然后主要从DNS来入手这个实验),结果每天都存在Bitsquatting后的域名请求,的确非常神奇。
链接仍然是网站排名很是重要的影响指标。它们包罗:外部链接和内部链接。理论上,我们并不发起频繁变动网站的网址。 可是偶然由于企业的实际开拓需要,大概需要从头设计页面,这将不行制止地改变网址。 那么,变...
产品有时候有一些很好的卖点,但文案却只是平铺直叙,让用户看起来一点吸引力都没有,被白白浪费了。那么,怎么写才能把产品特色表达得淋漓尽致呢?一起来看看吧。 很多时候,我们的产品不能完全颠覆市面上的传统产...
一、拿到一个banner设计需求后,我们该怎么做 接到一个banner图的设计需求,第一件事情应该是去了解以下几个方面点: 1、banner图是针对什么活动、什么目的而设计的 我们需要知道做这个...
自从孩子出生以后,家里的重心全部在孩子身上,相信每个家庭都是如此,给孩子准备的也是最好的,那么孩子的运动鞋应该怎么选择,下面友谊长存的小编就来说说:江博士儿童运动鞋怎么样 江博士儿童运动鞋测评。...
美称要保护藏人生活方式 华春莹:还是保护好美国人民生命 在今天(8日)外交部例行记者会上,有记者提问:据报道,12月4日,美国所谓“西藏事务特别协调员”、助理国务卿德斯特罗,呼吁美国的盟友也...
jquery作为前端常使用的插件之一,一样平常我们不使用下载到内陆引用,直接通过CDN 公共库来加载,由于CDN的稳固,高效性,更利便开发者的挪用。一样平常而言CDN公共库都包含了市面上最盛行的开源J...