ARP spoofing

## **ARP-spoofing** 
(Arp-poisoning ) – arp-хууралт (arp-хордуулалт)
MITM төрлийн сүлжээний халдлага, arp протокол ашиглан сүлжээнд хэрэглэгддэг. Гол төлөв Ethernet сүлжээнд хэрэглэгддэг. Халдлага нь ARP протоколын сул тал дээр суурилсан.

Алсын хайлтын алгоритм компьютерийн сүлжээнд хэрэглэгдэх үед энэ нь ердийн алсын сүлжээний халдлагуудын хэрэгжүүлэх боломжтой гэж үздэг. ARP протоколын аюулгүй байдлын дүн шинжилгээнд халдлагад өртөж байгаа хост түүний ARP хүсэлтийг барьж авдаг. Ингэснээр та өөрийгөө хүссэн хостоор зарлаж хуурамч ARP-хариу илгээснээр сүлжээний урсгалыг буруу тийш хазайлгаж бүрэн хянана.

### **ARP** **протокол**  
(Address Resolution Protocol – хаягийн зөвшөөрлийн протокол) сүлжээний төхөөрөмжийн IP хаяг болон түүний MAC хаягийг холбоход ашигладаг сүлжээний протокол бөгөөд сүлжээний давхарга төхөөрөмж, LAN ба WAN хоорондын харилцаа холбоог бий болгох зориулалттай.

### ARP протоколын тухай
ARP protocol нь RFC826-д агуулагддаг. Internet-ийн сүлжээ нь өндөр хурдтай LAN ( жишээ нь enthernet, token ring мөн FDDI )-тэй хамт хөгжиж ирсэн бол TCP/IP нь тэгэж хөгжөөгүй юм. Ethernet сүлжээ нь анх 1980 онд гарсан ба 1982 онд 2-р хувилбар нь гарснаар улам өргөжин хөгжсөн.LAN сүлжээний дизайнерууд сүлжээний attachment (хамтран эзэмшилт)-ийг таниулахын тулд 48 битийн хувиарлалт хийсэн. (зориулсан) Энэ нь тэдгээрийн физик хаяг буюу МАС хаяг нь болж өгсөн. Эдгээр хаяг нь хэрэглэгчдийг (station) тэдгээрийн datalink түвшинд таниулдаг. IP нь сүлжээний түвшний (network level ) хаяглалтанд ашиглагддаг. LAN-д хоёр station бие биенийхээ физик хаягийг мэдсэн тохиолдолд холболт тогтоож болно.

### **Ажиллах зарчим**
MAC хаягыг  нь мэдэхгүй тохиолдолд ямар ч сүлжээнд өгөгдөл дамжуулах боломжгүй байдаг. Тиймээс сүлжээний бүх төхөөрөмжүүд өөр дээрээ ARP table буюу ARP хүснэгттэй байдаг. Энэ хүснэгтэнд сүлжээн дотор байгаа төхөөрөмжүүдийн (switch, router, pc, laptop, smartphone…) IP хаяг болон MAC хаягууд хадгалагдаж байдаг. Та өөрийн хэрэглэж буй компьютер дээрээ доорх командаар ARP Table – ыг шалгаж болно.

Энэ хүснэгтэн дээрх хаягуудыг ARP протокол нь ARP Request, response ашиглан олж авдаг. Доорх зурган дээр ARP Request, Response – ийг харуулсан байна, 192.168.1.105 гэдэг IP хаяг ямар MAC Address – дээр байгааг мэдэхгүй учраас энэ хүсэлтийг сүлжээгээр broadcast байдлаар цацсан байна,  энэ нь энэхүү хүсэлт сүлжээн дотор байгаа бүх л сүлжээний төхөөрөмжүүдэд хүрнэ гэсэн үг. Ингэж сүлжээгээр нэлэнхүйд нь өгөгдөл цацахыг broadcast гэдэг бөгөөд үүний тулд MAC хаягын түвшинд Destination Mac address – ийг FF:FF:FF:FF:FF:FF болгож өгдөг. Үүнийг хүлээн авсан сүлжээний төхөөрөмж тухайлбал Layer 2 switch – нь өөрийн бүх портруугаа илгээдэг.  Ингэж илгээсэн хүсэлтийг сүлжээнд дотор байгаа бүх л төхөөрөмжүүд хүлээн авах бөгөөд боловсруулахдаа ARP протоколын түвшинд Target IP Address нь өөрийнх нь хаяг биш байвал зүгээр л юу ч хийлгүй орхидог, харин өөрийнх нь хаяг мөн байгаа тохиолдолд Source төхөөрөмж рүү ARP Response – ийг өөрийнхөө MAC Address – аар нөхөөд хариу илгээдэг.

### **ARP бүтэц** 
:Энэ протокол нь физик хаягт интернетийн хаягийн байршлыг тогтоогч (mapping) үйлчилгээг гаргана. Энэ нь мэдээллийг интернетээр чиглүүлэхэд амин чухал юм.
Дохио (эсвэл өөр өгөгдөл) илгээгдэхийн өмнө интернетийн дамжуулалт тээвэрлэлтэд зориулагдсан IP пакетуудад өөрөөр мэдээллийн блок болон багцлагддаг. Эдгээр нь үүсгэсэн болон очих машинуудын хоёулангийнх нь интернет хаягийг (IP) агуулдаг. Эдгээр багцууд нь үүсгэсэн машинаа орхин явахын өмнө хүрэх машиных нь физик хаяг нь мөн тодорхойлогдсон байх ёстой (физик хаяг нь IP хаягаас ялгаатай). Энэ бол ARP –ын ажлын эхний хэсэг юм. ARP-ын хүсэлтийн дохио дотоод сүлжээгээр ( subnet ) тархана. Энэ хүсэлт нь чиглүүлэгчээр дамжигдах ба хариуд нь ирэх физик хаяг нь мөн түүгээр дамжигдан ирнэ. Энэ хариулт нь хүсэлт үүсгэсэн машинд баригдаж дамжуулалт эхэлдэг. ARP-ын дизайнд КЭШ санах ойн (cash ) загвар багтсан байдаг. Үүнд ихэнх орчин үеийн броузерууд (Netscape Navigator, Internet Explorer) кэшийг ашигладаг. Кэш нь дискний(эсвэл санах ойн) хэсэг бөгөөд түүнд зорчсон Web хуудсуудын элементүүд (товчнууд,хуудсын толгойнууд, ба энгийн графикууд) хадгалагддаг. Энэ нь уг хуудаст буцан орох (back) үед дахин гадаад машинаас ачаалах шаардлаггүй болох юм. Хэрэв энэ хуудас нь чиний дотоод кэшт байгаа бол тэндээс улам хурдан дуудагддаг. Бидний тохиолдолд дуудагдсан машины физик хаяг нь хадгалагдах бөгөөд энэ нь цаг хугацаа нөөцийг хэмнэнэ. Гэвч энэ нь кракеруудад ямар нэг машины кэш дэх хаягуудын нэгийг ашиглан гадаад машинтай холбоо тогтоох боломжийг ямар нэг хэмжээгээр олгодог юм

### **ARP төрөл** 
Inverse Address Resolution Protocol
(Урвуу ARP эсвэл RARP) Сүлжээний Layer хаяг IP хаягууд Data Link Layer (Layer 2) хаягууд нь бусад цэгийг олж авч ашигладаг. Энэ нь юуны өмнө Frame Relay (DLCI) болон ATM сүлжээг ашиглаж байгаа бөгөөд Layer-д виртуаль хэлхээ 2 хаяг заримдаа Layer 2-р дохиолол авсан байдаг ба тэдгээр нь виртуал хэлхээ ашиглаж болно өмнө нь харгалзах Давхарга 3 хаягууд нь бэлэн байх ёстой.

Reverse Address Resolution Protocol
ARP буюу RARP : RARP шиг Түвшин 2 хаягийг 3 хаягийг давхарга руу хөрвүүлнэ. Гэсэн хэдий ч, RARP-д хүсэлт станц өөр нэг зангилааны Давхарга 3 хаяг, RARP хаяг тохиргооны зорилгоор хүсэлт станц өөрөө Давхарга 3 хаягийг олж авахын тулд ашиглаж байгаа бол асуулга. RARP хуучирсан байх. Энэ нь BOOTP, дараа нь Dynamic Host Configuration Protocol (DHCP) нь хүчингүй болон солигдсон байна.

ARP нь сүлжээн дээр хариу танилтын хувьд аргыг хангаж чадахгүй учраас ARP шаардлагатай Layer 2-р хаягаар нэгээс бусад системээс ирж болно. Хариу нь ARP прокси нь ихэвчлэн ийм залгадаг интернэт үйлчилгээний хувьд сүлжээний загвар, нэг хэсэг болгон, учир нь энэ нь урсгалыг дамжуулдаггүй юм өөр системийн нэрийн өмнөөс ARP хүсэлтийг хариулдаг систем юм. Харин ARP-д хариулах системийг хууран мэхлэлтээс, эсвэл spoofer тухайн системийн хувьд үүрэг мэдээллийг замаас нь зорилгоор өөр системийн хаяг нь хүсэлтэд хариу. A хортой хэрэглэгч гүйцэтгэх ARP хууран мэхлэлтээс ашиглаж болох хүн-д-дунд, эсвэл сүлжээн дэх бусад хэрэглэгчдийн мэдээлэл дээр хаасныг-ийн үйлчилгээний халдлага. Төрөл бүрийн програм хангамж, илрүүлэх, ARP хууран дайралт хийх аль алинд нь ARP нь өөрөө ийм халдлагаас хамгаалах ямар нэгэн арга хангаж чадахгүй гэсэн байдаг.

= **ARP эмзэг байдал** =
ARP table буюу ARP хүснэгт нь нэг л үүссэн бол байнгынх биш, үргэлж өөрчлөгдөж байдаг, учир нь сүлжээний IP address – ууд үргэлж өөрчлөгдөж байх боломжтой байдгаас тэр.  Яг л энэ цэг дээр ARP Poisoning attack ажиллаж эхлэдэг.

### **ARP-spoofing халдлага** 
Энэхүү халдлагийн процессыг энгийнээр тайлбарлавал багш сурагчдыг ирцийн журнал дээр бүртгэж байна гэж төсөөлий. Энэ ARP хүснэгтийг бөглөхтэй адил юм. Багш олон хүүхдүүд дундаас Хүдэр гэдэг хүүхдийг олхын тулд “Та нар дунд Хүдэр гэдэг хүн байна уу” гэж хашгирахтай адил. Хэрвээ Хүдэр байгаа бол “би байна аа” гээд гарч ирнэ. Багш журнал дээрээ тэмдэглэнэ. Харин бусад нь юу ч хийхгүй.  Харин халдлага хийх гэж байгаа хүн багшийн “Та нар дунд Хүдэр гэдэг хүн байна уу” асуултанд  “би байна аа” гэж Хүдэртэй цуг хариулна. Энэ тохиолдолд багш түүнийг 2 өөр хүн гэж авч үзэхгүй бөгөөд журнал дээрээ Хүдэрийг байна гэж тэмдэглэнэ. Гэвч үүний цаана халдагч этгээд Хүдэр гэдэг хуурамч нэртэй болж бүгдийг төөрөгдөлд оруулна.

ARP Poisoning attack – ийг хийж буй Хост компьютер нь бусад төхөөрөмжүүд рүүгээ хуурамч ARP response явуулж төөрөгдөлд оруулдаг. Жишээ болгон хэлэхэд хуурамч ARP Response – нь 192.168.1.105 нь энэ MAC хаяган дээр байгаа шүү гэж өөрийнхөө MAC хаягыг илгээж мэдэгдэхэд сүлжээн дотор байгаа төхөөрөмжүүд өгөгдлөө 192.168.1.105 – руу дамжуулахдаа ARP poisoning attack хийж буй хост руу дамжуулж эхлэдэг, үүнийг хүлээж авсан хост цааш нь өгөгдлийг өөрчлөөд эсвэл шууд дамжуулдаг. Мөн дайралтанд өртөж буй төхөөрөмжүүд рүү чиглэсэн өгөгдлийг ч гэсэн адил зарчмаар барьж аваад эргүүлэн дамжуулдаг. Ингэж ARP-spoofing халдлага хийгдэнэ. 

M болон N хооронд X халдагч ARP-spoofing 

халдлага хийсний дараах байдал.

### **ARP-spoofing халдлага хийх хэрэгслүүд** 
* •	Cain & Abel,
* •	dsniff,
* •	arp-sk,
* •	ARP Builder,
* •	AyCarrumba.
* •	Intercepter-ng
* •	Simsang
* •	Ettercap

### **ARP-spoofing халдлага илрүүлэх түүнээс урьдчилан сэргийлэх** 
Програм хангамжын аргаар илрүүлэх эсвэл техник хангамжын аргаар сэргийлж болно

### **arpwatch, BitCometAntiARP программ** 
Эдгээр программууд нь тухайн өгөгдсөн интерфейс дээр ARP протоколд хяналт тавьдаг. Гэвч ARP-spoofing халдлага илрүүлдэг боловч түүнээс урьдчилан сэргийлж чаддаггүй. Хэрвээ урьдчилан сэргийлэх бол тухайн сүлжээний админ шаардлатай болно.

### **VLAN зохион байгуулалттай сүлжээ** 
Локал сүлжээний VLAN тооны хуваарилалт нь ARP-spoofing  халдлага хийхэд зөвхөн нэг VLAN-д байгаа компьютерууд уруу хэрэглэж болно. Аюулгүй байдал талаасаа хамгийн тохиромжтой нөхцөл байдал, ижил VLAN-д зөвхөн нэг компьютер, чиглүүлэгч интерфэйсийн оролцох юм. ARP-spoofing нь энэхүү хэсгийн хувьд боломжгүй юм.

### **Статикаар ARP тохиргоог хийх** 
Статикаар ARP-хүснэгтүүдийг бий болгох замаар ARP-spoofing  халдлагаас зайлсхийх болно. Энэ нөхцөлд халдлага хийгч этгээд ARP хүснэгтийг комьпютерын интерфейсээр  ARP хариугаар хүснэгтийг шинэчилж чадахгүй болно.

### **Нууцлалын шифрлэлт ашиглах** 
ARP-spoofing  халдлагаас урьдчилан сэргийлхийн тулд (дурын MITM халдлагаас сэргийлэхтэй адил)  дамжуулсан мэдээллийг хамгаалахдаа, шифрлэлтийн протоколуудыг ашиглаж болно. Жишээлбэл  PPPoE эсвэл IPSec байж болно.

Ангилал:Аюулгүй байдлын цоорхой
Ангилал:Сүлжээний протокол