自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

某電商網(wǎng)站流量劫持案例分析與思考

安全 應用安全 黑客攻防
某天在家里訪問某電商網(wǎng)站首頁的時候突然吃驚地發(fā)現(xiàn)瀏覽器突然跳到了第三方網(wǎng)站再回到電商網(wǎng)站,心里第一個反應就是中木馬了。竟然有這樣的事,一定要把木馬大卸八塊。

【前言】

某天在家里訪問某電商網(wǎng)站首頁的時候突然吃驚地發(fā)現(xiàn)瀏覽器突然跳到了第三方網(wǎng)站再回到電商網(wǎng)站,心里第一個反應就是中木馬了。

竟然有這樣的事,一定要把木馬大卸八塊。

【原因排查】

首先在重現(xiàn)的情況下抓包,電商網(wǎng)站確實返回了一段JavaScript讓瀏覽器跳轉到了yiqifa.com。

下圖是應用層的抓包。

 

 

服務器返回的代碼導致跳轉,基本可以排除本地木馬,推測是網(wǎng)絡或者服務器的問題。根據(jù)筆者的經(jīng)驗,這種情況很大可能是鏈路上的流量劫持攻擊。當然也不能排除該電商服務器被黑的情況。

繼續(xù)排查。應用層已經(jīng)不行了,我們要用Wireshark抓網(wǎng)絡層的包。

 

 

從Wireshark結果可以看到,網(wǎng)絡上出現(xiàn)了兩個該電商網(wǎng)站的HTTP響應。第一個先到,所以瀏覽器執(zhí)行里面的JavaScript代碼轉到了yiqifa.com;第二個HTTP響應由于晚到,被系統(tǒng)忽略(Wireshark識別為out-of-order)。

這兩個HTTP響應包,必然一真一假??旖沂菊嫦嗔?。

再來看看兩個HTTP響應的IP頭。

第一個包TTL值是252,第二個包TTL值是56,而之前TCP三次握手時該電商服務器的TTL值是56,故可以判斷先到的包是偽造的,真的包晚到而被系統(tǒng)忽略。

 

 

 

 

至此,確認是鏈路上的劫持。

更多鏈路劫持攻擊的信息可以先看看筆者之前寫的文章《鏈路劫持攻擊一二三》。#p#

【攻擊方式】

繼續(xù)分析偽造的數(shù)據(jù)包。

偽造包的TTL值是252,也就是說它的原始TTL值應該是255(大于252的系統(tǒng)默認TTL值只能是255了,一般不會修改),也就表明攻擊者的設備離我隔了3個路由;而正常的該電商網(wǎng)站的HTTP響應TTL值是56,隔了8個路由。物理上假的設備離我近,所以偽造的HTTP響應會先到——比較有意思的是,筆者實際監(jiān)測時候發(fā)現(xiàn)也有偽造包晚到導致劫持失敗的情況。

推測是一個旁路設備偵聽所有的數(shù)據(jù)包,發(fā)現(xiàn)請電商網(wǎng)站首頁的HTTP請求就立即返回一個定制好的HTTP響應。大致的攻擊示意圖如下。

 

 

當時筆者推測攻擊者在鏈路上大動干戈應該不會只針對一個網(wǎng)站,于是就訪問了下易迅、淘寶、天貓這些電商網(wǎng)站,結果發(fā)現(xiàn)易迅也受到同樣的攻擊??雌饋磉@次流量劫持的目的是將電商網(wǎng)站流量導給返利聯(lián)盟,通過返利聯(lián)盟獲得當前用戶成交金額的返利。

基本確認運營商有問題,但是無法確認是運營商官方故意的還是遭到黑客攻擊或者是內(nèi)部人士偷偷搞的。

【攻擊源定位】

來看看當時的路由結果:

 

 

如果按初始TTL值為255來算,HTTP包到達本機后為252,推算出經(jīng)過了3(255-252)個路由,出問題的地方就在第4個路由附近,也就是這里的119.145.220.86(屬于深圳電信)。

當然了,雖然基本可以確認是第四個路由附近的問題(筆者連續(xù)幾天抓包,偽造的HTTP響應包TTL值一直是252),但是不排除設備故意構造一個初始TTL值(比如設置為254)來增加追查難度,為了嚴謹?shù)闹螌W態(tài)度及避免被攻擊者迷惑,所以證據(jù)要坐實了。

定位比較簡單,既然攻擊設備是旁路偵聽數(shù)據(jù)包,可以推測它是基于包而非狀態(tài)的,我們構造被偵聽的數(shù)據(jù)包(也就是直接發(fā)出訪問電商官網(wǎng)首頁的HTTP請求TCP包,不需要三次握手)多次發(fā)送,TTL值從1開始遞增,精確地傳遞數(shù)據(jù)包到每一個路徑上,直到出現(xiàn)偽造響應——沒有問題的位置是不會有響應的,第一個出現(xiàn)偽造響應的位置就是出問題的位置。

這個時候就需要一個數(shù)據(jù)包構造工具了,基于Python的Scapy或者Windows下的XCAP都行。

于是一路發(fā)過去,TTL值等于4的時候偽造的響應包出現(xiàn)了——確認就是第四跳路由出問題了,同時119.145.55.14回復了Time-to-live Exceeded的ICMP包。

 

 

【問題處理】

有了充分證據(jù),于是整理了一個圖文并茂的文檔通過騰訊安全應急響應中心向深圳電信報障。

一天后得到運營商答復:“經(jīng)核查,深圳本地沒有進行推送,經(jīng)網(wǎng)上查詢有木馬或病毒會導致此現(xiàn)象,非電信網(wǎng)內(nèi)問題,請進行殺毒后再測試,謝謝”。運營商還附送了這則2013年的新聞:《淘寶易迅紛紛遭木馬劫持,電腦管家獨家首發(fā)專殺工具》。

不過從當天晚上起,我再在ADSL環(huán)境測試,就沒有發(fā)現(xiàn)這種流量劫持現(xiàn)象了。#p#

【攻防之道】

鏈路劫持對企業(yè)和用戶都是很麻煩的,影響用戶體驗,還泄漏敏感信息,而且還是分地域的,檢測和防御起來也相對困難。

鏈路劫持已經(jīng)被某些人運用的爐火純青。比如近期業(yè)界發(fā)現(xiàn)部分區(qū)域的百度聯(lián)盟廣告腳本被植入惡意JavaScript去DDoS攻擊GitHub。

騰訊歷史上也遇到過多起鏈路劫持攻擊,目的性很強,大部分是插廣告(少部分是釣魚和掛馬),攻擊手法各種各樣,有運營商的區(qū)域DNS劫持和鏈路劫持、運營商區(qū)域DNS Server遭到緩存投毒攻擊(利用CVE-2007-2926,非常經(jīng)典)、開發(fā)商在路由軟件中植入劫持代碼、CDN與源通信遭到ARP攻擊、用戶PC本地木馬。當然,這些目前都已經(jīng)解決了,也在持續(xù)監(jiān)測中。

為了對抗鏈路劫持,很多騰訊業(yè)務也都使用了HTTPS或者私有協(xié)議,比如QQ Web登錄、QQ郵箱、理財通、Web微信、微信公眾平臺等。

DNS劫持攻擊相對容易檢測和防護。

檢測方面,用分布的點去進行DNS查詢即可,發(fā)現(xiàn)運營商DNS結果不對就可以推動修復。騰訊在2010年起就建設了DNS劫持監(jiān)控系統(tǒng),有興趣的朋友可以去讀下這篇文章。

防護方面,一種方案是使用DNSSEC(DNS Security Extensions);騰訊、114DNS還研發(fā)了自己的方案——HttpDNS。HttpDNS不使用DNS協(xié)議而是通過HTTP協(xié)議從HttpDNS后端服務器獲取域名對應的IP。當然,類似的思路我們可以實現(xiàn)一堆了:HTTPSDNS、TCPDNS、UDPDNS、ICMPDNS……

 

 

鏈路劫持相對復雜。

檢測方面,如有客戶端,可以依靠客戶端進行檢測;如果沒有客戶端,就具體情況具體分析了,可以在網(wǎng)頁里用JavaScript檢測頁面元素,甚至可以在全國重要城市租用ADSL探測。

另外,在機房的流量監(jiān)控設備里會發(fā)現(xiàn)異常:比如這個案例就會出現(xiàn)用戶接收了HTTP響應后沒有回應,然后URL中又帶了yiqifa.com的關鍵字重新訪問主頁的情況;再比如某些設備的HTTP阻斷會向服務器發(fā)特定的RST包(我見過發(fā)IP Id為8888的案例)。

防護方面,這個案例只是偽造數(shù)據(jù)包,并沒有實施阻斷,所以只要客戶端的安全軟件把疑似出問題的包(一次TCP會話中TTL值相差很大或者IPId突然跳變)攔截就可以防御。為了避免誤殺,可以攔截并休眠1秒,如果沒有同樣的數(shù)據(jù)包過來再放行。

有自己客戶端的可以走自己的私有協(xié)議,網(wǎng)站類就困難一些,部署HTTPS吧。百度主頁近期就使用了HTTPS,不過大部分用戶還是不習慣在瀏覽器里輸“https://”,所以還是存在被劫持的風險(類似的工具有SSLStrip)。當然了,對抗也會隨之升級的,比如這次發(fā)現(xiàn)的GMail證書偽造事件。

在HTTPS尚不能大規(guī)模普及的情況下,是否可以給用戶或者終端軟件提供一個規(guī)避鏈路劫持的安全服務呢?似乎是可以的。下圖是筆者構想的一個簡單的通過本地代理軟件加云服務的方式規(guī)避不安全ADSL鏈路的解決方案。

 

 

一些瀏覽器的云加速也客觀上實現(xiàn)了這個功能。對于安全性不確定的公共WiFi,也可以用類似的方法來規(guī)避風險。

【后記】

希望本文對你有幫助。在鏈路劫持防護這件事上,騰訊歡迎與業(yè)界討論甚至合作。

責任編輯:藍雨淚 來源: TSRC博客
相關推薦

2016-10-24 11:24:22

電商數(shù)據(jù)

2021-08-27 21:50:53

公域流量電商

2024-12-31 09:36:06

2012-12-25 13:45:37

2012-01-06 10:16:14

訂票網(wǎng)站11大電商網(wǎng)站

2017-01-23 10:10:09

2012-02-17 09:18:49

電商iPad下架

2016-03-16 09:47:55

2011-01-18 10:11:52

2017-04-25 09:06:51

2016-12-13 08:45:48

2017-09-11 16:34:00

2014-06-09 17:07:44

2017-11-10 12:55:30

分析流量銷量

2014-12-15 14:59:38

2021-02-25 10:00:19

企業(yè)安全互聯(lián)網(wǎng)云平臺安全

2012-10-18 10:27:19

網(wǎng)站優(yōu)化

2013-04-24 17:29:14

Radware電商網(wǎng)站性能

2009-04-14 16:14:51

2010-11-01 17:30:01

點贊
收藏

51CTO技術棧公眾號