Author: janes(知道创宇404实验室) Date: 2017-03-15
Struts2官方于北京时间2017年3月6号晚上10点公布Struts2存在远程代码执行的漏洞(漏洞编号S2-045,CVE编号:CVE-2017-5638),并定级为高危漏洞。由于该漏洞影响范围广(Struts 2.3.5 - Struts 2.3.31, Struts 2.5 - Struts 2.5.10),漏洞危害程度严重,可直接获取应用系统所在服务器的控制权限,并且3月7日早上互联网上就流出了该漏洞的PoC和Exp,因此,S2-045漏洞在互联网上的影响迅速扩大,受到了互联网公司和政府的高度重视。距漏洞公布到现在(3.6-3.15)已经一周多了,于是借此机会分析下S2-045在社交媒介Twitter和新浪微博上的热度分布情况。
既然要分析Twitter和新浪微博上S2-045漏洞的热度分布情况,那么就需要获取Twiiter和新浪微博上的数据,用数据说话。于是就使用“selenium+phantomjs”去爬取数据,通过Twitter和新浪微博web页面的搜索接口,分别搜索关键词“s2-045”和“CVE-2017-5638”,然后将搜索结果去重并整理,考虑到Twitter和新浪微博时间显示的时区不一致问题,采用统一抓取页面时间戳然后转化为北京时间的方式统一时区问题,爬取数据的时间为2017年3月14日下午18时,结果如下图所示。
新浪微博
统计每天S2-045漏洞在Twitter和新浪微博上出现的次数,得到下面的表格,Twitter中共出现 73 次,新浪微博中共出现 45 次。就传播的数据量来说,S2-045漏洞的数据量并不大,这从侧面反映了安全漏洞方面的信息并没受到广大人民群众的关注,主要还是在安全圈内传播。
社交媒介 | 3月7日 | 3月8日 | 3月9日 | 3月10日 | 3月11日 | 3月12日 | 3月13日 | 3月14日 |
---|---|---|---|---|---|---|---|---|
16 | 3 | 7 | 15 | 6 | 11 | 15 | 0 | |
新浪微博 | 23 | 8 | 7 | 3 | 0 | 0 | 1 | 3 |
利用上述表格的数据,制作图形,得到如上热度分布图,从图中可以看出:
可能有以下几个原因可以解释这种现象:
3月7日,新浪微博和Twitter都出现数据高峰,于是将3月7日的数据,按时段分布制图如下,可以看出,上午8时前,新浪微博和Twitter数据量都为0,8时到10时期间才开始出现,似乎和工作时间比较符合,而数据的高峰期主要出现在下午14时到18时之间,这或许是因为PoC和Exp在互联网上广泛传开,导致互联网开始受到大规模攻击(参考 HackerNews Struts2 漏洞公开 24 小时)。
最后看看Twitter和新浪微博上关于S2-045漏洞的第一条消息是什么时间由谁发出的,结果见下表。Twitter和新浪微博上发出第一条消息的并不是同一个人,但发送的时间相差并不多,可见国内外对漏洞的感知能力是比较相当的。
同上,时间均为北京时间,根据unix时间戳转化而来。
社交媒介 | 时间 | 昵称 | 真实身份 |
---|---|---|---|
2017-03-07 09:29:00 | @amannk | ||
新浪微博 | 2017-03-07 09:44:29 | gnaw0725 | 绿盟科技品牌经理王洋 |
本文就s2-045在社交媒介Twitter和新浪微博上的传播趋势,做了一些分析,比较了Twitter和微博上数据分布趋势的异同,并分析了这些差异背后可能的原因,当然,分析还存在一些方面的不足,例如数据内容没做漏洞报道和攻击报道的区分,分析粒度还不够细腻等等。文中的分析,如有错误,欢迎大家批评指正。