Το προφίλ μας στο Google Plus
9

Πώς δουλεύουν τα δίκτυα: Encapsulation, demultiplexing, ports κι ανακατευθύνσεις

Το έχετε παρατηρήσει; Συχνά αναφερόμαστε σε εντελώς αφηρημένες έννοιες λες και πρόκειται για χειροπιαστά πράγματα με αληθινή, φυσική υπόσταση. Αν όμως σταθούμε για μια στιγμή κι αναλογιστούμε τι ακριβώς είν’ αυτό για το οποίο μιλάμε με τόση άνεση, αρκετές φορές δυσκολευόμαστε ή αδυνατούμε να δώσουμε μια ικανοποιητική –πόσο μάλλον ακριβή– περιγραφή.

deltaHacker 018 (τεύχος Μαρτίου 2013) | Πώς δουλεύουν τα δίκτυα: Encapsulation, demultiplexing, ports κι ανακατευθύνσεις

Εδώ που τα λέμε, αυτή μας η συμπεριφορά δεν είναι καθόλου παράξενη. Τουναντίον, η λεγόμενη αφηρημένη σκέψη είναι μια ξεχωριστή, εξαιρετικά χρήσιμη ικανότητα του ανθρώπινου νου. Σε αντίθεση με τα ζώα, μπορούμε, π.χ., να μιλάμε με χαρακτηριστική άνεση για τον κύκλο, τον αριθμό 5, ένα εξωτικό νησί ή το 75%, και να μην εννοούμε κάτι συγκεκριμένο — ούτε καν κάτι το χειροπιαστό. Αντίθετα, μπορούμε να αναφερόμαστε σε ολόκληρες κατηγορίες. Βεβαίως, η αφηρημένη σκέψη μάς επιτρέπει να σκεπτόμαστε και μεταφορικά. Αυτό κάνουμε όταν, π.χ., μιλάμε για την υπερχείλιση στοίβας ή για τη θύρα 1194/UDP.

Έχουμε μάλιστα την ικανότητα να στηριζόμαστε πάνω σε εντελώς αφηρημένες έννοιες και να εισάγουμε νέες ή ακόμη και να δημιουργούμε πράγματα που υφίστανται στον πραγματικό κόσμο. Πάρτε για παράδειγμα το Internet. Είναι ένα ανθρώπινο, εξαιρετικά πολύπλοκο δημιούργημα που βασίζεται πάνω στην αφηρημένη έννοια του TCP/IP stack, η οποία με τη σειρά της βασίζεται στην αφηρημένη έννοια του πρωτοκόλλου επικοινωνίας. Διαβάστε το σχετικό άρθρο στο deltaHacker 004 και θα δείτε για τι πράγμα μιλάμε.

Ενώ λοιπόν συχνά είναι απόλυτα φυσιολογικό να αναφερόμαστε σε αφηρημένες έννοιες ή/και να χρησιμοποιούμε μεταφορές χωρίς να είμαστε 100% σίγουροι για τι πράγμα μιλάμε, από την άλλη εσείς τώρα διαβάζετε ένα περιοδικό με τον τίτλο “deltaHacker” στο εξώφυλλό του. Το χάκινγκ, όπως πολύ καλά γνωρίζετε, είναι κάτι που για διαφορετικούς ανθρώπους σημαίνει διαφορετικά πράγματα. Μπορεί δηλαδή ν’ αρχίσουμε και να συζητάμε με τις ώρες για το χάκινγκ, τους χάκερς, την ηθική τους, τι ακριβώς κάνουν, τι τους αρέσει, αν πράγματι καταναλώνουν υπερβολικές ποσότητες πίτσας κ.λπ. κ.λπ., και τελικά άκρη να μη βγάλουμε. Στοιχηματίζουμε όμως ότι όλοι θα συμφωνήσουμε στο εξής: Οι (σωστοί) χάκερς ανήκουν σ’ εκείνη την κατηγορία των ανθρώπων, οι οποίοι θέλουν να γνωρίζουν πολύ καλά για τι πράγμα μιλάνε. Το ίδιο ισχύει και για εκείνους που δεν θεωρούν εαυτούς χάκερ, ωστόσο τους αρέσει να διαβάζουν ένα περιοδικό με τον τίτλο “deltaHacker” –πού αλλού– στο εξώφυλλό του.

Υπάρχουν πολλά παραδείγματα που θα μπορούσαμε να δώσουμε για να στηρίξουμε την υπόθεσή μας — και δεν θα χρειαζόταν καν να καταφύγουμε σε μεταφορές. Για να τιμήσουμε ωστόσο τον τίτλο αλλά και το κεντρικό θέμα του παρόντος άρθρου, ας μιλήσουμε για την εντελώς αφηρημένη έννοια της θύρας, πόρτας ή port. Όπως θέλετε πείτε το, σημασία δεν έχει.

Σημασία έχει ότι συχά πυκνά μιλάμε για ανοικτά και κλειστά ports, τα οποία άλλες φορές είναι TCP κι άλλες UDP. Μετά βέβαια είναι και το port forwarding, το οποίο το κάνουν οι routers κι ευτυχώς δηλαδή που το κάνουν, γιατί αλλιώς πώς θα μπαίναμε στον υπολογιστή που βρίσκεται στο σπίτι στην Καλαμαριά, από την καφετέρια στην Αριστοτέλους, την παραλία στο Λευκαντί ή το Κέφλαβικ, που είναι το διεθνές αεροδρόμιο της Ισλανδίας.

Προσέξτε τώρα τι γίνεται: Ενώ όλοι μιλάμε με άνεση για ports, πρωτόκολλα μεταφοράς κι ανακατευθύνσεις, αυτό δεν σημαίνει ότι όλοι κατανοούμε τι στο καλό είναι, επιτέλους, ένα port, ούτε γιατί είναι απαραίτητο αυτό το port forwarding. Πιστεύετε ότι υπερβάλλουμε; Αν ναι, σας προκαλούμε να δώσετε τώρα, από μέσα σας, μια ακριβή περιγραφή της έννοιας του port. Αν το πετύχετε, ε, τότε δεν έχετε κανένα λόγο να συνεχίσετε το διάβασμα του παρόντος άρθρου. Πριν όμως φύγετε, παρακαλούμε, μείνετε για λίγο και πείτε μας πόσες φορές έχετε εξηγήσει, ξανά και ξανά, τι είναι το port forwarding, γιατί χρειάζεται να γίνεται και, το σημαντικότερο, πώς στο καλό γινέται.

Νομίζουμε ότι, ως περιοδικό που αν μη τι άλλο τιμά το όνομά του, έχει έρθει η ώρα να βάλουμε τα πράγματα σε μια σειρά, φυσικά και να εξηγήσουμε επακριβώς όλες αυτές τις –χρήσιμες, πρέπει να πούμε– έννοιες. Για τη συνέχεια θεωρούμε δεδομένο ότι έχετε διαβάσει τουλάχιστον το άρθρο που ξεκινά από τη σελίδα 12 του deltaHacker 004. Επίσης, καλό θα ήταν να έχετε διαβάσει κι εκείνο που ξεκινά από τη σελίδα 90 του deltaHacker 005, όπως επίσης και το άρθρο περί subnetting, στο site του περιοδικού.

Διαβάστε ολόκληρο το άρθρο στο deltaHacker 018 (τεύχος Μαρτίου 2013).

Όλες τις πληροφορίες για τις συνδρομές στο deltaHacker, το μοναδικό μηνιαίο περιοδικό με θεματολογία ethical hacking, δίκτυα, ασφάλεια, προγραμματισμό και ηλεκτρονικά, θα τις βρείτε εδώ ακριβώς.

Το περιοδικό deltaHacker δεν κυκλοφορεί στα περίπτερα, στους αναγνώστες του αποστέλλεται ταχυδρομικώς και οι παραγγελίες γίνονται αποκλειστικά online, συμπληρώνοντας τη σχετική φόρμα.

Σημείωση: Οι συνδρομές μπορούν να ξεκινούν από όποιο τεύχος επιθυμείτε, αρκεί να υπάρχει σε stock.

9 Responses to “Πώς δουλεύουν τα δίκτυα: Encapsulation, demultiplexing, ports κι ανακατευθύνσεις”

  1. tr3quart1sta | 20/04/2013 at 22:39

    Όταν αλλάζουμε ports (π.χ. 51143 αντί για 22) έχει αξία να το κάνουμε στο wan interface του router? Το λέω επειδή εάν κάποιος έκανε ένα nmap scan (ή κάτι αντίστοιχο) δεν θα μπορούσε να δεί έτσι κι αλλιώς αυτή την αλλαγή?

    Βλέπω ας πούμε στα παραδείγματα στη σελίδα 38, πακέτα που φτάνουν στο port 50129 του wan interface να στέλνονται στο port 22 του μηχανήματος με ip 192.168.99.10 του lan.

    Δεν θα ήταν πολύ πιο αποτελεσματικό να γινότανε το ανάποδο (22 wan -> 50129 lan), αφού ο “επιτιθέμενος” δεν θα μπορούσε να σκανάρει τα ανοιχτά ports των server πίσω από το router (ή γίνεται??) ?

    (εννοείτε ότι, εάν αλλάζανε και τα δύο ports, ακόμη καλύτερα)

    • subZraw | 21/04/2013 at 18:00

      Μόνο στο WAN interface έχει νόημα ν’ αλλάζουμε τα standard ports με άλλα, “παράξενα”.

      Για να δεις το σκεπτικό μου, σκέψου ότι να τυπικό port scan δεν εξετάζει και τα 65535 ports αλλά μόνο τα συνηθισμένα (κάτω από το 1024). Αν όμως εκείνος που τρέχει τον port scanner αποφασίσει να ελέγξει όλα τα ports για ένα συγκεκριμένο IP και ταυτόχρονα κάνει και το λεγόμενο service identification, τότε καταλαβαίνεις ότι τελικά θα εντοπίσει όλες τις ενεργές υπηρεσίες πίσω από το firewall του router, ασχέτως του πόσο “παράξενα” είναι τα ανοικτά ports και φυσικά ασχέτως του πού οδηγούν οι αντίστοιχοι κανόνες port forwarding.

      Γίνεται λοιπόν προφανές ότι τα “παράξενα” ports στο firewall του router είτε μπλοκάρουν τα απλοϊκά scripts είτε καθυστερούν λίγο τον αποφασισμένο attacker, ο οποίος για τους δικούς του λόγους στοχεύει *ειδικά* το δίκτυό σου (ακριβέστερα: το δημόσιο IP του router σου).

  2. iasonaspao | 04/09/2013 at 00:19

    έχω μια απορια σχετικά με το αρθρο και συγκεκριμένα με την εικόνα 5(σελ.37 αν δεν κάνω λάθος.)
    *Ορισμός κανόνα port forwarding, στο pfSense. Τα πακέτα που
    φτάνουν στο port 50129/TCP του WAN interface, θέλουμε να
    ανακατευθύνονται στο port 22/TCP του μηχανήματος με IP
    192.168.99.10, πίσω από το firewall.*
    η διεύθυνση 192.168.99.10(και γενικά οποιαδήποτε διεύθυνση τοπικού δικτύου π.χ 192.168.1.*)παραμένει σταθερή?(γιατί έχω παρατηρήσει ότι αλλάζει) αν αλλάζει μπορεί κάποιος να μου εξηγήσει πως δουλεύει αυτός ο κανόνας? plz..

  3. subZraw | 04/09/2013 at 06:23

    Πράγματι, για να δουλέψει το port forwarding η διεύθυνση IP του υπολογιστή που μας ενδιαφέρει πρέπει να μην αλλάζει. Γενικά, οι διευθύνσεις IP χαρακτηρίζονται ως δυναμικές (αλλάζουν) ή στατικές (δεν αλλάζουν). Σε ένα τοπικό (κι όχι μόνο) δίκτυο, είναι δυνατόν να έχουμε και τα δύο “είδη” διευθύνσεων. Ο (DSL) router ενός οποιουδήποτε LAN είναι συνήθως ρυθμισμένος ώστε, μέσω του DHCP server που περιλαμβάνει, να μοιράζει διευθύνσεις σε όσους υπολογιστές τις ζητούν *δυναμικά*. Ταυτόχρονα, όμως, είναι πιθανό να έχουμε ρυθμίσει “χειροκίνητα” ένα ή περισσότερα μηχανήματα του τοπικού δικτύου, ώστε να έχουν στατικές διευθύνσεις IP. Υπάρχει κι άλλη δυνατότητα: Να έχουμε ρυθμίσει τον DHCP server ώστε πάντα να δίνει τις ίδιες διευθύνσεις σε συγκεκριμένα μηχανήματα (τα οποία αναγνωρίζει με βάση το MAC address του καθενός). Όπως και να ‘χει, σε ένα (τοπικό) δίκτυο είναι πολύ πιθανό να “παίζουν” δυναμικές αλλά και στατικές διευθύνσεις IP.

  4. iasonaspao | 04/09/2013 at 14:17

    ευχαριστώ για την απάντηση.
    1)η ρυθμιση αυτη μπορει να γινει και σε συνηθισμενους(εργοστασιακους rooter)
    2)το pfsense εχει ρυθμιση για να βαλω ενα pc πίσω του να εχει static ip?
    3)λιγο ασχετο με το θεμα αλλα μου εχουν δημιουργηθει δυο απορειες:
    πως μπορω να βρω το ip κάποιου απομακρυσμένα?
    στο αρθρο που εξηγει πως μπορει να γινει προσπερασμα Antivirus ,το backdoor αυτο αν το εγκαταστησει καποιος εκτος τοπικου δικτυου, πως μπορώ να ρυθμισω το port forwarding?(δηλ.να ερχεται στο ip του rooter μου και μετα στο ip του backtrack)

    *…παντος η σειρα για τα δικτυα ειναι πολυ βοηθητική για εμας του καινουριους!*

    • subZraw | 04/09/2013 at 15:25

      1) Ναι, το port forwarding γίνεται και στους οικιακούς routers (αυτούς εννοείς, φαντάζομαι :))

      2) Ναι, έχει. Δες το deltaCast s01e07: http://deltahacker.gr/deltacast-s01e07

      3) Αναφέρεσαι στο δημόσιο IP του router ή στο private, δηλαδή σ’ αυτό που έχει ένας υπολογιστής-στόχος πίσω από τον router; Σε κάθε περίπτωση, το ερώτημά σου δεν είναι εύκολο να απαντηθεί εδώ. Ίσως ετοιμάσουμε σχετικό άρθρο, για το περιοδικό. Όσο για το τελευταίο σου ερώτημα, η απάντηση εμπεριέχεται στο άρθρο που αναφέρεις :)

  5. iasonaspao | 04/09/2013 at 17:13

    ευχαριστω!
    έχω δυο ακομα τελευταιες ερωτησεις…
    η υπηρεσια dyndns που υποστηριζει ο rooter μου είναι δωρεαν ή επι πληρωμη?(δυστηχως δεν εχει no-ip οπως εχει το pfsense…)
    στο αρθρο(http://deltahacker.gr/2011/03/15/antivirus-bypass/) βαζουμε ως LHOST την τοπική ip ετσι δεν ειναι?εαν το “θυμα” βρισκεται εκτοσ τοπικου δικτυου πως φτιαχνουμε το port forwarding?

    • subZraw | 04/09/2013 at 17:23

      1) Η υπηρεσία dynamic DNS που αναφέρεις *ήταν* δωρεάν αλλά εδώ και πολύ καιρό (δεν θυμάμαι πόσο) δεν είναι :S Για το no-ip, πάντως, υπάρχουν και clients που μπορείς να τρέξεις στον υπολογιστή σου. Ξεκίνα την έρευνά σου από το http://www.noip.com/downloads.php.

      2) Για το LHOST θα βάλεις τη δημόσια IP του router (τον οποίο, παρεμπιπτόντως, καλό θα ήταν ν’ αρχίσεις να γράφεις σωστά :)) Επίσης, το port-forwarding επιτυγχάνεται γνωρίζοντας το port που χρησιμοποιεί ο listener καθώς και το (private) IP του υπολογιστή στον οποίο τρέχει το BackTrack, το Kali ή όποιο άλλο OS χρησιμοποιείς, τέλος πάντων.

  6. iasonaspao | 04/09/2013 at 18:01

    ok ευχαριστώ για την βοήθεια!
    (τώρα το καταλαβα οτι γράφετε router!)
    όλο root και root βλέπω λέω ετσι θα γράφεται και o rooter…:D

Leave a Reply

You must be logged in to post a comment.

Σύνδεση

Αρχείο δημοσιεύσεων