Πλησιάζουμε στο τέλος από το πολεμικό παίγνιο Krypton και έτσι είπαμε να μπούμε σε ένα άλλο χώρο της πρακτικής εξάσκησης στην ασφάλεια υπολογιστών, την ασφάλεια ιστοσελίδων. Το πολεμικό παίγνιο Natas προσφέρεται επίσης από τη σελίδα OverTheWire.org αλλά αφορά θέματα ασφάλειας υπολογιστών σχετικά με ιστοσελίδες. Όπως σε όλα αυτά τα παίγνια τα επίπεδα δυσκολεύουν σταδιακά προσφέροντας γνώση και εμπειρία. Πάντα σας προτείνουμε να προσπαθείτε πρώτα να βρείτε τις λύσεις μόνοι σας και το ίδιο θα κάνουμε και εδώ. Δεν έχει νόημα να διαβάζετε τη λύση από μία ιστοσελίδα διότι σε ελάχιστο χρόνο θα το έχετε ξεχάσει, αντίθετα αν το έχετε κάνει μόνοι σας είναι πολύ δυσκολότερο να το ξεχάσετε.
Στη περιγραφή του παιχνιδιού φαίνεται ξεκάθαρα ο στόχος του και ο τρόπος λειτουργίας του. Βλέπετε παρακάτω μία εικόνα από το πως περιγράφεται το παιχνίδι στην επίσημη ιστοσελίδα του και ακριβώς από κάτω ακολουθεί το ίδιο κείμενο μεταφρασμένο στα Ελληνικά ώστε να είναι κατανοητό από όλους τους αναγνώστες μας.
Το Natas διδάσκει τα βασικά της ασφάλειας ιστού από τη πλευρά του εξυπηρετητή.
Κάθε επίπεδο του natas έχει τη δική του ιστοσελίδα που είναι στο http://natasX.natas.labs.overthewire.org, όπου Χ είναι ο αριθμός του επιπέδου. Δεν υπάρχει πρόσβαση μέσω SSH. Για πρόσβαση σε ένα επίπεδο, εισάγετε το όνομα χρήστη αυτού του επιπέδου (π.χ. το natas0 είναι για το επίπεδο 0) και το κωδικό πρόσβασης.
Κάθε επίπεδο έχει πρόσβαση στο κωδικό από το επόμενο επίπεδο. Η δουλειά σας είναι με κάποιο τρόπο να αποκτήσετε τον επόμενο κωδικό πρόσβασης και να ανεβείτε επίπεδο. Όλοι οι κωδικοί είναι επίσης αποθηκευμένοι στο /etc/natas_webpass/. Π.χ. ο κωδικός για το natas5 είναι αποθηκευμένος στο αρχείο /etc/natas_webpass/natas5 και μπορεί να το διαβάσει μόνο το natas4 και natas5.
Ξεκινήστε από εδώ:
Όνομα χρήστη: natas0 Κωδικός πρόσβασης: natas0 URL: http://natas0.natas.labs.overthewire.org
Άρα ας κάνουμε αυτό που μας προτείνει το παιχνίδι, ας επισκεφθούμε τη σελίδα natas0.natas.labs.overthewire.org με τα στοιχεία σύνδεσης που μας δόθηκαν. Όταν τοποθετήσουμε τη διεύθυνση του παιχνιδιού στο πρόγραμμα περιήγησης ιστού που χρησιμοποιούμε θα δούμε ένα παράθυρο όπως αυτό που βλέπετε εδώ για να βάλουμε τα στοιχεία σύνδεσης.
Βάζουμε τα στοιχεία που ήδη γνωρίζουμε από τη σελίδα περιγραφής και τότε μεταφερόμαστε σε μία πολύ απλή ιστοσελίδα. Βλέπετε μία εικόνα από την ιστοσελίδα αυτή εδώ.
Το κουμπί που βλέπετε δεξιά να γράφει «WeChall Submit Token» είναι για άτομα που ενδιαφέρονται για τις βαθμολογίες από τέτοια παιχνίδια και κρατάνε ένα κεντρικό σύστημα βαθμολόγησης. Καθώς εμείς το κάνουμε για τη γνώση και όχι για τη βαθμολογία, μπορούμε να το αγνοήσουμε. Για να κατανοήσουμε το πως θα βρούμε τον κωδικό πρόσβασης πρέπει πρώτα να γνωρίζουμε το πως γίνεται η επικοινωνία μέσω του πρωτοκόλλου HTTP. Όπως βλέπετε στη συνέχεια, το URL αποτελείται σε αυτή τη περίπτωση από κάποια πεδία τα οποία χωρίζονται με κάποιους ειδικούς χαρακτήρες. Τα πεδία αυτά τα εξηγούμε εν συντομία εδώ.
Όταν βάζουμε ένα τέτοιο URL στο πρόγραμμα περιήγησης που χρησιμοποιούμε, τότε αυτό επιλέγει το πρωτόκολλο επικοινωνίας που βλέπει (δηλαδή HTTP σε αυτή τη περίπτωση), και έπειτα ζητάει από τον εξυπηρετητή στη διεύθυνση natas0.natas.labs.overthewire.org να του στείλει τα περιεχόμενα του αρχείου που υπάρχει μετά το τελευταίο /. Καθώς δεν υπάρχει κανένα αρχείο, θα στείλει αυτό το όποιο έχει ρυθμιστεί να στέλνει ως πρώτη σελίδα, κατά κανόνα αυτό είναι το αρχείο index.html. Πρακτικά, όλο αυτό ο περιηγητής μας το κάνει στέλνοντας ένα μήνυμα προς τον εξυπηρετητή που μοιάζει με το παρακάτω.
GET / HTTP/1.1 host: natas0.natas.labs.overthewire.org
Δηλαδή, του λέει «φέρε» ή στα Αγγλικά GET οτιδήποτε υπάρχει στο / χρησιμοποιώντας την έκδοση 1.1 του πρωτοκόλλου επικοινωνίας HTTP από τον εξυπηρετητή natas0.natas.labs.overthewire.org. Όταν ο εξυπηρετητής λάβει αυτό το μήνυμα, θα κατασκευάσει τη σελίδα με ότι έχει προγραμματιστεί να περιέχει και θα τη στείλει πίσω στον περιηγητή μας σε μορφή HTML. Όταν ο περιηγητής λάβει το αρχείο αυτό σε μορφή HTML θα το εμφανίσει όπως του το περιγράφει η γλώσσα σήμανσης HTML. Η HTML είναι μία απλή γλώσσα που λειτουργεί με ετικέτες (tags). Μπορούμε να δούμε τη σελίδα που βλέπουμε κάθε φορά σε μορφή HTML πατώντας δεξί κλικ και «View Page Source» ενώ βρισκόμαστε σε αυτή τη σελίδα.
Αν κάνουμε αυτό το πράγμα για αυτή τη σελίδα του παιχνιδιού θα δούμε κάτι πολύ ευχάριστο. Ο κωδικός πρόσβασης είναι γραμμένος ως HTML. Ο λόγος που δεν εμφανίζεται είναι ότι είναι γραμμένος ως «σχόλιο». Δηλαδή μέσα σε ένα ειδικό tag το οποίο χρησιμεύει μόνο για πληροφοριακούς λόγους και δεν εμφανίζεται ποτέ στη τελική απεικόνιση της σελίδας.
Ασφαλώς, το πρώτο επίπεδο ήταν εξαιρετικά εύκολο αλλά όπως έχουμε δει και στο πολεμικό παίγνιο Krypton η δυσκολία θα ανεβαίνει σταδιακά και συνήθως φτάνει σε αρκετά υψηλό επίπεδο. Σίγουρα ένα ενδιαφέρον πρώτο επίπεδο.
Natas
#Πολεμικά #Παίγνια #OTW #Natas