Επίλυση της εργασίας με το pwnable.kr 25 - otp. Όριο μεγέθους αρχείου Linux

Επίλυση της εργασίας με το pwnable.kr 25 - otp. Όριο μεγέθους αρχείου Linux
Σε αυτό το άρθρο θα λύσουμε την 25η εργασία από τον ιστότοπο pwnable.kr.

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

  • PWN;
  • κρυπτογραφία (Crypto);
  • τεχνολογίες δικτύου (Δίκτυο);
  • αντίστροφη (Αντίστροφη Μηχανική);
  • στεγανογραφία (Stegano);
  • αναζήτηση και εκμετάλλευση τρωτών σημείων WEB.

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

Για να μπορείτε να μάθετε για νέα άρθρα, λογισμικό και άλλες πληροφορίες, δημιούργησα Κανάλι Telegram и ομάδα για να συζητήσουν τυχόν θέματα στην περιοχή του ΙΙΚΒ. Επίσης τα προσωπικά σας αιτήματα, ερωτήσεις, προτάσεις και συστάσεις Θα ρίξω μια ματιά και θα απαντήσω σε όλους..

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

Επίλυση της εργασίας otp

Συνεχίζουμε με τη δεύτερη ενότητα. Θα πω αμέσως ότι είναι πιο δύσκολο από το πρώτο, αλλά αυτή τη φορά δεν παρέχουν τον πηγαίο κώδικα του προγράμματος. Μην ξεχάσετε τη συζήτηση εδώ (https://t.me/RalfHackerPublicChat) και εδώ (https://t.me/RalfHackerChannel). Ας αρχίσουμε.

Κάντε κλικ στο εικονίδιο με την υπογραφή otp. Μας δίνεται μια διεύθυνση και μια θύρα για να συνδεθούμε.

Επίλυση της εργασίας με το pwnable.kr 25 - otp. Όριο μεγέθους αρχείου Linux

Συνδεόμαστε και κοιτάμε γύρω μας στον διακομιστή.

Επίλυση της εργασίας με το pwnable.kr 25 - otp. Όριο μεγέθους αρχείου Linux

Η σημαία που δεν μπορούμε να διαβάσουμε είναι το πρόγραμμα και ο πηγαίος κώδικας του. Ας δούμε την πηγή.

Επίλυση της εργασίας με το pwnable.kr 25 - otp. Όριο μεγέθους αρχείου Linux

Ας το σηκώσουμε. Το πρόγραμμα παίρνει έναν κωδικό πρόσβασης ως επιχείρημα.

Επίλυση της εργασίας με το pwnable.kr 25 - otp. Όριο μεγέθους αρχείου Linux

Επιπλέον, τυχαία 16 byte αποθηκεύονται στη μεταβλητή otp.

Επίλυση της εργασίας με το pwnable.kr 25 - otp. Όριο μεγέθους αρχείου Linux

Ένα αρχείο με τυχαίο όνομα δημιουργείται στο φάκελο tmp (τα πρώτα 8 byte είναι otp) και γράφονται τυχαία 8 byte (τα δεύτερα 8 byte είναι otp).

Επίλυση της εργασίας με το pwnable.kr 25 - otp. Όριο μεγέθους αρχείου Linux

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

Επίλυση της εργασίας με το pwnable.kr 25 - otp. Όριο μεγέθους αρχείου Linux

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

# ulimit -f 0

Επίλυση της εργασίας με το pwnable.kr 25 - otp. Όριο μεγέθους αρχείου Linux

Τώρα ας τρέξουμε το πρόγραμμα.

Επίλυση της εργασίας με το pwnable.kr 25 - otp. Όριο μεγέθους αρχείου Linux

Λαμβάνουμε ένα σφάλμα. Δεν πειράζει, μπορεί να υποβληθεί σε επεξεργασία χρησιμοποιώντας τον ίδιο python.

python -c "import os, signal; signal.signal(signal.SIGXFSZ, signal.SIG_IGN); os.system('./otp 0')" 

Επίλυση της εργασίας με το pwnable.kr 25 - otp. Όριο μεγέθους αρχείου Linux

Παίρνουμε τη σημαία και τους εύκολους 100 βαθμούς μας. Και συνεχίζουμε: στο επόμενο άρθρο θα αγγίξουμε τον Ιστό. Μπορείτε να συμμετάσχετε στο Telegram.

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο