HTS: Basic Levels

Με χαρά όλο και ανακαλύπτω νέα wargames. Το νέο παιχνιδάκι βρίσκεται εδώ www.hackthissite.org και είναι αρκετά εθιστικό…
Λέω λοιπόν καθώς προχωράω να γράφω και ένα walk through (για να θυμάμαι και γω τη γνώση που απέκτησα)

Λοιπόν εφόσον εγγραφείτε μπορείτε να ξεκινήσετε με τα Basic Levels ώστε να πάρετε και μία γεύση…

  • Basic Level1 – 9f620194
    Αρκεί να δείτε τον κώδικα HTML και να εντοπίσετε τον κωδικό.
  • Basic Level2 –
    Πολύ απλά πράματα…Απλά κάντε κλικ στο submit..
  • Basic Level3 – a5561067
    Παρατηρώντας τον κώδικα της σελίδας παρατηρούμε ότι η φόρμα γίνεται post και καλείται μία φόρμα με το όνομα «password.php». Αν λοιπόν δοκιμάσουμε να δούμε απλά τη σελίδα αυτή, θα δούμε τον κωδικό…Απρόσεχτος ο κύριος Sam 🙂
  • Basic Level4 – 0fcda489
    Εδώ πρέπει να εκμετταλευτούμε το script που έχει γράψει ο κύριος Sam ο ξεχνονούσης. Για να το κάνουμε αυτό, βλέπουμε πως (από τον κώδικα της σελίδας) στέλνει με POST την τιμή «webmaster@hulla-balloo.com». Δοκιμάζουμε λοιπόν και γράφουμε ένα δικό μας html οποίο να κάνει ουσιαστικά post μια δική μας διεύθυνση (μην περιμένετε email οπότε μη βάλετε και το email σας..ένα απλό a@e.com κάνει).
    Ορίστε και ο κώδικας…

    Επίλυση level4

    Επίλυση level4

  • Basic Level5 – 0fcda489
    Εδώ τα πράγματα σοβαρεύουν ευχάριστα. Φαίνεται να είναι το ίδιο με προηγουμένως, όμως δεν είναι. Αν δοκίμασετε τον κώδικα που δοκιμάσαμε πριν, θα δείτε πως βγάζει ένα μήνυμα «Refferer error: Check Refferer (This is not a bug)». Ο λόγος είναι πως ελέγχει αν το αίτημα στην php έχει γίνει εντός του domain (hackthissite.org) και φυσικά επειδή δεν έχει γίνει, μας απορρίπτει. Εδώ θα εκμεταλλευτούμε την δύναμη (αδυναμία) της Javascript. Γενικά η Javascript εκτελείται μόνο στην πλευρά του χρήστη και (συνήθως εκτός από εδώ :-)) δεν «ταξιδεύει» προς τον διακομιστή. Τι κάνουμε; Αλλάζουμε μέσω Javascript την τιμή του email!! Πως; Αρκεί να γράψουμε στο URL bar του Firefox το εξής
    javascript:alert(document.forms[0].value=e@a.com)
    και μετά το submit να αποκτήσουμε τον πολυπόθητο κωδικό!
  • Basic Level6 – fd59786f
    Εδώ έχουμε το πρώτο δείγμα κρυπτογραφίας…Το όλο κόλπο είναι να δούμε πως κρυπτογραφεί τον κωδικό. Δοκιμάζουμε στο input που μας δίνει το string «aaaa» που μας επιστρέφει «abcd». Οδηγούμαστε λοιπόν στο συμπέρασμα πως μάλλον αυτό που κάνει είναι σε κάθε χαρακτήρα να προσθέτει 1 (στον αντίστοιχο ASCII δεκαδικό του) και να εκτυπώνει τον αντίστοιχο χαρακτήρα. Συνεπώς…

    • f + 0 = f
    • d + 1 = e
    • 5 + 2 = 7
    • 9 + 3 = <
    • 7 + 4 = ;
    • 8 + 5 = =
    • 6 + 6 = <
    • f + 7 = m
    • fd59786f -> fe7<;=<m

    Δοκιμάζοντας..Βλέπουμε ότι η υπόθεση μας είναι σωστή!

  • Basic Level7 – 2596a7a7
    Εδώ βλέπουμε πόσο πρέπει να προσέχουμε όταν δημιουργούμε αλληλεπιδράσεις μεταξύ web – unix shell καθώς μπορεί αρχεία που δεν πρέπει να εμφανιστούν στην επιφάνεια. Αυτό προσπαθούμε να εκμεταλλευτούμε. Το script της Perl κάνει κλήση στην cal εντολή του unix.. Όμως αρκεί να σκεφτούμε πως μπορούμε γενικά να κάνουμε το εξής: command1 ; command 2 ή command1 && command2. Οπότε ελπίζουμε πως εμείς καλούμαστε να συμπληρώσουμε τα ορίσματα της cal. Συνεπώς γράφουμε «; ls» και όντως βλέπουμε ότι συμπληρώναμε την εντολή και λαμβάνουμε τα περιεχόμενα του φακέλου. Το αρχείο k1kh31b1n55h.php περιέχει τον κωδικό που θέλουμε.
  • Basic Level8 – aaeaa938
    Και εδώ είναι σχεδόν ίδια η ιδέα μόνο που εκμετταλευόμαστε κενό της PHP με τη χρήση S(erver)S(ide)I(ncludes) δηλαδή ουσιαστικά εντολές που δίνουμε προς τον διακομιστή. Κοιτώντας εδώ (SSI Reference) γνωρίζουμε ότι γράφοντας <!-- #exec cmd="cmd text"--> μπορούμε να εκτελέσουμε εντολές στο λειτουργικό σύστημα! Δοκιμάζουμε τότε το ακόλουθο (μετά από σχετικό ψάξιμο)<!-- #exec cmd="ls .."--> και βουαλά βρίσκουμε το ενδιαφέρον αρχείο αλλά και τον κωδικό!
  • Basic Level9 – d30e37df
    Βάση των όσων αναφέρει πρέπει να χρησιμοποιήσουμε τη φόρμα της level8. Αλλά δεν αλλάζει κάτι απλά πρέπει να πάμε στο folder της 9.. Συνεπώς το μόνο που αλλάζει είναι η SSI εντολή και γίνεται<!-- #exec cmd="ls ../../9/"-->. Τα υπόλοιπα τα ξέρετε..
  • Basic Level10
    Εδώ θέλουμε να εκμεταλλευτούμε τα cookies..Βάζουμε κάποιο plugin στο Firefox ώστε να μπορούμε να κάνουμε edit τα cookies και απλά αλλάζουμε το cookie με το όνομα level10_authorized…

Έτσι τελειώσαμε με το Basic Levels.. Σε άλλο post η συνέχεια!

Advertisements

Σχολιάστε

Εισάγετε τα παρακάτω στοιχεία ή επιλέξτε ένα εικονίδιο για να συνδεθείτε:

Λογότυπο WordPress.com

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό WordPress.com. Αποσύνδεση / Αλλαγή )

Φωτογραφία Twitter

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Twitter. Αποσύνδεση / Αλλαγή )

Φωτογραφία Facebook

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Facebook. Αποσύνδεση / Αλλαγή )

Φωτογραφία Google+

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Google+. Αποσύνδεση / Αλλαγή )

Σύνδεση με %s


Αρέσει σε %d bloggers: