νέα

Το Apple Intelligence έχει σημαντικά ελαττώματα ασφαλείας που μπορούν να λυθούν με λίγες μόνο γραμμές κώδικα! Η Karpathy στέλνει υπενθύμιση

2024-08-15

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina


Νέα Έκθεση Σοφίας

Επιμέλεια: Er Qiao Yang

[Εισαγωγή στη Νέα Σοφία]Το Apple Intelligence πρόκειται να κυκλοφορήσει στο διαδίκτυο, αλλά μερικές γραμμές κώδικα αποκάλυψαν ένα ελάττωμα ασφαλείας στο Apple Intelligence.

Στο Παγκόσμιο Συνέδριο Προγραμματιστών του 2024 (WWDC), η Apple κυκλοφόρησε τη λειτουργία AI της Apple Intelligence που θα συμπεριληφθεί στο iOS 18.1.


Βλέποντας ότι πρόκειται να κυκλοφορήσει επίσημα τον Οκτώβριο, ένας "ιδιωτικός εμπειρογνώμονας" ανακάλυψε ένα σημαντικό ελάττωμα στη δοκιμαστική έκδοση beta του Apple Intelligence που παρέχεται από το MacOS 15.1.

Ο προγραμματιστής Evan Zhou χειρίστηκε με επιτυχία το Apple Intelligence χρησιμοποιώντας άμεση έγχυση, παρακάμπτοντας τις αναμενόμενες οδηγίες και επιτρέποντας στο AI να ανταποκρίνεται σε αυθαίρετα μηνύματα.

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

Τι είναι μια άμεση επίθεση ένεσης λέξης;

Υπάρχει ένας οργανισμός που ονομάζεται OWASP, ο οποίος είναι το Open Global Application Security Project. Ανέλυσαν τα κύρια τρωτά σημεία που μπορεί να αντιμετωπίσουν τα μεγάλα γλωσσικά μοντέλα. Μαντέψτε τι κατετάγησαν #1; Αυτό είναι σωστό, είναι άμεση ένεση λέξης.


Το Prompt Injection Attack είναι ένας νέος τύπος επίθεσης με διαφορετικές μορφές, συμπεριλαμβανομένης της άμεσης έγχυσης λέξεων, της διαρροής προτροπής λέξης και του jailbreaking λέξεων.

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

Με την ευρεία χρήση μεγάλων γλωσσικών μοντέλων (LLM) από ιδιώτες και επιχειρήσεις και τη συνεχή πρόοδο αυτών των τεχνολογιών, η απειλή επιθέσεων υπόδειξης με ένεση αυξάνεται σημαντικά.

Λοιπόν, πώς συνέβη αυτό στην αρχή; Γιατί τα συστήματα είναι ευάλωτα σε αυτού του είδους τις επιθέσεις;

Στην πραγματικότητα, στα παραδοσιακά συστήματα, οι προγραμματιστές θα προκαθορίσουν προγράμματα και οδηγίες και δεν θα αλλάξουν.

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

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

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

Ο Bruce Schneier, ειδικός σε τεχνικά θέματα ασφάλειας και λέκτορας στο Harvard Kennedy School, δημοσίευσε ένα άρθρο στο Communications of the ACM τον Μάιο, το οποίο συζήτησε το ζήτημα της ασφάλειας του LLM λεπτομερώς. Σύμφωνα με τα λόγια του, αυτό πηγάζει από το «μη διαχωρισμό των διαδρομών δεδομένων και ελέγχου».


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

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

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

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

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

Επιστρέφοντας στην περίπτωση του Zhou, ο σκοπός του Zhou είναι να χειραγωγήσει τη λειτουργία "ξαναεγγραφής" του Apple Intelligence, δηλαδή να ξαναγράψει και να βελτιώσει το κείμενο εισαγωγής χρήστη.

Κατά τη διάρκεια της επιχείρησης, ο Zhou ανακάλυψε ότι μια απλή εντολή "αγνοήστε την προηγούμενη εντολή" στην πραγματικότητα απέτυχε.

Εάν πρόκειται για ένα "αεροστεγές" LLM, θα είναι σχετικά δύσκολο να συνεχίσετε το σκάψιμο. Αλλά κατά σύμπτωση, το πρότυπο προτροπής της Apple Intelligence ανακαλύφθηκε πρόσφατα από χρήστες του Reddit.



Από αυτά τα πρότυπα, ο Zhou ανακάλυψε ένα ειδικό διακριτικό που χρησιμοποιείται για τον διαχωρισμό του ρόλου του συστήματος AI και του ρόλου του χρήστη.

Χρησιμοποιώντας αυτές τις πληροφορίες, ο Zhou δημιούργησε μια προτροπή που αντικατέστησε την αρχική προτροπή συστήματος.

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

Μετά από κάποιους πειραματισμούς, η επίθεση ήταν επιτυχής: η Apple Intelligence απάντησε με πληροφορίες που δεν ζήτησε ο Zhou, πράγμα που σημαίνει ότι η επίθεση έγκαιρης έγχυσης λειτούργησε. Ο Zhou δημοσίευσε τον κώδικά του στο GitHub.


Ο χρήστης του Twitter σπάει το GPT-3

Το πρόβλημα της έγχυσης στο άκρο είναι γνωστό τουλάχιστον από την κυκλοφορία του GPT-3 τον Μάιο του 2020, αλλά παραμένει άλυτο.

Το Remoteli.io, ένα bot που βασίζεται στο GPT-3 API, έπεσε θύμα αυτής της ευπάθειας στο Twitter. Το bot θα πρέπει να δημοσιεύει αυτόματα απομακρυσμένες εργασίες και να ανταποκρίνεται σε αιτήματα απομακρυσμένων εργασιών.


Ωστόσο, με την παραπάνω προτροπή, το ρομπότ Remoteli έγινε το αστείο σε ορισμένους χρήστες του Twitter: ανάγκασαν το ρομπότ να πει προτάσεις που δεν θα έλεγε σύμφωνα με τις αρχικές οδηγίες του.

Για παράδειγμα, το bot απειλεί τους χρήστες να αναλάβουν την πλήρη ευθύνη για την καταστροφή του διαστημικού λεωφορείου Challenger ή δυσφημεί τους βουλευτές των ΗΠΑ ως κατά συρροή δολοφόνους.

Σε ορισμένες περιπτώσεις, το bot διαδίδει ψεύτικες ειδήσεις ή δημοσιεύει περιεχόμενο που παραβιάζει τις πολιτικές του Twitter, κάτι που θα πρέπει να έχει ως αποτέλεσμα την αποβολή του.

Ο επιστήμονας δεδομένων Riley Goodside ήταν ο πρώτος που αντιλήφθηκε το πρόβλημα και το περιέγραψε στο Twitter.


Εισάγοντας υποδείξεις στις προτάσεις που μεταφράζονται, το Goodside έδειξε πόσο ευάλωτα είναι τα μεταφραστικά ρομπότ που βασίζονται σε GPT-3.

Ο Βρετανός επιστήμονας υπολογιστών Simon Willison συζήτησε λεπτομερώς αυτό το θέμα ασφάλειας στο blog του, ονομάζοντας το "prompt injection".


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

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

Αλλά τίποτα δεν είναι 100% ασφαλές. Κάθε φορά που ενημερώνεται ένα μοντέλο μεγάλης γλώσσας, τα μέτρα ασφαλείας που λαμβάνονται πρέπει να επανεξετάζονται, είπε ο Willison. Επιπλέον, όποιος μπορεί να γράψει μια γλώσσα είναι πιθανός εισβολέας.

"Τα γλωσσικά μοντέλα όπως το GPT-3 είναι το απόλυτο μαύρο κουτί. Όσες αυτοματοποιημένες δοκιμές κι αν γράψω, δεν μπορώ ποτέ να είμαι 100% σίγουρος ότι ο χρήστης δεν θα βρει κάποιες υποδείξεις που δεν περίμενα, οι οποίες θα ανατρέψτε τις άμυνές μου», έγραψε ο Willison. road.

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

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

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

Τον Απρίλιο του 2024, το OpenAI κυκλοφόρησε τη μέθοδο ιεραρχίας εντολών ως αντίμετρο. Εκχωρεί διαφορετικές προτεραιότητες σε οδηγίες από προγραμματιστές (υψηλότερη προτεραιότητα), χρήστες (μέση προτεραιότητα) και εργαλεία τρίτων (χαμηλή προτεραιότητα).


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

Ακόμη και με τη λήψη αντίμετρων, συστήματα όπως το ChatGPT ή το Claude εξακολουθούν να είναι ευάλωτα στην έγχυση άκρου σε ορισμένες περιπτώσεις.

Το LLM έχει επίσης μια ευπάθεια "SQL injection".

Εκτός από τις επιθέσεις έγχυσης λέξεων, ο Andrej Karpathy επεσήμανε πρόσφατα μια άλλη ευπάθεια ασφαλείας στο LLM στο Twitter, η οποία ισοδυναμεί με μια παραδοσιακή "επίθεση έγχυσης SQL".

Όταν ο tokenizer LLM αναλύει το ειδικό διακριτικό της συμβολοσειράς εισόδου (όπως,<|endoftext|>κ.λπ.), αν και η άμεση εισαγωγή μπορεί να φαίνεται βολική, μπορεί να προκαλέσει προβλήματα στην καλύτερη περίπτωση ή να προκαλέσει προβλήματα ασφάλειας στη χειρότερη.

Αυτό που πρέπει να θυμόμαστε ανά πάσα στιγμή είναι ότι οι συμβολοσειρές που εισάγονται από τον χρήστη δεν είναι αξιόπιστοι! !

Ακριβώς όπως οι επιθέσεις SQL injection, οι χάκερ μπορούν να κάνουν ένα μοντέλο να συμπεριφέρεται με απροσδόκητους τρόπους μέσω προσεκτικά κατασκευασμένων εισόδων.

Στη συνέχεια, η Karpathy παρείχε ένα σύνολο παραδειγμάτων στο Huggingface χρησιμοποιώντας τις προεπιλεγμένες τιμές του Tokenizer Llama 3 και ανακάλυψε δύο περίεργα πράγματα:

1、<|beginoftext|>Token (128000) προστίθεται στο μπροστινό μέρος της ακολουθίας.


2. Ανάλυση από τη συμβολοσειρά<|endoftext|> Σήμανση με ειδικό διακριτικό (128001). Η εισαγωγή κειμένου από τον χρήστη μπορεί τώρα να διαταράξει την προδιαγραφή του διακριτικού, προκαλώντας ανεξέλεγκτη έξοδο μοντέλου.


Ως προς αυτό, η Karpathy έδωσε δύο προτάσεις:

Χρησιμοποιείτε πάντα δύο πρόσθετες τιμές σημαίας, (1) add_special_tokens=False και (2) split_special_tokens=True και προσθέτετε μόνοι σας ειδικά διακριτικά στον κώδικα.

Για μοντέλα συνομιλίας, μπορείτε επίσης να χρησιμοποιήσετε το πρότυπο συνομιλίας apply_chat_template.

Σύμφωνα με τη μέθοδο του Karpathy, τα αποτελέσματα κατάτμησης λέξεων εξόδου φαίνονται πιο σωστά,<|endoftext|> Αντιμετωπίζεται ως αυθαίρετη συμβολοσειρά και όχι ως ειδικό διακριτικό και διασπάται από τον υποκείμενο κωδικό BPE όπως κάθε άλλη συμβολοσειρά:


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

Προς το παρόν, τέτοια προβλήματα είναι δύσκολο να βρεθούν και σπάνια τεκμηριώνονται Υπολογίζεται ότι περίπου το 50% του τρέχοντος κώδικα έχει σχετικά προβλήματα.

Επιπλέον, η Karpathy ανακάλυψε ότι ακόμη και το ChatGPT έχει αυτό το σφάλμα.

Στην καλύτερη περίπτωση, απλώς διαγράφει το διακριτικό αυθόρμητα. Στη χειρότερη περίπτωση, το LLM δεν θα μπορεί να καταλάβει τι εννοείτε και δεν μπορεί καν να επαναλάβει την έξοδο σύμφωνα με τις οδηγίες.<|endoftext|> Αυτή η συμβολοσειρά:


Μερικοί χρήστες του Διαδικτύου έθεσαν ερωτήσεις στην περιοχή σχολίων Εάν ο κώδικας είναι γραμμένος σωστά, αλλά τα δεδομένα εκπαίδευσης εισάγονται<|endoftext|> τι γινεται

Η Karpathy απάντησε ότι αν ο κώδικας είναι σωστός, δεν θα γίνει τίποτα. Το πρόβλημα είναι ότι μεγάλο μέρος του κώδικα μπορεί να μην είναι σωστό, γεγονός που μπορεί να σπάσει αθόρυβα το LLM τους.


Τέλος, για να αποφευχθούν ζητήματα ασφαλείας που προκαλούνται από τρωτά σημεία LLM, η Karpathy υπενθυμίζει σε όλους: πρέπει να οπτικοποιήσετε το διακριτικό σας και να δοκιμάσετε τον κωδικό σας.

Παραπομπές:

https://the-decoder.com/apple-intelligence-in-macos-15-1-beta-1-is-vulnerable-to-a-classic-ai-exploit/