1. 1α) Μετά το διάβασμα της θεωρίας (απο οσους ενδιαφέρονται να λύσουν την παρούσα άσκηση) τα βασικά flags - ορίσματα του προγράμματος nmap θα ειναι ήδη γνωστά. Για να βρεί κάποιος το λειτουργικό σύστημα που φέρει το ρούτερ (και για να είμαστε και ακόμη πιο τυπικοί το ενσωματωμένο σύστημα του ρούτερ) θα πρέπει να χρησιμοποιήσει το όρισμα -Ο , η γενικότερη σύνταξη των εντολών του nmap έχει την παρακάτω μορφή  :
- Κώδικας: Επιλογή όλων
  nmap <flags> <target_IP> 
στην προκειμενη το target_IP αναφέρεται στην IP του ρούτερ. Επομένως πάω να δώσω απο το δικό μου τερματικό την παραπανω εντολή 
- Κώδικας: Επιλογή όλων
  kostas@kostas-SSL:~$ nmap -O 192.168.1.254
TCP/IP fingerprinting (for OS scan) requires root privileges.
QUITTING!
Φάγαμε ενα reject απο το πρόγραμμα επειδη θέλει root permissions. Επομένως επανερχόμαστε με μια sudo 
- Κώδικας: Επιλογή όλων
  kostas@kostas-SSL:~$ sudo nmap -O 192.168.1.254
Starting Nmap 5.21 ( http://nmap.org ) at 2011-09-14 13:24 EEST
Nmap scan report for oxygen.lan (192.168.1.254)
Host is up (0.0062s latency).
Not shown: 994 closed ports
PORT     STATE    SERVICE
22/tcp   filtered ssh
23/tcp   filtered telnet
53/tcp   open     domain
....
OS details: Linux 2.6.15 - 2.6.23 (embedded) 
 Στην 1η στήλη κάποιος μπορεί να δει τις θύρες στην 2η την κατασταση αυτων των θυρών και τέλος την υπηρεσία - πρωτόκολλο σε αυτές τις θύρες. 
Η απάντηση στο 1α) λοιπον ειναι οτι το δικο μου ρούτερ φέρει OS Linux 2.6.15 - 2.6.23 (ενσωματωμένο σύστημα). 
1β) Το option που μπορεί κάποιος να χρησιμοποιήσει ωστε να μην γίνει αντιληπτός απο το σύστημα στο οποίο κάνει τον έλεγχο ειναι το flag -sS επειδη δεν ολοκληρώνεται το TCP three-way handshaking και κατ' επέκτασην δεν καταγράφεται απο τον στόχο , η εντολή θα έχει ως εξης  :
- Κώδικας: Επιλογή όλων
  sudo nmap -sS -O 192.168.1.90 
 2. Για σύστημα μπορούμε να θεωρήσουμε πάλι ειτε το ρούτερ μας ειτε τον προσωπικό μας υπολογιστή ειτε και κάποιον αλλο υπολογιστή στο τοπικό μας δίκτυο με την προυπόθεση οτι είμαστε υπεύθυνοι του συγκεκριμένου δικτύου και των υπολογιστών του. Θα κάνω έναν έλεγχο σε όλες τις θύρες του υπολογιστή μου με την εντολή 
- Κώδικας: Επιλογή όλων
  nmap -p 0-65535 192.168.1.90 
 Το -p αναφέρεται στην θύρα (port) και θα το δει κάποιος και οταν ασχοληθεί και αν ασχοληθεί με εντολές σε iptables configuration , το εύρος των θυρών του συστήματος ειναι 0-65535 , γενικοτερα μπορει κάποιος να κάνει έλεγχο με την παραπανω εντολή σε οποιδοήποτε εύρος θυρών θέλει.  
3. Θα χρησιμοποιηθεί η εντολή 
- Κώδικας: Επιλογή όλων
  nmap -sV -p 0-65535 192.168.1.90 
 με το έξτρα option -sV (scan Version) θα δοθούν και οι εκδόσεις των υπηρεσιών που τρέχουν είτε σε όλες (για το προηγούμενο ερώτημα) είτε σε ενα συγκεκριμένο εύρος θυρών (σε όποιο θέλει ο χρήστης) . 
4. Σε αυτο το ερώτημα και παλι μπορούμε να εξετάσουμε σε όλες τις θύρες (-p 0-65535) είτε σε συγκεκριμένο διάστημα θυρών (-p Ps-Pf)  => απο μια πόρτα αρχής εως μια πόρτα τέλους  (Ps -> Port Start - Pf -> Port finish) πχ  απο αν θελεις απο 2 μεχρι 1000 τοτε (-p 2-1000) αρχιζεις δηλαδη τον ελεγχο απο την θύρα 2 και τον τελειώνεις στην θύρα 1000 μεσα δηλαδη σε αυτο το διάστημα. 
Τωρα μπορώ να συγκεκριμενοποιήσω τον παραπάνω έλεγχο με μια διοχεύτεση (αν ψάχνω μια συγκεκριμένη θύρα) με την προυπόθεση οτι στο δεξιό μέρος της διοχετευσης θα δώσω την grep. Η παραπάνω σύνθεση λοιπον σε γραμμή εντολής θα ειναι 
- Κώδικας: Επιλογή όλων
   nmap -p 0-65535 192.168.1.90 | grep 80 ή και nmap 192.168.1.90 | grep 80 
//(για τις πρωτες 1000 πορτες μονο ομως του συστηματος η 2η εντολή μιας
και by default το nmap κανει σε αυτες ελεγχο αν δεν του δωσεις συγκεκριμενα ορίσματα).
Θα μπορούσα επίσης να σώσω τον παραπάνω έλεγχο και τα αποτελεσματα του σε ένα αρχείο στον /home μου πχ ενα test.txt ή και σκετο test 
και απο εκει μετα να διαβάσω την θύρα (απλα εδω οι εντολές θα ειναι 2 συνολικά και οχι 1 οπως πριν)
- Κώδικας: Επιλογή όλων
  nmap -p 0-65535 192.168.1.90 > test.txt 
και
- Κώδικας: Επιλογή όλων
  cat test.txt | grep 80 
  5. Σε αυτο το σημείο θα μας βοηθήσει αρχικά η εντολή 
- Κώδικας: Επιλογή όλων
  ifconfig 
 διοτι δεν μπορω να κάνω έλεγχο στους host ενος δικτύου αν δεν γνωρίζω τι είδους μάσκα έχει χρησιμοποιηθεί για την διαμορφωση του. Ετσι δεν ειναι?
Προ λιγου μιλησα για την διοχετευση και την εντολή grep... φυσικα ειχα τους λογους μου γιατι με μια εντολή μπορεις να πάρεις πληροφορίες συγκεκριμένες και ταχύτατα. Παμε λοιπον να ψάξουμε την μάσκα με την grep 
- Κώδικας: Επιλογή όλων
  kostas@kostas-SSL:~$ ifconfig | grep Mask
          inet addr:192.168.1.95  Bcast:192.168.1.255  Mask:255.255.255.0
          inet addr:127.0.0.1  Mask:255.0.0.0
Η μάσκα μου ειναι κλάσης C! Και επισης γνωρίζω οτι δεν υπάρχει κανενα υποδίκτυο στο τοπικό επομένως συμφωνα και με την θεωρία => Τα πρωτα τα 24 bit μιας IP χρησιμοποιούνται για τον προσδιορισμό του δικτυου ενω τα αλλα 8 (τελευταία οκτάδα) για τους host. Ως εδω καλα. Ακομη ομως δεν μπορει να γίνει αποδοτικός ή καλυτερα 
 πραγματικός  έλεγχος ΓΙΑΤΙ? Γιατι απο τις 2^8 = 256 διευθύνσεις μονο οι 254 χρησιμοποιούνται πραγματικα σε κάποιους host οπως έχουμε μάθει διοτι οι 2 που αφαιρούνται ειναι η μια για τον προσδιορισμό του δικτύου ενω η άλλη για broadcast μηνύματα (πχ στο ARP οταν ψάχνεις κάποια MAC ) επομενως και εφοσον ειναι γνωστο πως η διεύθυνση 192.168.1.0 θα προσδιορίσει το δίκτυο μου ενω η 192.168.1.255 θα ειναι για broadcast τοτε γινεται κατανοητο πως το έγκυρο εύρος θα είναι  1-254 επομένως η εντολή για το nmap ειναι η ακόλουθη  :
- Κώδικας: Επιλογή όλων
  nmap 192.168.1.1-254 
 ακριβως αυτη η εντολή θα αναφέρει ποσοι host ειναι UP 
 6. Συμφωνα και με την παραπανω λογική και με δεδομένο οτι υπάρχουν 2 host στις διευθύνσεις χ.χ.χ.90 και χ.χ.χ.254 
τοτε ο έλεγχος που θα εμφανίσει μέχρι 1 host θα είναι
- Κώδικας: Επιλογή όλων
  nmap χ.χ.χ.1-90 
και
- Κώδικας: Επιλογή όλων
  nmap χ.χ.χ.91-254 
Γιατι στα παραπάνω διαστήματα υπάρχει μονο 1 host.
O έλεγχος τώρα για ακριβώς 2 host (όσοι είναι συνολικά ολοι οι host μεσα στο τοπικό και με βάση αυτες τις δοθείσες διευθύνσεις)
θα ειναι
- Κώδικας: Επιλογή όλων
  nmap χ.χ.χ.1-254 
 Τέλος αν δεν θέλουμε να εμφανίσουμε κανεναν host απο τους παραπανω θα κάνουμε έλεγχος προσέχοντας μην πέσουμε σε διάστημα ή σημείο που υπάρχει κάποιος απο αυτούς οποτε τελικά  :
- Κώδικας: Επιλογή όλων
  nmap  χ.χ.χ.1-89 
και
- Κώδικας: Επιλογή όλων
  nmap χ.χ.χ.91-253