1 恶意网址
恶意网址分为两类:
- 挂马网站 - 黑客会在网页中插入一段恶意脚本(JavaScript 或 Flash),然后利用浏览器漏洞来执行恶意代码(shellcode)。 shellcode 是一段用于利用软件漏洞而执行的代码, shellcode 为 16 进制的机器码,因为经常让攻击者获得 shell 而得名 。shellcode 常常使用机器语言编写 。 可在暂存器 eip 溢出后,塞入一段可让 CPU 执行的 shellcode 机器码,让电脑可以执行攻击者的任意指令 。
- 钓鱼网站和诈骗网站,也属于一种恶意网址。它是通过模仿知名网站页面来欺骗用户。
因此,为了保护用户安全,浏览器厂商就推出了各自的拦截恶意网址功能。拦截恶意网址功能大都是基于黑名单机制来实现的。
2 拦截机制
恶意网址拦截机制是这样的:浏览器会周期性的从服务器获取一份最新的网址黑名单,如果访问的网址存在这个黑名单中,那么浏览器就会弹出一个警告页面,形如:
之所以不用基于页面特征的模型来辨别恶意网址,有以下这些原因:
- 这种模型如果放在客户端,那么就会让攻击者分析研究这个模型,并绕过定义的安全规则。
- 浏览器的用户基数巨大,需要分析的数据量过于庞大。
- 收集用户访问过的历史记录,是一种侵犯隐私的行为。
3 黑名单
浏览器厂商一般会与专业的安全厂商合作,由安全厂商或者组织来提供恶意网址黑名单。
PhishTank 是一个免费提供恶意网址黑名单的网站,黑名单是由志愿者提供的,更新频繁。