最近闲的蛋疼~ 分析了一下钓鱼网站的原理与实现。
可选技术方案
1)域名蒙眼术;
2)dns支持;
dns劫持的关键是拥有客户端操作系统的权限,比如给用户发一些病毒程序,安装浏览器插件这类来实现,这里主要讨论web技术。
蒙眼术,比如:www.taobao.com是淘宝的域名,那我可以申请买个域名:www.taobao.com.xx.cn(注意红色才是真正的域名),普通用户不注意的话,是不会注意到域名上的区别了~
对于交易网站通常都是https开头的,这个证书是很难伪造的,当然能够入侵客户的操作系统也是可以搞定的,这个不谈。怎么办?我们不使用https就行了呗。还是上面说的,比如
https://pay.alipay.com,我们可以使用http://pay.alipay.com.xx.cn,用户发现了,那就认了~~
接下来,就是重点,后端的http服务如何提供,熟悉nginx 反向代理之类软件的人敢说so easy~
发现一个类似的网站,可以参考这个网站:http://www.cncache.info
好了,上代码。简单的实现其实没这么复杂,这里还加入了静态文件缓存,网页中的域名替换。