რა არის ARP (Address Resolution Protocol)?

თქვენ ალბათ იცნობთ IP მისამართების კონცეფციას. ქსელში არსებულ ყველა კომპიუტერს აქვს მინიმუმ ერთი. ქსელებს შორის კომუნიკაციისას, ეს IP მისამართები ცალსახად იდენტიფიცირებენ ქსელის ტრაფიკის წყაროსა და დანიშნულებას, რათა შესაძლებელი იყოს მისი მიწოდება და მასზე სანდო რეაგირება. იმავე ქსელის მოწყობილობასთან კომუნიკაციისას, კომპიუტერი პირდაპირ არ იყენებს IP მისამართს. ამის ნაცვლად, ის თარგმნის ამ IP მისამართს MAC მისამართად. ARP არის პროტოკოლი IP-დან MAC თარგმანების მართვისთვის და ქსელის გარშემო კომუნიკაციისთვის.

ARP ნიშნავს მისამართის რეზოლუციის პროტოკოლს. ეს არის მოქალაქეობის არმქონე პროტოკოლი, რომელსაც აქვს მაუწყებლობის და მოთხოვნა-პასუხის კომპონენტები. ARP ძირითადად გამოიყენება IPv4 ქსელებში, თუმცა სხვა ქსელური სისტემებიც იყენებენ მას. IPv6 ქსელები ახორციელებენ ARP ფუნქციონირებას და ზოგიერთ დამატებით ფუნქციას NDP-ით. ან მეზობლის აღმოჩენის პროტოკოლი.

MAC მისამართები, რომლებიც იდენტიფიცირებულია, ინახება ARP ცხრილში თითოეულ მოწყობილობაზე. ARP ცხრილში ყოველი ჩანაწერი რეგულარულად იწურება. მაგრამ შეიძლება განახლდეს პასიურად, რადგან ARP ტრაფიკი გადაიცემა ქსელში, რაც მინიმუმამდე ამცირებს ARP ტრაფიკის საჭირო რაოდენობას.

ARP გამოძიება და პასუხი

თუ კომპიუტერს სჭირდება ქსელის პაკეტის გადაცემა, ის უყურებს დანიშნულების IP მისამართს. მან იცის, რომ მას სჭირდება როუტერზე გაგზავნა სხვა ქსელის მოწყობილობებისთვის. მას შემდეგ შეუძლია პაკეტის სწორ ქსელში გადაყვანა. თუ პაკეტი განკუთვნილია ლოკალური ქსელის მოწყობილობისთვის, კომპიუტერმა უნდა იცოდეს სწორი MAC მისამართი მის გასაგზავნად.

როგორც პირველი გამოძახების პორტი, კომპიუტერი შეამოწმებს თავის ARP ცხრილს. მას უნდა ჰქონდეს ლოკალურ ქსელში არსებული ყველა ცნობილი მოწყობილობის სია. თუ სამიზნე IP და MAC მისამართი არსებობს, ის გამოიყენებს ARP ცხრილს პაკეტის დასასრულებლად და გასაგზავნად. თუ IP მისამართს არ აქვს ჩანაწერი ARP ცხრილში, კომპიუტერმა უნდა გაარკვიოს ARP ზონდის საშუალებით.

კომპიუტერი ავრცელებს ARP ზონდს ქსელში და ეკითხება „ვის აქვს ”-თან ერთად შეცვალა შესაბამისი IP მისამართი. ქსელში არსებული ყველა მოწყობილობა დაინახავს ამ შეტყობინებას, რადგან ის გადაცემაა. უმეტესობა ამას უგულებელყოფს, რადგან ეს მათზე არ არის მიმართული. მაგრამ მოწყობილობა, რომელსაც აქვს ეს IP მისამართი, უპასუხებს სხვა სამაუწყებლო შეტყობინებით: ” ეკუთვნის ” ისევ თან და შეიცვალა მათი შესაბამისი მნიშვნელობებით. შემდეგ ორიგინალი კომპიუტერი განაახლებს თავის ARP ცხრილს და გაუგზავნის პაკეტს განზრახ მიმღებს.

Შენიშვნა: ARP ზონდის პასუხი ასევე გადაცემაა. ეს საშუალებას აძლევს ყველა სხვა ქსელურ მოწყობილობას განაახლონ თავიანთი ARP ცხრილები იდენტური ARP ზონდების დამზადების მოთხოვნის გარეშე. ეს ხელს უწყობს ARP ტრაფიკის მინიმუმამდე შემცირებას.

ARP ზონდი დაკავშირებისას

როდესაც კომპიუტერი უერთდება ქსელს, მას უნდა ჰქონდეს IP მისამართი. ეს შეიძლება იყოს მითითებული ხელით, მაგრამ, როგორც წესი, დინამიურად არის გამოყოფილი DHCP-ის მიერ (დინამიური მასპინძლის კონტროლის პროტოკოლი) სერვერი. DHCP სერვერი ზოგადად არის ქსელის როუტერის ფუნქცია, მაგრამ მისი გაშვება შესაძლებელია ცალკე მოწყობილობით. როგორც კი ახალ მოწყობილობას ექნება IP მისამართი, ხელით კონფიგურაციის ან DHCP-ის მეშვეობით. მოწყობილობამ სწრაფად უნდა დაადასტუროს, რომ არცერთი სხვა მოწყობილობა უკვე არ იყენებს ამ IP მისამართს.

ამისათვის მოწყობილობა ავრცელებს ARP ზონდის პაკეტს, რომელიც ითხოვს ნებისმიერ მოწყობილობას, რომელიც იყენებს ახლად მინიჭებულ IP მისამართს, რომ უპასუხოს მას. მოსალოდნელი პასუხი სიჩუმეა. არცერთი სხვა მოწყობილობა არ უნდა რეაგირებდეს, განსაკუთრებით DHCP ქსელში. მცირე შეფერხების შემდეგ მოწყობილობა რამდენჯერმე გადასცემს იმავე შეტყობინებას. ეს გამეორება ეხმარება იმ შემთხვევებს, როდესაც ერთი პაკეტი შესაძლოა ჩავარდნილი იყოს კონფლიქტური IP მისამართის მქონე მოწყობილობიდან ან გზაზე. მას შემდეგ, რაც არ იქნება პასუხი რამდენიმე ARP ზონდზე, მოწყობილობას შეუძლია დაიწყოს თავისი ახალი IP მისამართის გამოყენება. ამისათვის მას სჭირდება უსასყიდლო ARP გაგზავნა.

უსასყიდლო ARP

მას შემდეგ რაც მოწყობილობა დაადგენს, რომ IP მისამართი, რომლის გამოყენებაც სურს, არ გამოიყენება, ის აგზავნის უსასყიდლო ARP-ს. ეს უბრალოდ გულისხმობს ქსელში მაუწყებლობას“ აქვს .” ეს, როგორც წესი, ფორმატირებულია ისე, თითქოს ეს იყო პასუხი სტანდარტულ ARP ზონდზე, მხოლოდ ARP ზონდის გარეშე, რომელიც მას ოდესმე ითხოვს, აქედან გამომდინარე, სახელწოდება "უსასყიდლო ARP".

უსასყიდლო ARP მოთხოვნები ასევე რეგულარულად იგზავნება ქსელში, როგორც შეხსენება ყველა სხვა მოწყობილობაზე, რომ კომპიუტერი ჯერ კიდევ დაკავშირებულია, ონლაინ რეჟიმში და აქვს თავისი IP მისამართი.

ARP გაფუჭება

ARP არის მოქალაქეობის არმქონე პროტოკოლი, არ არის კავშირი და ყველა შეტყობინება ვრცელდება ქსელში. ყველა მოწყობილობა უსმენს და ქეშირებს ARP პასუხებს თავის ARP ცხრილებში. თუმცა, ეს იწვევს სისტემის დაუცველობას. თუ ვივარაუდებთ, რომ თავდამსხმელს შეუძლია ფიზიკურად დაუკავშირდეს ქსელს, მათ შეუძლიათ გაუშვან პროგრამული უზრუნველყოფა, რომელიც მავნედ ავრცელებს არასწორ უსასყიდლო ARP საპასუხო პაკეტებს. ქსელში არსებული ყველა მოწყობილობა დაინახავს მავნე ARP პაკეტებს, ცალსახად ენდობა მათ და განაახლებს მათ მარშრუტიზაციის ცხრილებს. ამ ახლა არასწორ ARP ცხრილებს მოიხსენიებენ, როგორც "მოწამლულ".

ეს შეიძლება გამოყენებულ იქნას ქსელის პრობლემების გამოსაწვევად, ტრაფიკის არასწორი მიმართულებით მითითებით. თუმცა არის უარესი სცენარი. თუ თავდამსხმელი გააფუჭებს ARP პაკეტებს როუტერის IP მისამართისთვის და მიუთითებს მათ საკუთარ მოწყობილობაზე, ისინი მიიღებენ და შეძლებენ ნახონ მთელი ქსელის ტრაფიკი. ვივარაუდოთ, რომ მოწყობილობას აქვს სხვა ქსელური კავშირი ტრაფიკის გადასატანად, მას შეუძლია მიიღოს კაცი შუაში (MitM) პოზიცია. ეს საშუალებას აძლევს თავდამსხმელს განახორციელოს ისეთი საშინელი შეტევები, როგორიცაა HTTPS stripping, რაც მათ საშუალებას აძლევს დაინახონ და შეცვალონ მთელი ქსელის ტრაფიკი.

Შენიშვნა: არსებობს გარკვეული დაცვა MitM შეტევებისგან. თავდამსხმელი ვერ შეძლებს ვებსაიტის HTTPS სერტიფიკატის დუბლირებას. ნებისმიერმა მომხმარებელმა, რომელსაც ტრაფიკი აკავებს, უნდა მიიღოს ბრაუზერის სერტიფიკატის შეცდომები.

თუმცა, არსებობს მრავალი აუცილებელი და დაშიფრული კომუნიკაცია, განსაკუთრებით შიდა ქსელში. ეს ასე არ არის სახლის ქსელში. მიუხედავად ამისა, Windows-ზე აგებული კორპორატიული ქსელები განსაკუთრებით დაუცველია ARP-ის გაყალბების შეტევების მიმართ.

ARP მოწამვლა საშუალებას აძლევს MitM შეტევებს – წყარო: ვიკიპედია

დასკვნა

ARP ნიშნავს მისამართის რეზოლუციის პროტოკოლს. იგი გამოიყენება IPv4 ქსელებში IP მისამართების MAC მისამართებზე გადასათარგმნად, როგორც ეს საჭიროა ლოკალურ ქსელებში. იგი შედგება მოქალაქეობის არმქონე მოთხოვნისა და საპასუხო გადაცემებისგან. პასუხები ან მათი ნაკლებობა საშუალებას აძლევს მოწყობილობას განსაზღვროს, თუ რომელ MAC მისამართს უკავშირდება IP მისამართი, ან არის თუ არა IP მისამართი გამოუყენებელი. მოწყობილობები ქეშირებენ ARP პასუხებს მათი ARP ცხრილების განახლებისთვის.

მოწყობილობებს ასევე შეუძლიათ რეგულარულად გაავრცელონ უსასყიდლო განცხადებები, რომ მათი MAC მისამართი ასოცირდება მათ IP მისამართთან. ავთენტიფიკაციის მექანიზმის არარსებობა საშუალებას აძლევს მავნე მომხმარებელს გაავრცელოს ყალბი ARP პაკეტები ARP ცხრილების მოწამვლის მიზნით და ტრაფიკი თავად მიმართოს ტრაფიკის ანალიზის ან MitM შეტევების შესასრულებლად.