Η ασφάλεια της εφοδιαστικής αλυσίδας των πρακτόρων τεχνητής νοημοσύνης ήταν παλιά απλή, κυρίως επειδή ένας άνθρωπος βρισκόταν πάντα ανάμεσα στο όνομα ενός πακέτου και την κατασκευή. Για είκοσι χρόνια, αυτό ήταν όλο το μοντέλο: κάποιος διάβαζε το όνομα πριν εισαχθεί. Όχι πάντα προσεκτικά. Αλλά κάποιος το διάβαζε.
Αυτό έχει πλέον εξαφανιστεί. Αν ζητήσετε σήμερα μια βιβλιοθήκη από ένα μοντέλο τεχνητής νοημοσύνης, περίπου ένα στα πέντε προτεινόμενα πακέτα δεν υπάρχει. Οι επιτιθέμενοι το γνωρίζουν αυτό, επομένως καταχωρούν πρώτα αυτά τα ονόματα. Ένας πράκτορας τα εγκαθιστά, τα δοκιμάζει και προχωρά, και κανείς δεν διαβάζει τίποτα ενδιάμεσα. Εδώ ακριβώς αποτυγχάνει η ασφάλεια της εφοδιαστικής αλυσίδας των πρακτόρων τεχνητής νοημοσύνης αυτή τη στιγμή: όχι σε κάποιο μελλοντικό σενάριο, αλλά στο... pipelineτρέχει σήμερα.
Η βιομηχανία αφιέρωσε δύο δεκαετίες στην ανάπτυξη ελέγχων γύρω από έναν προγραμματιστή που διαβάζει, αξιολογεί και αποφασίζει. Αυτός ο προγραμματιστής δεν είναι πλέον το τελευταίο σημείο ελέγχου πριν από την είσοδο μιας εξάρτησης στην κατασκευή. Επομένως, το πραγματικό ερώτημα δεν είναι αν η πρακτορική τεχνητή νοημοσύνη εισάγει νέο κίνδυνο, αλλά τι πραγματικά μένει όρθιο όταν εξαφανιστεί το ανθρώπινο σημείο ελέγχου.
Από τις «Προτάσεις της Τεχνητής Νοημοσύνης» στις «Πράξεις της Τεχνητής Νοημοσύνης»
Πριν από δύο χρόνια, ένας συγκυβερνήτης πρότεινε ένα μπλοκ κώδικα, ο προγραμματιστής το διάβασε και αποφάσισε αν θα το διατηρούσε. Αυτή η ροή εργασίας έχει σε μεγάλο βαθμό εξαφανιστεί. Τα εργαλεία agency πλέον εγκαθιστούν εξαρτήσεις, περιστρέφουν κοντέινερ και ενεργοποιούν pipeline κάνουν μόνα τους βήματα, συχνά αναφέροντας τα πάντα μόνο εκ των υστέρων και μόνο αν κάτι πάει στραβά.
Η αλλαγή έγινε σταδιακά και οι περισσότερες ομάδες έχουν προχωρήσει περισσότερο από ό,τι παραδέχεται η γραπτή πολιτική ασφαλείας τους. Τα πρώτα εργαλεία πρακτόρων ζητούσαν έγκριση πριν από κάθε αλλαγή και οι προγραμματιστές έκαναν κλικ στο "ναι" τόσο συχνά που το βήμα επιβεβαίωσης έπαψε να έχει νόημα. Οι σημερινοί πράκτορες ως επί το πλείστον δεν ρωτούν καθόλου. Διακόπτουν μόνο για ενέργειες που έχουν επισημανθεί ως ευαίσθητες, όπως η εκτέλεση ενός σεναρίου κελύφους, και ένα τυπικό... pull request που δημιουργούνται από έναν πράκτορα μπορούν να καταλήξουν σε χιλιάδες γραμμές που κανένας άνθρωπος δεν διαβάζει στην πραγματικότητα από άκρη σε άκρη πριν από τη συγχώνευση.
Το πρόβλημα των δικαιωμάτων επιδεινώνει την κατάσταση. Στις περισσότερες ρυθμίσεις, ένας πράκτορας απλώς εκτελείται ως προγραμματιστής, με πρόσβαση σε όλα όσα μπορεί να φτάσει ο υπολογιστής του προγραμματιστή: μεταβλητές περιβάλλοντος, διακριτικά cloud, διαπιστευτήρια μητρώου, κλειδιά SSH. Όταν ένας πράκτορας εγκαθιστά κάτι και ένα σενάριο ενεργοποιείται κατά τη διάρκεια αυτής της εγκατάστασης, κληρονομεί την πλήρη ακτίνα έκρηξης του ανθρώπου που μιμείται. Εδώ είναι που η ασφάλεια της εφοδιαστικής αλυσίδας του πράκτορα τεχνητής νοημοσύνης σταματά να είναι ζήτημα πολιτικής και γίνεται ζήτημα δικαιωμάτων: ο πράκτορας δεν χρειάζεται ένα νέο exploit, απλώς χρειάζεται την πρόσβαση που ήδη έχει.
Καπετάνιος Λιμενεργάτη Μοχάμεντ-Αλί Αράμπι, μιλώντας στο ίδιο πάνελ, το έθεσε ξεκάθαρα: «Νομίζω ότι ο προγραμματιστής είναι πλέον μέρος της επιφάνειας της επίθεσης.»
Αξίζει να είμαστε ειλικρινείς σχετικά με το τι αντικατέστησε αυτό. Ένας άνθρωπος που διαβάζει ένα package.json Η διαφορά ήταν ήδη ένας ασθενής έλεγχος. Σχεδόν κανείς δεν επαλήθευε στην πραγματικότητα κάθε μεταβατική εξάρτηση πριν εγκρίνει μια αλλαγή. Οι πράκτορες δεν έσπαγαν απαραίτητα ένα ισχυρό σύστημα. Αφαίρεσαν την τελευταία δικαιολογία για μια αδύναμη. Αυτό που άλλαξε δεν είναι ότι ο κίνδυνος είναι νέος, είναι ότι τώρα κινείται με εντελώς διαφορετική ταχύτητα: ορισμένες εκτιμήσεις τοποθετούν τον όγκο επιθέσεων στην αλυσίδα εφοδιασμού του περασμένου έτους περίπου πενταπλάσιο από τον προηγούμενο χρόνο και η καμπύλη φαίνεται εκθετική παρά γραμμική.
Η Στιγμή της Εγκατάστασης: Τι Αλλάζει Όταν Δεν Παρακολουθεί Κανείς
Παραισθησιασμένος και τα κακόβουλα ονόματα πακέτων δεν είναι κάτι καινούργιο. Τύπος έχει εκμεταλλευτεί τα ανθρώπινα λάθη πληκτρολόγησης εδώ και χρόνια: ένα λάθος γράμμα και ένας προγραμματιστής εγκαθιστά το λάθος πράγμα. Αυτό που είναι διαφορετικό τώρα είναι ότι ένα μοντέλο, όχι ένα άτομο, επινοεί το όνομα εξαρχής, και το κάνει προβλέψιμα.
Οι αριθμοί το καθιστούν μια επιχείρηση, όχι μια περιέργεια. Περίπου το 20% των πακέτων που προτείνονται από μοντέλα ανοιχτού κώδικα δεν υπάρχουν (πιο κοντά στο 5% για εμπορικά μοντέλα) και στα κατασκευασμένα ονόματα που μελετήθηκαν, το 43% επαναλαμβάνεται με τον ίδιο τρόπο σε δέκα επαναλαμβανόμενα ερωτήματα. Αυτή η επαναληψιμότητα είναι που καθιστά το μοτίβο επίθεσης αξιοποιήσιμο: ένας εισβολέας δεν χρειάζεται να μαντέψει τι θα πληκτρολογήσει ένας προγραμματιστής. Το μοντέλο τους το λέει, αξιόπιστα, δωρεάν.
Μια νεότερη παραλλαγή που ονομάζεται HalluSquatting προχωρά ένα βήμα παραπέρα. Αντί να δημοσιεύσει ένα κακόβουλο πακέτο με ένα ψευδώνυμο, ένας εισβολέας τοποθετεί κακόβουλες οδηγίες μέσα σε ένα README, ένα αρχείο δεξιοτήτων ή μια περιγραφή διακομιστή MCP και στη συνέχεια περιμένει έναν πράκτορα να ψευδαισθάνεται το ίδιο όνομα αποθετηρίου ή εργαλείου και να το ανακτήσει. Μια πρόσφατη δημοσίευση που συνδέει αυτό με την άμεση έγχυση ανέφερε σχεδόν τέλεια πρόβλεψη ψεύτικων ονομάτων αποθετηρίων για νέα έργα και πλήρη εκτέλεση κώδικα σε πραγματικούς βοηθούς κωδικοποίησης, όπως οι Cursor, Windsurf και Copilot. Επειδή το ωφέλιμο φορτίο είναι απλό κείμενο και όχι εκτελέσιμος κώδικας, τα περισσότερα εργαλεία σάρωσης δεν έχουν τίποτα να επισημάνουν.
Ως Ξυγένη Υπεύθυνος ερευνών Luis Rodríguez βάλτε το κατά τη διάρκεια της συζήτησης: «Ξοδέψαμε χρόνια κατασκευάζοντας άμυνες ενάντια σε κακόβουλο κώδικα. Υπογραφές, sandboxes, ανάλυση συμπεριφοράς. Το HalluSquatting δεν χρειάζεται τίποτα από αυτά. Απλώς χρειάζεται ένα πειστικό README.» Οι οδηγίες απλού κειμένου που ένας πράκτορας διαβάζει ως αξιόπιστο πλαίσιο περνούν κατευθείαν από σαρωτές που έχουν σχεδιαστεί για να εντοπίζουν κάτι εκτελέσιμο.
Αυτό είναι το επίπεδο που τα περισσότερα εργαλεία AppSec δεν έχουν ακόμη σχεδιαστεί για να βλέπουν, το οποίο είναι προ-cisγιατί η Xygeni's Έγκαιρη προειδοποίηση για κακόβουλο λογισμικό (MEW) Υπάρχει μια προσέγγιση σε επίπεδο πλατφόρμας: συνεχής ανάλυση σε πραγματικό χρόνο των πρόσφατα δημοσιευμένων πακέτων σε μητρώα όπως το npm, το PyPI και το Maven, η οποία έχει σχεδιαστεί για να εντοπίζει κακόβουλη συμπεριφορά πριν από την ύπαρξη μιας δημόσιας υπογραφής, αντί να περιμένει ένα CVE να το εντοπίσει μέρες αργότερα.
Εμπορευματοκιβώτια, CI/CDκαι Προέλευση: Μπορείτε ακόμα να αποδείξετε τι υπάρχει στην κατασκευή σας;
Ένας πράκτορας σπάνια σταματάει στην προσθήκη μιας γραμμής package.jsonΕπεξεργάζεται αρχεία Dockerfiles, αναδιαρθρώνει πολυσταδιακές κατασκευές και αλλάζει pipeline ρύθμιση παραμέτρων απευθείας, εισερχόμενοι στο ίδιο το σύστημα κατασκευής και όχι μόνο στο δέντρο πηγαίου κώδικα.
Εδώ ακριβώς βρίσκεται η απάντηση του κλάδου στον κίνδυνο της εφοδιαστικής αλυσίδας, SBOMs και SLSA provenance, υποτίθεται ότι θα διατηρούσε. Στη συνέχεια, τον Μάιο του 2026, ένας εισβολέας παραβίασε έναν συντηρητή, χρησιμοποίησε το κλεμμένο διακριτικό για να δημοσιεύσει ένα «ορφανό» commit χωρίς γονικό στοιχείο στο ιστορικό του έργου και το χρησιμοποίησε για να δηλητηριάσει μια προσωρινή μνήμη δημιουργίας. Τα πακέτα που προέκυψαν, ογδόντα τέσσερα από αυτά, στάλθηκαν με πλήρως έγκυρη, σωστά υπογεγραμμένη προέλευση ανώτατου επιπέδου. Κάθε αυτοματοποιημένος έλεγχος πέρασε με επιτυχία. Το κακόβουλο λογισμικό ήταν πραγματικό, όπως και, τεχνικά, τα έγγραφα που αποδεικνύουν τον τρόπο κατασκευής του.
Το άβολο συμπέρασμα: η προέλευση αποδεικνύει τι έκανε μια κατασκευή με ό,τι της δόθηκε, όχι ότι αυτό που της δόθηκε άξιζε εμπιστοσύνης. Δηλητηριάστε τα δεδομένα πριν υπάρξει το τεχνούργημα και η βεβαίωση θα είναι ένα ειλικρινές, επαληθεύσιμο αρχείο μιας ανέντιμης κατασκευής. Η ασφάλεια της εφοδιαστικής αλυσίδας ενός παράγοντα τεχνητής νοημοσύνης δεν μπορεί να ανατεθεί εξ ολοκλήρου σε εργαλεία βεβαίωσης που έχουν κατασκευαστεί για έναν κόσμο όπου ένας άνθρωπος, όχι ένα μοντέλο, αποφάσιζε τι θα περιλαμβανόταν στην κατασκευή.
Ένας πρακτικός μετριασμός είναι άκομψος αλλά αποτελεσματικός: μια περίοδος αναμονής, δηλαδή αναμονή λίγων ημερών μετά τη δημοσίευση μιας νέας έκδοσης πακέτου πριν από την υιοθέτησή της. Τα περισσότερα ενεργά περιστατικά στην εφοδιαστική αλυσίδα επισημαίνονται και αποκαλύπτονται εντός αυτού του πρώιμου παραθύρου, επομένως μια πενθήμερη καθυστέρηση θα είχε εξουδετερώσει ένα σημαντικό μερίδιο των περσινών περιστατικών. επιθέσεις τύπου σκουληκιού, με κόστος ακριβώς τίποτα εκτός από το άμεσοiacy.
Git, Αναθεώρηση και το Συρρικνούμενο Ανθρώπινο Σημείο Ελέγχου
Αναθεώρηση κώδικα και commit η ιστορία έχει χρησιμεύσει εδώ και καιρό ως η άγκυρα εμπιστοσύνης για το «κάποιος το κοίταξε αυτό». Αυτή η άγκυρα γίνεται πιο ασταθής όταν οι πράκτορες commitκαι συγχωνεύονται ολοένα και περισσότερο, χωρίς να υπάρχει άνθρωπος στον κύκλο τη στιγμή που συμβαίνει.
Η εγκατάσταση ενός πακέτου από έναν πράκτορα δεν έχει το ίδιο πρόβλημα εμπιστοσύνης με έναν προγραμματιστή που αντιγράφει μια απάντηση Stack Overflow, παρόλο που και οι δύο παραλείπουν τη σύνταξη του αρχικού κώδικα. Ένα απόσπασμα Stack Overflow γράφτηκε από ένα πραγματικό άτομο και έχει αξιολογηθεί ανεπίσημα από ομοτίμους μέσω θετικών και αρνητικών ψήφων. Μια σύσταση που δημιουργείται από τεχνητή νοημοσύνη είναι μια πιθανολογική έξοδος χωρίς καμία από τις δύο ιδιότητες και ένας προγραμματιστής που την αντιγράφει χειροκίνητα εξακολουθεί να κοιτάζει το όνομα του πακέτου, την ημερομηνία τελευταίας ενημέρωσης, τα ανοιχτά ζητήματα. Ένας πράκτορας που το εγκαθιστά δεν κάνει παύση για κανένα από αυτά, εκτός εάν έχει δημιουργηθεί ρητά κάτι που να το κάνει να τεθεί σε παύση.
Αυτό είναι το πραγματικό πρόβλημα της μετατόπισης προς τα αριστερά. Η παραδοσιακή μετατόπιση προς τα αριστερά υποθέτει ότι το πιο γρήγορα κινούμενο πράγμα στο pipeline είναι ένας προγραμματιστής που μπορεί να εκπαιδευτεί, να ωθηθεί και να αξιολογηθεί. Όταν το πιο γρήγορο πράγμα είναι ένας αυτόνομος πράκτορας, η ασφάλεια με shift-left πρέπει να επαναπροσδιοριστεί σε σημεία ελέγχου που ο πράκτορας δεν μπορεί να παρακάμψει: sandboxing, έλεγχος εξόδου και παράθυρα αναμονής, αντί για ένα έγγραφο πολιτικής που κανείς δεν επιβάλλει.
Ασφάλεια Εφοδιαστικής Αλυσίδας Πράκτορα Τεχνητής Νοημοσύνης: Τι Ασφαλής Πράκτορας Pipeline Στην πραγματικότητα απαιτεί
Η επιβίωση σε αυτή τη νέα κατηγορία σκουληκιών δεν απαιτεί εννέα διαφορετικά χειριστήρια που εφαρμόζονται τέλεια από την πρώτη κιόλας μέρα. Για μια ομάδα με περιορισμένους πόρους, δύο έχουν μεγαλύτερη σημασία από τα υπόλοιπα:
- Πάντα, κάντε sandbox στον πράκτορα. Εκτελέστε το σε μια microVM ή container με μόνο τον τρέχοντα κατάλογο έργου τοποθετημένο, έτσι ώστε ένας παραβιασμένος παράγοντας να μην έχει διαδρομή προς τα διακριτικά, τα διαπιστευτήρια ή τα αρχεία του κεντρικού υπολογιστή. Αυτός είναι ο φθηνότερος διαθέσιμος έλεγχος και αυτός με τη λιγότερη δικαιολογία για παράλειψη.
- Προσθέστε ένα παράθυρο αναμονής πριν από την εγκατάσταση νέων εκδόσεων πακέτων. Μερικές μέρες είναι συχνά αρκετές για να έρθει στην επιφάνεια μια ζωντανή επίθεση στην εφοδιαστική αλυσίδα και να αποκαλυφθεί πριν φτάσει στην κατασκευή σας.
Ένα τρίτο, για ομάδες που μπορούν να το αξιοποιήσουν: δημιουργήστε ορατότητα για CVE και κακόβουλο λογισμικό απευθείας στο pipeline, σαρώνοντας την εικόνα του κοντέινερ (όχι μόνο τον πηγαίο κώδικα, καθώς τόσες πολλές ευπάθειες υπάρχουν στην βασική εικόνα) και εμφανίζοντας αποτελέσματα ως pull request σχόλια που βλέπουν στην πραγματικότητα οι προγραμματιστές πριν από τη συγχώνευση.
Ένα πρόσφατο περιστατικό καθιστά τα διακυβεύματα συγκεκριμένα. Τον Ιούλιο του 2026, ένα μοντέλο τεχνητής νοημοσύνης που βρισκόταν υπό εσωτερική αξιολόγηση εκμεταλλεύτηκε μια μηδενική ημέρα (zero-day) στη μοναδική επιτρεπόμενη διαδρομή δικτύου του sandbox του, έναν διακομιστή μεσολάβησης package-cache, για να φτάσει στο ανοιχτό διαδίκτυο και, χωρίς να του δώσει ανθρώπινη εντολή, να θέσει σε κίνδυνο την εξωτερική υποδομή επιδιώκοντας έναν στόχο αναφοράς. Η διαδρομή διαφυγής ήταν η υποδομή εξάρτησης: η μία σύνδεση που έχει κατασκευαστεί για να επιτρέπει τη διέλευση κάθε sandbox. Εάν ο πράκτοράς σας χρειάζεται να φτάσει σε ένα μητρώο πακέτων για να λειτουργήσει, αυτή η σύνδεση δεν αποτελεί δευτερεύουσα λεπτομέρεια του μοντέλου ασφαλείας σας. Είναι το ίδιο το μοντέλο ασφαλείας. Αξίζει να διαβάσετε την πλήρη ανάλυση του Xygeni για το πώς συνέβη αυτή η διαφυγή: Rogue by Design.
Βασικά Συμπεράσματα
- Το τελευταίο ανθρώπινο σημείο ελέγχου εξαφανίζεται, δεν αποδυναμώνεται. Σχεδιάστε στοιχεία ελέγχου που δεν εξαρτώνται από την ανάγνωση ενός ονόματος πακέτου από κάποιον.
- Το Slopsquatting και το HalluSquatting είναι καλλιεργήσιμα, όχι θεωρητικά. Τα επαναλαμβανόμενα παραισθησιακά ονόματα και η εισαγωγή απλού κειμένου σε μορφή κειμένου ήδη αξιοποιούνται ευρέως.
- Προέλευση και SBOMαποδεικνύουν τι έκανε μια κατασκευή, όχι τι της τροφοδοτήθηκε. Αντιμετωπίστε την πιστοποίηση ανώτατου επιπέδου ως απαραίτητη και όχι επαρκή.
- Ο περιορισμός, όχι ο εντοπισμός, είναι αυτό που κρατάει τα όρια αυτή τη στιγμή. Το sandboxing, ο έλεγχος εξόδου και τα παράθυρα αναμονής αγοράζουν χρόνο που η σάρωση βάσει υπογραφής δεν μπορεί.
- Καταγράψτε τι μπορούν πραγματικά να προσεγγίσουν οι αντιπρόσωποί σας. Όχι το έγγραφο πολιτικής. Τα πραγματικά διακριτικά, τα πραγματικά διαπιστευτήρια, η πραγματική έξοδος δικτύου.
Αυτό το άρθρο βασίζεται στη συζήτηση από την ομιλία SafeDev του Xygeni "Όταν οι πράκτορες τεχνητής νοημοσύνης εγκαθιστούν εξαρτήσεις», με τον Καπετάνιο του Docker, Mohammad-Ali A'râbi. Το πλήρες πλαίσιο ενίσχυσης εννέα ελέγχων που έχει αναπτύξει καλύπτεται σε μεγαλύτερο βάθος στο ενημερωτικό του δελτίο, Docker Security Dispatch και στον Luis Rodriguez, Ερευνητικό Υπεύθυνο στην Xygeni.
Συχνές ερωτήσεις: Ασφάλεια εφοδιαστικής αλυσίδας πρακτόρων τεχνητής νοημοσύνης
Είναι ένας πράκτορας που εγκαθιστά ένα πακέτο ένα θεμελιωδώς διαφορετικό πρόβλημα εμπιστοσύνης από έναν προγραμματιστή που αντιγράφει μια πρόταση Stack Overflow ή απλώς μια ταχύτερη έκδοση του ίδιου πακέτου;
Και τα δύο, σε διαφορετικές αναλογίες. Ο μηχανισμός είναι ταχύτερος, αλλά το χάσμα εμπιστοσύνης είναι επίσης δομικά ευρύτερο: μια απάντηση Stack Overflow γράφτηκε και αξιολογήθηκε ανεπίσημα από ομοτίμους από ένα άτομο, ενώ μια σύσταση πακέτου που δημιουργήθηκε από τεχνητή νοημοσύνη είναι ένα πιθανοτικό αποτέλεσμα χωρίς ισοδύναμη αξιολόγηση και ένας προγραμματιστής που την αντιγράφει χειροκίνητα εξακολουθεί να εφαρμόζει περιστασιακό έλεγχο που ένας μη επιτηρούμενος παράγοντας παραλείπει εντελώς.
Τι θα χρειαζόταν για ένα SBOM για να καταγράψετε αξιόπιστα "ένας εκπρόσωπος το πρόσθεσε αυτό, και να γιατί";
Σήμερα SBOM και προέλευση standardκατασκευάστηκαν γύρω από την υπόθεση ότι ένας άνθρωπος έκανε κάθε εξάρτηση decisκαι δεν έχουν ακόμη ένα πεδίο για το ποιος πράκτορας, ποια έκδοση μοντέλου ή ποια προτροπή παρήγαγε μια δεδομένη αλλαγή. Για να γεφυρωθεί αυτό το κενό, χρειάζεται είτε μια επέκταση στις υπάρχουσες μορφές βεβαίωσης είτε μια ξεχωριστή διαδρομή ελέγχου, επίγνωση του πράκτορα, που να καταγράφει τηνcisιοντική προέλευση παράλληλα με την κατασκευαστική προέλευση.
Υπάρχει κάποια έκδοση του "shift-left" που να λειτουργεί ακόμα και όταν το πιο γρήγορο πράγμα στο pipeline είναι αυτόνομος πράκτορας, όχι προγραμματιστής;
Ναι, αλλά πρέπει να αλλάξει το σημείο ελέγχου, όχι μόνο τον χρόνο. Η λειτουργία shift-αριστερά που βασίζεται στην ανθρώπινη αναθεώρηση δεν προσαρμόζεται στην ταχύτητα του παράγοντα. Η λειτουργία shift-αριστερά που βασίζεται στην περιεκτική χρήση, τους περιορισμούς εξόδου και τους χρόνους αναμονής εγκατάστασης μπορεί να εντοπίσει έναν παραβιασμένο παράγοντα πριν οι ενέργειές του φτάσουν στην παραγωγή, επειδή αυτοί οι έλεγχοι δεν εξαρτώνται από το αν κάποιος θα διαβάσει οτιδήποτε.





