開啟主選單

域名伺服器緩衝記憶體污染

創建形勢惡意或有害的方式從域名服務器(DNS)提供的數據

網域伺服器緩衝記憶體污染(DNS cache pollution),又稱域名伺服器緩衝記憶體投毒(DNS cache poisoning)、DNS緩衝記憶體投毒,是指一些刻意製造或無意中製造出來的域名伺服器封包,把域名指往不正確的IP地址。一般來說,在互聯網上都有可信賴的網域伺服器,但為減低網絡上的流量壓力,一般的域名伺服器都會把從上游的域名伺服器獲得的解析記錄暫存起來,待下次有其他機器要求解析域名時,可以立即提供服務。一旦有關網域的區域域名伺服器的緩衝記憶體受到污染,就會把網域內的電腦導引往錯誤的伺服器或伺服器的網址。

域名伺服器緩衝記憶體污染可能是因為域名伺服器軟件的設計錯誤而產生,但亦可能由別有用心者透過研究開放架構的域名伺服器系統來利用當中的漏洞。

透過變更Windows 2003的某些域名封包設置,可以摒除有可疑的封包。[1]

為防止區域的域名伺服器緩衝記憶體污染除了要定時更新伺服器的軟件以外,可能還需要人手變更某些設置,以控制伺服器對可疑的域名封包作出篩選。[1]

目錄

緩衝記憶體污染攻擊編輯

一般來說,一部連上了互聯網的電腦都會使用互聯網服務供應商提供的域名伺服器。這個伺服器一般只會服務供應商的客戶,通常都會將部分客戶曾經請求過的域名暫存起來,這種伺服器被稱為非權威伺服器,其應答稱非權威應答。緩衝記憶體污染攻擊就是針對這一種伺服器,以影響伺服器的使用者或下游服務。

中國防火長城編輯

在中國大陸,對所有經過防火長城的在UDP的53上的域名查詢進行IDS入侵檢測,一經發現與黑名單關鍵詞相符合的域名查詢請求,會馬上偽裝成目標域名的解析伺服器返回虛假的查詢結果。由於通常的域名查詢沒有任何認證機制,而且域名查詢通常基於無連接不可靠的UDP協定,查詢者只能接受最先到達的格式正確結果,並丟棄之後的結果。[2]

  • 對於不了解相關知識的網民來說,由於系統預設使用的ISP提供的域名查詢伺服器查詢國外的權威伺服器時即被防火長城污染,進而使其緩衝記憶體受到污染,因此預設情況下查詢ISP的伺服器就會獲得虛假IP位址;而用戶直接查詢境外域名查詢伺服器(比如 Google Public DNS)時有可能會直接被防火長城污染,進而在沒有任何防範機制的情況下仍然不能獲得目標網站正確的IP位址。[2]
  • 因為TCP連接的機制可靠,防火長城理論上未對TCP協定下的域名查詢進行污染,故現在能透過強制使用TCP協定查詢真實的IP位址。而目前的情況是,防火長城對於真實的IP位址也可能會採取其它的手段進行封鎖,或者對查詢行為使用連接重設的方法進行攔截,故能否真正存取可能還需要其它翻牆的手段。
  • 通常情況下無論使用設置在中國大陸的DNS服務還是使用設置在海外的DNS服務,因為解析結果都需要穿過GFW,所以都會被GFW污染。但是仍有一些設置在中國大陸的小型DNS使用技術手段迴避GFW的污染並提供不受污染的結果,通常使用這些小型DNS也能夠存取其他被封鎖的網站。
  • 根據互聯網上長期收集到的污染目標的虛假IP位址列表,可以發現污染的無效IP在一段時間後會更新,最後一次更新在2017年10月。防火長城會將黑名單內的域名重新導向至不限於以下列表的IP位址:[3]

IPv4環境編輯

  • 8.7.198.45
  • 31.13.64.1
  • 31.13.64.33
  • 31.13.64.49
  • 31.13.65.1
  • 31.13.65.17
  • 31.13.65.18
  • 31.13.66.1
  • 31.13.66.6
  • 31.13.66.23
  • 31.13.68.1
  • 31.13.68.22
  • 31.13.69.33
  • 31.13.69.86
  • 31.13.69.129
  • 31.13.69.160
  • 31.13.70.1
  • 31.13.70.20
  • 31.13.71.7
  • 31.13.71.23
  • 31.13.72.1
  • 31.13.72.17
  • 31.13.72.23
  • 31.13.72.34
  • 31.13.72.54
  • 31.13.73.1
  • 31.13.73.17
  • 31.13.73.23
  • 31.13.74.1
  • 31.13.74.17
  • 31.13.75.17
  • 31.13.75.18
  • 31.13.76.8
  • 31.13.76.16
  • 31.13.77.33
  • 31.13.77.55
  • 31.13.78.65
  • 31.13.78.66
  • 31.13.79.1
  • 31.13.79.17
  • 31.13.80.1
  • 31.13.80.17
  • 31.13.81.1
  • 31.13.81.17
  • 31.13.82.1
  • 31.13.82.17
  • 31.13.82.23
  • 31.13.83.1
  • 31.13.83.8
  • 31.13.83.16
  • 31.13.84.1
  • 31.13.84.8
  • 31.13.84.16
  • 31.13.85.1
  • 31.13.85.8
  • 31.13.85.16
  • 31.13.86.1
  • 31.13.86.8
  • 31.13.86.16
  • 31.13.97.245
  • 31.13.97.248
  • 46.82.174.68
  • 59.24.3.173
  • 64.13.192.74
  • 64.13.192.76
  • 64.13.232.149
  • 66.220.146.94
  • 66.220.147.11
  • 66.220.147.44
  • 66.220.147.47
  • 66.220.149.18
  • 66.220.149.32
  • 66.220.149.99
  • 66.220.151.20
  • 66.220.152.17
  • 66.220.152.28
  • 66.220.155.12
  • 66.220.155.14
  • 66.220.158.32
  • 67.15.100.252
  • 67.15.129.210
  • 67.228.37.26
  • 67.228.74.123
  • 67.228.102.32
  • 67.228.126.62
  • 67.228.221.221
  • 67.228.235.91
  • 67.228.235.93
  • 69.63.176.15
  • 69.63.176.59
  • 69.63.176.143
  • 69.63.178.13
  • 69.63.180.173
  • 69.63.181.11
  • 69.63.181.12
  • 69.63.184.14
  • 69.63.184.30
  • 69.63.184.142
  • 69.63.186.30
  • 69.63.186.31
  • 69.63.187.12
  • 69.63.189.16
  • 69.63.190.26
  • 69.171.224.12
  • 69.171.224.40
  • 69.171.224.85
  • 69.171.225.13
  • 69.171.227.37
  • 69.171.228.20
  • 69.171.228.74
  • 69.171.229.11
  • 69.171.229.28
  • 69.171.229.73
  • 69.171.230.18
  • 69.171.232.21
  • 69.171.233.24
  • 69.171.233.33
  • 69.171.233.37
  • 69.171.234.18
  • 69.171.234.29
  • 69.171.234.48
  • 69.171.235.16
  • 69.171.235.64
  • 69.171.235.101
  • 69.171.237.16
  • 69.171.237.26
  • 69.171.239.11
  • 69.171.240.27
  • 69.171.242.11
  • 69.171.242.30
  • 69.171.244.11
  • 69.171.244.12
  • 69.171.244.15
  • 69.171.245.49
  • 69.171.245.53
  • 69.171.245.84
  • 69.171.246.9
  • 69.171.247.20
  • 69.171.247.32
  • 69.171.247.71
  • 69.171.248.65
  • 69.171.248.112
  • 69.171.248.128
  • 74.86.3.208
  • 74.86.12.172
  • 74.86.12.173
  • 74.86.17.48
  • 74.86.118.24
  • 74.86.142.55
  • 74.86.151.162
  • 74.86.151.167
  • 74.86.226.234
  • 74.86.228.110
  • 74.86.235.236
  • 75.126.2.43
  • 75.126.33.156
  • 75.126.115.192
  • 75.126.124.162
  • 75.126.135.131
  • 75.126.150.210
  • 75.126.164.178
  • 75.126.215.88
  • 78.16.49.15
  • 88.191.249.182
  • 88.191.249.183
  • 88.191.253.157
  • 93.46.8.89
  • 173.252.73.48
  • 173.252.100.21
  • 173.252.100.32
  • 173.252.102.16
  • 173.252.102.241
  • 173.252.103.64
  • 173.252.110.21
  • 174.36.196.242
  • 174.36.228.136
  • 174.37.54.20
  • 174.37.154.236
  • 174.37.175.229
  • 199.16.156.7
  • 199.16.156.40
  • 199.16.158.190
  • 199.59.148.14
  • 199.59.148.97
  • 199.59.148.140
  • 199.59.148.209
  • 199.59.149.136
  • 199.59.149.244
  • 199.59.150.11
  • 199.59.150.49
  • 205.186.152.122
  • 208.43.170.231
  • 208.43.237.140
  • 208.101.21.43
  • 208.101.48.171
  • 208.101.60.87
  • 243.185.187.39

IPv6環境編輯

  • 1.2.3.4
  • 10.10.10.10
  • 20.20.20.20
  • 255.255.255.255
  •  ::90xx:xxxx:0:0
  • 10::2222
  • 21:2::2
  • 101::1234
  • 2001::212
  • 2001:da8:112::21ae
  • 2003:ff:1:2:3:4:5fff:xxxx
  • 2123::3e12
  • 200:2:253d:369e::
  • 200:2:4e10:310f::
  • 200:2:2e52:ae44::
  • 200:2:807:c62d::
  • 200:2:cb62:741::
  • 200:2:f3b9:bb27::
  • 200:2:5d2e:859::
  • 200:2:9f6a:794b::
  • 200:2:3b18:3ad::
  • 50a7:26ed::64:ceef:0:0

污染攻擊大事記編輯

  • 2010年3月,當美國和智利的用戶試圖存取熱門社交網站如facebook.com和youtube.com還有twitter.com等域名,他們的域名查詢請求轉交給中國控制的DNS根鏡像伺服器處理,由於這些網站在中國被封鎖,結果用戶收到了錯誤的DNS解析資訊,這意味着防火長城的DNS域名污染域名劫持已影響互聯網。[4][5]
  • 2012年11月9日下午3點半開始,防火長城Google的泛域名 .google.com 進行了大規模的污染,所有以 .google.com 結尾的域名均遭到污染而解析錯誤不能正常存取,其中甚至包括不存在的域名,而Google為各國客製化的域名也遭到不同程度的污染(因為Google通過使用CNAME記錄來平衡存取的流量,CNAME記錄大多亦為 .google.com 結尾),但Google擁有的其它域名如 .googleusercontent.com 等則不受影響。有網友推測這也許是自防火長城建立以來最大規模的污染事件,而Google被大規模阻礙連接則是因為中共正在召開的十八大[來源請求]
  • 2014年1月21日下午三點半,中國互聯網頂級域名解析不正常,出錯網站解析到的網址是65.49.2.178,這個IP位於美國加利福尼亞州費利蒙市Hurricane Electric公司,被Dynamic Internet Technology(即自由門的開發公司)租用於翻牆軟件連接節點[6]
  • 2015年1月2日起,污染方式更新,不再是解析到固定的無效IP,而是隨機地指向境外的有效IP。剛開始只是對YouTube影片域名(*.googlevideo.com)進行處理,之後逐漸擴大到大多數被污染的域名。[7]這導致了境外伺服器遭受來自中國的DDoS攻擊,部分網站因此封鎖中國IP。[8]
  • 2016年3月29日起,防火長城針對Google更新了污染方式。在一開始更新過後,所有包含google, gmail等關鍵詞的域名查詢均被污染,導致很多用戶一時間完全無法正常使用Gmail服務。之後,防火長城對規則進行了調整。其中,對於*.google.com域名污染主域名(google.com,不包括www)及部分服務域名(drive.google.com, plus.google.com等),而針對地區域名則選擇性地污染泛域名(*.google.com.hk, *.google.co.kr, *.google.ru等),其他地區的域名則不受影響(*.google.us等)。[9]
  • 目前大部分網站污染方式已恢復為解析到固定的無效IP,但小部分網站和新疆地區存取google.com時仍會污染至有效IP(203.208.*.*IP段)
  • 2019年3月29日下午4點多,國外藝術社交網站DeviantART再一次在中國無法存取,原因是DNS污染,IP沒有被封鎖,失效的域名解析切換到了不正常的Facebook的IP域名。

ISP域名劫持編輯

 
中國電信在當用戶輸入錯誤或無法解釋的網址時就會顯示旗下互聯星空114網站。此乃2007年劫持Bloglines時的畫面。

中國大陸的互聯網服務供應商經常劫持部分域名,轉到自己指定的網站,以提供自己的廣告,污染方式為劫持域名不存在時返回的NXDOMAIN記錄(Non-existent domain)返回自己伺服器的ip,從而跳轉至自己的伺服器上顯示廣告等內容。

參見編輯

參考文獻編輯

外部連結編輯