Arp
Το arp (Address Resolution Protocol) πρωτόκολλο λειτουργεί το υπόβαθρο κάθε τοπικού tcp/ip δικτύου. Το κακό είναι ότι θα μπορούσε κάποιος να εκμεταλλευτεί μια αδυναμία του πρωτοκόλλου για να κλέψει πληροφορίες από το δίκτυό μας.
Κάθε κάρτα δικτύου έχει έναν μοναδικό κωδικό, που λέγεται mac address. Αν και όταν στήνουμε κάποιο τοπικό δίκτυο, όλες οι ρυθμίσεις γίνονται από εμάς με τις ip διευθύνσεις, στην πραγματικότητα, η επικοινωνία σε ένα τοπικό δίκτυο, γίνεται με βάση της mac διευθύνσεις των καρτών δικτύου. Για να δείτε τις mac διευθύνσεις, από τις κάρτες δικτύου που έχετε στον υπολογιστή σας πληκτρολογήστε στην κονσόλα εντολών των windows getmac.
Ας υποθέσουμε, ότι ο υπολογιστής μας με όνομα pc1 έχει ip την ip1 και διεύθυνση mac της κάρτας δικτύου την mac1. Ο υπολογιστής μας συνδέεται στην πόρτα 1 του switch. Θέλουμε να επικοινωνήσουμε με τον υπολογιστή pc5 που αντίστοιχα έχει ip5, mac5 και συνδέεται στην πόρτα 5 του switch. Πριν επικοινωνήσει με τον υπολογιστή που έχει ip5 θα αναζητήσει στην τοπική arp μνήμη του, αν υπάρχει, αντιστοιχία μεταξύ της ip5 με κάποια mac address. Σε περίπτωση που βρει αντιστοιχία θα στείλει τα δεδομένα στην αντίστοιχη mac. Αν θέλετε να δείτε τις καταχωρήσεις στην μνήμη arp του υπολογιστή σας στην κονσόλα εντολών πληκτρολογήστε arp-a
Στην παραπάνω φωτογραφία, όπου ως τύπος εμφανίζεται στατικό είναι δεσμευμένες ip για συγκεκριμένες εργασίες στο δίκτυο, δηλαδή δεν αντιστοιχούν σε πραγματικές συσκευές.
Στην περίπτωση που δεν υπάρχει εγγραφή στην μνήμη arp του υπολογιστή μας, με την αντιστοιχία μεταξύ της ip που θέλουμε να επικοινωνήσουμε και την mac address, τότε ο υπολογιστής μας θα στείλει ένα ειδικό πακέτο στο δίκτυο, που θα ζητάει να μάθει την αντιστοιχία μεταξύ της ip5 για να μείνουμε στο παράδειγμα μας και της mac address της κάρτας δικτύου που έχει αυτή την ip. Όταν λάβει το switch αυτό το πακέτο θα κάνει 2 πράγματα.
- Θα καταγράψει στην εσωτερική του μνήμη,ότι ο υπολογιστής με την mac1 συνδέεται στην πόρτα νούμερο 1
- Θα εκπέμψει αυτό το πακέτο από όλες τις πόρτες που διαθέτει το switch εκτός από την πόρτα από την οποία προήρθε το πακέτο.
Όταν φτάσει αυτό το πακέτο στον υπολογιστή που έχει την ip5 τότε αυτός θα στείλει ένα πακέτο απάντησης. Σε αυτή την περίπτωση το switch θα καταγράψει ότι ο υπολογιστής με την mac5 συνδέεται στην πόρτα νούμερο 5 και θα στείλει την απάντηση στον υπολογιστή μας. Ο υπολογιστής μας θα αποθηκεύσει τον συσχετισμό στην μνήμη arp και θα στείλει τα δεδομένα στην mac5. Όταν το switch μας λάβει τα δεδομένα στην πόρτα 1 από τον υπολογιστή μας, θα τα στείλει απευθείας στην πόρτα με το νούμερο 5. Αφού από την προηγούμενη διαδικασία ξέρει ότι η κάρτα δικτύου με την mac5 συνδέεται στην πόρτα νούμερο 5.
Στην περίπτωση που κανένας υπολογιστής του τοπικού δικτύου δεν στείλει απάντηση, τότε ο υπολογιστής μας επικοινωνεί με την προεπιλεγμένη πύλη και ζητά από αυτήν να ανακαλύψει σε ποιο δίκτυο ανήκει η συγκεκριμένη ip. Δηλαδή όταν θέλετε να δείτε κάποια σελίδα στο internet π.χ. το greekz.cu.cc στην πραγματικότητα, αυτή αναζητάτε από τον υπολογιστή σας πρώτα στο τοπικό σας δίκτυο.
Το πρόβλημα με το arp, είναι ότι δεν υπάρχει κάποιος μηχανισμός πιστοποίησης. Αυτό σημαίνει ότι ενώ στο παράδειγμά μας, εγώ αναζητώ τον υπολογιστή με την ip5, θα μπορούσε κάποιος με ειδικό πρόγραμμα να βάλει τον υπολογιστή pc2 να απαντήσει θετικά και έτσι ενώ εγώ θέλω να στείλω δεδομένα στον υπολογιστή pc5 να τα στέλνω στον υπολογιστή pc2. Αυτό το φαινόμενο ονομάζεται arp poisoning και αυτού του είδους η επίθεση man in the middle attack.
Αν θέλετε να διαγράψετε κάποια καταχώρηση από την μνήμη arp του υπολογιστή σας χρησιμοποιήστε το arp -d ipaddress όπου ipaddress είναι η ip που θέλετε να διαγράψετε. Μπορείτε να χρησιμοποιείστε και χαρακτήρες μπαλαντέρ. Ενώ αν θέλετε να διαγράψτε όλη την arp μνήμη πληκτρολογήστε arp -d *
Για τις τελευταίες 2 εντολές θα πρέπει να εκτελέσετε την κονσόλα εντολών με δικαιώματα διαχειριστή.