题图:“震网”事件的核心——伊朗纳坦兹铀浓缩设施卫星照片
2010年的一天,白俄罗斯的一家小型反病毒软件公司的研究员接到了来自伊朗的客户的求助,客户的电脑接连发生蓝屏故障(Blue Screen of Death,BSOD)。起初研究员以为是普通软件冲突或者配置问题,然而经过初步探查,安全研究员发现事情并不简单:客户的电脑安装的是最新版本的Windows系统,且已经打了最新的安全补丁,按说不应存在问题或者漏洞;另一方面,蓝屏现象不是个案,客户的很多电脑都出现了相同的问题。
这引发了研究员的警觉:和普通的软件冲突相比,这种成规模的故障更像是恶意软件或病毒传播造成的,并且这个病毒极有可能是一个运行在驱动层的rootkit。经过繁杂的分析和追踪,研究员终于找到了引发蓝屏的病毒。然而随着对病毒的分析深入,研究人员发现事情并不简单:这个病毒构造极为复杂,不仅有知名硬件公司Realtek(瑞昱)的有效签名,还利用了多达四个Windows操作系统的0day漏洞,甚至还有专门针对西门子工控软件WinCC的漏洞利用和攻击代码。无论是复杂度、技术含量和攻击的目标,它都远超普通的电脑病毒。研究员立刻将这些发现发布到了安全技术交流社区,于是一场潜伏时间长达六年、由五个国家参与的针对伊朗核工业基础设施的网络攻击行动就此浮出水面。根据病毒代码中出现的特征字“stux”,这个病毒被命名为 “震网”(Stuxnet) 。
从事后调查结果和相关组织机构的公开报道来看,“震网”事件的策划和前期行动始于2005年,在病毒意外泄露到互联网暴露之前潜伏了至少6年没有被发现。美国、以色列、荷兰、德国和法国以不同形式和程度参与了此次行动。因为有总共五个参与国,这次行动也被“奥林匹克行动”(Operation OLYMPIC GAMES)。五个国家的分工是这样的:
美国:美国国家安全局(NSA)和中央情报局(CIA)主导行动,负责病毒的开发;
以色列:参与机构涉及摩萨德、国防部8200部队和电子情报国家小组,负责病毒开发协助和伊朗方向情报支援;
荷兰:情报机构AIVD主导参与,荷兰人在“行动”中具有其独特的地位:不仅提供有关伊朗从欧洲采购用于核计划的设备的关键情报,还开设了间谍公司,派遣情报人员渗透进入核设施,刺探现场情报以及直接投递病毒;
德国和法国:提供西门子公司生产的离心机相关的技术细节和知识。
从技术角度,震网病毒功能十分复杂,开发者盗用了Realtec和JMicron两家公司的数字签名实现免杀(也不完全是盗用,其中一个证书是因为采用了强度较弱的MD5作为哈希算法导致的泄露,后边我会专门讲解PKI和X.509证书体系),以及使用了多达7个漏洞的利用代码。这七个漏洞中有四个是Windows系统的中高危 0day 漏洞;两个漏洞属于专业工控软件WinCC;剩下一个是著名的nday漏洞 MS08-067 ,用于传播扩散。在病毒开发过程中,来自情报单位的信息起到了关键作用,包括获取现场工控设备型号信息、主机操作系统和工控软件版本以及其他技术细节。 MS10-046 (CVE-2010-2568):当时全版本Windows通杀LNK快捷方式图标漏洞无交互自动触发的的远程执行漏洞,高危等级,赏金金额至少100,000美元; MS10-061 (CVE-2010-2729):当时全版本Windows通杀打印服务远程执行漏洞,高危等级,赏金金额至少100,000美元; MS10-073 (CVE-2010-2549):当时全版本Windows通杀的内核本地提权漏洞,中危等级,赏金金额至少50,000美元; MS10-092 (CVE-2010-3338):Windows Server 2008以前版本通杀的计划任务功能本地提权漏洞,中危等级,赏金金额至少50,000美元; 单这些漏洞的总价值至少三十万美元。这还只是微软官方的“收购价”,在漏洞黑市上这个价格可能会翻几倍。
“震网”病毒使用了一系列Windows系统和西门子工业控制软件漏洞实现扩散、权限提升、驻留以及最终实施破坏行为。它以27天为攻击周期,通过控制铀浓缩离心机间歇性超过最高设计转速的方式对设备造成不可逆的破坏。直接导致伊朗核计划进度延后至少两年,国家核电计划被迫大幅推迟。
在此次行动中,荷兰情报机构外勤人员的现场渗透起到关键作用,带出了大量高价值情报,包括现场网络环境、操作系统和版本、主机安装的软件等,病毒开发人员利用这些情报还原了目标网络和主机环境,然后针对性地选择漏洞利用代码(想一想,为什么到2010年了还能使用2008年就被修补的MS08-067漏洞实现内网传播),并设计病毒功能使其不会扩散到目标网络以外,确保了隐蔽性。此外,这些外勤人员还担负了物理接触设备使用U盘直接投毒的关键环节。
在以往,网络攻击者往往都是“单打独斗”,其目的大多是为了炫耀技术、实施报复或者攫取私利;攻击往往针对单一的服务或系统,攻击的结果基本都是获取目标主机权限、破坏目标网络服务或者窃取数据;而且很难见到使用0day漏洞的攻击。
“震网”事件给当时的网络安全业界造成了很大的震撼,因为它给世人展示了这样一种图景:以国家力量为背景的针对他国计算机网络系统和工业设施的攻击行动能够造成怎样的效果。“震网”病毒不仅极为“奢侈地”一次性使用了多达四个Windows 0day漏洞以及两个第三方公司的数字签名,其最终破坏的目标也是普通人难以接触到的工业组态控制软件和铀浓缩离心机设备;不仅如此,为了确保计划顺利实施,还调动了国家情报机构的力量,通过人员渗透接触的方式获取渗透目标的一手资料。
以上所有这些都远非个人、普通的商业机构或一般的黑客组织能够达成的,只有获得了国家级别的资源和支持才能实施。如果要为“震网”事件做一个定性,它不应只被看作单纯的网络攻击和渗透,而是针对主权国家核工业设施实施的有计划的秘密渗透和破坏,是针对他国的间谍行为。
从“震网”事件开始,业界使用“ 高级持续威胁 ”(Advanced Persistent Threat,APT)这一术语指代这种使用尖端攻击技术和大量攻击资源持续性针对他国重要目标的隐蔽攻击。
在“震网”事件之后,各个国家都加强了对重点关键机构的网络安全措施,接连发现了一系列APT攻击和专门从事APT攻击的组织。APT组织的目标也不局限于国防和重点工业单位,政府机构、重点院校、民生设施甚至商业机构都可能受到攻击。比如:
duqu:2011年被发现,被认为是“震网”的后续版本,利用了一个Windows 0day字体漏洞( MS11-087 ,CVE-2011-3402)实现代码执行,还使用了伪造的代码签名,其目的是窃取数据; 火焰:2012年5月被发现,针对中东地区,使用了伪造的微软证书签名,被称为“有史以来最复杂的病毒”,使用C和LUA语言编写;
索尼影业数据泄漏事件:2014年发生,黑客入侵索尼影业,窃取了多达100TB的数据,包括多部尚未公布的的电影、员工信息和高管邮箱等;
duqu 2.0:2015年被发现,攻击针对伊朗,感染了奥地利和瑞士酒店的计算机,这些酒店曾作为伊朗就其核计划和经济制裁进行国际谈判的场所,还曾渗透进入反病毒软件公司卡巴斯基的内网,使用了三个0day漏洞;
2020年初,印度和越南的国家背景APT组织使用涉疫情内容,针对我国卫健委和医疗机构发动渗透攻击。
其中,离我们最近的莫过于2022年被曝光的 西北工业大学遭美国NSA网络攻击事件 。此次事件的详情可阅读360披露的报告:
在本文编写期间,我找到了报告中提到的“ 酸狐狸 ”(FOXACID)网络攻击平台的原始资料,这是一份泄露的PPT培训教材,编写于2007年。根据这份材料内容,FOXACID是一个以垃圾邮件和Web攻击为主要手段的攻击平台,在其上可部署应用多种针对浏览器的攻击插件。
进入21世纪第二个十年,社交网络逐渐崛起,电子商务、在线娱乐和移动互联网普及,人们把越来越多的东西放在互联网和计算机上,每天人均在线时间越来越长,甚至“上网”这个概念已经被淡化,人们要做的反而是与之相反的“脱网”。从这一时期开始,网络攻击和网络犯罪活动变得日趋专业、复杂和功利。
网络勒索有多种形式, DDoS攻击勒索 就是其中较为古老但仍然有效的一种 。 DDoS是分布式拒绝服务攻击(Distributive Deny of Service)的缩写。简单来说,DDoS就是攻击者通过控制大量被控的僵尸计算机向目标服务器发送海量服务请求,导致请求数量超过服务器的处理能力上限,使得服务中断,无法响应正常请求。
DDoS攻击一般针对的都是高度依赖网络服务的企业,例如在线游戏公司、互联网金融机构、航空公司等。勒索者会在受害企业的关键时期向其发出勒索信,例如新游戏上线、旅游旺季期间等,如果受害者没有按勒索信支付赎金,勒索者就会发动DDoS攻击,让受害者蒙受巨大损失。几年前机核还专门做过一期关于中小型游戏公司被DDoS勒索的播客节目:
随着越来越多的服务依托网络。由于黑产日益发达,僵尸计算机,或者叫“肉鸡”,已经成为一种可以被交易的“资源”,让实施攻击的门槛也越来越低。今天,发动网络攻击和黑客入侵的任何资源都可以在黑市上能买到,只要花钱就行,包括但不限于:定制病毒和木马、肉鸡控制权以及海量的身份信息和数据等,在黑市里甚至还能买到黑帽漏洞挖掘者自己挖掘的0day漏洞,以及黑客入侵者拿下大公司或政府机构的IT系统之后留下的后门的访问权。
在这些黑市的客户之中,不仅有不怀好意的勒索犯和攻击者,还有国家背景的网军和情报人员。以往由于技术门槛的存在,发动一次大型网络攻击需要协调大量人员和资源,而且参与人员还需要精通网络攻击知识。而黑产黑市的存在抹平这种门槛,只要肯花钱,任何人都可以利用这些资源攻击网络上的任何目标。不仅如此,一些“不方便”直接出面实施行动的组织也可以借黑产黑市实现匿名化。“入侵即服务”(Hacking-as-a-Service)已成为现实。
然后是现在最常见的 加密勒索病毒 (Encrypting Ransomware)。这类恶意程序通常以木马和蠕虫的形式传播和运行。加密勒索病毒会搜索主机上的文档、代码和数据库文件,再使用高强度加密算法对其加密,覆盖原件,最后向受害者索要解密赎金。
世界上第一个加密勒索恶意软件可以追溯到1989年,历史上第一款加密勒索恶意软件名为“AIDS Trojan”(艾滋木马)。这款恶意软件设计存在缺陷,传播范围也很有限,它只是将原文件设置为隐藏并加密了文件名,甚至在恶意软件文件里可以直接提取出明文密钥以恢复文件。加密勒索恶意软件第一次走进大众视野,应该是2017年爆发的 wannacry蠕虫 。
2017年发生了这样一件事:美国国家安全局NSA被黑客组织入侵“影子经纪人”(The Shadow Brokers)渗透,其秘密开发的网络武器库被黑客曝光。wannacry蠕虫就是利用了曝光的网络武器库中被称为“永恒之蓝”(EternalBlue)的Windows SMBv1协议远程执行0day漏洞,微软编号 MS17-010 。"永恒之蓝“由6个不同的漏洞(CVE-2017-0143到CVE-2017-0148)构成,通杀当时所有的Windows版本,Wannacry利用其中的CVE-2007-0145漏洞实现远程执行和传播,无需用户点击交互,可以在后台静默完成。完成加密之后,勒索软件会向受害者索要价值300美元的比特币。 因为利用了可远程执行的恶性0day漏洞,WannaCry在初期造成了迅速的传播,全球有超过二十万台计算机被感染并加密。这里还能callback 第一期的实验 :Wannacry第一个版本里内置了一个killswitch,是一个无序字符构成的超长域名。病毒会在实施加密之前通过互联网检查这个域名是否有效,如果域名不能被解析(尚未被注册)就开始加密行为。这个细节被一名英国的安全分析师Marcus Hutchins注意到,于是他就把这个域名注册了下来,并将访问域名的流量导向蜜罐,以监测全球感染情况(关于蜜罐是什么,这个我们马上就讲)。这个行为及时遏制了Wannacry的第一波恶意行为。这个域名就是我在系列文章第一期里用做实验用的域名。除了Wannacry,还有很多曾经造成广泛传播和经济损失的加密勒索病毒,比如petya、nopeta、crypto locker等。 通过黑客活动实现的勒索还有一种方式,就是数据窃密勒索,也叫“数据绑架”:黑客通过入侵和接口爬取等手段获得目标单位的内部数据,并向企业发出附带样品数据的勒索信,如果企业不在指定时间内支付赎金,这些数据将被放到公开平台售卖或自由下载,即“撕票”。如果仔细搜索相关新闻,会发现几乎所有大型游戏公司、科技公司和网络服务供应商都遭受过这样的攻击,很多表面上的数据泄露事件的背后其实都是“数据绑架”勒索。远的不说,去年年底 GTA6泄密事件 以及 年中NICONICO遭受的网络攻击和数据泄露 都是这样。数据加密勒索和数据窃密勒索现在已经构成了一个具备相当规模的网络黑产产业(Ransom-as-a-Service)。 在策划针对防御严密的目标时,如果无法通过直接实施攻击或者漏洞挖掘的方式得手,往往会采用供应链攻击的手段实施渗透,比如获得目标单位采购的各类软件、硬件和服务等的信息,再针对这些产品和服务的厂商实施渗透,进而通过他们的产品或者服务进入真正的目标单位。政府、军队和国企单位的招标和采购往往是公开进行的,中标的公司和产品以及服务都是公开可查询的,攻击者可以从这些渠道获得目标单位的供应链信息,从而实施供应链攻击。
在上面介绍的震网事件中也使用了供应链攻击。震网行动分为其实两个阶段,第一个阶段依靠荷兰特工的现场渗透获取目标内部的情报,以及伺机投递病毒;而第二个阶段荷兰特工不再参与行动,于是攻击者改变策略,让病毒在一定范围内感染伊朗铀浓缩项目的合作公司,最后通过带入现场网络的受到感染的笔记本电脑实现病毒投递。不过由于第二阶段使用的病毒中错误地使用了“OR”逻辑而不是“AND”判断运行环境的Windows版本,导致了病毒泄露到预期目标意外的主机上,于是发生了本文开头的那一幕。
2020年12月,安全公司FireEye公布了关于SolarWinds公司的网管软件Orion被植入后门的安全通告,揭露了可能是“史上最严重的供应链攻击”。Orion软件在全美国有超过3.3万名用户,其中1.8万名用户安装了含有后门的更新推送,APT组织通过这个后门渗透了其中50多个高价值目标,包括美国财政部、司法部和微软公司等。
这次针对SolarWinds的攻击水平非常高超,安全研究人员花费数月时间才厘清后门被植入的过程。并且由于攻击者掌握了SolarWinds公司内部的邮件通信,在安全公司的调查发起之初就察觉到调查人员的动向,立刻清理痕迹退出,因此至今仍然无法确定是谁发动了这起攻击。
解决现代问题要有现代办法。传统的防御体系在0day漏洞攻击下失效,IDS无法检测加密的内网恶意流量,那就换个思路。而 蜜罐 (Honeypot)就是在这样的想法中诞生的。
(终于讲到蜜罐了,我自己主要研究和从事的领域就是蜜罐)
蜜罐(Honeypot)是一类特殊的防御和检测设备。简单来说,蜜罐就是部署在网络中的“假目标”,它模拟真实业务主机开放的端口和服务,但本身没有任何业务。蜜罐会记录任何连接到它的来源主机的信息,以及连接建立之后的的网络流量。这就是上文讲wannacry的时候研究员接管killswitch域名之后将域名解析到受控制的蜜罐的目的。由于全球的wannacry蠕虫在实施破坏之前都会先尝试连接这个域名,因此只要分析连入这个域名的流量,就可得知wannacry在全球的感染分布情况。
追根溯源的话,虽然“钓鱼执法”这种基于欺骗的诱捕攻击的手段古已有之,但具体到计算机和网络领域,率先提出这个概念的还是小说。在1989年美国出版的一本名叫《Cuckoo's Egg》(杜鹃的蛋)的小说里有这样一段情节:为了捕捉到黑客的踪迹,书中的角色虚构了一个不存在的科研部门,并根据黑客过往展现出的兴趣方向进行了伪装,使其更具吸引力,并最终通过这个手段捕捉到了黑客。这就是后来蜜罐和欺骗式攻击防御的基础。
蜜罐从交互等级可分为 高交互 和 低交互 两种。高交互使用真实主机(或者虚拟机),将真实(但没有实际业务的)的网络服务作为蜜罐;低交互是在端口上用交互脚本模拟一个用来收集网络连接和交互流量的假的服务(甚至可以没有交互脚本,只开放端口)。显然,高交互蜜罐成本较高,但拟真度也很高;低交互蜜罐成本很低,易于批量部署,但也容易被识破是假的。在容器技术早已普及的今天,蜜罐也可以采用容器形式部署。
蜜罐和传统的网络防御设备不同,它是专门部署到网络里用来捕获攻击的假目标,真正的业务流量不会经过。因此理论上一个配置得当的蜜罐,它的误报(假阳性)率趋近于零,由蜜罐报告的任何事件都是真正的攻击事件。不过与之对应的,蜜罐无法对漏报率(假阴性)做出保证,因为难以使用技术手段让攻击者只攻击蜜罐而不去攻击正常的业务系统。目前主要使用增加部署蜜罐的数量(或者蜜罐覆盖的网络地址数量),再搭配其他检测设备的分流,增加蜜罐的覆盖面。
如果使用多个蜜罐仿照真实的业务系统网络的结构和主机配置搭建网络,我们就得到了 蜜网 。蜜网比单独的蜜罐拟真度更高,对攻击者的吸引力更大,也更能迟滞攻击者的进度,攻击者往往会在其中耽误很长时间才会发现自己身处在一个假的业务网络里,而这时蜜网的检测机制早就发现攻击行为并且发出告警。
蜜罐和蜜网都是基于欺骗策略的网络安全设备,根据不同的配置策略和部署位置可以发挥不同的作用。比如单个的高交互蜜罐可以部署在内网,用来检测横向移动和恶意软件在内网的扩散;如果部署在互联网公网上并开放一些常用的服务端口,可以检测这个网段对于这些服务的攻击情况。如果在蜜罐里部署脱敏的高价值数据,搭配社会工程学等手段,蜜罐还可以用于网络取证,用来发现潜伏在企业内部的内鬼。蜜罐曾经被认为是对抗APT攻击的有力手段。
截止2023年底,全球累计已经有 12亿 种病毒、木马、蠕虫、恶意软件和流氓软件,这一数字还在以每年上千万至上亿种的速度增加。再加上加壳技术、反调试技术以及流量加密技术的普及,使得人工样本分析变得困难且低效。为了提升病毒和恶意软件的分析效率,沙箱工具诞生了。
沙箱的核心是虚拟机,通过内部和外部调度程序的操控,将样本依次放入虚拟机运行一段固定的时间,在此期间监控样本在运行时的行为和网络流量,获得样本的网络侧和主机侧的行为特征,以此判断样本是否有恶意。如果是已知的恶意样本,也可以用沙箱技术批量自动化提取流量特征。沙箱工具的诞生直接让病毒分析效率提升了几个数量级,通过沙箱分析得到的恶意软件动态行为被广泛应用于IDS和防病毒软件特征库。目前使用较多的开源沙箱套件是基于QEMU虚拟化技术的Cuckoo Sandbox。
不过显然地,恶意软件的开发者也知道沙箱的存在,他们当然不希望自己编写的恶意软件被自动化分析,因此恶意软件也发展出了反沙箱的能力,包括但不限于:
虚拟化环境检测(检测当前运行的环境是否为虚拟机);
键盘和鼠标交互检测(检测是否有正常使用键鼠的消息);
分辨率检测(沙箱虚拟机通常会使用较低的屏幕分辨率以节省资源);
网络环境检测(沙箱通常不直接连接互联网);
延迟触发运行(程序运行之后经过相当长的时间才触发行为,规避沙箱的运行时间限制);
重启之后触发运行(恶意程序驻留系统启动项,下一次系统启动的时候才触发行为)。
关于其中的虚拟化环境检测这里还可以多说几句。类比《黑客帝国》电影最著名的意象之一——红蓝药丸,虚拟化识别/虚拟化欺骗技术最初被称为红丸(Red pill)和蓝丸(Blue pill)。在计算机领域中,红蓝药丸概念和电影中类似:一个程序如何判断自己是运行在一个虚拟化环境中;以及虚拟化环境如何欺骗程序,让它认为自己运行在真实系统里。
随着计算机虚拟化技术的普及,由于虚拟机使用者可以从比操作系统层更底层的硬件层面完全掌控运行在其中的程序的所有过程和状态,在计算机安全领域经常被用于调试和研究恶意软件。而恶意软件自身,以及一些涉及加解密和认证等敏感数据的程序处于相似的目的,不希望在虚拟机化环境中被调试。由此就诞生了虚拟化欺骗和虚拟化环境识别两种互为矛和盾技术。
先说红丸。最初的红丸的原理是在ring3层(用户层)检查一个特定的指令调用(SIDT)。技术细节暂且略过,主要原理是检查特定寄存器的值,在真实系统里这个寄存器会存储真实的值,而在虚拟化环境中由于实现的限制,在这个寄存器里存的是值的指针,判断返回值的范围即可确定当前环境,核心思路仍然是在虚拟化环境中寻找和真实环境不同的点(瑕疵)。
然后是蓝丸,它是一个基于Intel(VT-x)和AMD(AMD-V)虚拟化环境的rootkit,通过拦截、过滤和修改程序的一切请求和交互,包括虚拟化环境探测尝试,来实现完全的欺骗。在实际应用中,出于性能和功能的考虑,主流的虚拟化软件都不是完全的虚拟化,有很多虚拟化专用指令和虚拟机——宿主机交互接口,一部分功能依托CPU硬件的虚拟化功能(如上文提到的VT-x和AMD-V),一部分功能依托虚拟机自身软件实现。
在虚拟化技术日趋普及的今天,红蓝药丸的对抗也仍然在持续。除了特权指令检查,还包括上文提到的虚拟化专用指令检查、环境检查(是否安装了虚拟化接口驱动、网卡MAC段是否是虚拟机使用、屏幕分辨率检查等)。
以上还只是部分主流的反沙箱检测手段,一些谨慎的恶意软件只有在多种反沙箱检测都通过之后才触发恶意行为。更有甚者,一些狡猾的恶意软件在检测到疑似沙箱环境时会主动表现为其他恶意软件的行为,以此干扰误导分析人员。
说到沙箱,十年前我还曾经挖过当时某友商的互联网公开沙箱的数据泄露漏洞(也是我挖的唯一一个漏洞),具体技术细节就不在这里占用篇幅了,感兴趣可以来我博客阅读:
以及,我自己还曾经使用Windows主机监控软件、网络流量分析工具以及虚拟机控制接口自己做过一套可用的自动化沙箱系统。当时公司内部使用的自己魔改的Cuckoo沙箱,经过几代同事的修改和功能添加,它已经过于复杂,积重难返。于是指派我使用之前用在Windows高交互蜜罐产品的主机监控为核心,结合虚拟机控制API,自己做一个新的沙箱工具。这样做的意义在于避免了开源cuckoo沙箱存在的已知特征,而且由于是自己开发的工具,添加定制化功能十分方便。
限于篇幅,还有很多重要的新型计算机和网络安全概念没有介绍,例如 网络空间测绘 (Cyberspace Surveying and Mapping)、 入侵和攻击模拟模拟 (Breach and Attack Simulation,BAS)、 威胁情报 (Threat Intelligence)等,感兴趣的朋友可自行搜索相关内容。
截止到本篇,原本作为播客稿件的内容其实就已经完结了。不过作为文章,我决定再加更几期“硬菜”。下一篇将为大家介绍计算机和网络安全中最为重要的概念之一—— 漏洞 。
https://eugene.kaspersky.com/2011/11/02/the-man-who-found-stuxnet-sergey-ulasen-in-the-spotlight
https://en.wikipedia.org/wiki/Stuxnet
https://en.wikipedia.org/wiki/Ransomware
https://en.wikipedia.org/wiki/Marcus_Hutchins
https://github.com/cuckoosandbox/cuckoo
https://cuckoosandbox.org
https://blog.nsfocus.net/solarwinds-unc2452-1222
https://apt.360.net/timeline
https://cloud.baidu.com/article/3336505
https://www.kaspersky.com.cn/resource-center/threats/duqu-2
https://www.honeynet.org
https://hfish.net
评论区
共 7 条评论热门最新