Αψήφησε τους κανόνες της αναδυόμενης τάξης της Πληροφορίας

Πώς να ελέγξετε για ανοιχτά ports σε Linux

Τρία εξαιρετικά εργαλεία με τα οποία μπορείτε να εντοπίσετε ανοιχτές θύρες σε εσωτερικά και εξωτερικά δίκτυα μέσω του Linux. Καλύψτε κενά ασφαλείας ή αντιμετωπίστε προβλήματα δικτύωσης.

Αχρείαστο να’ ναι, μα ίσως κάποια στιγμή τύχει να αντιμετωπίσετε προβλήματα δικτύωσης ή, ακόμα καλύτερα, να θελήσετε τρόπους βελτίωσης της ασφάλειας του υπολογιστή σας. Μπορεί επίσης να συναντήσετε και εφαρμογή με ιδιαιτερότητα, που να ζητάει συγκεκριμένη θύρα (port) για να λειτουργήσει.

Σε τέτοιες περιπτώσεις θα χρειαστεί να ελέγξετε ποια ports έχετε ανοιχτά. Δηλαδή ποιες θύρες εισόδου/εξόδου του υπολογιστή σας έχετε προσβάσιμες από και προς τον έξω κόσμο ή για τη δικτύωση μεταξύ προγραμμάτων. Μια θύρα είναι ένας αριθμός μεγέθους 16bits (0 έως 65535) που βοηθά στην αναγνώριση μιας συγκεκριμένης εφαρμογής ή μιας διαδικασίας. Η θύρα διαφοροποιεί την μία εφαρμογή από την άλλη σε ένα λειτουργικό σύστημα Linux (Unix).

Το εύρος αυτών των ports (θυρών) είναι κατηγοριοποιημένο εξής:

  • 0 – 1023 – Αναφέρονται σε γνωστές θύρες [Well Known Ports]
  • 24 – 49151 – Αναφέρονται ως καταχωρημένες θύρες [Registered Ports]
  • 49152 – 65535 – Αναφέρονται ως δυναμικές θύρες [Dynamic Ports]

Με την εντολή cat /etc/services μπορείτε να δείτε την λίστα εφαρμογών και ports του υπολογιστή σας:

Πώς να ελέγξετε για ανοιχτά ports σε Linux

Πληροφορίες
Το TCP (Πρωτόκολλο Ελέγχου Μετάδοσης) είναι μια συλλογή πρωτοκόλλων επικοινωνίας στα οποία βασίζεται το διαδίκτυο αλλά και μεγάλο ποσοστό των εμπορικών δικτύων. Αυτά τα πρωτόκολλα δημιουργούν «συμβάσεις» για το πώς ανταλλάσσουν μεταξύ τους δεδομένα οι υπολογιστές του δικτύου. Καθώς όμως το internet δεν είναι ένα απλό δίκτυο, μα διαδίκτυο, χρειάζεται ένα σύνολο από συμβάσεις που να καθορίζουν το πώς ανταλλάσσουν μεταξύ τους δεδομένα υπολογιστές που μπορεί να είναι διαφορετικού τύπου και να ανήκουν σε διαφορετικά δίκτυα. Και να διευκρινίσουμε πως το TCP είναι στο επίπεδο μεταφοράς. Έχει τμήματα, και όχι αυτοδύναμα πακέτα. Δεν γνωρίζει τι γίνεται κάτω από αυτό, ούτε το ενδιαφέρει.

Το UDP είναι ένα ακόμα πρωτόκολλο επικοινωνίας και λειτουργεί παρόμοια με το TCP. Ωστόσο, δεν εγγυάται αξιόπιστη επικοινωνία γιατί αγνοεί τη διόρθωση σφάλματος, και χρησιμοποιείται κυρίως όταν το ζητούμενο είναι η ταχύτητα.

Τα sockets επιτρέπουν την επικοινωνία από δύο διαφορετικές διαδικασίες σε ίδια ή διαφορετικά μηχανήματα.

Παρακάτω θα περιγράψουμε μερικούς τρόπους που μπορείτε να χρησιμοποιείτε όταν θέλετε να ελέγξετε για ανοιχτά ports στο Linux.

netstat

Μια χρήσιμη εντολή με την οποία μπορούμε να δούμε δικτυακές συνδέσεις, routing tables, στατιστικά για τη διεπαφή, masquerade συνδέσεις και multicast memberships. Η εντολή παίρνει αρκετές παραμέτρους που τις ανακαλύπτουμε με το -? ή -h ή με την εντολή man.

Πώς να ελέγξετε για ανοιχτά ports σε Linux

Δείτε όλα τα ανοιχτά ports του μηχανήματός σας:

netstat -atu

Για να δείτε τις TCP συνδέσεις:

netstat -t

ή αντίστοιχα με την:

netstat -vatn

Για να δείτε τις UDP συνδέσεις:

netstat -u

ή και με την ακόλουθη, θα εμφανιστούν μόνο οι UDP:

netstat -vaun

Για να δείτε τα sockets:

netstat -a

Για να δείτε το routing table:

netstat -r

Για στατιστικά:

netstat -s

Μπορείτε επίσης να χρησιμοποιήσετε και την παράμετρο (flag σωστότερα) -p για να εμφανίσετε το σχετικό PID της διαδικασίας ή του ονόματος του προγράμματος.

lsof

Με αυτήν την εντολή (σημαίνει «list open files») μπορείτε να δείτε αρχεία, pipes και sockets που βρίσκονται σε χρήση στο σύστημά σας.

Πώς να ελέγξετε για ανοιχτά ports σε Linux

Δείτε όλα τα ανοιχτά ports:

lsof -i

Δείτε όλες τις συνδέσεις TCP:

lsof -i tcp

Δείτε τις UDP συνδέσεις:

lsof -i udp

Με την ακόλουθη εντολή μπορείτε να εμφανίσετε ανοιχτές υποδοχές (sockets):

lsof -n -P | grep LISTEN

Βρείτε τη διαδικασία που εκτελείται στην θύρα tcp 80:

lsof -i TCP: 80 #

Εμφανίστε μόνο ανοιχτά αρχεία δικτύου IPv6:

lsof -i 6 #

Εμφανίστε μόνο ανοιχτά αρχεία δικτύου IPv4

lsof -i 4 #

Ανοίξτε τη διαδικασία στο εύρος θύρας 1 έως 1024:

lsof -i TCP: 1-1024 #

Zenmap

Μια ακόμα καλή επιλογή είναι το Zenmap, το οποίο, αντίθετα με τα δυο προηγούμενα, έρχεται με γραφικό περιβάλλον. Επίσης, θεωρείται το κορυφαίο λογισμικό του είδους και δεν είναι τυχαίο που επαγγελματίες στον χώρο της ασφάλειας το χρησιμοποιούν.

Πρόκειται για ένα πανίσχυρο εργαλείο, με το οποίο είναι δυνατό να σαρώσετε για ανοιχτές θύρες σε σχεδόν οποιαδήποτε μηχάνημα, εφόσον γνωρίζετε την διεύθυνση IP.

Εγκατάσταση του Zenmap

Το Zenmap βρίσκεται στα αποθετήρια των περισσότερων Linux διανομών και έτσι μπορείτε να το εγκαταστήσετε με δυο κλικ από τον διαχειριστή λογισμικού της διανομής σας. Εναλλακτικά, μπορείτε να το εγκαταστήσετε από τερματικό με τις παρακάτω εντολές:

Σε Ubuntu, Mint και παράγωγες διανομές:

sudo apt install zenmap

Σε Debian:

sudo apt install zenmap

Σε Arch:

sudo pacman -S nmap

Σε Fedora:

Στο Fedora το πακέτο για το Zenmap ονομάζεται nmap-frontend και εγκαθίσταται με την εντολή

sudo dnf install -y nmap-frontend

Σε openSUSE:

Το openSUSE διαθέτει το Zenmap μέσω του αποθετηρίου λογισμικού «OSS all». Βεβαιωθείτε ότι το ενεργοποιήσατε στο σύστημά σας. Αφού ενεργοποιηθεί, χρησιμοποιήστε τον διαχειριστή πακέτων zypper για να το εγκαταστήσετε:

sudo zypper in zenmap

Για τις διανομές που δεν έχουν έτοιμο πακέτο, το εγκαθιστάτε από τον πηγαίο κώδικά του (εγκαταστήστε πρώτα το wget από τους διαχειριστές πακέτων των διανομών σας) με τα απλά βήματα που ακολουθούν.

Κατεβάστε το:

wget https://nmap.org/dist/nmap-7.70.tar.bz2

Αποσυμπιέστε το:

bzip2 -cd nmap-*.tar.bz2 | tar xvf -

Μετακινηθείτε στο σημείο που το κατεβάσατε:

cd nmap-*

Και ακολουθήστε το γνωστό τρίπτυχο:

./configure
make
sudo make install

Βασική χρήση του Zenmap

Για να το τρέξετε, χρειάζεται πρόσβαση root αλλιώς τα βασικά του χαρακτηριστικά δεν θα λειτουργήσουν. Ανοίξτε τερματικό και εκτελέστε την ακόλουθη εντολή για να ξεκινήσετε την εφαρμογή με δικαιώματα root:

sudo zenmap

Τώρα που το Zenmap είναι ανοιχτό, είναι έτοιμο για σάρωση των θυρών. Για να ξεκινήσετε μια σάρωση, πληκτρολογήστε την γνωστή διεύθυνση IP στο πεδίο «Προορισμός» (Target).

Αφού γράψετε την διεύθυνση IP, θα πρέπει να επιλέξετε τον τύπο της λειτουργίας που θέλετε να χρησιμοποιήσετε. Συνήθως, η σάρωση των port είναι μια αργή διαδικασία. Ωστόσο, αν θέλετε να έχετε μια στοιχειώδη εικόνα και να καθορίσετε ποιες θύρες μπορεί να είναι ανοικτές, δοκιμάστε το «Quick» (από το dropdown μενού «Προφίλ») και μετά πατήστε το κουμπάκι «Αναζήτηση».

Τα «Quick scans» στο Zenmap διεξάγονται γρήγορα και, με την σάρωση των βασικών ports, συχνά βρίσκουν «ανοίγματα». Πατήστε στην καρτέλα «Ports/Hosts» και θα δείτε τα αποτελέσματα.

Εναλλακτικά, εκτελέστε λεπτομερή σάρωση επιλέγοντας το «Intense scan» από το πτυσσόμενο μενού «Προφίλ».

Πώς να ελέγξετε για ανοιχτά ports σε Linux

Το Zenmap βέβαια μπορεί να κάνει πολλά περισσότερα από την σάρωση ανοικτών θυρών. Προσφέρει ένα εξαιρετικό εργαλείο απεικόνισης των traceroutes (των διαδρομών που ακολουθεί ένα πακέτο δεδομένων από κόμβο σε κόμβο μέσα σε ένα δίκτυο). Και μάλιστα κάθε traceroute που εκτελείται σε μια συσκευή δικτύου θα επισημανθεί στην καρτέλα «Topology».

Για να εκτελέσετε ένα traceroute, πληκτρολογήστε μια διεύθυνση IP (ή και το όνομα της συσκευής) στο πεδίο «Προορισμός». Στην συνέχεια, επιλέξτε «Quick traceroute» στο μενού «Προφίλ» και κάντε κλικ στο «Scan». Αφήστε το Zenmap να τρέξει και να κάνει τον εντοπισμό. Όταν τελειώσει, κάντε κλικ στην καρτέλα «Topology».

Στην καρτέλα αυτή το Zenmap θα δημιουργήσει έναν ιστό όλων των διαφορετικών συσκευών δικτύου που ανακαλύπτει με το pinging και τον εντοπισμό. Απλά επισημάνετε την συσκευή στην οποία εκτελέσατε το trace, κάντε δεξί κλικ και επιλέξτε «Traceroute» για να δείτε τις «αναπηδήσεις» που κάνει. Εναλλακτικά, ακολουθήστε τις μπλε γραμμές, καθώς υποδεικνύουν τις διαδρομές που κάνει η συσκευή.

Πώς να ελέγξετε για ανοιχτά ports σε Linux

Αυτά βέβαια είναι τα απολύτως βασικά, καθώς όπως θα διαπιστώσετε το Zenmap έχει αρκετές περισσότερες λειτουργίες. Όπως είναι ευνόητο, πρόκειται για ένα εργαλείο που μπορεί να χρησιμοποιηθεί ποικιλοτρόπως και για επιθετικούς σκοπούς.

Τα πιο πάνω είναι τρία από τα καλύτερα εργαλεία με τα οποία μπορείτε να σκανάρετε τις ανοιχτές θύρες σε μηχανήματα και συσκευές του δικτύου σας και όχι μόνο. Το nmap δεν το αναφέραμε ξεχωριστά αφού μιλήσαμε για το Zenmap.

Μοιραστείτε μαζί μας τις σκέψεις σας

avatar
  Εγγραφή  
Ειδοποίηση για

Σας ενημερώνουμε ότι η ιστοσελίδα μας ακολουθεί ειδικό πρόγραμμα διατροφής και μασουλάει φρεσκοψημένα cookies Καλά μωρέΘέλω να μάθω περισσότερα