精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

當(dāng)前位置:安全行業(yè)動態(tài) → 正文

剝開層層迷霧,深度追蹤針對GitHub的DDoS攻擊

責(zé)任編輯:editor006 |來源:企業(yè)網(wǎng)D1Net  2015-04-08 14:21:29 本文摘自:51CTO

就在幾周前,GitHub 網(wǎng)站遭受了有史以來最嚴(yán)重的DDoS攻擊。本文中將使用http-traceroute來深入分析此次攻擊的來源。

攻擊真的來自中國嗎?

剝開層層迷霧,深度追蹤針對GitHub的DDoS攻擊

GitHub是全球最大的社交編程及代碼托管網(wǎng)站,上面托管了大量的開源項目,比如就有著名開源操作系統(tǒng)Linux。

瑞典網(wǎng)絡(luò)安全公司Netresec認(rèn)為:

這次DDoS攻擊是通過一些中間人劫持設(shè)備并劫持了世界上其他地方向中國發(fā)起的訪問流量,攻擊者替換了其中的javascript代碼,間接對GitHub發(fā)起攻擊。

由于此次攻擊似乎來自任何地方,這讓GitHub難以抵擋。

用TTL值追蹤中間人攻擊

Netresec 通過查看數(shù)據(jù)包中的 TTL 值可以斷定這是一起中間人攻擊事件。

科普:什么是TTL?

TTL,或者 time-to-live,所有網(wǎng)絡(luò)中的數(shù)據(jù)包中都用這個字段來表示數(shù)據(jù)包經(jīng)過了幾跳。每一次路由器將一個數(shù)據(jù)包發(fā)出去的時候,就會將這個字段減一。當(dāng)這個字段為零的時候,數(shù)據(jù)包將會被丟棄。以防止路由器無限制發(fā)送數(shù)據(jù)包造成死循環(huán)。

很多操作系統(tǒng)發(fā)送數(shù)據(jù)包的時候默認(rèn) TTL 值是64,因此,當(dāng)一個數(shù)據(jù)包到達(dá)的時候,如果 TTL 值為46,我們便會知道這個數(shù)據(jù)包在你的機(jī)器和發(fā)送數(shù)據(jù)包的機(jī)器之間經(jīng)過了18個節(jié)點(64-18=46)。

netresec 所發(fā)現(xiàn)的結(jié)果正如下圖中所示,下圖顯示了客戶端和服務(wù)器之間的一些數(shù)據(jù)包,我機(jī)器發(fā)送給百度服務(wù)器的數(shù)據(jù)包 TTL 起始值是64,第一個響應(yīng)包的 TTL 值是46,因為百度發(fā)送的數(shù)據(jù)包起始值為64,期間經(jīng)過18次路由跳轉(zhuǎn)才到達(dá)我的電腦。當(dāng)我發(fā)起 web 請求之后,我收到的數(shù)據(jù)包中的 TTL 值很奇怪,TTL 值分別是98和99。這表明數(shù)據(jù)包明顯不是來自最初的服務(wù)器,而是一些中間設(shè)備。

剝開層層迷霧,深度追蹤針對GitHub的DDoS攻擊

我知道在我和百度之間肯定有中間人設(shè)備,但是它在哪里?為了回答這個問題,我們使用 traceroute。

Traceroute工具幫了大忙

Traceroute 是一個很棒的工具。它可以發(fā)送TTL 為任意值的數(shù)據(jù)包,比如1,2,3.。。等等。因為有如此低的 TTL,這些數(shù)據(jù)包無法到達(dá)目標(biāo)機(jī)器,當(dāng)這些數(shù)據(jù)包的 TTL 值為0的時候,路由器就會丟掉這個包,并且路由器會返回一個用于通知的數(shù)據(jù)包,叫做Time-Exceeded message,地址是路由器的地址。因此,我可以收集到我喝目標(biāo)服務(wù)器之間的所有路由器。

下圖顯示了這個工具的用法,是我電腦traceroute 到百度服務(wù)器的結(jié)果:

剝開層層迷霧,深度追蹤針對GitHub的DDoS攻擊

第二列是時間,如你所見,從我機(jī)器到Los Angeles用了大概80毫秒,然后,延遲飆到230毫秒才到達(dá)中國,另外,我發(fā)送的數(shù)據(jù)包沒有到達(dá)目標(biāo)服務(wù)器,第16跳得時候遇到了防火墻。

那么中間人劫持的設(shè)備到底在哪里?為了回答這個問題,我需要寫代碼,我自己寫了一個小的 traceroute 工具,它并不是只發(fā)送一個數(shù)據(jù)包,而是首先建立一個有正常TTL 值的鏈接,所以,無論如何數(shù)據(jù)包都可以到達(dá)目標(biāo)機(jī)器,然后,使用發(fā)起一個 http 請求,攜帶的包得 TTL 值是比較小的,所以這個數(shù)據(jù)包在到達(dá)目標(biāo)前就會被丟棄掉,但是,當(dāng)中間人劫持設(shè)備受到這個數(shù)據(jù)包的時候,會更新 TTL 的值,這樣,我就可以發(fā)現(xiàn)中間人設(shè)備在什么地方了。

我發(fā)現(xiàn)中間人設(shè)備潛伏在11和12跳之間。web請求中 TTL 值為11的時候數(shù)據(jù)包沒有響應(yīng),而 TTL 值為12的時候,返回了正常響應(yīng),如下圖所示:

上面黑色被背景的就是我發(fā)送的數(shù)據(jù)包,TTL 值為12,橘黃色的數(shù)據(jù)包(及它上面的兩個數(shù)據(jù)包)是從中間人設(shè)備傳回的數(shù)據(jù)包,當(dāng)我將數(shù)據(jù)包的 TTL 值置為11的時候,不會從中間人設(shè)備獲得響應(yīng)包。

從traceroute的 IP 地址可以看到,中間人設(shè)備放置在中國聯(lián)通的骨干網(wǎng)絡(luò)中。

下一步就是從其他方面 traceroute,從中國到一個被封鎖的地址。用http://www.linkwan.net/tr.htm,這個網(wǎng)站,獲得了如下數(shù)據(jù):

剝開層層迷霧,深度追蹤針對GitHub的DDoS攻擊

  結(jié)論

通過http-traceroute,Netresec判定攻擊 GitHub 的中間人設(shè)備在中國。當(dāng)然,這并不說明此次攻擊就是中國發(fā)起的——還有其他的可能,比如黑客攻擊或控制了這些網(wǎng)絡(luò)設(shè)備。

關(guān)鍵字:數(shù)據(jù)包GitHub任意值

本文摘自:51CTO

x 剝開層層迷霧,深度追蹤針對GitHub的DDoS攻擊 掃一掃
分享本文到朋友圈
當(dāng)前位置:安全行業(yè)動態(tài) → 正文

剝開層層迷霧,深度追蹤針對GitHub的DDoS攻擊

責(zé)任編輯:editor006 |來源:企業(yè)網(wǎng)D1Net  2015-04-08 14:21:29 本文摘自:51CTO

就在幾周前,GitHub 網(wǎng)站遭受了有史以來最嚴(yán)重的DDoS攻擊。本文中將使用http-traceroute來深入分析此次攻擊的來源。

攻擊真的來自中國嗎?

剝開層層迷霧,深度追蹤針對GitHub的DDoS攻擊

GitHub是全球最大的社交編程及代碼托管網(wǎng)站,上面托管了大量的開源項目,比如就有著名開源操作系統(tǒng)Linux。

瑞典網(wǎng)絡(luò)安全公司Netresec認(rèn)為:

這次DDoS攻擊是通過一些中間人劫持設(shè)備并劫持了世界上其他地方向中國發(fā)起的訪問流量,攻擊者替換了其中的javascript代碼,間接對GitHub發(fā)起攻擊。

由于此次攻擊似乎來自任何地方,這讓GitHub難以抵擋。

用TTL值追蹤中間人攻擊

Netresec 通過查看數(shù)據(jù)包中的 TTL 值可以斷定這是一起中間人攻擊事件。

科普:什么是TTL?

TTL,或者 time-to-live,所有網(wǎng)絡(luò)中的數(shù)據(jù)包中都用這個字段來表示數(shù)據(jù)包經(jīng)過了幾跳。每一次路由器將一個數(shù)據(jù)包發(fā)出去的時候,就會將這個字段減一。當(dāng)這個字段為零的時候,數(shù)據(jù)包將會被丟棄。以防止路由器無限制發(fā)送數(shù)據(jù)包造成死循環(huán)。

很多操作系統(tǒng)發(fā)送數(shù)據(jù)包的時候默認(rèn) TTL 值是64,因此,當(dāng)一個數(shù)據(jù)包到達(dá)的時候,如果 TTL 值為46,我們便會知道這個數(shù)據(jù)包在你的機(jī)器和發(fā)送數(shù)據(jù)包的機(jī)器之間經(jīng)過了18個節(jié)點(64-18=46)。

netresec 所發(fā)現(xiàn)的結(jié)果正如下圖中所示,下圖顯示了客戶端和服務(wù)器之間的一些數(shù)據(jù)包,我機(jī)器發(fā)送給百度服務(wù)器的數(shù)據(jù)包 TTL 起始值是64,第一個響應(yīng)包的 TTL 值是46,因為百度發(fā)送的數(shù)據(jù)包起始值為64,期間經(jīng)過18次路由跳轉(zhuǎn)才到達(dá)我的電腦。當(dāng)我發(fā)起 web 請求之后,我收到的數(shù)據(jù)包中的 TTL 值很奇怪,TTL 值分別是98和99。這表明數(shù)據(jù)包明顯不是來自最初的服務(wù)器,而是一些中間設(shè)備。

剝開層層迷霧,深度追蹤針對GitHub的DDoS攻擊

我知道在我和百度之間肯定有中間人設(shè)備,但是它在哪里?為了回答這個問題,我們使用 traceroute。

Traceroute工具幫了大忙

Traceroute 是一個很棒的工具。它可以發(fā)送TTL 為任意值的數(shù)據(jù)包,比如1,2,3.。。等等。因為有如此低的 TTL,這些數(shù)據(jù)包無法到達(dá)目標(biāo)機(jī)器,當(dāng)這些數(shù)據(jù)包的 TTL 值為0的時候,路由器就會丟掉這個包,并且路由器會返回一個用于通知的數(shù)據(jù)包,叫做Time-Exceeded message,地址是路由器的地址。因此,我可以收集到我喝目標(biāo)服務(wù)器之間的所有路由器。

下圖顯示了這個工具的用法,是我電腦traceroute 到百度服務(wù)器的結(jié)果:

剝開層層迷霧,深度追蹤針對GitHub的DDoS攻擊

第二列是時間,如你所見,從我機(jī)器到Los Angeles用了大概80毫秒,然后,延遲飆到230毫秒才到達(dá)中國,另外,我發(fā)送的數(shù)據(jù)包沒有到達(dá)目標(biāo)服務(wù)器,第16跳得時候遇到了防火墻。

那么中間人劫持的設(shè)備到底在哪里?為了回答這個問題,我需要寫代碼,我自己寫了一個小的 traceroute 工具,它并不是只發(fā)送一個數(shù)據(jù)包,而是首先建立一個有正常TTL 值的鏈接,所以,無論如何數(shù)據(jù)包都可以到達(dá)目標(biāo)機(jī)器,然后,使用發(fā)起一個 http 請求,攜帶的包得 TTL 值是比較小的,所以這個數(shù)據(jù)包在到達(dá)目標(biāo)前就會被丟棄掉,但是,當(dāng)中間人劫持設(shè)備受到這個數(shù)據(jù)包的時候,會更新 TTL 的值,這樣,我就可以發(fā)現(xiàn)中間人設(shè)備在什么地方了。

我發(fā)現(xiàn)中間人設(shè)備潛伏在11和12跳之間。web請求中 TTL 值為11的時候數(shù)據(jù)包沒有響應(yīng),而 TTL 值為12的時候,返回了正常響應(yīng),如下圖所示:

上面黑色被背景的就是我發(fā)送的數(shù)據(jù)包,TTL 值為12,橘黃色的數(shù)據(jù)包(及它上面的兩個數(shù)據(jù)包)是從中間人設(shè)備傳回的數(shù)據(jù)包,當(dāng)我將數(shù)據(jù)包的 TTL 值置為11的時候,不會從中間人設(shè)備獲得響應(yīng)包。

從traceroute的 IP 地址可以看到,中間人設(shè)備放置在中國聯(lián)通的骨干網(wǎng)絡(luò)中。

下一步就是從其他方面 traceroute,從中國到一個被封鎖的地址。用http://www.linkwan.net/tr.htm,這個網(wǎng)站,獲得了如下數(shù)據(jù):

剝開層層迷霧,深度追蹤針對GitHub的DDoS攻擊

  結(jié)論

通過http-traceroute,Netresec判定攻擊 GitHub 的中間人設(shè)備在中國。當(dāng)然,這并不說明此次攻擊就是中國發(fā)起的——還有其他的可能,比如黑客攻擊或控制了這些網(wǎng)絡(luò)設(shè)備。

關(guān)鍵字:數(shù)據(jù)包GitHub任意值

本文摘自:51CTO

電子周刊
回到頂部

關(guān)于我們聯(lián)系我們版權(quán)聲明隱私條款廣告服務(wù)友情鏈接投稿中心招賢納士

企業(yè)網(wǎng)版權(quán)所有 ©2010-2024 京ICP備09108050號-6 京公網(wǎng)安備 11010502049343號

^
  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 辽宁省| 朝阳县| 隆尧县| 吉木乃县| 白河县| 杭州市| 崇仁县| 德阳市| 潼南县| 新蔡县| 临西县| 永兴县| 铁岭县| 白银市| 黄龙县| 正阳县| 闵行区| 铜梁县| 蓬溪县| 庆城县| 曲沃县| 海林市| 潍坊市| 泰和县| 邳州市| 霍山县| 多伦县| 颍上县| 伽师县| 三穗县| 兴业县| 商水县| 吉木萨尔县| 南康市| 兴隆县| 芜湖县| 长汀县| 沿河| 吕梁市| 冀州市| 家居|