上节提到了“挂马”攻击方式能够破坏浏览器安全,在很多时候,“挂马”攻击在实施时会在一个正常的网页中通过<script>或者<iframe>等标签加载一个恶意网址。而除了挂马所加载的恶意网址之外,钓鱼网站、诈骗网站对于用户来说也是一种恶意网址。为了保护用户安全,浏览器厂商纷纷推出了各自的拦截恶意网址功能。目前各个浏览器的拦截恶意网址的功能都是基于“黑名单”的。
恶意网址拦截的工作原理很简单,一般都是浏览器周期性地从服务器端获取一份最新的恶意网址黑名单,如果用户上网时访问的网址存在于此黑名单中,浏览器就会弹出一个警告页面。
Google Chrome的恶意网址拦截警告
常见的恶意网址分为两类:一类是挂马网站,这些网站通常包含有恶意的脚本如JavaScript或Flash,通过利用浏览器的漏洞(包括一些插件、控件漏洞)执行shellcode,在用户电脑中植入木马;另一类是钓鱼网站,通过模仿知名网站的相似页面来欺骗用户。
要识别这两种网站,需要建立许多基于页面特征的模型,而这些模型显然是不适合放在客户端的,因为这会让攻击者得以分析、研究并绕过这些规则。同时对于用户基数巨大的浏览器来说,收集用户访问过的历史记录也是一种侵犯隐私的行为,且数据量过于庞大。
基于这两个原因,浏览器厂商目前只是以推送恶意网址黑名单为主,浏览器收到黑名单后,对用户访问的黑名单进行拦截;而很少直接从浏览器收集数据,或者在客户端建立模型。现在的浏览器多是与专业的安全厂商展开合作,由安全厂商或机构提供恶意网址黑名单。
一些有实力的浏览器厂商,比如Google和微软,由于本身技术研发实力较强,且又掌握了大量的用户数据,因此自建有安全团队做恶意网址识别工作,用以提供浏览器所使用的黑名单。对于搜索引擎来说,这份黑名单也是其核心竞争力之一。
PhishTank是互联网上免费提供恶意网址黑名单的组织之一,它的黑名单由世界各地的志愿者提供,且更新频繁。
PhishTank的恶意网址列表
类似地,Google也公开了其内部使用的SafeBrowsing API,任何组织或个人都可以在产品中接入,以获取Google的恶意网址库。
除了恶意网址黑名单拦截功能外,主流浏览器都开始支持EV SSL证书(Extended Validation SSL Certificate),以增强对安全网站的识别。
EVSSL证书是全球数字证书颁发机构与浏览器厂商一起打造的增强型证书,其主要特色是浏览器会给予EVSSL证书特殊待遇。EVSSL证书也遵循X509标准,并向前兼容普通证书。如果浏览器不支持EV模式,则会把该证书当做普通证书;如果浏览器支持(需要较新版本的浏览器)EV模式,则会在地址栏中特别标注。
在IE中:
EV证书在IE中的效果
在Firefox中:
EV证书在Firefox中的效果
而普通的https证书则没有绿色的醒目提示:
普通证书在IE中的效果
因此网站在使用了EV SSL证书后,可以教育用户识别真实网站在浏览器地址栏中的“绿色”表现,以对抗钓鱼网站。
使用EV证书的网站在IE中的效果
虽然很多用户对浏览器的此项功能并不熟悉,EVSSL证书的效果并非特别好,但随着时间的推移,有望让EVSSL证书的认证功能逐渐深入人心。