1. 程式人生 > >[掃盲]介紹一下GFW的工作原理和封鎖技術

[掃盲]介紹一下GFW的工作原理和封鎖技術

GFW是Great Fire Wall的縮寫,即“長城防火牆”。這個工程由若干個部分組成,實現不同功能。長城防火牆主要指TG監控和過濾網際網路內容的軟硬體系統,由伺服器和路由器等裝置,加上相關的應用程式所構成。

首先,需要強調的是,由於中國網路審查廣泛,中國國內含有“不合適”內容的的網站,會受到政府直接的行政干預,被要求自我審查、自我監管,乃至關閉,所以GFW的主要作用在於分析和過濾中國境內外網路的資訊互相訪問。

GFW對網路內容的過濾和分析是雙向的,GFW不僅針對國內讀者訪問中國境外的網站進行干擾,也干擾國外讀者訪問主機在中國大陸的網站。

一 關鍵字過濾阻斷

關鍵字過濾系統。此係統能夠從出口閘道器收集分析資訊,過濾、嗅探指定的關鍵字。主要針對HTTP的預設埠:80埠,因為HTTP傳播的內容是明文的內容,沒有經過加密,而GFW是一個IDS(Intrusion detection system)。普通的關鍵詞如果出現在HTTP請求報文的頭部(如“Host: www.youtube.com”)時,則會馬上偽裝成對方向連線兩端的計算機發送RST包(reset)干擾兩者正常的TCP連線,進而使請求的內容無法繼續檢視。如果GFW在資料流中發現了特殊的內文關鍵詞(如輪子,達賴等)時,其也會試圖打斷當前的連線,從而有時會出現網頁開啟一部分後突然停止的情況。在任何阻斷髮生後,一般在隨後的90秒內同一IP地址均無法瀏覽對應IP地址相同埠上的內容。



二 IP地址封鎖

IP地址封鎖是GFW通過路由器來控制的,在通往國外的最後一個閘道器上加上一條偽造的路由規則,導致通往某些被遮蔽的網站的所有IP資料包無法到達。路由器的正常工作方式是學習別的路由器廣播的路由規則,遇到符合已知的IP轉發規則的資料包,則按已經規則傳送,遇到未知規則IP的資料,則轉發到上一級閘道器。

而GFW對於境外(中國大陸以外)的XX網站會採取獨立IP封鎖技術。然而部分XX網站使用的是由虛擬主機服務提供商提供的多域名、單(同)IP的主機託管服務,這就會造成了封禁某個IP地址,就會造成所有使用該服務提供商服務的其它使用相同IP地址伺服器的網站使用者一同遭殃,就算是正常的網站,也不能倖免。其中的內容可能並無不當之處,但也不能在中國大陸正常訪問。現在GFW通常會將包含XX資訊的網站或網頁的URL加入關鍵字過濾系統,並可以防止民眾透過普通海外HTTP代理伺服器進行訪問。



三 特定埠封鎖

GFW會丟棄特定IP地址上特定埠的所有資料包,使該IP地址上伺服器的部分功能(如SSH的22、VPN的1723或SSL的443埠等)無法在中國大陸境內正常使用。

在中國移動、中國聯通等部分ISP(手機IP段),所有的PPTP型別的VPN都被封鎖。

2011年3月起,GFW開始對Google部分伺服器的IP地址實施自動封鎖(按時間段)某些埠,按時段對www.google.com(使用者登入所有Google服務時需此域名加密驗證)和mail.google.com的幾十個IP地址的443埠實施自動封鎖,具體是每10或15分鐘可以連通,接著斷開,10或15分鐘後再連通,再斷開,如此迴圈,令中國大陸使用者和Google主機之間的連接出現間歇性中斷,使其各項服務出現問題。GFW這樣的封鎖手法很高明,因為Gmail並非被完全阻斷,這令問題看上去好像出自Google本身。

這就是你們認為Google抽風的原因。

四 SSL連線阻斷

GFW會阻斷特定網站的SSL加密連線,方法是通過偽裝成對方向連線兩端的計算機發送RST包(RESET)干擾兩者間正常的TCP連線,進而打斷與特定IP地址之間的SSL(HTTPS,443埠)握手(如Gmail、Google檔案、Google網上論壇等的SSL加密連線),從而導致SSL連線失敗。

當然由於SSL本身的特點,這並不意味著與網站傳輸的內容可被破譯。

五 DNS劫持和汙染

GFW主要採用DNS劫持和汙染技術,使用Cisco提供的IDS系統來進行域名劫持,防止訪問被過濾的網站,2002年Google被封鎖期間其域名就被劫持到百度。中國部分ISP也會通過此技術插入廣告。

對於含有多個IP地址或經常變更IP地址逃避封鎖的域名,GFW通常會使用此方法進行封鎖。具體方法是當用戶向DNS伺服器提交域名請求時,DNS返回虛假(或不解析)的IP地址。

全球一共有13組根域名伺服器(Root Server),目前中國大陸有F、I這2個根域DNS映象,但現在均已因為多次DNS汙染外國網路,而被斷開與國際網際網路的連線。

DNS劫持和汙染是針對某些網站的最嚴重的干擾。

干擾的方式有兩種:

一種是通過網路服務提供商(Internet Service Provider)提供的DNS伺服器進行DNS欺騙,當人們訪問某個網站時,需要要把域名轉換為一個IP地址,DNS伺服器負責將域名轉換為IP地址,中國大陸的ISP接受通訊管理局的遮蔽網站的指令後在DNS伺服器里加入某些特定域名的虛假記錄,當使用此DNS伺服器的網路使用者訪問此特定網站時,DNS服務便給出虛假的IP地址,導致訪問網站失敗,甚至返回ISP運營商提供的出錯頁面和廣告頁面。

另一種是GFW在DNS查詢使用的UDP的53埠上根據blacklist進行過濾,遇到通往國外的使用UDP53埠進行查詢的DNS請求,就返回一個虛假的IP地址。