歡迎光臨
每天分享高質量文章

淺談網路劫持的原理及影響

來自:bigsec豈安科技(微訊號:bigsec)

擼主:


葉孤城   豈安科技售前顧問


9年網際網路專案支援經驗,涉獵各類體育專案


無處不在的劫持

利用餓了麼2塊錢的補差價就能划走使用者支付寶的2000元、利用訂購的機票資訊,就能獲取到使用者信任,騙取財產、總是被跳轉到一些自己不想訪問的頁面上、為什麼總有那麼多自己跳出來的廣告?為什麼一個正常的連結點進去之後會出現下載介面?我們的資料資訊怎麼就這麼不安全?

對於普通使用者來說,你的請求資料發出去以後,會經過哪裡,最終去到哪裡,怎麼處理響應,這後面的一切都是黑洞。而對於想利用你的資訊做壞事的人來說,每一個環節都是他們的機會。

先不說壞人透過爬蟲、撞庫等手段獲取使用者資訊。最直接的我們資料接入的運營商都可能會對我們的資料分析監控。比如敏感資訊資訊的監控、涉黃涉恐資訊的過濾,而我們能夠感受到影響的可能就是網路劫持了。那麼運營商為什麼要做網路劫持,透過什麼手段來做劫持,網路劫持的利弊在哪呢?

劫持的產生

近年來隨著網上購物、直播、物聯網、共享經濟、人工智慧等不斷深入我們的生活,網際網路行業取得飛速的發展。根據最新的第40期《中國網際網路發展統計報告》顯示,截止2017年6月,中國網際網路使用者已經達到7.51億,佔全球網民的1/5。隨之而來的是網路流量的不斷增加,目前中國的國際網路出口的頻寬已經高達8T,而國內使用者產生的網路流量要遠遠大於這個數字。與之相對應的是中國複雜的網路環境。除了電信、聯通、移動是比較大的網路接入廠商,此外包含長城寬頻、鵬博士、教育網、科技網、廣電等等不少於20多家的小運營商。而且各個省市是相互獨立運營。這就會導致網路出現跨網、跨運營商的情況會特別多,基本上很難避免。而各個運營商之間的出口頻寬不盡相同,這很能是成為網路高峰的瓶頸。同時這種大量跨網訪問的流量,在運營商之間會產生一筆很大的結算費用。也就是說運營商之間的互通是需要收費的

作為運營商,面對這麼大的頻寬流量。該如何保障使用者體驗,減小自身成本呢。於是,他們找到了網路劫持的方案。

劫持的原理

運營商劫持大致分為兩種方式:

➤DNS強制解析的方式

➤訪問請求的302跳轉。

DNS強制解析是透過修改運營商的本地DNS記錄,來引導使用者流量到快取伺服器。工作的方式如下:

  1. 使用者透過域名發起訪問請求;

  2. 請求透過本地DNS進行解析;

  3. 運營商DNS設定強制解析策略;即所有該域名的請求都解析到事先寫好的伺服器上;

  4. 終端使用者到劫持伺服器互動訪問;

  5. 劫持伺服器如果有需要的訪問內容,則直接傳迴響應給使用者;如果沒有,則去源站同步內容。

302跳轉的方式和DNS強制解析的方式主要在引流的方式上有所區別。內容快取是透過監控網路出口的流量,分析判斷哪些內容是可以進行劫持處理的。再對劫持的記憶體發起302跳轉的回覆,引導使用者獲取內容。其需要對上行的請求流量進行埠映象或者分光處理。可以理解成複製一份上行的流量資訊 。工作的方式如下:

  1. 終端使用者發起訪問請求;

  2. 流量透過網路出口對外發起訪問;

  3. 訪問流量被映象一份給劫持系統的DPI裝置;

  4. 4.DPI對流量進行分析判斷,比如http get、80埠等資料

  5. 快取系統判斷是否熱點資源,比如連續請求5次的相同內容;

  6. 給使用者傳送響應請求,告訴客戶本地即是客戶需要訪問的內容;

  7. 由於本地的快取系統離客戶更近,所以客戶更早收到快取系統的響應;

  8. 使用者和本地的快取系統建立網路互動,源站的響應回來的晚,會自動斷開;

  9. 如果本地有快取內容,則給使用者響應內容,如果本地沒有,會計算訪問次數。當達到響應的內容時。

劫持的影響

從兩種運營商快取的特點來看,二者都是透過獲取使用者的資料流量,引導使用者訪問內容快取的伺服器。區別在於引導使用者的方式,DNS強制解析是透過修改域名解析記錄,強制將域名下的所有請求引導到劫持伺服器上。這種方式簡單粗暴,也容易造成很多問題。比如域名下有動態內容,也會被快取下來。這樣會造成登入的串號的問題。快取的內容更新不及時,訪問的都是老內容。這也是很多使用者所不能接受的地方。一些冷門資源的快取,會造成儲存的浪費。流量劫持的方式需要映象使用者流量,進行分析判斷。快取一些系統判斷是可以快取的熱點內容。DNS強制解析主要針對圖片,302跳轉主要針對下載檔案,音影片等大檔案

運營商應用劫持系統可以帶來的好處是:

  • 減少跨網傳輸的訪問,減少運營商之間的網間費用結算。國內各個地區、運營商都是獨立運營的,日常互聯產生的流量是需要進行費用結算的。而這筆費用其實是一筆龐大的開銷,而且需要持續結算。

  • 大多數運營商之間的網路出口都在幾十至幾百G不等,內容快取系統可以有效減小網路高峰時出口頻寬的壓力,這樣既可減少對互通網路的擴容。減少網路建設的費用。

  • 由於快取系統可以支援本地化服務,在一定程度上也可以達到加快網路訪問的目的,提升使用者體驗。

由於運維繫統的人員不可能及時獲取到劫持內容的更新,或者對劫持的內容做其他的,壞處是:

  • 經常訪問到過期的內容,檔案更新緩慢。導致獲取不到自己想要的資訊。

  • 跳轉到其他網站頁面,或者被插入牛皮癬廣告。

為了減少運營商快取和劫持帶來的影響,目前很多企業開始使用HTTPS的方式。包括蘋果公司之前要求所有的域名必須是HTTPS的,那麼HTTPS能從根本上解決這類的問題嗎?透過上面的分析,很顯然並不能有效的得到解決。https因為使用了加解密的手段,保證內容被篡改的可能性被降低,但是從運營商劫持的原理上來說,並不能有效的降低被劫持的可能性。


●本文編號549,以後想閱讀這篇文章直接輸入549即可

●輸入m獲取文章目錄

推薦↓↓↓

 

Linux學習

更多推薦18個技術類微信公眾號

涵蓋:程式人生、演演算法與資料結構、駭客技術與網路安全、大資料技術、前端開發、Java、Python、Web開發、安卓開發、iOS開發、C/C++、.NET、Linux、資料庫、運維等。

贊(0)

分享創造快樂