Το OWASP ή το Open Web Security Project είναι ένας μη κερδοσκοπικός φιλανθρωπικός οργανισμός που εστιάζει στη βελτίωση της ασφάλειας του λογισμικού και των διαδικτυακών εφαρμογών.
Ο οργανισμός δημοσιεύει μια λίστα κορυφαίων τρωτών σημείων ασφαλείας στον ιστό με βάση τα δεδομένα από διάφορους οργανισμούς ασφαλείας.
Τα τρωτά σημεία ασφαλείας στο διαδίκτυο δίδονται προτεραιότητα ανάλογα με την δυνατότητα εκμετάλλευσης, την ανιχνευσιμότητα και τον αντίκτυπο στο λογισμικό.
- Αξιοποίηση -
Τι χρειάζεται για την εκμετάλλευση της ευπάθειας ασφαλείας; Υψηλότερη δυνατότητα αξιοποίησης όταν η επίθεση χρειάζεται μόνο πρόγραμμα περιήγησης ιστού και το χαμηλότερο είναι προηγμένος προγραμματισμός και εργαλεία.
- Ανιχνευσιμότητα -
Πόσο εύκολο είναι να εντοπίσουμε την απειλή; Το υψηλότερο είναι οι πληροφορίες που εμφανίζονται στη διεύθυνση URL, τη φόρμα ή το μήνυμα σφάλματος και το χαμηλότερο πηγαίο κώδικα.
- Κρούση ή ζημιά -
Πόση ζημιά θα γίνει εάν εκτεθεί ή επιτεθεί η ευπάθεια στην ασφάλεια; Το υψηλότερο είναι πλήρες σφάλμα συστήματος και το χαμηλότερο δεν είναι καθόλου
Ο κύριος στόχος του OWASP Top 10 είναι να εκπαιδεύσει τους προγραμματιστές, τους σχεδιαστές, τους διαχειριστές, τους αρχιτέκτονες και τους οργανισμούς σχετικά με τις πιο σημαντικές ευπάθειες ασφαλείας.
Οι κορυφαίες 10 ευπάθειες ασφαλείας σύμφωνα με το OWASP Top 10 είναι:
- SQL Injection
- Διαδικτυακή δέσμη ενεργειών
- Broken Authentication and Session Management
- Ανασφαλείς άμεσες αναφορές αντικειμένων
- Συλλογή αιτήσεων Cross Site
- Λανθασμένη διαμόρφωση ασφαλείας
- Ασφαλής κρυπτογραφική αποθήκευση
- Αποτυχία περιορισμού της πρόσβασης στο URL
- Ανεπαρκής προστασία επιπέδου μεταφοράς
- Μη επικυρωμένες ανακατευθύνσεις και προωθήσεις
SQL Injection
Περιγραφή
Το Injection είναι ένα θέμα ευπάθειας ασφαλείας που επιτρέπει σε έναν εισβολέα να τροποποιήσει τις δηλώσεις SQL backend με χειρισμό των δεδομένων που παρέχονται από τον χρήστη.
Η ένεση πραγματοποιείται όταν η είσοδος του χρήστη αποστέλλεται σε διερμηνέα ως μέρος της εντολής ή του ερωτήματος και εξαπατά τον διερμηνέα να εκτελεί ανεπιθύμητες εντολές και δίνει πρόσβαση σε μη εξουσιοδοτημένα δεδομένα.
Η εντολή SQL η οποία όταν εκτελείται από εφαρμογή web μπορεί επίσης να εκθέσει τη βάση δεδομένων back-end.
ΕΠΙΠΤΩΣΕΙΣ
- Ένας εισβολέας μπορεί να εισάγει κακόβουλο περιεχόμενο στα ευάλωτα πεδία.
- Ευαίσθητα δεδομένα όπως ονόματα χρηστών, κωδικοί πρόσβασης κ.λπ. μπορούν να διαβαστούν από τη βάση δεδομένων.
- Τα δεδομένα της βάσης δεδομένων μπορούν να τροποποιηθούν (Εισαγωγή / Ενημέρωση / Διαγραφή).
- Οι λειτουργίες διαχείρισης μπορούν να εκτελεστούν στη βάση δεδομένων
Ευπαθή αντικείμενα
- Πεδία εισαγωγής
- Διευθύνσεις URL που αλληλεπιδρούν με τη βάση δεδομένων.
Παραδείγματα:
- Έγχυση SQL στη σελίδα σύνδεσης
Σύνδεση σε μια εφαρμογή χωρίς έγκυρα διαπιστευτήρια.
Το έγκυρο όνομα χρήστη είναι διαθέσιμο και ο κωδικός πρόσβασης δεν είναι διαθέσιμος.
URL δοκιμής: http://demo.testfire.net/default.aspx
Όνομα χρήστη: sjones
Κωδικός πρόσβασης: 1 = 1 'ή pass123
Το ερώτημα SQL δημιουργήθηκε και εστάλη στον Διερμηνέα όπως παρακάτω
ΕΠΙΛΕΞΤΕ * ΑΠΟ Χρήστες ΠΟΥ ΕΧΟΥΝ Όνομα χρήστη = sjones ΚΑΙ Κωδικός πρόσβασης = 1 = 1 'ή pass123;
Συστάσεις
- Λευκή λίστα των πεδίων εισαγωγής
- Αποφύγετε την εμφάνιση λεπτομερών μηνυμάτων σφάλματος που είναι χρήσιμα σε έναν εισβολέα.
Διαδικτυακή δέσμη ενεργειών
Περιγραφή
Το Cross Site Scripting είναι επίσης σύντομα γνωστό ως XSS.
XSS ευπάθειες στοχεύουν σενάρια ενσωματωμένα σε μια σελίδα που εκτελούνται από την πλευρά του πελάτη, δηλαδή το πρόγραμμα περιήγησης χρήστη και όχι από την πλευρά του διακομιστή. Αυτά τα ελαττώματα μπορούν να προκύψουν όταν η εφαρμογή λαμβάνει μη αξιόπιστα δεδομένα και τα στέλνει στο πρόγραμμα περιήγησης στο Web χωρίς σωστή επικύρωση.
Οι επιτιθέμενοι μπορούν να χρησιμοποιήσουν το XSS για να εκτελέσουν κακόβουλα σενάρια στους χρήστες σε αυτήν την περίπτωση τα προγράμματα περιήγησης θυμάτων. Δεδομένου ότι το πρόγραμμα περιήγησης δεν μπορεί να γνωρίζει αν το σενάριο είναι αξιόπιστο ή όχι, το σενάριο θα εκτελεστεί και ο εισβολέας μπορεί να εισβάλει σε cookie συνεδρίας, να παραμορφώσει ιστότοπους ή να ανακατευθύνει το χρήστη σε ανεπιθύμητους και κακόβουλους ιστότοπους.
Το XSS είναι μια επίθεση που επιτρέπει στον εισβολέα να εκτελέσει τα σενάρια στο πρόγραμμα περιήγησης του θύματος.
ΕΠΙΠΤΩΣΕΙΣ:
- Κάνοντας χρήση αυτής της ευπάθειας ασφαλείας, ένας εισβολέας μπορεί να εισάγει δέσμες ενεργειών στην εφαρμογή, να κλέψει cookie συνεδρίας, να παραμορφώσει ιστότοπους και να εκτελέσει κακόβουλο λογισμικό στα μηχανήματα του θύματος.
Ευπαθή αντικείμενα
- Πεδία εισαγωγής
- Διευθύνσεις URL
Παραδείγματα
1. http://www.vulnerablesite.com/home?" < script > alert (" xss") script >
Το παραπάνω σενάριο όταν εκτελείται σε πρόγραμμα περιήγησης, θα εμφανιστεί ένα πλαίσιο μηνύματος εάν ο ιστότοπος είναι ευάλωτος στο XSS.
Η πιο σοβαρή επίθεση μπορεί να γίνει αν ο εισβολέας θέλει να εμφανίσει ή να αποθηκεύσει cookie συνεδρίας.
2. http://demo.testfire.net/search.aspx?txtSearch width = 500 height 500>
Το παραπάνω σενάριο κατά την εκτέλεση, το πρόγραμμα περιήγησης θα φορτώσει ένα αόρατο πλαίσιο που θα οδηγεί στη διεύθυνση http://google.com .
Η επίθεση μπορεί να γίνει σοβαρή εκτελώντας ένα κακόβουλο σενάριο στο πρόγραμμα περιήγησης.
Συστάσεις
- Πεδία εισαγωγής λευκής λίστας
- Κωδικοποίηση εξόδου εισόδου
Broken Authentication and Session Management
Περιγραφή
Οι ιστότοποι συνήθως δημιουργούν ένα cookie περιόδου σύνδεσης και ένα αναγνωριστικό περιόδου σύνδεσης για κάθε έγκυρη περίοδο σύνδεσης, και αυτά τα cookie περιέχουν ευαίσθητα δεδομένα, όπως όνομα χρήστη, κωδικό πρόσβασης κ.λπ. πρέπει να υπάρχει ένα νέο cookie.
Εάν τα cookies δεν είναι ακυρωμένα, τα ευαίσθητα δεδομένα θα υπάρχουν στο σύστημα. Για παράδειγμα, ένας χρήστης που χρησιμοποιεί έναν δημόσιο υπολογιστή (Cyber Cafe), τα cookie του ευάλωτου ιστότοπου κάθεται στο σύστημα και εκτίθεται σε έναν εισβολέα. Ένας εισβολέας χρησιμοποιεί τον ίδιο δημόσιο υπολογιστή μετά από λίγο καιρό, τα ευαίσθητα δεδομένα διακυβεύονται.
Με τον ίδιο τρόπο, ένας χρήστης που χρησιμοποιεί έναν δημόσιο υπολογιστή, αντί να αποσυνδεθεί, κλείνει το πρόγραμμα περιήγησης απότομα. Ένας εισβολέας χρησιμοποιεί το ίδιο σύστημα, όταν περιηγείται στον ίδιο ευάλωτο ιστότοπο, θα ανοίξει η προηγούμενη συνεδρία του θύματος. Ο εισβολέας μπορεί να κάνει ό, τι θέλει από την κλοπή πληροφοριών προφίλ, στοιχείων πιστωτικής κάρτας κ.λπ.
Πρέπει να γίνει έλεγχος για να βρείτε τη δύναμη του ελέγχου ταυτότητας και της περιόδου λειτουργίας. Κλειδιά, διακριτικά περιόδου λειτουργίας, cookie πρέπει να εφαρμόζονται σωστά χωρίς να διακυβεύονται κωδικοί πρόσβασης
Ευπαθή αντικείμενα
- Τα αναγνωριστικά περιόδου σύνδεσης που εκτίθενται στη διεύθυνση URL μπορούν να οδηγήσουν σε επίθεση διόρθωσης περιόδου σύνδεσης.
- Τα αναγνωριστικά περιόδου σύνδεσης είναι ίδια πριν και μετά την αποσύνδεση και τη σύνδεση.
- Τα χρονικά όρια συνεδρίας δεν εφαρμόζονται σωστά.
- Η εφαρμογή εκχωρεί το ίδιο αναγνωριστικό περιόδου σύνδεσης για κάθε νέα περίοδο σύνδεσης.
- Τα επικυρωμένα μέρη της εφαρμογής προστατεύονται χρησιμοποιώντας SSL και οι κωδικοί πρόσβασης αποθηκεύονται σε κατακερματισμένη ή κρυπτογραφημένη μορφή.
- Η περίοδος σύνδεσης μπορεί να επαναχρησιμοποιηθεί από έναν χρήστη με χαμηλό προνόμιο.
ΕΠΙΠΤΩΣΕΙΣ
- Κάνοντας χρήση αυτής της ευπάθειας, ένας εισβολέας μπορεί να εισβάλει σε μια συνεδρία, να αποκτήσει μη εξουσιοδοτημένη πρόσβαση στο σύστημα που επιτρέπει την αποκάλυψη και την τροποποίηση μη εξουσιοδοτημένων πληροφοριών.
- Οι συνεδρίες μπορούν να γίνουν ψηλά χρησιμοποιώντας κλεμμένα cookies ή συνεδρίες χρησιμοποιώντας XSS.
Παραδείγματα
- Η εφαρμογή κράτησης αεροπορικής εταιρείας υποστηρίζει την επανεγγραφή διευθύνσεων URL, τοποθετώντας αναγνωριστικά περιόδου σύνδεσης στη διεύθυνση URL:
http://Examples.com/sale/saleitems;jsessionid=2P0OC2oJM0DPXSNQPLME34SERTBG/dest=Maldives (Πώληση εισιτηρίων στις Μαλδίβες)
Ένας επικυρωμένος χρήστης του ιστότοπου θέλει να ενημερώσει τους φίλους του για την πώληση και να στείλει ένα email. Οι φίλοι λαμβάνουν το αναγνωριστικό περιόδου σύνδεσης και μπορούν να χρησιμοποιηθούν για την πραγματοποίηση μη εξουσιοδοτημένων τροποποιήσεων ή την κατάχρηση των αποθηκευμένων στοιχείων πιστωτικής κάρτας.
- Μια εφαρμογή είναι ευάλωτη στο XSS, μέσω της οποίας ένας εισβολέας μπορεί να έχει πρόσβαση στο αναγνωριστικό περιόδου σύνδεσης και μπορεί να χρησιμοποιηθεί για την παραβίαση της περιόδου λειτουργίας.
- Τα χρονικά όρια των εφαρμογών δεν έχουν ρυθμιστεί σωστά. Ο χρήστης χρησιμοποιεί έναν δημόσιο υπολογιστή και κλείνει το πρόγραμμα περιήγησης αντί να αποσυνδεθεί και απομακρύνεται. Ο εισβολέας χρησιμοποιεί το ίδιο πρόγραμμα περιήγησης λίγο αργότερα και η περίοδος ελέγχου ταυτότητας.
Συστάσεις
- Όλες οι απαιτήσεις ελέγχου ταυτότητας και διαχείρισης περιόδου λειτουργίας πρέπει να καθοριστούν σύμφωνα με το Πρότυπο επαλήθευσης ασφάλειας εφαρμογών OWASP.
- Μην εκθέτετε ποτέ διαπιστευτήρια σε διευθύνσεις URL ή αρχεία καταγραφής.
- Πρέπει επίσης να καταβληθούν μεγάλες προσπάθειες για την αποφυγή ελαττωμάτων XSS που μπορούν να χρησιμοποιηθούν για την κλοπή αναγνωριστικών περιόδου σύνδεσης.
Ανασφαλείς άμεσες αναφορές αντικειμένων
Περιγραφή
Εμφανίζεται όταν ένας προγραμματιστής εκθέτει μια αναφορά σε ένα εσωτερικό αντικείμενο υλοποίησης, όπως ένα αρχείο, έναν κατάλογο ή ένα κλειδί βάσης δεδομένων όπως στη διεύθυνση URL ή ως παράμετρο FORM. Ο εισβολέας μπορεί να χρησιμοποιήσει αυτές τις πληροφορίες για πρόσβαση σε άλλα αντικείμενα και μπορεί να δημιουργήσει μια μελλοντική επίθεση για πρόσβαση στα μη εξουσιοδοτημένα δεδομένα.
ΕΠΙΠΤΩΣΕΙΣ
- Χρησιμοποιώντας αυτήν την ευπάθεια, ένας εισβολέας μπορεί να αποκτήσει πρόσβαση σε μη εξουσιοδοτημένα εσωτερικά αντικείμενα, να τροποποιήσει δεδομένα ή να θέσει σε κίνδυνο την εφαρμογή.
Ευπαθή αντικείμενα
- Στη διεύθυνση URL.
Παραδείγματα:
Η αλλαγή του "userid" στην ακόλουθη διεύθυνση URL μπορεί να κάνει τον εισβολέα να δει τις πληροφορίες άλλων χρηστών.
http://www.vulnerablesite.com/userid=123 Τροποποιήθηκε σε http://www.vulnerablesite.com/userid=124
Ένας εισβολέας μπορεί να δει άλλες πληροφορίες αλλάζοντας την τιμή αναγνωριστικού χρήστη.
Προτάσεις:
- Εφαρμογή ελέγχων ελέγχου πρόσβασης.
- Αποφύγετε την έκθεση αναφορών αντικειμένων σε διευθύνσεις URL.
- Επαληθεύστε την εξουσιοδότηση για όλα τα αντικείμενα αναφοράς.
Συλλογή αιτήσεων Cross Site
Περιγραφή
Το Cross Site Request Forgery είναι ένα πλαστό αίτημα που προήλθε από το cross site.
Η επίθεση CSRF είναι μια επίθεση που συμβαίνει όταν ένας κακόβουλος ιστότοπος, ένα email ή ένα πρόγραμμα αναγκάζει το πρόγραμμα περιήγησης ενός χρήστη να εκτελέσει μια ανεπιθύμητη ενέργεια σε έναν αξιόπιστο ιστότοπο για τον οποίο ο χρήστης έχει πιστοποιηθεί.
Μια επίθεση CSRF αναγκάζει ένα συνδεδεμένο πρόγραμμα περιήγησης του θύματος να στείλει ένα πλαστό αίτημα HTTP, συμπεριλαμβανομένου του cookie συνεδρίας του θύματος και οποιωνδήποτε άλλων πληροφοριών ταυτότητας που περιλαμβάνονται αυτόματα σε μια ευάλωτη εφαρμογή ιστού.
Ένας σύνδεσμος θα σταλεί από τον εισβολέα στο θύμα όταν ο χρήστης κάνει κλικ στη διεύθυνση URL όταν συνδεθεί στον αρχικό ιστότοπο, τα δεδομένα θα κλαπεί από τον ιστότοπο.
ΕΠΙΠΤΩΣΕΙΣ
- Η χρήση αυτής της ευπάθειας ως εισβολέα μπορεί να αλλάξει τις πληροφορίες προφίλ χρήστη, να αλλάξει την κατάσταση, να δημιουργήσει έναν νέο χρήστη για λογαριασμό διαχειριστή κ.λπ.
Ευπαθή αντικείμενα
- Σελίδα προφίλ χρήστη
- Φόρμες λογαριασμού χρήστη
- Σελίδα επιχειρηματικής συναλλαγής
Παραδείγματα
Το θύμα συνδέεται σε έναν ιστότοπο τράπεζας χρησιμοποιώντας έγκυρα διαπιστευτήρια. Λαμβάνει αλληλογραφία από έναν εισβολέα λέγοντας "Κάντε κλικ εδώ για να δωρίσετε 1 $ για να προκαλέσετε."
Όταν το θύμα κάνει κλικ σε αυτό, θα δημιουργηθεί ένα έγκυρο αίτημα για δωρεά 1 $ σε έναν συγκεκριμένο λογαριασμό.
http://www.vulnerablebank.com/transfer.do?account=cause&amount=1
Ο εισβολέας συλλαμβάνει αυτό το αίτημα και δημιουργεί το παρακάτω αίτημα και ενσωματώνει ένα κουμπί που λέει "Υποστηρίζω αιτία"
http://www.vulnerablebank.com/transfer.do?account=Attacker&amount=1000
Δεδομένου ότι η συνεδρία επιβεβαιώθηκε και το αίτημα υποβάλλεται μέσω του ιστότοπου της τράπεζας, ο διακομιστής θα μεταφέρει 1000 $ δολάρια στον εισβολέα.
Σύσταση
- Εντοπίστε την παρουσία του χρήστη κατά την εκτέλεση ευαίσθητων ενεργειών.
- Εφαρμόστε μηχανισμούς όπως CAPTCHA, Re-Authentication και Unique Request Tokens.
Λανθασμένη διαμόρφωση ασφαλείας
Περιγραφή
Η ρύθμιση παραμέτρων ασφαλείας πρέπει να οριστεί και να αναπτυχθεί για την εφαρμογή, τα πλαίσια, τον διακομιστή εφαρμογών, τον διακομιστή ιστού, τον διακομιστή βάσεων δεδομένων και την πλατφόρμα. Εάν έχουν ρυθμιστεί σωστά, ένας εισβολέας μπορεί να έχει μη εξουσιοδοτημένη πρόσβαση σε ευαίσθητα δεδομένα ή λειτουργίες.
Μερικές φορές τέτοια ελαττώματα οδηγούν σε πλήρη παραβίαση του συστήματος. Η ενημέρωση του λογισμικού είναι επίσης καλή ασφάλεια.
ΕΠΙΠΤΩΣΕΙΣ
- Χρησιμοποιώντας αυτήν την ευπάθεια, ο εισβολέας μπορεί να απαριθμήσει τις υποκείμενες πληροφορίες έκδοσης διακομιστή τεχνολογίας και εφαρμογών, πληροφορίες βάσης δεδομένων και να αποκτήσει πληροφορίες σχετικά με την εφαρμογή για να πραγματοποιήσει λίγες επιπλέον επιθέσεις.
Ευάλωτα αντικείμενα
- Διεύθυνση URL
- Πεδία φόρμας
- Πεδία εισαγωγής
Παραδείγματα
- Η κονσόλα διαχειριστή διακομιστή εφαρμογών εγκαθίσταται αυτόματα και δεν καταργείται. Οι προεπιλεγμένοι λογαριασμοί δεν αλλάζουν. Ο εισβολέας μπορεί να συνδεθεί με προεπιλεγμένους κωδικούς πρόσβασης και μπορεί να αποκτήσει μη εξουσιοδοτημένη πρόσβαση.
- Η Λίστα καταλόγου δεν είναι απενεργοποιημένη στον διακομιστή σας. Ο Attacker ανακαλύπτει και μπορεί απλά να παραθέσει καταλόγους για να βρει οποιοδήποτε αρχείο.
Συστάσεις
- Μια ισχυρή αρχιτεκτονική εφαρμογών που παρέχει καλό διαχωρισμό και ασφάλεια μεταξύ των στοιχείων.
- Αλλαγή προεπιλεγμένων ονομάτων χρήστη και κωδικών πρόσβασης.
- Απενεργοποιήστε τις λίστες καταλόγων και εφαρμόστε ελέγχους ελέγχου πρόσβασης.
Ασφαλής κρυπτογραφική αποθήκευση
Περιγραφή
Η μη ασφαλής κρυπτογραφική αποθήκευση είναι μια κοινή ευπάθεια που υπάρχει όταν τα ευαίσθητα δεδομένα δεν αποθηκεύονται με ασφάλεια.
Τα διαπιστευτήρια χρήστη, οι πληροφορίες προφίλ, τα στοιχεία υγείας, οι πληροφορίες πιστωτικών καρτών κ.λπ. εμπίπτουν σε ευαίσθητες πληροφορίες δεδομένων σε έναν ιστότοπο.
Αυτά τα δεδομένα θα αποθηκευτούν στη βάση δεδομένων της εφαρμογής. Όταν αυτά τα δεδομένα αποθηκεύονται ακατάλληλα με τη χρήση κρυπτογράφησης ή κατακερματισμού *, θα είναι ευάλωτα στους εισβολείς.
(* Η κατακερματισμός είναι ο μετασχηματισμός των χαρακτήρων συμβολοσειράς σε μικρότερες συμβολοσειρές σταθερού μήκους ή κλειδιού. Για την αποκρυπτογράφηση της συμβολοσειράς, ο αλγόριθμος που χρησιμοποιείται για τη διαμόρφωση του κλειδιού πρέπει να είναι διαθέσιμος)
ΕΠΙΠΤΩΣΕΙΣ
- Χρησιμοποιώντας αυτήν την ευπάθεια, ένας εισβολέας μπορεί να κλέψει, να τροποποιήσει τέτοια ασθενώς προστατευμένα δεδομένα για να πραγματοποιήσει κλοπή ταυτότητας, απάτη με πιστωτική κάρτα ή άλλα εγκλήματα.
Ευάλωτα αντικείμενα
- Βάση δεδομένων εφαρμογών.
Παραδείγματα
Σε μια από τις τραπεζικές εφαρμογές, η βάση δεδομένων κωδικού πρόσβασης χρησιμοποιεί αλάτιους κατακερματισμούς * για να αποθηκεύσει όλους τους κωδικούς πρόσβασης. Ένα ελάττωμα έγχυσης SQL επιτρέπει στον εισβολέα να ανακτήσει το αρχείο κωδικού πρόσβασης. Όλα τα αλάτιστα κατακερματισμού μπορούν να εξαναγκάζονται σε ωμή κίνηση, ενώ οι αλατισμένοι κωδικοί πρόσβασης θα χρειαστούν χιλιάδες χρόνια.
(* Unsalted Hashes - Το αλάτι είναι τυχαία δεδομένα που επισυνάπτονται στα αρχικά δεδομένα. Το αλάτι προσαρτάται στον κωδικό πρόσβασης πριν από τον κατακερματισμό)
Συστάσεις
- Εξασφαλίστε κατάλληλους ισχυρούς αλγόριθμους. Μην δημιουργήσετε δικούς σας κρυπτογραφικούς αλγόριθμους. Χρησιμοποιήστε μόνο εγκεκριμένους δημόσιους αλγόριθμους όπως AES, RSA δημόσιο κλειδί κρυπτογράφησης και SHA-256 κ.λπ.
- Βεβαιωθείτε ότι τα αντίγραφα ασφαλείας εκτός ιστότοπου είναι κρυπτογραφημένα, αλλά η διαχείριση και η δημιουργία αντιγράφων ασφαλείας των κλειδιών γίνεται ξεχωριστά.
Αποτυχία περιορισμού της πρόσβασης στο URL
Περιγραφή
Οι εφαρμογές Ιστού ελέγχουν τα δικαιώματα πρόσβασης URL πριν από την απόδοση προστατευμένων συνδέσμων και κουμπιών. Οι εφαρμογές πρέπει να πραγματοποιούν παρόμοιους ελέγχους ελέγχου πρόσβασης κάθε φορά που προσπελάζονται αυτές οι σελίδες.
Στις περισσότερες από τις εφαρμογές, οι προνομιακές σελίδες, τοποθεσίες και πόροι δεν παρουσιάζονται στους προνομιούχους χρήστες.
Με μια έξυπνη εικασία, ένας εισβολέας μπορεί να έχει πρόσβαση σε σελίδες προνομίων. Ένας εισβολέας μπορεί να έχει πρόσβαση σε ευαίσθητες σελίδες, να καλεί λειτουργίες και να βλέπει εμπιστευτικές πληροφορίες.
ΕΠΙΠΤΩΣΕΙΣ
- Η χρήση αυτού του επιτιθέμενου τρωτού σημείου μπορεί να αποκτήσει πρόσβαση στις μη εξουσιοδοτημένες διευθύνσεις URL, χωρίς να συνδεθεί στην εφαρμογή και να εκμεταλλευτεί την ευπάθεια. Ένας εισβολέας μπορεί να έχει πρόσβαση σε ευαίσθητες σελίδες, να καλεί λειτουργίες και να βλέπει εμπιστευτικές πληροφορίες.
Ευπαθή αντικείμενα:
- Διευθύνσεις URL
Παραδείγματα
- Ο εισβολέας παρατηρεί ότι η διεύθυνση URL δείχνει το ρόλο ως "/ user / getaccounts." Τροποποιείται ως "/ admin / getaccounts".
- Ένας εισβολέας μπορεί να προσθέσει ρόλο στη διεύθυνση URL.
Το http://www.vulnerablsite.com μπορεί να τροποποιηθεί ως http://www.vulnerablesite.com/admin
Συστάσεις
- Εφαρμόστε ισχυρούς ελέγχους πρόσβασης.
- Οι πολιτικές ελέγχου ταυτότητας και εξουσιοδότησης πρέπει να βασίζονται σε ρόλο.
- Περιορίστε την πρόσβαση σε ανεπιθύμητα URL.
Ανεπαρκής προστασία επιπέδου μεταφοράς
Περιγραφή
Ασχολείται με την ανταλλαγή πληροφοριών μεταξύ του χρήστη (πελάτη) και του διακομιστή (εφαρμογή). Οι εφαρμογές μεταδίδουν συχνά ευαίσθητες πληροφορίες, όπως στοιχεία ελέγχου ταυτότητας, πληροφορίες πιστωτικής κάρτας και διακριτικά συνεδρίας μέσω δικτύου.
Χρησιμοποιώντας αδύναμους αλγόριθμους ή χρησιμοποιώντας ληγμένα ή μη έγκυρα πιστοποιητικά ή δεν χρησιμοποιείτε SSL μπορεί να επιτρέψει την επικοινωνία να εκτεθεί σε μη αξιόπιστους χρήστες, κάτι που μπορεί να θέσει σε κίνδυνο μια εφαρμογή ιστού ή να κλέψει ευαίσθητες πληροφορίες.
ΕΠΙΠΤΩΣΕΙΣ
- Χρησιμοποιώντας αυτήν την ευπάθεια ασφάλειας ιστού, ένας εισβολέας μπορεί να μυρίσει νόμιμα διαπιστευτήρια χρήστη και να αποκτήσει πρόσβαση στην εφαρμογή.
- Μπορεί να κλέψει στοιχεία πιστωτικής κάρτας.
Ευάλωτα αντικείμενα
- Τα δεδομένα αποστέλλονται μέσω του δικτύου.
Συστάσεις
- Ενεργοποίηση ασφαλούς HTTP και επιβολή μεταφοράς διαπιστευτηρίων μόνο μέσω HTTPS.
- Βεβαιωθείτε ότι το πιστοποιητικό σας είναι έγκυρο και δεν έχει λήξει.
Παραδείγματα:
1. Μια εφαρμογή που δεν χρησιμοποιεί SSL, ένας εισβολέας θα παρακολουθεί απλώς την κυκλοφορία του δικτύου και θα παρατηρεί ένα επικυρωμένο cookie συνεδρίας θύματος. Ένας εισβολέας μπορεί να κλέψει αυτό το cookie και να εκτελέσει την επίθεση Man-in-the-Middle.
Μη επικυρωμένες ανακατευθύνσεις και προωθήσεις
Περιγραφή
Η εφαρμογή ιστού χρησιμοποιεί λίγες μεθόδους για την ανακατεύθυνση και προώθηση των χρηστών σε άλλες σελίδες για έναν επιδιωκόμενο σκοπό.
Εάν δεν υπάρχει σωστή επικύρωση κατά την ανακατεύθυνση σε άλλες σελίδες, οι εισβολείς μπορούν να το χρησιμοποιήσουν και μπορούν να ανακατευθύνουν τα θύματα σε ιστότοπους ηλεκτρονικού ψαρέματος (phishing) ή κακόβουλου λογισμικού ή να χρησιμοποιούν προωθήσεις για πρόσβαση σε μη εξουσιοδοτημένες σελίδες.
ΕΠΙΠΤΩΣΕΙΣ
- Ένας εισβολέας μπορεί να στείλει μια διεύθυνση URL στον χρήστη που περιέχει μια γνήσια διεύθυνση URL προσαρτημένη με κωδικοποιημένη κακόβουλη διεύθυνση URL. Ένας χρήστης βλέποντας απλώς το γνήσιο τμήμα της αποστολής διεύθυνσης URL του εισβολέα μπορεί να την περιηγηθεί και να γίνει θύμα.
Παραδείγματα
1. http://www.vulnerablesite.com/login.aspx?redirectURL=ownsite.com
Τροποποιήθηκε σε
http://www.vulnerablesite.com/login.aspx?redirectURL=evilsite.com
Συστάσεις
- Απλώς αποφύγετε τη χρήση ανακατευθύνσεων και προώθησης στην εφαρμογή. Εάν χρησιμοποιείται, μην χρησιμοποιείτε τη χρήση παραμέτρων χρήστη για τον υπολογισμό του προορισμού.
- Εάν οι παράμετροι προορισμού δεν μπορούν να αποφευχθούν, βεβαιωθείτε ότι η παρεχόμενη τιμή είναι έγκυρη και εξουσιοδοτημένη για τον χρήστη.
Αυτό το άρθρο συνεισφέρει ο Prasanthi Eati