五千年(敝帚自珍)

主题:【原创】it科普二 蛋疼向研究之GFW -- 浩瀚星辰

共:💬52 🌺62
全看树展主题 · 分页首页 上页
/ 4
下页 末页
家园 邱道长啊邱道长,,,
家园 从目标机器来的数据包实际上通过了防火墙?

不知道我理解的对不对,你的意思是:GFW伪造了RST为1的数据包,并且乔装成来自境外服务器?然后,国内的机器在收到这个包之后就把原来的连接中止了?而实际上包含敏感信息的数据包,实际上穿过了防火墙,甚至到达了用户的电脑?

家园 理论上是这样的

推测是由于你的计算机上不再应答ack,所以境外主机很快就会视你的主机已经关闭了连接。而漏网的数据包太少而且无伤大雅。

家园 这个 没希望的

人家GFW是向双方,访问者和网站各发了一个重置

网站那边收到这个RST就停止本次会话了

家园 以前看过一篇GFW工作原理的文章

说这个GFW伪造数据包是双向发送的。服务器那头也发了个。所以要改就要改客户端和服务器端一起来。工程量很大啊。

家园 那就不太清楚了

如果是这样的话,那个改驱动强人应该什么都看不到

那么两个可能

gfw升级过或者我听的那个故事有问题

家园 也简单

网卡虽多,用的主芯片不到10种,驱动程序做个通用包的话不会超过20兆。

家园 楼主能不能整个完全穿墙手册?
家园 想念house,第10集咋还没出来
家园 喝茶

这个就可怕了,那不是说哪天翻墙众们也会去喝茶?

家园 土豆和优酷只是某些节目不能看吧

美国这边日本漫画没问题,但美剧就不行

家园 GFW 工作原理可以去看这个

GFW通过DPI实现

华为下面这个产品介绍说得很明白了

外链出处

家园 不用

厂家提供的驱动都是符合微软的一个什么规范(好像是叫NDIS)

他上面才是TCP/IP的协议栈,做个驱动,改TCP/IP的协议栈就成了,之所以没这么做,我估计是有2点

1.双方都发RST,所以你这边忽略RST也没用

2.忽略RST对其他应用影响太大

家园 这个三个好像都无法用到GFW的实际中

华为这个玩意应该还是应用于网管,用在GFW上似乎差点意思

主要是大数据量的问题

1.特征字是最简单的,但是在大数据量的情况下应该是跟不上的,比方说GFW的要过滤的关键字有10万条,而且关键字还在不断增加中,每秒过交换机有100万个包(实际应该远远大于这个数字),平均每个包的长度如果按500个字节算,可以想象在对每个包进行过滤时候的运算量。除非分散到若干台机器中,但这个数字也是很恐怖的,比较现实的做法是限定某些范围的IP包的比较(比如只对GoogleIP地址进行过滤,先用IP地址过滤一次,由于IP地址是直接比较,这样运算量能降下几百倍,在数据量降下几万倍之后(Google的数据估计只占整个网络数据的几万分之一,甚至更低)然后对来自这些IP地址的数据进行过滤。

2.应用层网关识别耗的是内存,因为需要根据控制流来建立Session,每秒维持上百份甚至更多的Session,而且需要考虑到异常情况,也就是某个Session没有正常结束,挂在哪儿了,怎么办?而且这种识别是死编码,增加一个业务,就需要重新对这种业务进行编码,对于复杂的控制流,CPU运算量也是很大的。

3.3同2一样,太耗CPU和内存,只能用于特定场合,而且识别率有问题。

1,2我都用过,在运营商那里实时分析一个省的全部数据(用于网管的业务分析),小的省还可以,大点的地方根本不敢去,做到最后,不是死在了CPU上,就是死在了内存上。海量数据处理才是这个技术的核心,协议分析都是浮云。能做的几家,硬件上投资都很大,而且效果不佳。

家园 旁路+硬件

旁路设备在扫描的同时不会干扰正常的流量。

专用硬件的性能和x86不是同一个数量级(比如最近很火的tilera的芯片,一片就可以把Snort跑到40Gbps以上)

全看树展主题 · 分页首页 上页
/ 4
下页 末页


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河