Προγραμματισμός

Πώς το AI θα βελτιώσει την ασφάλεια του API

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

Δυστυχώς, φαίνεται ότι το πρόβλημα θα επιδεινωθεί μόνο. Ο Gartner έχει προβλέψει ότι, «Μέχρι το 2022, οι καταχρήσεις API θα είναι ο πιο συχνός φορέας επίθεσης με αποτέλεσμα παραβιάσεις δεδομένων για εταιρικές διαδικτυακές εφαρμογές».

Πολλές επιχειρήσεις έχουν ανταποκριθεί εφαρμόζοντας λύσεις διαχείρισης API που παρέχουν μηχανισμούς, όπως έλεγχο ταυτότητας, εξουσιοδότηση και περιορισμός. Αυτές είναι απαραίτητες δυνατότητες για τον έλεγχο των ατόμων που έχουν πρόσβαση σε API σε ολόκληρο το οικοσύστημα API και πόσο συχνά. Ωστόσο, κατά την οικοδόμηση των εσωτερικών και εξωτερικών στρατηγικών API, οι οργανισμοί πρέπει επίσης να αντιμετωπίσουν την ανάπτυξη πιο εξελιγμένων επιθέσεων σε API εφαρμόζοντας δυναμική, τεχνητή νοημοσύνη (AI) ασφάλεια.

Αυτό το άρθρο εξετάζει τα εργαλεία διαχείρισης και ασφάλειας API που πρέπει να ενσωματώσουν οι οργανισμοί για να διασφαλίσουν την ασφάλεια, την ακεραιότητα και τη διαθεσιμότητα σε όλα τα οικοσυστήματα API τους.

Μέτρα ασφαλείας βάσει κανόνα και πολιτικής

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

Στατικοί έλεγχοι ασφαλείας

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

Εν τω μεταξύ, μπορούν να εφαρμοστούν στατικοί έλεγχοι πολιτικής για σάρωση ωφέλιμου φορτίου, επιθεώρηση κεφαλίδας και μοτίβα πρόσβασης, μεταξύ άλλων. Για παράδειγμα, η ένεση SQL είναι ένας κοινός τύπος επίθεσης που εκτελείται χρησιμοποιώντας ωφέλιμα φορτία. Εάν ένας χρήστης στέλνει ωφέλιμο φορτίο JSON (Σημείωση αντικειμένου JavaScript), η πύλη API μπορεί να επικυρώσει αυτό το συγκεκριμένο αίτημα έναντι προκαθορισμένου σχήματος JSON. Η πύλη μπορεί επίσης να περιορίσει τον αριθμό των στοιχείων ή άλλων χαρακτηριστικών στο περιεχόμενο, όπως απαιτείται για την προστασία από επιβλαβή δεδομένα ή μοτίβα κειμένου στα μηνύματα.

Δυναμικοί έλεγχοι ασφαλείας

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

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

Αυθεντικοποίηση

Ο έλεγχος ταυτότητας βοηθά τις πύλες API να αναγνωρίζουν κάθε χρήστη που κάνει χρήση ενός API μοναδικά. Οι διαθέσιμες λύσεις πύλης API γενικά υποστηρίζουν βασικό έλεγχο ταυτότητας, ασφάλεια OAuth 2.0, JWT (JSON Web Token) και ασφάλεια βάσει πιστοποιητικών. Ορισμένες πύλες παρέχουν επίσης ένα επίπεδο ελέγχου ταυτότητας πάνω από αυτό για επιπλέον λεπτομερή επικύρωση άδειας, η οποία συνήθως βασίζεται σε γλώσσες καθορισμού πολιτικής στυλ XACML (eXtensible Access Control Markup Language). Αυτό είναι σημαντικό όταν ένα API περιέχει πολλούς πόρους που χρειάζονται διαφορετικά επίπεδα ελέγχου πρόσβασης για κάθε πόρο.

Περιορισμοί της παραδοσιακής ασφάλειας API

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

Επιπλέον, κάθε API έχει το δικό του μοτίβο πρόσβασης. Έτσι, ένα νόμιμο μοτίβο πρόσβασης για ένα API θα μπορούσε να υποδεικνύει κακόβουλη δραστηριότητα για ένα διαφορετικό API. Για παράδειγμα, όταν κάποιος αγοράζει αντικείμενα μέσω μιας διαδικτυακής εφαρμογής αγορών, θα πραγματοποιήσει πολλές αναζητήσεις πριν πραγματοποιήσει την αγορά. Έτσι, ένας μεμονωμένος χρήστης που στέλνει 10 έως 20 αιτήματα σε ένα API αναζήτησης σε σύντομο χρονικό διάστημα μπορεί να είναι ένα νόμιμο μοτίβο πρόσβασης για ένα API αναζήτησης. Ωστόσο, εάν ο ίδιος χρήστης στέλνει πολλά αιτήματα στο API αγοράς, το μοτίβο πρόσβασης θα μπορούσε να υποδηλώνει κακόβουλη δραστηριότητα, όπως ένας εισβολέας που προσπαθεί να αποσύρει όσο το δυνατόν περισσότερο χρησιμοποιώντας μια κλεμμένη πιστωτική κάρτα. Επομένως, κάθε πρότυπο πρόσβασης API πρέπει να αναλυθεί ξεχωριστά για να προσδιοριστεί η σωστή απόκριση.

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

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

Η περίπτωση για την προσθήκη ενός επιπέδου ασφάλειας AI

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

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

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

Ενσωμάτωση ασφάλειας API που βασίζεται σε πολιτικές και AI

Όταν προσθέτετε ασφάλεια με τεχνολογία AI σε μια εφαρμογή διαχείρισης API, θα υπάρχει ένα σημείο επιβολής ασφαλείας και ένα σημείο απόφασης. Συνήθως, αυτές οι μονάδες είναι ανεξάρτητες λόγω της υψηλής υπολογιστικής ισχύος που απαιτείται, αλλά ο λανθάνων χρόνος δεν πρέπει να επιτρέπεται να επηρεάζει την αποδοτικότητά τους.

Η πύλη API παρακολουθεί αιτήματα API και εφαρμόζει διάφορες πολιτικές. Συνδεδεμένο με αυτό είναι το σημείο επιβολής ασφαλείας, το οποίο περιγράφει τα χαρακτηριστικά κάθε αιτήματος (κλήση API) στο σημείο απόφασης, ζητά απόφαση ασφαλείας και, στη συνέχεια, επιβάλλει αυτήν την απόφαση στην πύλη. Το σημείο απόφασης, που υποστηρίζεται από AI, μαθαίνει συνεχώς τη συμπεριφορά κάθε μοτίβου πρόσβασης API, εντοπίζει ανώμαλες συμπεριφορές και επισημαίνει διαφορετικά χαρακτηριστικά του αιτήματος.

Θα πρέπει να υπάρχει μια επιλογή για προσθήκη πολιτικών στο σημείο απόφασης όπως απαιτείται και επίκληση αυτών των πολιτικών - οι οποίες ενδέχεται να διαφέρουν από API σε API - κατά τη διάρκεια της περιόδου μάθησης. Τυχόν πολιτικές θα πρέπει να καθορίζονται από την ομάδα ασφαλείας μόλις κατανοηθούν διεξοδικά οι πιθανές ευπάθειες κάθε API που σκοπεύουν να εκθέσουν. Ωστόσο, ακόμη και χωρίς υποστήριξη από εξωτερικές πολιτικές, η προσαρμοστική, τεχνολογία λήψης αποφάσεων και η τεχνολογία σημείων επιβολής θα μάθουν τελικά και θα αποτρέψουν μερικές από τις πολύπλοκες επιθέσεις που δεν μπορούμε να εντοπίσουμε με πολιτικές.

Ένα άλλο πλεονέκτημα της ύπαρξης δύο ξεχωριστών σημείων επιβολής ασφαλείας και στοιχείων σημείων απόφασης είναι η δυνατότητα ενσωμάτωσης με υπάρχουσες λύσεις διαχείρισης API. Μια απλή βελτίωση διεπαφής χρήστη και προσαρμοσμένη επέκταση θα μπορούσε να ενσωματώσει το σημείο επιβολής ασφαλείας στον εκδότη και την πύλη API. Από τη διεπαφή χρήστη, ο εκδότης API θα μπορούσε να επιλέξει εάν θα ενεργοποιήσει την ασφάλεια AI για το δημοσιευμένο API, μαζί με τυχόν ειδικές πολιτικές που απαιτούνται. Το εκτεταμένο σημείο επιβολής ασφαλείας θα δημοσιεύσει τα χαρακτηριστικά του αιτήματος στο σημείο απόφασης και θα περιορίσει την πρόσβαση στο API σύμφωνα με την απάντηση του σημείου απόφασης.

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

Προκλήσεις επιπέδου ασφάλειας που βασίζονται σε AI

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

  • Πρόσθετα γενικά. Το πρόσθετο επίπεδο ασφάλειας AI προσθέτει κάποια γενικά στη ροή μηνυμάτων. Έτσι, οι λύσεις διαμεσολάβησης θα πρέπει να είναι αρκετά έξυπνες για να χειρίζονται τη συλλογή και τη δημοσίευση πληροφοριών εκτός της κύριας ροής διαμεσολάβησης.
  • Ψευδώς θετικά. Ένας μεγάλος όγκος ψευδών θετικών θα απαιτήσει πρόσθετη αναθεώρηση από επαγγελματίες ασφαλείας. Ωστόσο, με ορισμένους προηγμένους αλγόριθμους AI, μπορούμε να μειώσουμε τον αριθμό των ψευδών θετικών που ενεργοποιούνται.
  • Ελλειψη εμπιστοσύνης. Οι άνθρωποι αισθάνονται άβολα όταν δεν καταλαβαίνουν πώς ελήφθη μια απόφαση. Οι πίνακες ελέγχου και οι ειδοποιήσεις μπορούν να βοηθήσουν τους χρήστες να απεικονίσουν τους παράγοντες πίσω από μια απόφαση. Για παράδειγμα, εάν μια ειδοποίηση δηλώνει σαφώς ότι ένας χρήστης αποκλείστηκε για πρόσβαση στο σύστημα με ασυνήθιστο ρυθμό 1.000 + φορές μέσα σε ένα λεπτό, οι χρήστες μπορούν να κατανοήσουν και να εμπιστευτούν την απόφαση του συστήματος.
  • Ευπάθεια δεδομένων. Οι περισσότερες λύσεις AI και μηχανικής μάθησης βασίζονται σε τεράστιους όγκους δεδομένων, τα οποία είναι συχνά ευαίσθητα και προσωπικά. Ως αποτέλεσμα, αυτές οι λύσεις θα μπορούσαν να γίνουν επιρρεπείς σε παραβιάσεις δεδομένων και κλοπή ταυτότητας. Η συμμόρφωση με τον Ευρωπαϊκό Κανονισμό Προστασίας Δεδομένων (GDPR) της Ευρωπαϊκής Ένωσης βοηθά στη μείωση αυτού του κινδύνου, αλλά δεν τον εξαλείφει πλήρως.
  • Περιορισμοί δεδομένων με ετικέτα. Τα πιο ισχυρά συστήματα τεχνητής νοημοσύνης εκπαιδεύονται μέσω εποπτευόμενης μάθησης, η οποία απαιτεί επισημασμένα δεδομένα που είναι οργανωμένα ώστε να είναι κατανοητά από τις μηχανές. Αλλά τα δεδομένα με ετικέτα έχουν όρια και η μελλοντική αυτοματοποιημένη δημιουργία ολοένα και πιο δύσκολων αλγορίθμων θα επιδεινώσει μόνο το πρόβλημα.
  • Ελαττωματικά δεδομένα. Η αποτελεσματικότητα ενός συστήματος AI εξαρτάται από τα δεδομένα στα οποία εκπαιδεύεται. Πολύ συχνά, τα κακά δεδομένα σχετίζονται με εθνοτικές, κοινοτικές, φύλες ή φυλετικές προκαταλήψεις, οι οποίες μπορούν να επηρεάσουν κρίσιμες αποφάσεις για μεμονωμένους χρήστες.

Δεδομένου του κρίσιμου ρόλου των API στις επιχειρήσεις σήμερα, γίνονται όλο και περισσότερο στόχοι για χάκερ και κακόβουλους χρήστες. Μηχανισμοί βάσει πολιτικής, όπως έλεγχος ταυτότητας, εξουσιοδότηση, σάρωση ωφέλιμου φορτίου, επικύρωση σχήματος, περιορισμός τιμών και περιορισμός τιμών, είναι βασικές απαιτήσεις για την εφαρμογή μιας επιτυχημένης στρατηγικής ασφάλειας API Ωστόσο, μόνο με την προσθήκη μοντέλων AI για συνεχή επιθεώρηση και αναφορά όλων των δραστηριοτήτων API, οι επιχειρήσεις θα προστατεύονται από τις πιο εξελιγμένες επιθέσεις ασφαλείας που εμφανίζονται σήμερα.

Ο Sanjeewa Malalgoda είναι αρχιτέκτονας λογισμικού και αναπληρωτής διευθυντής μηχανικής στο WSO2, όπου ηγείται της ανάπτυξης του WSO2 API Manager. Η Lakshitha Gunasekara είναι μηχανικός λογισμικού στην ομάδα του WSO2 API Manager.

Το New Tech Forum παρέχει έναν χώρο για να εξερευνήσετε και να συζητήσετε την αναδυόμενη τεχνολογία σε πρωτοφανές βάθος και εύρος. Η επιλογή είναι υποκειμενική, με βάση την επιλογή των τεχνολογιών που πιστεύουμε ότι είναι σημαντικές και έχουν μεγάλο ενδιαφέρον για τους αναγνώστες. δεν αποδέχεται ασφάλεια μάρκετινγκ για δημοσίευση και διατηρεί το δικαίωμα να επεξεργαστεί όλο το περιεχόμενο. Στείλτε όλες τις ερωτήσεις στο[email protected].