本文子明特別用通俗的例子,說明ARP欺騙攻擊的原理,使ARP欺騙攻擊原理更加清楚的展現(xiàn)在你的面前。
了解ARP地址解析協(xié)議
我們先來簡(jiǎn)單描述下什么是ARP,ARP是地址解析協(xié)議,ARP協(xié)議主要負(fù)責(zé)將局域網(wǎng)中的32位IP地址轉(zhuǎn)換為對(duì)應(yīng)的48位物理地址,即網(wǎng)卡的MAC地址,比如IP地址為192.168.0.1計(jì)算機(jī)上網(wǎng)卡的MAC地址為00-03-0F-FD-1D-2B。整個(gè)轉(zhuǎn)換過程是一臺(tái)主機(jī)先向目標(biāo)主機(jī)發(fā)送包含IP地址信息的廣播數(shù)據(jù)包,即ARP請(qǐng)求,然后目標(biāo)主機(jī)向該主機(jī)發(fā)送一個(gè)含有IP地址和MAC地址數(shù)據(jù)包,通過協(xié)商這兩個(gè)主機(jī)就可以實(shí)現(xiàn)數(shù)據(jù)傳輸了。
ARP緩存表
在安裝了以太網(wǎng)網(wǎng)絡(luò)適配器(既網(wǎng)卡)的計(jì)算機(jī)中有一個(gè)或多個(gè)ARP緩存表,用于保存IP地址以及經(jīng)過解析的MAC地址。在Windows中要查看或者修改ARP緩存中的信息,可以使用ARP命令來完成,比如在Windows XP的命令提示符窗口中鍵入“ARP -a”或“ARP -g”可以查看ARP緩存中的內(nèi)容;鍵入“ARP -d IPaddress”表示刪除指定的IP地址項(xiàng)(IPaddress表示IP地址)。ARP命令的其他用法可以鍵入“ARP /?”查看幫助信息。
什么是ARP欺騙
將ip地址轉(zhuǎn)換為mac地址是ARP的工作,在網(wǎng)絡(luò)中發(fā)送虛假的ARP respones,就是ARP欺騙。
在現(xiàn)實(shí)中,我們都知道郵政機(jī)構(gòu)的主要職責(zé)就是靠郵差來接收和收發(fā)包裹,我們只要填寫兩個(gè)正確信息:郵政編碼和收件人地址,就可以吧郵件送達(dá)目的地。這中間郵政編碼起到很大的作用,它的主要作用是把相應(yīng)的地址信息用數(shù)字的形式統(tǒng)一編碼,比如:10080,就代表了北京市某個(gè)行政地區(qū)。
如果我們清楚的知道郵政系統(tǒng)是怎樣把包裹送達(dá)目的地,就很容易立即ARP協(xié)議的處理過程。ARP同樣處理需要兩個(gè)信息來完成數(shù)據(jù)傳輸,一個(gè)是IP地址,一個(gè)是MAC地址。所以當(dāng)ARP傳輸數(shù)據(jù)包到目的主機(jī)時(shí),就好像郵局送包裹到目的地,IP地址就是郵政編碼,MAC地址就是收件人地址。ARP的任務(wù)就是把已知的IP地址轉(zhuǎn)換成MAC地址,這中間有復(fù)雜的協(xié)商過程,這就好像郵局內(nèi)部處理不同目的地的郵件一樣。我們都清楚郵局也有可能送錯(cuò)郵件,原因很簡(jiǎn)單,就是搞錯(cuò)了收件人地址,或是搞錯(cuò)了郵政編碼,而這些都是人為的;同理,ARP解析協(xié)議也會(huì)產(chǎn)生這樣的問題,只不過是通過計(jì)算機(jī)搞錯(cuò),比如,在獲得MAC地址時(shí),有其他主機(jī)故意頂替目的主機(jī)的MAC地址,就造成了數(shù)據(jù)包不能準(zhǔn)確到達(dá)。這就是所謂的ARP欺騙。
ARP欺騙會(huì)導(dǎo)致什么問題(這是本文的亮點(diǎn))
假設(shè),李四在北京,郵編是100080。朋友張三要給李四發(fā)一封信,當(dāng)張三發(fā)現(xiàn)通訊錄里沒有李四的郵政編碼,他就把信件發(fā)到了北京市郵局,于是郵局發(fā)了個(gè)廣播給用戶,問誰的地址郵編是10080,結(jié)果李四發(fā)現(xiàn)自己的郵編是10080,李四就會(huì)舉手,說我是。這樣,信件就發(fā)到李四那兒了。同時(shí)李四的地址信息也被張三記在自己的通信錄里面了。
問題來了,如果在廣播的時(shí)候,有人假冒李四,發(fā)出應(yīng)答……。那信件就發(fā)不到李四那兒,并且,張三的通信表里面記錄了錯(cuò)誤的郵編和地址對(duì)應(yīng)的信息。
李四收不到信件,就會(huì)給張三發(fā)信息詢問,張三又重新發(fā),但是他通信錄里面的地址是錯(cuò)誤的,所以,每次發(fā)信李四都收不到。如果這樣反復(fù)詢問,那必然的結(jié)果就是錯(cuò)誤信件越發(fā)越多,郵件的錯(cuò)誤郵件也越收越多,超過了正常的接收量,由于超負(fù)荷運(yùn)轉(zhuǎn),而最終導(dǎo)致郵局徹底癱瘓,郵差也相繼失業(yè)。可憐的李四,他始終沒有收到過張三的郵件。
這就好比是ARP欺騙造成的后果,錯(cuò)誤信件就是錯(cuò)誤數(shù)據(jù)包,當(dāng)它越來越多時(shí),就會(huì)導(dǎo)致網(wǎng)絡(luò)癱瘓,從而導(dǎo)致主機(jī)不能上網(wǎng),影響企業(yè)的正常業(yè)務(wù)運(yùn)轉(zhuǎn)。
通俗易懂的例子是不是更好的理解ARP欺騙攻擊原理了