本文共 2946 字,大约阅读时间需要 9 分钟。
俗话说,苍蝇不叮无缝的蛋。 针对这种现象有人解释:鸡蛋裂缝后很容易就会坏掉,产生异味。与苍蝇而言,异味的鸡蛋正式它的食粮,于是苍蝇就不请而至。万事万物,皆有因果,正如苍蝇和蛋的故事,信息安全中,因为信息系统存在着大大小小、或明或暗的安全漏洞,那些***者可都是一些嗅觉灵敏的“苍蝇”,要防范***,则需要查找自身存在的漏洞、及时进行修补,才能够避免被“叮咬”。
案例1: 微软漏洞
在上一篇中有介绍过震网事件,美国的病毒专家正是利用了Windows系统多个漏洞,达到******的效果。上篇中未对技术细节做展开,本篇就在此稍作展开,以让深入了解***的原理。
漏洞1: 快捷方式文件解析漏洞(MS10-046)
Windows在显示快捷方式文件时,会根据文件中的信息寻找它所需的图标资源,并将其作为文件的图标展现给用户。如果图标资源在一个DLL文件中,系统就会加载这个DLL文件。***者可以构造这样一个快捷方式文件,使系统加载指定的DLL文件,从而执行其中的恶意代码。快捷方式文件的显示是系统自动执行,无需用户交互,因此漏洞的利用效果很好。
Stuxnet蠕虫搜索计算机中的可移动存储设备
一旦发现,就将快捷方式文件和DLL文件拷贝到其中。
如果用户将这个设备再插入到内部网络中的计算机上使用,就会触发漏洞,从而实现所谓的“摆渡”***,即利用移动存储设备对物理隔离网络的渗入。拷贝到U盘的DLL文件有两个:~wtr4132.tmp和~wtr4141.tmp。后者Hook了kernel32.dll和ntdll.dll中的下列导出函数:
FindFirstFileW FindNextFileW FindFirstFileExWNtQueryDirectoryFile ZwQueryDirectoryFile 实现对U盘中lnk文件和DLL文件的隐藏。因此,Stuxnet一共使用了两种措施(内核态驱动程序、用户态Hook API)来实现对U盘文件的隐藏,使***过程很难被用户发觉,也能一定程度上躲避杀毒软件的扫描。漏洞2: RPC远程执行漏洞(MS08-067)与提升权限漏洞
存在此漏洞的系统收到精心构造的RPC请求时,可能允许远程执行代码。在Windows 2000、Windows XP和Windows Server 2003系统中,利用这一漏洞,***者可以通过恶意构造的网络包直接发起***,无需通过认证地运行任意代码,并且获取完整的权限。因此该漏洞常被蠕虫用于大规模的传播和***。
Stuxnet蠕虫利用这个漏洞实现在内部局域网中的传播, 反汇编代码如下 其实,震网病毒利用的漏洞还不止上面谈的2个,据专家分析,不少于4个,可以想象,windows如此庞大又公开的操作系统,可以利用的漏洞有多少,对***者而言,可以用“取之不尽,用之不竭”来形容。案例2: 苹果漏洞
微软可说是PC时代的代表,那么,移动互联网时代苹果无疑是主角。2016年,上海电信在其网上营业厅发出一则“重要提醒:iPhone用户请注意!”的公告,建议用户尽快升级自己的iPhone操作系统,避免个人隐私泄露等安全问题的发生。运营商发公告提醒用户更新iOS版本,这是比较少见的。运营商之所以这样做,是因为这次iOS遭遇了其史上最大的系统漏洞,用户如果不及时更新,个人信息有可能被窃取,通话、社交聊天等信息可能被截获,更可怕的是iPhone手机还可能变成被不法分子控制的远程音频视频录制器。
2016年8月底,×××送了iOS 9.3.5版本更新,这距离iOS 9.3.4版本推出仅仅相隔20天时间。苹果之所以这次匆匆发布新的版本更新,原因是为了封堵重要的安全漏洞,属于紧急更新。
据了解,iOS 9.3.5主要是针对三个新发现的iOS漏洞。这三个漏洞统称为Trident,其中一个存在于Safari WebKit(一种开源的浏览器引擎),一旦目标用户被盯上,点击一个网页链接,或将导致“整台设备就‘缴械投降’了”。另一个漏洞存在于iOS核心,有可能致使信息泄露,第三个问题是内核内存损坏。
这三个高危漏洞被研究人员称作“三叉戟”。简单来说,如果用户点击***发来的链接,就可能导致手机被远程控制,聊天记录、密码泄露,***可利用这些漏洞获得对iPhone的几乎全部控制权。当然,软件是人写的,人无完人,程序的漏洞也是在所难免。客观的说,苹果公司的软件更新服务在业内还是不错的,知错就改,其升级体验也足够傻瓜化,只要按照系统提示升级系统,一般问题也不会太大。
案例3: INTEL CPU的硬件漏洞
就在一个月前,时间刚刚跨入2018的门槛,媒体上流传出一条爆炸性新闻,人称Intel 芯片的“Meltdown”(熔断)和“Spectre”(幽灵)漏洞。Google Project Zero团队发现了一些由CPU“预测执行”(Speculative Execution)引发的芯片级漏洞,漏洞都是先天性质的架构设计缺陷导致的,可以让非特权用户访问到系统内存从而读取敏感信息。更糟糕的是,Project Zero研究员还发现每一颗1995年后发布的处理器都会受到影响。要知道在服务器与桌面计算领域,Intel是处于垄断地位,它的处理器存在这么严重的漏洞,后果显然很严重。特别是重要的服务器,如云计算服务厂商,通过虚拟化共享计算资源的形态,硬件上的资源保护失效,无疑是致命的。各大服务商阿里云、华为云、微软云、百度云、亚马逊云等厂商就启动了应急措施推进漏洞修复,主流Windows和Linux系统也发布了相关的补丁来应对,到目前为止,大家能做的也只有减轻漏洞所带来的负面影响,要彻底解决还是要以后CPU的升级换代。当然,从另外一个层面来看,如果国产芯片厂商若能利用这些危机,强调安全性,借机推进国产芯片在工业界中的应用,那么未必是一件坏事。
漏洞也被称为脆弱性,冯.诺依曼建立计算机系统结构理论时认为,计算机系统也有天生的类似基因的缺陷,也可能在使用和发展过程中产生意想不到的问题。
信息安全漏洞就是导致访问控制矩阵所定义的安全策略和系统操作之间冲突的所有因素。 -- Dennin
一个错误如果可以被***者用于违反目标系统的一个合理的安全策略,那么它就是一个漏洞。 -- 美国MITRE公司
漏洞是存在预评估对象中的,在一定的环境条件下可能违反安全功能要求的弱点。 -- ISO/IEC 15408
要指出的是,有时漏洞也被称作错误(error)、缺陷(fault)、弱点(weakness)或是故障(failure)等,这些术语很容易引起混淆。在许多情况下,人们习惯于见错误、缺陷、弱点都简单地称为漏洞。需要指出的是,从严格意义上来讲,错误、缺陷、弱点并不等于漏洞。错误、缺陷、弱点是产生漏洞的几种诱发条件,漏洞被利用后必然会破坏安全属性,但不一定引起产品或系统故障,例如网银账号被盗用只是影响个人的资金安全与隐私,并不会导致银行交易系统的故障。
欲知完整文章内容,请访问
转载于:https://blog.51cto.com/13531288/2072755