Μία διεύθυνση IP – διεύθυνση διαδικτυακού πρωτοκόλλου (αγγλ. IP address – Internet Protocol address) είναι ένας μοναδικός αριθμός που χρησιμοποιείται από συσκευές σε ένα δίκτυο υπολογιστών που χρησιμοποιεί το Internet Protocol standard για τη μεταξύ τους αναγνώριση και συνεννόηση.
Τα πρωτόκολλα TCP και UDP είναι τα δύο βασικά πρωτόκολλα του διαδικτύου και χρησιμοποιούνται για την ανταλλαγή δεδομένων μεταξύ δύο υπολογιστών. Κάθε πακέτο TCP και UDP εκτός από τα δεδομένα περιλαμβάνει μία κεφαλίδα στην οποία αναγράφονται τα χαρακτηριστικά του πακέτου.
Ανάμεσα σε αυτά μπορεί κανείς να εντοπίσει την θύρα (port) του αποστολέα, από την οποία ξεκίνησε το πακέτο, και την θύρα του παραλήπτη, στην οποία κατευθύνεται. Μόλις το πακέτο παραδοθεί στην κατάλληλη θύρα του παραλήπτη, τότε το παραλαμβάνει η αντίστοιχη εφαρμογή και χρησιμοποιεί τα δεδομένα που βρίσκονται μέσα σε αυτό.
(πηγή WikiPedia).
Ακολουθούν ορισμένες θύρες που θα βρείτε κατά τη διαδικασία της σάρωσης:
- Port 21 – FTP (File Transfer Protocol)
- Port 22 – SSH (Secure Shell)
- Port 23 – Telnet
- Port 25 – SMTP (Simple Mail Transfer Protocol)
- Port 53 – DNS (Domain Name Server)
- Port 80 – HTTP (Hyper Text Transfer Protocol)
- Port 110 – POP3 (Post Office Protocol)
- Port 143 – IMAP (Internet Message Access Protocol)
- Port 443 – HTTPS (Secure Hyper Text Transfer Protocol)
Table of Contents
Σάρωση ανοιχτών θυρών με την εντολή ss
Η εντολή ss λειτουργεί όπως κάθε εντολή στην πλατφόρμα Linux. Η εντολή ss χρησιμοποιείται για την απόρριψη των dump socket στατιστικών και εμφανίζει πληροφορίες με παρόμοιο τρόπο (αν και απλούστερη και ταχύτερη) όπως το netstat που θα δούμε παρακάτω.
Η εντολή ss μπορεί επίσης να εμφανίσει ακόμα περισσότερες πληροφορίες TCP και κατάστασης από τα εργαλεία όπως το netstat ή το lsof.
Για να εμφανίσετε τις listening TCP συνδέσεις χρησιμοποιώντας ss, η εντολή είναι:
Εντολή: ss -tl
Όπου, t σημαίνει θύρα TCP και l σημαίνει listening sockets.
Για να εμφανίσετε τις listening UDP Connections, η εντολή είναι:
Εντολή: ss -ul
Όπου u σημαίνει θύρα UDP.
Και σε περίπτωση που θέλετε να εμφανίσετε συνδέσεις TCP και UDP, η εντολή είναι:
Εντολή: ss -lntup
Όπου p σημαίνει το όνομα της διεργασίας
Εάν θέλετε να εμφανίσετε όλα τα socket connections, τότε μπορείτε απλά να χρησιμοποιήσετε την εντολή ss.
Σάρωση ανοιχτών θυρών με το netstat
Το Netstat προέρχεται από τις λέξεις δίκτυο (network) και στατιστικά στοιχεία (statistics) είναι ένα πρόγραμμα που λειτουργεί μέσω του command line.
Παρέχει βασικά στατιστικά στοιχεία για όλες τις δραστηριότητες του δικτύου και ενημερώνει τους χρήστες σχετικά με το ποιες θύρες και διευθύνσεις εκτελούνται οι αντίστοιχες συνδέσεις (TCP, UDP) και ποιες θύρες είναι ανοικτές για εργασίες.
Για να ελέγξετε όλες τις ανοιχτές θύρες με το netstat, η εντολή είναι:
Εντολή: netstat -pnltu
Όπου p σημαίνει αναγνωριστικό διεργασίας που σχετίζεται με την υπηρεσία, n σημαίνει ο αριθμός της θύρας που εκτελείτε, το λ αντιπροσωπεύει τα listening sockets , το t σημαίνει σύνδεση TCP και το u τη σύνδεση UDP.
Στα λειτουργικά συστήματα των Windows, μπορείτε να χρησιμοποιήσετε τις υπηρεσίες netstat μέσω της γραμμής εντολών (cmd.exe).
Σάρωση ανοιχτών θυρών με το lsof
Το lsof είναι ένα βοηθητικό πρόγραμμα γραμμής εντολών για όλα τα Unix και Linux συστήματα και μας βοηθάει να εντοπίσουμε όλες τις ανοιχτές θύρες.
Η εντολή lsof χρησιμοποιείται κυρίως για την ανάκτηση πληροφοριών σχετικά με αρχεία που ανοίγονται από διάφορες διεργασίες. Τα ανοικτά αρχεία σε ένα σύστημα μπορούν να είναι διαφορετικού τύπου όπως τα αρχεία δίσκων, οι υποδοχές δικτύων, τα named pipes και οι συσκευές.
Για να εμφανίσετε ανοιχτές θύρες, πληκτρολογήστε την ακόλουθη εντολή:
Εντολή: lsof -i
Και σε περίπτωση που θέλετε να εμφανίσετε μόνο τα ανοιχτά sockets, τότε μπορείτε να χρησιμοποιήσετε την παρακάτω εντολή:
Εντολή: lsof -n -P | grep LISTEN
Για να εμφανίσετε μόνο τις συνδέσεις TCP, πληκτρολογήστε:
Εντολή: lsof -i tcp
Σάρωση ανοιχτών θυρών με το Nmap
Το Nmap είναι ένας από τους δωρεάν, ανοικτούς σαρωτές ασφαλείας δικτύου, που συνήθως χρησιμοποιείται για τον εντοπισμό συσκευών μέσα στο δίκτυο άλλα και τον έλεγχο ασφαλείας του ίδιου του δικτύου. Μεταξύ άλλων, μπορείτε επίσης να χρησιμοποιήσετε το NMAP για τη σάρωση ανοικτών θυρών και την παρακολούθηση κεντρικών υπολογιστών του δικτύου.
Στο Kali Linux, το Nmap είναι ήδη προεγκατεστημένο, αλλά στην περίπτωση που χρησιμοποιείτε το Ubuntu ή οποιοδήποτε άλλο distro Linux, μπορείτε να εγκαταστήσετε το Nmap πληκτρολογώντας την εντολή “sudo apt install Nmap”.
Για το λειτουργικό σύστημα των Windows, το πακέτο εγκατάστασης Nmap έρχεται με ένα front-end GUI για Nmap που ονομάζεται Zenmap.
Για να σαρώσετε ανοιχτές θύρες TCP, πληκτρολογήστε:
Εντολή: nmap -sT -O localhost
Η παραπάνω εντολή θα ξεκινήσει μια σάρωση σύνδεσης TCP στον κεντρικό υπολογιστή προορισμού. Μια σάρωση σύνδεσης TCP είναι η προεπιλεγμένη σάρωση που εκτελείται εάν δεν είναι δυνατή η σάρωση TCP SYN. Αυτός ο τύπος σάρωσης ζητά από το υποκείμενο λειτουργικό σύστημα να προσπαθήσει να συνδεθεί με τον κεντρικό υπολογιστή/θύρα προορισμού.
Και για το UDP, η εντολή είναι:
Εντολή: nmap -sU localhost
Η παραπάνω εντολή θα ξεκινήσει μια σάρωση θύρας UDP στον κεντρικό υπολογιστή προορισμού. Μια σάρωση UDP αποστέλλει ένα πακέτο UDP στις θύρες προορισμού. Εάν ληφθεί απόκριση, η θύρα ταξινομείται ως “Ανοιχτή”. Εάν δεν ληφθεί απόκριση μετά από πολλαπλές μεταδόσεις, η θύρα ταξινομείται ως “ανοικτή/φιλτραρισμένη”.