他用10年前的攻击手法感染了17000多名开发者的电脑

2024-03-19 17:20

本文主要是介绍他用10年前的攻击手法感染了17000多名开发者的电脑,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大约10年前,有种名为Typosquatting的古老攻击手法——国内有将之翻译成“误植域名”的。这个词的前半部分“Typo”意思是排版错误,其实已经表达了这种攻击手法的内涵。举个例子:黑客可能会去注册像appple.com、taobaoo.com这样的域名,如果用户手误多输一个字幕,就会访问到这样的网站——这些网站还会模仿原网站,也就可以起到钓鱼的作用了。

所以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。其二进制表达方式是这样的:

 

n.com
01101110 0101110011000110110111101101101

 

如果内存模块发生比特错误,某一位比特发生错误,就会变成下面这样。你在访问n.com这个域名的时候,二进制数据是需要过一次内存的,但最终我们访问到的实际上是o.com,这个过程真正实现了神不知鬼不觉。如果有人注册一个o.com域名,用于模仿n.com网站,则钓鱼成功率几乎可以达到100%。

 

o.com
01101111 0101110011000110110111101101101

 

这听起来似乎很悬,前两年国外有安全专家特别做了针对Bitsquatting的实验(首先选择一些可能产生一比特之差的域名注册,比如说micrgsoft.com,然后主要从DNS来入手这个实验),结果每天都存在Bitsquatting后的域名请求,的确非常神奇。


本文转自d1net(转载)

这篇关于他用10年前的攻击手法感染了17000多名开发者的电脑的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/826725

相关文章

mss32.dll文件丢失怎么办? 电脑提示mss32.dll丢失的多种修复方法

《mss32.dll文件丢失怎么办?电脑提示mss32.dll丢失的多种修复方法》最近,很多电脑用户可能遇到了mss32.dll文件丢失的问题,导致一些应用程序无法正常启动,那么,如何修复这个问题呢... 在电脑常年累月的使用过程中,偶尔会遇到一些问题令人头疼。像是某个程序尝试运行时,系统突然弹出一个错误提

电脑提示找不到openal32.dll文件怎么办? openal32.dll丢失完美修复方法

《电脑提示找不到openal32.dll文件怎么办?openal32.dll丢失完美修复方法》openal32.dll是一种重要的系统文件,当它丢失时,会给我们的电脑带来很大的困扰,很多人都曾经遇到... 在使用电脑过程中,我们常常会遇到一些.dll文件丢失的问题,而openal32.dll的丢失是其中比较

电脑win32spl.dll文件丢失咋办? win32spl.dll丢失无法连接打印机修复技巧

《电脑win32spl.dll文件丢失咋办?win32spl.dll丢失无法连接打印机修复技巧》电脑突然提示win32spl.dll文件丢失,打印机死活连不上,今天就来给大家详细讲解一下这个问题的解... 不知道大家在使用电脑的时候是否遇到过关于win32spl.dll文件丢失的问题,win32spl.dl

电脑提示msvcp90.dll缺少怎么办? MSVCP90.dll文件丢失的修复方法

《电脑提示msvcp90.dll缺少怎么办?MSVCP90.dll文件丢失的修复方法》今天我想和大家分享的主题是关于在使用软件时遇到的一个问题——msvcp90.dll丢失,相信很多老师在使用电脑时... 在计算机使用过程中,可能会遇到 MSVCP90.dll 丢失的问题。MSVCP90.dll 是 Mic

电脑开机提示krpt.dll丢失怎么解决? krpt.dll文件缺失的多种解决办法

《电脑开机提示krpt.dll丢失怎么解决?krpt.dll文件缺失的多种解决办法》krpt.dll是Windows操作系统中的一个动态链接库文件,它对于系统的正常运行起着重要的作用,本文将详细介绍... 在使用 Windows 操作系统的过程中,用户有时会遇到各种错误提示,其中“找不到 krpt.dll”

如何关闭 Mac 触发角功能或设置修饰键? mac电脑防止误触设置技巧

《如何关闭Mac触发角功能或设置修饰键?mac电脑防止误触设置技巧》从Windows换到iOS大半年来,触发角是我觉得值得吹爆的MacBook效率神器,成为一大说服理由,下面我们就来看看mac电... MAC 的「触发角」功能虽然提高了效率,但过于灵敏也让不少用户感到头疼。特别是在关键时刻,一不小心就可能触

web网络安全之跨站脚本攻击(XSS)详解

《web网络安全之跨站脚本攻击(XSS)详解》:本文主要介绍web网络安全之跨站脚本攻击(XSS)的相关资料,跨站脚本攻击XSS是一种常见的Web安全漏洞,攻击者通过注入恶意脚本诱使用户执行,可能... 目录前言XSS 的类型1. 存储型 XSS(Stored XSS)示例:危害:2. 反射型 XSS(Re

电脑密码怎么设置? 一文读懂电脑密码的详细指南

《电脑密码怎么设置?一文读懂电脑密码的详细指南》为了保护个人隐私和数据安全,设置电脑密码显得尤为重要,那么,如何在电脑上设置密码呢?详细请看下文介绍... 设置电脑密码是保护个人隐私、数据安全以及系统安全的重要措施,下面以Windows 11系统为例,跟大家分享一下设置电脑密码的具体办php法。Windo

电脑没有仿宋GB2312字体怎么办? 仿宋GB2312字体下载安装及调出来的教程

《电脑没有仿宋GB2312字体怎么办?仿宋GB2312字体下载安装及调出来的教程》仿宋字体gb2312作为一种经典且常用的字体,广泛应用于各种场合,如何在计算机中调出仿宋字体gb2312?本文将为您... 仿宋_GB2312是公文标准字体之一,仿China编程宋是字体名称,GB2312是字php符编码标准名称(简

基于Python开发电脑定时关机工具

《基于Python开发电脑定时关机工具》这篇文章主要为大家详细介绍了如何基于Python开发一个电脑定时关机工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 简介2. 运行效果3. 相关源码1. 简介这个程序就像一个“忠实的管家”,帮你按时关掉电脑,而且全程不需要你多做