簡(jiǎn)析IPv6重定向協(xié)議安全隱患
在IPv6協(xié)議中,重定向報(bào)文的主要作用是為局域網(wǎng)內(nèi)的節(jié)點(diǎn)提供正確的路由選擇。主機(jī)在啟動(dòng)時(shí)具有一定的路由信息,但不一定是最優(yōu)的,通過(guò)IPv6重定向協(xié)議路由器檢測(cè)到IP數(shù)據(jù)報(bào)經(jīng)非最優(yōu)路由傳輸,就通知主機(jī)去往該目的地的最優(yōu)路徑。
在IPv6網(wǎng)絡(luò)中,局域網(wǎng)一個(gè)節(jié)點(diǎn)是允許多個(gè)路由存在的,至于交給誰(shuí)轉(zhuǎn)發(fā)則由優(yōu)先級(jí)決定,但是對(duì)于發(fā)往不同目的數(shù)據(jù)包,第一跳路由的選擇將會(huì)影響數(shù)據(jù)包發(fā)送的效率。
IPv6重定向協(xié)議工作原理:
這種報(bào)文由路由器發(fā)給局域網(wǎng)內(nèi)的節(jié)點(diǎn)。假設(shè)內(nèi)部節(jié)點(diǎn)A要將數(shù)據(jù)包發(fā)送給外部節(jié)點(diǎn)X,當(dāng)路由器B收到這個(gè)數(shù)據(jù)包并要轉(zhuǎn)發(fā)的時(shí)候,B發(fā)現(xiàn)自己和A是出于一個(gè)局域網(wǎng)的,但這個(gè)數(shù)據(jù)包并不是由A直接發(fā)過(guò)來(lái)的,而是由局域網(wǎng)內(nèi)另一個(gè)路由C發(fā)過(guò)來(lái)的,那么B就會(huì)告訴A,如果要發(fā)送數(shù)據(jù)包給X,直接發(fā)給B更好。這也就是報(bào)文中target和destination的意義,在本例中,target就是B的IPv6地址,destination就是X的IPv6地址。而options里面可以包括B的Mac地址,或者包含B幫A轉(zhuǎn)發(fā)的原IP包,這個(gè)IP包,對(duì)于傳輸層的協(xié)議也許會(huì)有幫助。A在收到Redir報(bào)文后自然會(huì)改變?cè)械穆酚杀恚瑢l(fā)往X的數(shù)據(jù)包直接交給B轉(zhuǎn)發(fā)。
IPv6重定向協(xié)議安全隱患分析
IPv6重定向協(xié)議本身的主要功能是為了保證主機(jī)擁有動(dòng)態(tài)的、小而優(yōu)的路由表,以提高報(bào)文的轉(zhuǎn)發(fā)效率。但是由于IPv6重定向協(xié)議同樣缺乏源地址認(rèn)證,對(duì)于局域網(wǎng)惡意節(jié)點(diǎn)來(lái)說(shuō),可以利用IPv6重定向報(bào)文實(shí)現(xiàn)數(shù)據(jù)報(bào)的非法重定向,從而實(shí)現(xiàn)多種攻擊措施。比如它首先偽裝路由器,然后再發(fā)送Redir報(bào)文告訴被攻擊者:發(fā)往某個(gè)外網(wǎng)節(jié)點(diǎn)的數(shù)據(jù)包,走自己這條路由更好,那么被攻擊節(jié)點(diǎn)就會(huì)將數(shù)據(jù)包交由惡意節(jié)點(diǎn)轉(zhuǎn)發(fā),惡意節(jié)點(diǎn)就可以不轉(zhuǎn)發(fā)禁止其通信,或進(jìn)行一些篡改。
惡意節(jié)點(diǎn)利用IPv6路由重定向報(bào)文實(shí)現(xiàn)數(shù)據(jù)報(bào)重定向的基本步驟:
(1) 惡意節(jié)點(diǎn)偽裝路由器
(2) 發(fā)送Redir報(bào)文
(3) 告訴被攻擊者:發(fā)往某個(gè)外網(wǎng)節(jié)點(diǎn)的數(shù)據(jù)報(bào),走攻擊者指定的路由更好
(4) 被攻擊節(jié)點(diǎn)修改路由表,將數(shù)據(jù)報(bào)交由惡意節(jié)點(diǎn)轉(zhuǎn)發(fā)
(5) 惡意節(jié)點(diǎn)控制被攻擊者的數(shù)據(jù)報(bào)
(6) 實(shí)施其它攻擊措施,如,丟棄、篡改等