.CO域名快被这帮搞IT的玩坏了……
鉴于近来国内访问Google的服务受阻,greatfire.org于前天推出了其基于亚马逊AWS的Google搜索镜像网站,地址是sinaapp.co。该网站随后因多家海外媒体的报道和众多微博大V的转发而一炮走红。我们不用想都知道,其结果必然是接受入侵检测装置的认证。不过比较狗血的是,新浪SAE旗下的sinaapp.com域名因为域名中也含有“sinaapp.co”字样,所以随同singaapp.co一同受到了“特殊照顾”——当从海外访问sinaapp.com域下的应用时,都会提示“连接被重置”。
虽然“认证”随着新浪方面的积极奔走而被取消,但这种使用知名网站类似域名的方法显然被玩坏了——greatfire.org的所有者随后注册了baidustatic.co(百度)、alicdn.co(阿里)、gtimg.co(腾讯)等国内知名网站的相似域名并指向其镜像网站。在V2EX上,有网友建议再注册几个诸如inhuanet.co、anqiu.com之类的域名;甚至有人YY,要是注册个chinamil.co域名然后被BLOCK掉,PLA会是什么反应。在我写这篇文章时,我发现chinamil.co确实已经指向过去了,不知后面会如何……
.CO域名之所以被众挨踢男玩坏了,完全是因为入侵检测装置在对用户访问的URL进行分析时,并不是仅仅提取出其中的HOST部分,而是对整个请求URL进行匹配。我们甚至可以发现,即使这些字符只是出现在请求参数部分,连接也一样会被阻断。
我一直在考虑一个问题(纯技术角度),为什么是对整个URL、而不仅仅是HOST部分进行匹配呢?从HTTP协议来讲,HOST部分和请求参数是分开的,单独对HOST部分进行匹配效率应该更高才对啊,为什么还要匹配请求参数呢?从我的个人经验来看,我觉得主要是两个原因吧:
第一、干掉那些把访问地址“明目张胆”地放到URL参数中的Web代理服务器。早期的Web代理服务器经常是直接把请求地址加入到URL参数中,比如经由Web代理访问http://www.a.com/index.html时,早期的Web代理请求的URL就是http://webproxy/www.a.com/index.html。显然,通过检测请求参数(”/www.a.com/index.html”)便能发现Web代理的真实意图,从而在请求连接阶段就把连接干掉。
第二、一些URL参数中是含有具体内容的,如果发现这些内容中含有敏感信息,便可以趁早采取下一步的措施,比如立即将”RESET标志位“置1重置连接。将连接在发起阶段干掉,便可以避免对连接建立后返回的数据再次进行深度检测,从而降低了负载。
PS:其实这种玩法我几年前就已经想到了,只不过没打算打”擦边球“,所以只是想想罢了。
.CO域名快被这帮搞IT的玩坏了……的更多相关文章
- sass笔记-1|Sass是如何帮你又快又好地搞定CSS的
Sass学习笔记持续整理中,开篇不讲怎么安装,sass是什么,这些搜索引擎会告诉你,我们从sass的作用开始讲起,知道sass用来干什么,有什么作用,我们才能相信用sass的好处,并且时时刻刻想着sa ...
- 大半夜吃饱了撑的帮人调IE玩
那高手的也是IE6,我也是IE6,但是他的IE6就总是进recv,我的IE6就进WSARecv,一点都不科学...擦..不调了.
- [Hook] 跨进程 Binder 学习指南
cp from : http://weishu.me/2016/01/12/binder-index-for-newer/ 毫不夸张地说,Binder是Android系统中最重要的特性之一:正如其名“ ...
- Linux 进程间通信(IPC)总结
概述 一个大型的应用系统,往往需要众多进程协作,进程(Linux进程概念见附1)间通信的重要性显而易见.本系列文章阐述了 Linux 环境下的几种主要进程间通信手段. 进程隔离 进程隔离是为保护操作系 ...
- IPC 之 Binder 初识
概述 最近在看Android 的 IPC 机制,想要系统的研究一下,然后就走到了 Binder 这里,发现这个东西真是复杂,查看了一下些文章想要记录下.想要自己写但是发现一篇文章已经写的非常好了,就转 ...
- 一篇文章了解相见恨晚的 Android Binder 进程间通讯机制【转】
本文转载自:https://blog.csdn.net/freekiteyu/article/details/70082302 Android-Binder进程间通讯机制 概述 最近在学习Binder ...
- Android Binder 进程间通讯机制梳理
什么是 Binder ? Binder是Android系统中进程间通讯(IPC)的一种方式,也是Android系统中最重要的特性之一.Binder的设计采用了面向对象的思想,在Binder通信模型的四 ...
- 快Key:按一下鼠标【滚轮】,帮你自动填写用户名密码,快速登录,可制作U盘随身(开源免费-附安装文件和源代码)
* 代码以本文所附下载文件包为准,安装文件和源文件包均在本文尾部可下载. * 快Key及本文所有内容仅供交流使用,使用者责任自负,由快Key对使用者及其相关人员或组织造成的任何损失均由使用者自负,与本 ...
- github 项目绑定自己的域名
上周脑子发热申请了自己的一个域名.本想搞一个自己的网站,后来囊中羞涩,数据库,服务器..买不起了,只买个域名,发现啥也搞不成.后来突然想到了不行找个东西映射到这个域名上吧,就想到了github,之前也 ...
随机推荐
- Apache POI 解析 microsoft word 图片文字都不放过
http://blog.csdn.net/njchenyi/article/details/6894500 http://haohaoxuexi.iteye.com/blog/2031335
- 从Config文件中读取节点的配置信息
下面是web.config中与本内容有关的细节 <appSettings> <add key="servername" value="www" ...
- poj 3468(线段树+lazy思想)
题目链接:http://poj.org/problem?id=3468 思路:如果直接去做,每次都更新到叶子节点,那必然会TLE,我们可以采用lazy的思想:没必要每次更新都更新到叶子节点,只要有一个 ...
- js正则表达式用法大全
匹配中文字符的正则表达式: [u4e00-u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^x00-xff] 评注:可以用来计算字符串的长度(一 ...
- CSS中的长度值
以下总结来自慕课网(依然比较浅显). 长度单位总结一下,目前比较常用到px(像素).em.% 百分比,要注意其实这三种单位都是相对单位. 1.像素 像素为什么是相对单位呢?因为像素指的是显示器上的小点 ...
- iOS手势学习UIGestureRecognizer & cocos2d 手势推荐
iOS手势学习UIGestureRecognizer & cocos2d 手势推荐 手势识别类型: UILongPressGestureRecognizer // 长按UIPanGestur ...
- Mysql笔记——DCL
DCL数据库控制语言不同于程序设计语言,SQL语言(结构化查询语言)的组成部分包括了DCL数据库控制语言. =============== 1.创建用户 语法:CREATE USER 用户名@地址 ...
- BigDecimal进行除法divide运算注意事项
Java编程中 BigDecimal进行除法divide运算时,如果结果不整除,出现无限循环小数.则会抛出以下异常: java.lang.ArithmeticException: Non-term ...
- Jenkins最佳实践
原文:http://www.cnblogs.com/itech/archive/2011/11/14/2248460.html Jenkins最佳实践,其实大部分对于其他的CI工具同样的适用: * J ...
- 获取CentOS系统详情的九个uname命令实例
当你在控制台模式下,无法通过“鼠标右键 > 关于”获取操作系统的信息.这时,在Linux下,你可以使用uname命令,帮助你完成这些工作. Uname是unix name的缩写.在控制台中实际使 ...