CGI
Πληροφορίες
Τα CGI scripts είναι perl scripts, οπότε, αν έχετε παραβιάσει έναν διακομιστή που μπορεί να εκτελεί .cgi scripts, μπορείτε να ανεβάσετε έναν αντίστροφο shell του perl (/usr/share/webshells/perl/perl-reverse-shell.pl
), αλλάξτε την κατάληξη από .pl σε .cgi, δώστε δικαιώματα εκτέλεσης (chmod +x
) και αποκτήστε πρόσβαση στο αντίστροφο shell από τον περιηγητή για να το εκτελέσετε. Για να ελέγξετε για ευπάθειες CGI συνιστάται να χρησιμοποιήσετε nikto -C all
(και όλα τα πρόσθετα)
ShellShock
Το ShellShock είναι μια ευπάθεια που επηρεάζει το ευρέως χρησιμοποιούμενο κέλυφος εντολών Bash σε λειτουργικά συστήματα βασισμένα σε Unix. Στοχεύει τη δυνατότητα του Bash να εκτελεί εντολές που περνούν από εφαρμογές. Η ευπάθεια βρίσκεται στην επεξεργασία των μεταβλητών περιβάλλοντος, που είναι δυναμικές ονομασμένες τιμές που επηρεάζουν τον τρόπο λειτουργίας των διεργασιών σε έναν υπολογιστή. Οι επιτιθέμενοι μπορούν να εκμεταλλευτούν αυτό προσαρτώντας κακόβουλο κώδικα στις μεταβλητές περιβάλλοντος, ο οποίος εκτελείται κατά τη λήψη της μεταβλητής. Αυτό επιτρέπει στους επιτιθέμενους να πιθανώς παραβιάσουν το σύστημα.
Εκμεταλλευόμενοι αυτήν την ευπάθεια η σελίδα μπορεί να εμφανίσει ένα σφάλμα.
Μπορείτε να ανακαλύψετε αυτήν την ευπάθεια παρατηρώντας ότι χρησιμοποιεί μια παλιά έκδοση Apache και cgi_mod (με φάκελο cgi) ή χρησιμοποιώντας nikto.
Δοκιμή
Οι περισσότερες δοκιμές βασίζονται στο να εκτυπώνουν κάτι και να αναμένουν ότι αυτό το string θα επιστραφεί στην απόκριση του ιστοτόπου. Εάν υποψιάζεστε ότι μια σελίδα μπορεί να είναι ευπάθης, αναζητήστε όλες τις σελίδες cgi και δοκιμάστε τις.
Nmap
Curl (αντανακλαστικό, τυφλό και εκτός ζώνης)
Ο Curl είναι ένα εργαλείο γραμμής εντολών που χρησιμοποιείται για την αποστολή και λήψη δεδομένων μέσω πρωτοκόλλων δικτύου, όπως το HTTP, το HTTPS και το FTP. Μπορεί να χρησιμοποιηθεί για την εκτέλεση αντανακλαστικών, τυφλών και εκτός ζώνης επιθέσεων.
Οι αντανακλαστικές επιθέσεις Curl εκμεταλλεύονται την αδυναμία επικύρωσης εισόδου από τον εξυπηρετητή, προκαλώντας την εκτέλεση κακόβουλου κώδικα στον πελάτη. Οι τυφλές επιθέσεις Curl δεν εμφανίζουν άμεση ανταπόκριση από τον εξυπηρετητή, αλλά μπορούν να εκμεταλλευτούν την ανάλυση της απόκρισης για να ανακτήσουν πληροφορίες. Οι επιθέσεις εκτός ζώνης Curl εκμεταλλεύονται την αναφορά σε έναν εξωτερικό εξυπηρετητή για την αποστολή δεδομένων.
Για να εκτελέσετε μια επίθεση Curl, μπορείτε να χρησιμοποιήσετε την εντολή curl
ακολουθούμενη από τις απαραίτητες παραμέτρους και τον στόχο της επίθεσης. Μπορείτε επίσης να χρησιμοποιήσετε διάφορες επιλογές για να προσαρμόσετε τη συμπεριφορά του Curl και να εκμεταλλευτείτε τυχόν ευπάθειες στον εξυπηρετητή.
Παρακάτω παρέχονται παραδείγματα επιθέσεων Curl για αντανακλαστικές, τυφλές και εκτός ζώνης επιθέσεις:
Αντανακλαστική Επίθεση Curl
Τυφλή Επίθεση Curl
Επίθεση εκτός ζώνης Curl
Είναι σημαντικό να είστε προσεκτικοί κατά την εκτέλεση επιθέσεων Curl, καθώς μπορεί να προκληθεί ζημιά στον εξυπηρετητή ή να παραβιαστεί η ασφάλεια του συστήματος. Πάντα εκτελείτε επιθέσεις μόνο σε συστήματα για τα οποία έχετε την άδεια να το κάνετε και πάντα τηρείτε τους νόμους περί κυβερνοεγκληματικότητας.
Εκμεταλλευτείτε
Η εκμετάλλευση (exploit) είναι η διαδικασία της αξιοποίησης μιας αδυναμίας ή ευπάθειας σε ένα σύστημα, με σκοπό την απόκτηση μη εξουσιοδοτημένης πρόσβασης ή την εκτέλεση κακόβουλου κώδικα. Οι εκμεταλλεύσεις μπορούν να αξιοποιήσουν ευπάθειες σε λογισμικό, πρωτόκολλα, δικτυακά πρωτόκολλα ή αδυναμίες στη διαμόρφωση του συστήματος.
Οι εκμεταλλεύσεις μπορούν να χρησιμοποιηθούν για να αποκτηθεί πρόσβαση σε ένα σύστημα, να αποκτηθούν προνόμια διαχειριστή ή να εκτελεστεί κακόβουλος κώδικας. Οι εκμεταλλεύσεις μπορούν να είναι είτε αυτόματες, όπου ο επιτιθέμενος χρησιμοποιεί ένα εργαλείο εκμετάλλευσης, είτε χειροκίνητες, όπου ο επιτιθέμενος αναπτύσσει έναν εξατομικευμένο κώδικα εκμετάλλευσης.
Οι εκμεταλλεύσεις μπορούν να αξιοποιήσουν διάφορες ευπάθειες, όπως αδυναμίες ελέγχου εισόδου, αδυναμίες αυθεντικοποίησης, αδυναμίες αποθήκευσης δεδομένων, αδυναμίες επικοινωνίας και πολλές άλλες. Οι εκμεταλλεύσεις μπορούν να είναι πολύ επικίνδυνες και να προκαλέσουν σοβαρές ζημιές σε ένα σύστημα, γι 'αυτό είναι σημαντικό να λαμβάνονται μέτρα ασφαλείας για την πρόληψη των εκμεταλλεύσεων.
Διαμεσολάβηση (MitM) στις αιτήσεις του διακομιστή ιστού
Το CGI δημιουργεί μια μεταβλητή περιβάλλοντος για κάθε κεφαλίδα στο αίτημα HTTP. Για παράδειγμα: η "host:web.com" δημιουργείται ως "HTTP_HOST"="web.com"
Καθώς η μεταβλητή HTTP_PROXY μπορεί να χρησιμοποιηθεί από τον διακομιστή ιστού, δοκιμάστε να στείλετε μια κεφαλίδα που περιέχει: "Proxy: <IP_επιτιθέμενου>:<ΘΥΡΑ>" και αν ο διακομιστής πραγματοποιήσει οποιαδήποτε αίτηση κατά τη διάρκεια της συνεδρίας, θα μπορείτε να καταγράψετε κάθε αίτηση που πραγματοποιείται από τον διακομιστή.
Παλιό PHP + CGI = RCE (CVE-2012-1823, CVE-2012-2311)
Βασικά, αν το cgi είναι ενεργό και το php είναι "παλιό" (<5.3.12 / < 5.4.2), μπορείτε να εκτελέσετε κώδικα. Για να εκμεταλλευτείτε αυτήν την ευπάθεια, πρέπει να έχετε πρόσβαση σε κάποιο αρχείο PHP του διακομιστή ιστού χωρίς να στέλνετε παραμέτρους (ιδιαίτερα χωρίς να στέλνετε τον χαρακτήρα "="). Στη συνέχεια, για να δοκιμάσετε αυτήν την ευπάθεια, μπορείτε να αποκτήσετε πρόσβαση, για παράδειγμα, στο /index.php?-s
(σημειώστε το -s
) και ο πηγαίος κώδικας της εφαρμογής θα εμφανιστεί στην απόκριση.
Στη συνέχεια, για να αποκτήσετε RCE, μπορείτε να στείλετε αυτό το ειδικό αίτημα: /?-d allow_url_include=1 -d auto_prepend_file=php://input
και ο κώδικας PHP που θα εκτελεστεί στο σώμα του αιτήματος. Παράδειγμα:
Περισσότερες πληροφορίες σχετικά με την ευπάθεια και δυνητικές εκμεταλλεύσεις: https://www.zero-day.cz/database/337/, cve-2012-1823, cve-2012-2311, CTF Writeup Example.
Last updated