Ασφάλεια πληροφοριών. Από το 2006.Cloudflare υπηρεσίες ↗
TRUST-IT / Πρακτικός οδηγός

Ασφάλεια εφοδιαστικής αλυσίδας λογισμικού: τεκμήρια αξιόπιστης έκδοσης

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

Μηχανικοί λογισμικού που εξετάζουν μαζί μια έκδοση.
Περίπου 4 λεπτά ανάγνωσης

Ορίστε τα όρια της έκδοσης

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

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

Ελέγξτε επιλογή και αλλαγή εξαρτήσεων

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

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

Προστατεύστε ταυτότητα και περιβάλλον build

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

Ελέγξτε διαμόρφωση runners, εισόδους build και αποθήκευση artifacts. Περιορίστε απρόσμενη δικτυακή πρόσβαση όπου είναι πρακτικό, συντηρήστε περιβάλλοντα και καταγράψτε σχετικά τεκμήρια εκτέλεσης. Μην τοποθετείτε μυστικά σε artifacts, logs ή προσωρινά αποθηκευμένους χώρους εργασίας. Εξετάστε αν αλλαγή εξάρτησης ή βήματος pipeline επιτρέπει αντικατάσταση έκδοσης μετά την έγκριση.

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

Χρησιμοποιήστε SBOM και provenance για τα σωστά ερωτήματα

Ένα software bill of materials περιγράφει καταγεγραμμένα στοιχεία και σχέσεις για συγκεκριμένο artifact ή προϊόν. Δηλώστε εύρος, μέθοδο δημιουργίας και γνωστές παραλείψεις. Συνδέστε το με την πραγματική έκδοση και κρατήστε πληροφορίες για διερεύνηση νέου προβλήματος. Το SBOM αποτελεί χρήσιμο τεκμήριο απογραφής, όχι απόδειξη απουσίας ευπαθειών ή κακόβουλης συμπεριφοράς.

Το build provenance περιγράφει τεκμήρια παραγωγής ενός artifact σύμφωνα με τη μορφή και την υλοποίησή του. Η επαλήθευση πρέπει να συνδέει το αποτύπωμα με αναμενόμενη ταυτότητα builder και σχετικές εισόδους. Η υπογραφή ελέγχεται έναντι πολιτικής εμπιστοσύνης· δεν αρκεί να υπάρχει. Το SLSA προσφέρει πλαίσιο ενίσχυσης διασφάλισης, αλλά η δήλωση επιπέδου απαιτεί κάλυψη των αντίστοιχων απαιτήσεων.

Κάντε διάθεση και επαναφορά ελεγχόμενες αποφάσεις

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

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

Ζητήστε ελέγξιμο πακέτο τεκμηρίων έκδοσης

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

Η TRUST-IT εξετάζει υπάρχουσα διαδικασία παράδοσης ή ενσωματώνει τους ελέγχους στην ανάπτυξη και διασύνδεση λογισμικού. Παραδοτέα μπορεί να είναι χάρτης ορίων εμπιστοσύνης pipeline, ιεραρχημένες διορθώσεις, κριτήρια αποδοχής και δοκιμασμένη ανάκαμψη. Στόχος είναι εξηγήσιμη σχέση μεταξύ εξετασμένου κώδικα και λειτουργίας στην παραγωγή, με ορατή την υπολειπόμενη αβεβαιότητα.

Περισσότερες πληροφορίες

Από τη γνώση στην εφαρμογή

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

Λογισμικό & συμβουλευτική IT

Ποια είναι η επόμενη
τεχνολογική σας πρόκληση;

TRUST-IT / ΒΡΕΙΤΕ ΤΟ ΕΠΟΜΕΝΟ ΒΗΜΑ

Πώς μπορούμε να βοηθήσουμε;

Δημοφιλή θέματα

Αναζήτηση στο δημόσιο περιεχόμενο της TRUST-IT.