我叫URL,即“Uniform Resource Locators”,意思是统一资源定位器。地址栏中的网址就属于我URL的一种表达方式。基本上所有访问网站的朋友都会使用到我,所以我的作用是很大的。也许很多朋友都不知道,我可是很会骗人的。特别是有一群自称黑客的家伙很喜欢让我欺骗你们,趁你们不留心,就让我带你进入植入了木马的网页。所以我今天要大胆的自揭其短,让你们看清我,千万不要被那些黑客利用我把你们给欺骗了。
说谎:URL欺骗的惯用招式
利用我URL骗人的方法有很多种,比如起个具有诱惑性的网站名称或使用易混的字母数字掉包进行银行网络钓鱼,还有漏洞百出的“%30%50”之类的Unicode编码等等。但是利用我骗人最惯用的招式莫过于以下两个:
1.@标志过滤用户名的解析
本来@标志是E-mail地址的用户名与主机的分隔符,但在我URL中同样适用,而且功能如出一辙。HTTP(超文本传输协议)规定了我URL的完整格式是“Http://Name:Password@IP地址或主机名”,其中的“IP地址或主机名”是必填项。@标志与其前面的“Name:Password”,意为“用户名:密码”,属于可选项。也就是说,在我URL中真正起解析作用的网址是从@标志后面开始的,这就是欺骗原理。
举例:某QQ好友发给你一个说是有最新大片免费下载的地址 “Http://www.sohu.com@www.Trojan.com.cn/HuiGeZi_Server.exe”,你敢上去就点吗?的确,一眼看上去是“www.sohu.com”搜狐网站的链接,而实际上这儿的“www.sohu.com”只是个写成搜狐网址形式的用户名(此处的密码为空),因为后面有@标志。而真正链接的网址却是“www.Trojan.com.cn/HuiGeZi_Server.exe”(这儿为了好理解,我杜撰了一个木马网站,其下有“灰鸽子”服务端),只要大家点击就会被种下木马。这个发来的URL地址其实完全等同于“Http:// www.Trojan.com.cn/HuiGeZi_Server.exe”,而与前面的用户名毫无关系,只是迷惑性可就大大提高了。即使没有这个用户名,也完全不影响浏览器对URL的解析。大家要是不信,就在地址栏中随便写上个像是“Http://abcdefg@www.sohu.com”之类的地址再回车试试,还是照样儿进入搜狐网站。
2.十进制的IP地址
常见的IP地址包括四个字节,一般表示形式为“xxx.xxx.xxx.xxx”(x表示一个十进制数码),例如“61.135.132.12”。因为纯粹的数字IP地址过于抽象、难以记忆,所以采用域名服务DNS来与之对应。大家在浏览器地址栏中输入“Http://www.sohu.com”与“Http://61.135.132.12”的结果完全一样,都是访问搜狐网站,因为61.135.132.12就是搜狐域名www.sohu.com的IP地址。不过,如果再试试“Http://1032291340”的话,结果一定会让许多人吃惊,因为仍然打开了搜狐网站!
为什么一个十进制数“1032291340”等同于一个IP地址“61.135.132.12”呢?其实我刚才已经暗示过大家了,四位点分十进制形式的IP地址“61.135.132.12”代表一组32位二进制数码,如果合在一起再转换成一个十进制数的话,答案就是1032291340。转换方法很简单,就是数制的按权展开:12×2560+132×2561+135×2562+61×2563=12+33792+8847360+1023410176=1032291340(基数为256,即28)。
明白了这个道理,大家再回头看看刚才例子中的“www.Trojan.com.cn/HuiGeZi_Server.exe”。如果说这种字母域名还会露出一截狐狸尾巴的话,那么当把它对应的IP地址(假设为“61.135.132.13”)换算成一个十进制数,结果是1032291341,再结合@标志过滤用户的解析,欺骗性就又上了一个台阶——Http://www.sohu.com@1032291341。此时,还会有多少人会怀疑这个URL不是搜狐呢?
防范:查源代码法防范URL欺骗
我URL欺骗的功夫还是有点厉害的(典型的自吹自擂),但是大家还是可以防范的。其实,对付这些利用我URL去欺骗引诱人上当的恶意网页,只须一个最简单的招数即可奏效,那就是查看网页的源代码。当然,这需要有一点儿网页代码阅读的能力。
假设有人发给你一个的URL地址——Http://www.…….com而事先你又不知道它是否为URL欺骗的话,只须在浏览器地址栏中输入“View-Source:Http://www.…….com”并回车,系统就会调用记事本来打开这个网页的源代码。接下来就是在其中搜索一下(可使用“编辑→查找”菜单)有没有像是Format或者有<iframe src="ww.…….htm" name="……" width="0" height="0" frameborder="0">之类的危险编码。如果有的话当然要拒绝访问了。