講述交換機(jī)ACM表的對(duì)應(yīng)關(guān)系
目前的交換機(jī)都支持全雙工。全雙工的好處在于遲延小,速度快,那么交換機(jī)ACM表是什么樣的東西啊,那么就隨我進(jìn)入這個(gè)交換機(jī)ACM表世界吧,希望大家能夠?qū)W習(xí)參考。
大家看到這個(gè)題目可能感覺(jué)有點(diǎn)奇怪,網(wǎng)絡(luò)安全圈里好像沒(méi)有人定義過(guò)這種名詞,起初我也不清楚該定義一個(gè)什么樣的名詞,我只是根據(jù)攻擊的原里定義這樣的名詞,如果那位有更好的建議為他來(lái)填上一個(gè)更響亮的名字,例如“熊貓燒香”等,天下皆知。
這種攻擊方式不知有人研究過(guò)沒(méi),我在網(wǎng)上沒(méi)有看到過(guò),最近一段時(shí)間花費(fèi)了點(diǎn)心思,把這種攻擊技術(shù)稍微鉆研了下,希望能對(duì)安全技術(shù)愛(ài)好者又提供一個(gè)奠基石,但不希望大家用他來(lái)做網(wǎng)絡(luò)破壞,因?yàn)楹蠊車?yán)重,網(wǎng)管很生氣,因?yàn)樗也坏焦粼矗瑢?duì)于防護(hù)這種攻擊目前沒(méi)有很好的解決辦法,所以大家三思而后行。
廢話說(shuō)了不少,進(jìn)入正題。
起初對(duì)于這種攻擊的發(fā)現(xiàn)是來(lái)源早期對(duì)ARP協(xié)議的學(xué)習(xí)與研究,在當(dāng)時(shí)發(fā)現(xiàn)發(fā)送特定格式的ARP數(shù)據(jù)包會(huì)對(duì)網(wǎng)絡(luò)造成一定影響,假如我是B機(jī)器,捕獲到C機(jī)器發(fā)向A的ARP返回包,在B機(jī)器上使用SNIFFER PRO 捕獲后,進(jìn)行數(shù)據(jù)包重放。
就是說(shuō)B機(jī)器上發(fā)出了源MAC 為C機(jī)器的這樣的數(shù)據(jù)包,交換機(jī)時(shí)收到這樣連續(xù)不段的數(shù)據(jù)包時(shí)(發(fā)送的數(shù)量與攻擊的效果有很大關(guān)系)C機(jī)器突然就與網(wǎng)絡(luò)中的其他機(jī)器失去聯(lián)系,網(wǎng)絡(luò)中的其他機(jī)器也訪問(wèn)不到C機(jī)器,根據(jù)抓包發(fā)現(xiàn)C機(jī)器的數(shù)據(jù)包是能夠發(fā)送出去的,只是沒(méi)有收到回應(yīng)包,問(wèn)題出在那里?。
有想法的人肯定會(huì)想到數(shù)據(jù)包被交換機(jī)轉(zhuǎn)發(fā)到B機(jī)器上來(lái)了,為了證實(shí)我們的想法,在B機(jī)器上抓包發(fā)現(xiàn),有很多數(shù)據(jù)包是其他IP對(duì)C機(jī)器的回應(yīng)包。很多人會(huì)不明白為什么會(huì)這樣那。大家知道交換機(jī)和HUB的區(qū)別。
交換機(jī)不對(duì)數(shù)據(jù)包進(jìn)行廣播,他工作的模式是:A機(jī)器--->B機(jī)器的數(shù)據(jù)包 C機(jī)器是接收不到的,應(yīng)為交換機(jī)內(nèi)部有轉(zhuǎn)發(fā)列表(ACM), AMC表的作用是建立MAC地址與端口的對(duì)應(yīng)關(guān)系。
一個(gè)端口可以和很多MAC地址建立對(duì)應(yīng)關(guān)系,(在802.1x下好像只能建立一個(gè)),這看上去沒(méi)什么問(wèn)題,問(wèn)題是出在ACM是實(shí)時(shí)動(dòng)態(tài)更新的, 說(shuō)到這里在看上面的問(wèn)題就清楚了。
原本C機(jī)器發(fā)送數(shù)據(jù)包到A沒(méi)有問(wèn)題,C機(jī)器的MAC在3口建立了臨時(shí)的對(duì)應(yīng)關(guān)系,A機(jī)器收到后如果再與C機(jī)器進(jìn)行通訊,交換機(jī)會(huì)把數(shù)據(jù)包直接轉(zhuǎn)向了3口,他們之間的數(shù)據(jù)連接就會(huì)成功。
在B機(jī)器捕獲到這個(gè)數(shù)據(jù)包時(shí)進(jìn)行連續(xù)重放,剛才也說(shuō)了是從B機(jī)器上發(fā)送源地址為C機(jī)器MAC的數(shù)據(jù)包,數(shù)據(jù)包通過(guò)交換機(jī)時(shí)會(huì)改變C機(jī)器MAC與3口的對(duì)應(yīng)關(guān)系,交換機(jī)發(fā)現(xiàn)這個(gè)數(shù)據(jù)包的源MAC地址是從交換機(jī)的2口發(fā)送。
所以會(huì)建立C機(jī)器的MAC 與2號(hào)端口建立交換機(jī)ACM表的對(duì)應(yīng)關(guān)系,A機(jī)器再發(fā)向C機(jī)器的數(shù)據(jù)包,全被交換機(jī)轉(zhuǎn)到2號(hào)端口B機(jī)器上面,所有就形成了C機(jī)器的斷網(wǎng)現(xiàn)象,大家現(xiàn)在應(yīng)該明白了吧,上面是我自己的理解,可能有些地方解釋的有問(wèn)題,希望大家提出。
下面有人會(huì)說(shuō)C機(jī)器也在不斷的發(fā)包,也會(huì)改變交換機(jī)ACM表上C機(jī)器MAC與2號(hào)端口的對(duì)應(yīng)關(guān)系,上面我也說(shuō)過(guò),這就要看B機(jī)器的重放數(shù)據(jù)包的數(shù)量了,經(jīng)過(guò)我測(cè)試發(fā)現(xiàn)在B機(jī)器重放每秒500-1000個(gè)數(shù)據(jù)包的同時(shí)。
C機(jī)器應(yīng)經(jīng)與機(jī)器不能通訊或通訊非常非常的慢,有意思的是在C機(jī)器上能PING 的通其他機(jī)器,這讓C機(jī)器挺郁悶吧,而且C機(jī)器收不到任何攻擊數(shù)據(jù)包,應(yīng)為是C對(duì)應(yīng)A機(jī)器的數(shù)據(jù)包,沒(méi)有進(jìn)行廣播,如數(shù)據(jù)包的數(shù)量在1萬(wàn)左右,C機(jī)器收不到任何信息。
你又會(huì)說(shuō)為什么不進(jìn)行數(shù)據(jù)包廣播那,應(yīng)為數(shù)據(jù)包進(jìn)行廣播的話,對(duì)交換機(jī)影響很大,會(huì)對(duì)其他機(jī)器造成影響,而且容易讓別人發(fā)現(xiàn)這種數(shù)據(jù)包,(雖然他不查看交換機(jī)MAC表是找不到你,但是就怕他看)。
如果你網(wǎng)絡(luò)很大,廣播對(duì)你自己利用說(shuō)也會(huì)造成影響,所以我們要把數(shù)據(jù)包做成定向發(fā)送,找個(gè)傀儡機(jī)嘍,在上面A就是我們的傀儡機(jī)了,假如還有D機(jī)器的話,在D機(jī)器上抓包是發(fā)現(xiàn)不了這種攻擊的,是不是很可怕,下面還有更可怕的那,大家又要開(kāi)動(dòng)腦筋了,既然可以對(duì)單臺(tái)機(jī)器發(fā)動(dòng)攻擊。
也可以對(duì)網(wǎng)關(guān)發(fā)動(dòng)攻擊,對(duì)網(wǎng)關(guān)發(fā)送攻擊會(huì)出現(xiàn)什么后果那,就是大家都不能和網(wǎng)關(guān)進(jìn)行通訊,網(wǎng)絡(luò)全部斷掉(包括你自己),前提只需在B機(jī)器上發(fā)送源地址為網(wǎng)關(guān)的數(shù)據(jù)包。
我們已經(jīng)說(shuō)了廣播包是最不可取的,那我們就要找個(gè)傀儡機(jī)器,還找機(jī)器A嗎,不行啦,因?yàn)槭嵌ㄏ虬麭機(jī)器和A機(jī)器在同一交換機(jī)上面,所能更改的也只是這臺(tái)交換機(jī)的ACM表,也只是對(duì)這個(gè)交換機(jī)的下面的機(jī)器有影響,我們?cè)趺赐黄品秶牵厦嬲f(shuō)了廣播可以,但是又是最不可行的方法,怎么辦?
放心,聰明人總會(huì)有辦法的,在這個(gè)時(shí)候傀儡機(jī)器的作用顯現(xiàn)出來(lái)了,用專業(yè)術(shù)語(yǔ)說(shuō)下,從B機(jī)器發(fā)送源地址為網(wǎng)關(guān)MAC的數(shù)據(jù)包,它所經(jīng)過(guò)的交換機(jī)都會(huì)被更改與網(wǎng)關(guān)交換機(jī)ACM表的對(duì)應(yīng)關(guān)系。
也就是說(shuō)傀儡機(jī)有多遠(yuǎn)我們攻擊的交換機(jī)就有多遠(yuǎn),所以說(shuō)選擇傀儡機(jī)所在網(wǎng)絡(luò)拓?fù)涞奈恢煤苤匾麤Q定了我們攻擊交換機(jī)的范圍。如果我想讓全網(wǎng)掉線的話,我會(huì)選擇主干交換下面的機(jī)器做傀儡機(jī)器,是不是我很壞。
【編輯推薦】