世界上最流行的编程语言恰恰也是大多数黑客的首选武器

世界上最流行的编程语言恰恰也是大多数黑客的首选武器

当然,最好的研究地方是Github。粗略估计,实现攻击工具/漏洞概念证明(PoC)的GitHub代码仓库中20%以上是用Python编写的。在GitHub中几乎所有与安全有关的主题中,大多数代码仓库都是用Python编写的,包括w3af和Sqlmap之类的工具,甚至臭名昭著的AutoSploit工具。

我们Imperva使用先进的智能客户分类机制来区别和分类各种Web客户软件。我们查看了自己的数据,尤其是安全事件,结果我们识别的大多数(25%以上)客户软件(不包括漏洞扫描器)都基于Python。

与其他客户软件不同,我们在Python方面看到了许多不同的攻击途径和使用已知漏洞。与开发人员一样,黑客也在享用Python的优点,因而Python成为一种流行的黑客工具。

世界上最流行的编程语言恰恰也是大多数黑客的首选武器

图1:按客户软件分类的安全事件,不包括漏洞扫描器。25%以上的客户软件是不法分子使用的基于Python的工具,因而Python成为实施漏洞攻击的最常见途径。

对针对我们保护的网站发动的攻击中使用Python的情况分析后发现,结果并不令人惊讶:大部分网站(多达77%)被基于Python的工具攻击过;在超过三分之一的情况下,大多数日常攻击是基于Python的工具实施的。这表明,基于Python的工具用于广度扫描和深度扫描。

世界上最流行的编程语言恰恰也是大多数黑客的首选武器

图2:遭到基于Python攻击的网站的每日百分比。

Python模块

用于Web攻击的两个最流行的Python模块是Urllib和Python Requests。下图显示了攻击分布状况。新模块Async IO的使用刚开始多起来,如果你考虑到该库在第7层DDoS方面扮演的角色,也就不难理解了,尤其是在使用“Spray N'Pray”手法时:

世界上最流行的编程语言恰恰也是大多数黑客的首选武器

图3

Python和已知漏洞

Python这种编程语言的优点让它成为实现已知漏洞的一种流行工具。我们收集了一款基于Python的工具最近利用的十大漏洞方面的信息。

近2个月中两次最猖獗的攻击使用了CVE-2017-9841和CVE-2015-8562,前者是 PHPUnit框架中基于PHP的远程执行代码(RCE)漏洞,后者是针对Joomla!框架的RCE。考虑到RCE对不法分子来说很重要,最常见的攻击可能利用RCE漏洞也就不足为奇了。

另一个不属于十大漏洞的例子是CVE-2018-1000207,它在2018年8月的最后一周内有好几天每天都导致数百次攻击。更深入地分析后发现,这起攻击是针对多个受到保护的客户发动的。

CVE方面的变化

世界上最流行的编程语言恰恰也是大多数黑客的首选武器

图4

可以从我们的数据中看出,攻击者利用CVE的数量在过去几年有所增加:

世界上最流行的编程语言恰恰也是大多数黑客的首选武器

图5

此外,Python用于攻击特定的应用程序和框架,根据我们的数据,你可以在下面找到十大框架:

世界上最流行的编程语言恰恰也是大多数黑客的首选武器

图6

我们查看了Python攻击的所有框架后,最惹眼的攻击是针对Struts、WordPress、Joomla和Drupal的那些攻击,这并不奇怪,因为目前这些是市面上一些最流行的框架。

攻击途径

我们看到攻击中使用的最流行的HTTP参数值(占使用的所有不同参数值的30%左右)属于通过Joomla!中的PHP Unserialize漏洞,使用JDatabaseDriverMysqli对象企图植入后门的攻击。植入后门的有效载荷托管在ICG-AuthExploiterBot上。

我们还看到一个经常出现的有效载荷,结果证明是企图感染系统的特洛伊木马Coinbitminer,更多细节详见附录。请注意,附录仅仅是一个例子。由于Python被黑客广泛使用,因此许多不同的攻击途径需要考虑。Python只需要一点编程技能,这使得编写脚本、利用漏洞易如反掌。

我们的建议

除非你能够区分基于Python的工具的请求和任何其他工具的请求,否则我们的建议仍然一样:确保开发软件时牢记安全性,给系统打上最新的补丁,尽量避免被认为不安全的任何做法。

附录:攻击示例

这是我们观察到的一个值得关注的、经常出现的有效载荷(最后有个小的差异):

世界上最流行的编程语言恰恰也是大多数黑客的首选武器

图7

在base64解码之后,我们得到了二进制有效载荷:

世界上最流行的编程语言恰恰也是大多数黑客的首选武器

图8

在上述有效负载中,提到了反序列化漏洞工具所用的GitHub代码仓库和jpg文件中的wget命令下载,这强烈表明存在着恶意活动。从http://45.227.252.250/jre.jpg下载文件后,我们可以看到它实际上是含有以下内容的脚本:

世界上最流行的编程语言恰恰也是大多数黑客的首选武器

图9

脚本中的最后两行试图获得http://45.227.252.250/static/font.jpg%7Csh,这被赛门铁克端点保护系统确认为是特洛伊木马Coinbitminer。

世界上最流行的编程语言恰恰也是大多数黑客的首选武器

相关推荐