Τι περιέχει μια ετικέτα SWID
Μια ετικέτα SWID δεν είναι το ίδιο το λογισμικό. Είναι ένα συνοδευτικό αρχείο μεταδεδομένων. Ο εγκαταστάτης του κατασκευαστή συνήθως την τοποθετεί σε σταθερή θέση κατά την εγκατάσταση. Ένα εργαλείο απογραφής μπορεί να τη διαβάσει χωρίς να εκτελέσει το λογισμικό και χωρίς να αναλύσει πλήρως το αρχείο.
Κάθε ετικέτα καταγράφει τον εκδότη, την ταυτότητα του προϊόντος (όνομα, έκδοση, edition και αρχιτεκτονική ή πλατφόρμα-στόχος), ένα μοναδικό αναγνωριστικό της ετικέτας, διαφορετικό από το όνομα του προϊόντος, και τον τύπο της ετικέτας. Ο τύπος δείχνει αν πρόκειται για κύρια εγκατάσταση, ενημέρωση (patch), συμπληρωματικό στοιχείο ή corpus προ-εγκατάστασης. Το παρακάτω παράδειγμα δείχνει τη δομή μιας ετικέτας κατά το σχήμα ISO/IEC 19770-2, με υποδειγματικές τιμές:
<SoftwareIdentity xmlns="http://standards.iso.org/iso/19770/-2/2015/schema.xsd" name="Example Editor" version="5.2.1" versionScheme="multipartnumeric" tagId="example-editor-5-2-1">
<Entity name="Example Corp" regid="example.com" role="softwareCreator"/>
</SoftwareIdentity>Γιατί υπάρχει το πρότυπο
Πριν από το SWID, κάθε εργαλείο διαχείρισης περιουσιακών στοιχείων IT χρησιμοποιούσε δικές του ευρετικές μεθόδους για να αναγνωρίζει το εγκατεστημένο λογισμικό. Αντιστοίχιζε ονόματα εκτελέσιμων, κλειδιά μητρώου ή δομές φακέλων. Αυτά αλλάζουν ανάλογα με την έκδοση και τον προμηθευτή, οπότε η μέθοδος είναι εύθραυστη. Ένα προϊόν μπορεί να εμφανίζεται με διάφορα ονόματα σε όλο το πάρκο. Μια μικρή μετονομασία ή μια νέα συσκευασία μπορεί να κάνει ένα εργαλείο να μετρήσει λάθος τις άδειες ή να προσπεράσει μια ευάλωτη έκδοση.
Το πρότυπο ISO/IEC 19770-2 δίνει στον κλάδο μία κοινή πηγή αλήθειας. Ο κατασκευαστής δηλώνει τι εγκαταστάθηκε, σε τυποποιημένη μορφή που κάθε εργαλείο διαβάζει με τον ίδιο τρόπο. Η απογραφή και η συμφωνία των αδειών σταματούν έτσι να βασίζονται σε εικασίες.
Πώς η ετικέτα φτάνει στην απογραφή
Η ετικέτα περνά από τέσσερα βήματα, από τον εγκαταστάτη του κατασκευαστή έως την εγγραφή απογραφής:
- 1
Δημοσίευση
Ο εγκαταστάτης του κατασκευαστή γράφει την ετικέτα δίπλα στο προϊόν κατά την εγκατάσταση.
- 2
Ανάγνωση
Το εργαλείο απογραφής διαβάζει το αρχείο XML χωρίς να εκτελέσει το λογισμικό.
- 3
Αντιστοίχιση
Το προϊόν, η έκδοση και η παραλλαγή συγκρίνονται με τα αγορασμένα δικαιώματα και με τις γνωστές ευάλωτες εκδόσεις.
- 4
Καταγραφή
Το αποτέλεσμα αποθηκεύεται ως δομημένη εγγραφή, ώστε κάθε υπολογιστής να αναφέρει τα στοιχεία με τον ίδιο τρόπο.
Πώς χρησιμοποιούνται οι ετικέτες SWID
Οι ετικέτες εξυπηρετούν τέσσερις συνηθισμένες εργασίες. Καθεμία έχει επίσης ένα όριο, που προκύπτει από την κάλυψη των ετικετών:
| Χρήση | Τι παρέχει η ετικέτα | Όριο |
|---|---|---|
| Διαχείριση περιουσιακών στοιχείων λογισμικού | Ακριβής καταμέτρηση του εγκατεστημένου λογισμικού, χωρίς αντιστοίχιση ονομάτων αρχείων | Μετρώνται μόνο τα προϊόντα για τα οποία ο κατασκευαστής δημιούργησε ετικέτα |
| Συμφωνία αδειών χρήσης | Ακριβή αναγνωριστικά προϊόντος και έκδοσης, συγκρινόμενα με τα αγορασμένα δικαιώματα | Ένα προϊόν χωρίς ετικέτα μένει εκτός σύγκρισης |
| Αντιστοίχιση ευπαθειών και ενημερώσεων | Προϊόν και έκδοση συνδεδεμένα με γνωστές ευάλωτες εκδόσεις· οι ετικέτες ενημέρωσης επιβεβαιώνουν μια διόρθωση | Ένα προϊόν χωρίς ετικέτα δεν μπορεί να αντιστοιχιστεί |
| Συμμόρφωση με κρατικές απαιτήσεις | Τα πλαίσια που αναφέρουν το πρωτόκολλο SWIMA του NIST αναμένουν από τα endpoints να αναφέρουν το λογισμικό ως ετικέτες SWID | Η αναφορά είναι πλήρης μόνο όπου υπάρχουν ετικέτες |
Πού αποτυγχάνουν οι ετικέτες SWID στην πράξη
Το πρότυπο εξαρτάται από την υιοθέτησή του. Μια ετικέτα SWID υπάρχει μόνο αν τη δημιουργεί ο εγκαταστάτης του κατασκευαστή, οπότε ένα εργαλείο που βασίζεται μόνο σε ετικέτες θα έχει τυφλά σημεία.
Για τον λόγο αυτό, το μεγαλύτερο μέρος της απογραφής λογισμικού εξακολουθεί να χτίζεται με αυτόματη ανακάλυψη, από όσα βλέπει ένας agent ή ένας σαρωτής στο endpoint. Οι ετικέτες SWID είναι ένα συμπληρωματικό σήμα υψηλότερης αξιοπιστίας, όπου υπάρχουν. Δεν είναι η μοναδική πηγή αλήθειας. Τα βασικά στοιχεία προέρχονται από:
- τις λίστες εγκατεστημένων προγραμμάτων, όπως τις καταγράφει το λειτουργικό σύστημα
- αρχεία και εγγραφές μητρώου που αφήνει η εγκατάσταση
- τις εγγραφές του διαχειριστή πακέτων
Ετικέτες SWID έναντι γενικής απογραφής
Το πρότυπο και ο στόχος είναι διαφορετικά πράγματα. Η απογραφή λογισμικού είναι ο ευρύτερος στόχος: ένα επίκαιρο και ακριβές αρχείο κάθε εφαρμογής που είναι εγκατεστημένη στους υπολογιστές του οργανισμού. Μια ετικέτα SWID είναι ένας τυποποιημένος τρόπος να ταυτοποιηθεί με ακρίβεια ένα μεμονωμένο εγκατεστημένο προϊόν.
Ένας οργανισμός μπορεί να έχει αξιόπιστη απογραφή, βασισμένη σε ανακάλυψη μέσω agents, και να μην χρησιμοποιήσει ποτέ ετικέτα SWID. Συμβαίνει και το αντίστροφο: ένας υπολογιστής μπορεί να φέρει ετικέτες SWID για ορισμένα προϊόντα, ενώ η γενική απογραφή καλύπτει τα υπόλοιπα με άλλα μέσα. Η ευρύτερη πρακτική περιγράφεται στη διαχείριση περιουσιακών στοιχείων λογισμικού.
Πώς φαίνεται αυτό στο Anexet
Η λίστα λογισμικού του Anexet δημιουργείται από τα χαρακτηριστικά που διαβάζει ο agent σε κάθε σταθμό εργασίας: όνομα, εταιρεία, έκδοση και διαδρομή. Στο Anexet Inventory, η κάρτα κάθε σταθμού εμφανίζει τα εγκατεστημένα προγράμματα, οπότε το λογισμικό που δεν ζήτησε κανείς ξεχωρίζει στη λίστα.
Από πού να ξεκινήσει κανείς
Καλό είναι να ξεκινά κανείς από τα προϊόντα με το μεγαλύτερο κόστος αδειών ή τον μεγαλύτερο κίνδυνο για την ασφάλεια, και να ελέγξει αν οι κατασκευαστές τους δημιουργούν ετικέτες. Όταν το κάνουν, η ετικέτα επιβεβαιώνει το ακριβές προϊόν. Όταν δεν το κάνουν, η εγγραφή του endpoint παραμένει η πηγή, και η διαδικασία της απογραφής την κρατά ενημερωμένη.
Μια ετικέτα λέει τι δηλώνει ο κατασκευαστής ότι εγκαταστάθηκε. Η απογραφή λέει τι υπάρχει πραγματικά στον υπολογιστή.
