Το OWASP (Open Web Application Security Project) είναι μια ανοιχτή κοινότητα που αποσκοπεί στο να βοηθήσει οργανισμούς να παράγουν, να προμηθεύονται και να συντηρούν εφαρμογές και API που θα είναι ασφαλή.
Η λίστα αυτή δημιουργήθηκε για να κάνει τους οργανισμούς και τις κυβερνητικές υπηρεσίες να εστιάσουν στα πιο σοβαρά από αυτά τα προβλήματα ασφαλείας. Η ασφάλεια των δικτυακών εφαρμογών έχει γίνει ένα καυτό θέμα καθώς οι εταιρείες σπεύδουν να
κάνουν τις υπηρεσίες και το υλικό που προσφέρουν προσβάσιμα μέσα από το internet. Την ίδια ώρα οι επιτιθέμενοι στρέφουν την προσοχή τους στις απλές αδυναμίες που δημιουργούνται κατά την ανάπτυξη των προγραμμάτων.
Όταν ένας οργανισμός ανεβάζει μια δικτυακή εφαρμογή καλεί τον κόσμο να στείλει HTTP αιτήματα. Επιθέσεις που βασίζονται σε αυτά τα αιτήματα περνάνε μέσα από firewalls, φίλτρα, πλατφόρμες και συστήματα ανίχνευσης επιθέσεων χωρίς να κοπούν γιατί εντάσσονται μέσα στο λογικό και αναμενόμενο HTTP αίτημα. Ακόμη και οι ασφαλείς δικτυακοί τόποι που χρησιμοποιούν SSL απλά δέχονται τα αιτήματα που φτάνουν μέσα από την κωδικοποιημένη οδό χωρίς να το σταματήσουν. Αυτό σημαίνει ότι ο κώδικας της δικτυακής σας εφαρμογής είναι μέρος της περιμέτρου ασφάλειά σας. Καθώς ο αριθμός το μέγεθος και η πολυπλοκότητα των δικτυακών εφαρμογών αυξάνει τόσο αυξάνει και η περίμετρος ασφαλείας που πρέπει να προτάξουμε.
Αυτά τα θέματα ασφάλειας που δημιουργούνται εδώ δεν είναι καινούρια. Στην πραγματικότητα, κάποια από αυτά τα έχουμε αντιληφθεί εδώ και δεκαετίες. Αλλά ακόμη, για πολλούς λόγους, σε μεγάλα project ανάπτυξης λογισμικού γίνονται ακόμη αυτά τα λάθη προσβάλλοντας, όχι μόνο την ασφάλεια των πελατών τους, αλλά και την ασφάλεια ολόκληρου του Διαδικτύου. Δεν υπάρχει καμιά χρυσή λύση για να θεραπεύσουμε το πρόβλημα αυτό. Η σημερινή τεχνολογία για την προστασία
των δικτυακών εφαρμογών συνεχώς εξελίσσεται, αλλά αυτή τη στιγμή μπορεί μόνο να αντιμετωπίσει έναν περιορισμένο αριθμό υποπεριπτώσεων των θεμάτων που εμφανίζονται, στην καλύτερη περίπτωση. Για να συνοψίσουμε τα θέματα που περιγράφονται σε αυτό το δοκίμιο, οι οργανισμοί θα χρειαστεί να αλλάξουν τον τρόπο με τον οποίο αναπτύσσουν τις εφαρμογές τους, να εκπαιδεύσουν τους προγραμματιστές τους, να ανανεώσουν τις διαδικασίες ανάπτυξης του λογισμικού
τους και να χρησιμοποιούσαν την τεχνολογία όπου αυτό χρειάζεται.
Η OWASP Top Ten είναι μια λίστα προβλημάτων ασφαλείας που απαιτούν άμεση αντιμετώπιση. Ο ήδη υπάρχων κώδικας πρέπει να ελεγχθεί για αυτά τα προβλήματα ασφάλειας άμεσα, καθώς τα σημεία αυτά αποτελούν πρωτεύοντες στόχους για τους επιτιθέμενους. Τα προγράμματα ανάπτυξης λογισμικού πρέπει να αναφέρουν τα προβλήματα αυτά στα συνοδευτικά τους έγραφα, να σχεδιάζονται, να υλοποιούνται και να ελέγχουν τις εφαρμογές τους για να επιβεβαιώσουν ότι δεν κινδυνεύουν από κάποιο από αυτά. Οι διευθυντές των προγραμμάτων αυτών πρέπει να αφιερώνουν
χρόνο και χρήμα για δραστηριότητες σχετικά με την ασφάλεια των εφαρμογών συμπεριλαμβάνοντας εκπαίδευση των προγραμματιστών, ανάπτυξη πολιτικής ασφαλείας για τις εφαρμογές, σχεδιασμό μηχανισμού ασφαλείας, έλεγχο κατά των επιθέσεων, και εξέταση του κώδικα.
Η λίστα αυτή παρουσιάζει τη συνδυασμένη σοφία των ειδικών του OWASP, των οποίων η εμπειρία περιλαμβάνει πολλά χρόνια δουλειάς για την ασφάλεια κυβερνητικών εφαρμογών, οικονομικών, φαρμακευτικών και βιομηχανικών υπηρεσιών, καθώς και εργαλείων ανάπτυξης και της τεχνολογίας. Το έγγραφο αυτό έχει σχεδιαστεί με στόχο να παρουσιάσει τα πιο σοβαρά προβλήματα ασφάλειας των δικτυακών εφαρμογών. Υπάρχουν πολλά βιβλία και οδηγοί που περιγράφουν τα
προβλήματα αυτά με περισσότερες λεπτομέρειες και παρέχουν λεπτομερή καθοδήγηση σχετικά με το πως θα απαλλαγούμε από αυτά.
Το OWASP Top Ten είναι ένα δυναμικό έγγραφο που συνεχώς εξελίσσεται. Περιλαμβάνει οδηγίες και links σε επιπλέον πληροφορίες χρήσιμες για να διορθώσουμε αυτούς τους τύπους των προβλημάτων ασφαλείας. Ανανεώνουμε συνεχώς τη λίστα και τις οδηγίες καθώς περισσότερες και πιο κρίσιμες απειλές εμφανίζονται συνεχώς, ενώ ολοένα και περισσότερο πρόσφατα ενημερωμένες
μέθοδοι ανακαλύπτονται κάθε τόσο. Ενθαρρύνουμε διαρκώς την προσφορά σας στην προσπάθεια αυτή. Το έγγραφο αυτό στηρίζεται σε μια κοινότητα και η εμπειρία σας στην αντιμετώπιση των επιτιθέμενων και στην εξάλειψη των προβλημάτων ασφαλείας που παρουσιάζουμε μπορούν να βοηθήσουν αυτούς που θα έρθουν μετά από μας.
Ένα θεμελιώδες στοιχείο καινοτομίας στον σημερινό κόσμο που βασίζεται στις εφαρμογές είναι η διεπαφή προγραμματισμού εφαρμογών (API). Από τις τράπεζες, το λιανικό εμπόριο και τις μεταφορές έως το IoT, τα αυτόνομα οχήματα και τις έξυπνες πόλεις, τα API αποτελούν κρίσιμο μέρος των σύγχρονων εφαρμογών για κινητά, SaaS και web. Τα API μπορούν να βρεθούν σε εφαρμογές που απευθύνονται σε πελάτες, σε εφαρμογές που απευθύνονται σε συνεργάτες και σε ενδοεταιρικές εφαρμογές.
Από τη φύση τους, τα APIs αφήνουν εκτεθειμένες ορισμένες πτυχές της επιχειρηματικής λογικής της
εφαρμογής (business logic) καθώς και ευαίσθητα δεδομένα όπως οι Προσωπικές Αναγνωριστικές Πληροφορίες (PII) (Σ.τ.Μ. πληροφορίες που επιτρέπουν την αναγνώριση προσώπου). Γι’ αυτό τον λόγο τα API γίνονται όλο και περισσότερο στόχος κακόβουλων χρηστών. Χωρίς ασφαλή APIs, η ταχεία καινοτομία θα ήταν αδύνατη.
Παρόλο που ένα γενικευμένο Top 10 με κινδύνους ασφαλείας για web εφαρμογές εξακολουθεί να έχει νόημα, λόγω της ιδιαίτερης φύσης των APIs, απαιτείται μια λίστα ρίσκων ασφαλείας ειδικά για τα API. Η ασφάλεια των APIs εστιάζει σε στρατηγικές και λύσεις για την κατανόηση και την αντιμετώπιση των μοναδικών τρωτών σημείων και ρίσκων ασφαλείας που σχετίζονται με τα APIs.
Εάν είστε εξοικειωμένοι με το OWASP Top 10 Project, τότε θα παρατηρήσετε τις ομοιότητες μεταξύ των δύο καταγραφών: στόχος τους είναι η εύκολη ανάγνωση (readability) και εύκολη υιοθέτηση (adoption).
Εάν είστε νέος στη σειρά OWASP Top 10 ίσως είναι καλύτερα να διαβάσετε τις ενότητες Ρίσκα Ασφαλείας API και Μεθοδολογία και Δεδομένα πριν μεταβείτε στη λίστα Top 10.
Λίστα με τα 10 Ρίσκα Ασφαλείας API
- API1:2019 – Broken Object Level Authorization
- API2:2019 – Broken User Authentication
- API3:2019 – Excessive Data Exposure
- API4:2019 – Lack of Resources & Rate Limiting
- API5:2019 – Broken Function Level Authorization
- API6:2019 – Mass Assignment
- API7:2019 – Security Misconfiguration
- API8:2019 – Injection
- API9:2019 – Improper Assets Management
- API10:2019 – Insufficient Logging & Monitoring
Μπορείτε να συνεισφέρετε στο OWASP API Security Top 10 με τις ερωτήσεις, τα σχόλια και τις ιδέες σας στο ηλεκτρονικό «αποθετήριο» (repository) του έργου στο GitHub:
• https://github.com/OWASP/API-Security/issues
• https://github.com/OWASP/API-Security/blob/master/CONTRIBUTING.md
Μπορείτε να βρείτε το OWASP API Security Top 10 εδώ:
• https://owasp.org/API-Security/editions/2019/el-gr/0x00-header/
Μπορείτε να κατεβάσετε το ελληνικό pdf από εδώ.
Η ελληνική μετάφραση προέκυψε από την προσπάθεια των παρακάτω: