Was ein SWID-Tag enthält
Ein SWID-Tag ist nicht die Software selbst. Es handelt sich um eine begleitende Metadatendatei. Der Installer des Herstellers legt sie bei der Installation meist an einem festen Ort ab. Ein Inventarisierungswerkzeug kann sie auslesen, ohne die Software zu starten oder die Datei vollständig zu verarbeiten.
Jeder Tag erfasst den Herausgeber, die Produktidentität (Name, Version, Edition sowie Ziel-Architektur oder -Plattform), eine eindeutige Tag-ID, die vom Produktnamen getrennt ist, und den Tag-Typ. Dieser zeigt, ob es sich um eine primäre Installation, einen Patch, eine ergänzende Komponente oder einen Pre-Install-Korpus handelt. Das folgende Beispiel zeigt den Aufbau eines Tags nach dem Schema ISO/IEC 19770-2 mit Platzhalterwerten:
<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>Warum es den Standard gibt
Vor SWID nutzte jedes Werkzeug für das IT-Asset-Management eigene Heuristiken, um installierte Software zu erkennen. Es glich Programmdateinamen, Registrierungsschlüssel oder Ordnerstrukturen ab. Diese Merkmale unterscheiden sich je nach Version und Hersteller, daher ist das Verfahren fragil. Ein Produkt kann im gesamten Bestand unter mehreren Namen auftauchen. Eine kleine Umbenennung oder ein neues Paketformat kann dazu führen, dass ein Werkzeug Lizenzen falsch zählt oder eine verwundbare Version übersieht.
ISO/IEC 19770-2 schafft für die Branche eine gemeinsame Quelle der Wahrheit. Der Hersteller erklärt, was installiert wurde, in einem standardisierten Format, das jedes Werkzeug gleich liest. Inventarisierung und Lizenzabgleich stützen sich dann nicht mehr auf Vermutungen.
Wie ein Tag den Bestand erreicht
Ein Tag durchläuft vier Schritte, vom Installer des Herstellers bis zum Inventareintrag:
- 1
Veröffentlichung
Der Installer des Herstellers schreibt den Tag bei der Installation neben das Produkt.
- 2
Auslesen
Das Inventarisierungswerkzeug liest die XML-Datei, ohne die Software zu starten.
- 3
Abgleich
Produkt, Edition und Version werden mit den erworbenen Rechten und mit bekannten verwundbaren Versionen verglichen.
- 4
Speicherung
Das Ergebnis wird als strukturierter Eintrag abgelegt, sodass jedes Gerät auf die gleiche Weise meldet.
Wofür SWID-Tags genutzt werden
Tags unterstützen vier typische Aufgaben. Jede davon hat außerdem eine Grenze, die sich aus der Reichweite der Tags ergibt:
| Einsatz | Was der Tag liefert | Grenze |
|---|---|---|
| Software-Asset-Management | Eine genaue Zahl installierter Software, ohne Dateinamen abzugleichen | Gezählt werden nur Produkte, für die der Hersteller einen Tag erstellt hat |
| Lizenzabgleich | Exakte Produkt- und Edition-IDs, geprüft gegen erworbene Rechte | Ein Produkt ohne Tag fehlt im Abgleich |
| Zuordnung von Schwachstellen und Patches | Produkt und Version werden bekannten verwundbaren Versionen zugeordnet, Patch-Tags bestätigen eine Korrektur | Ein Produkt ohne Tag lässt sich nicht zuordnen |
| Behördliche Compliance | Rahmenwerke, die das vom NIST gepflegte Protokoll SWIMA nennen, erwarten, dass Endgeräte Software als SWID-Tags melden | Die Meldung ist nur dort vollständig, wo Tags vorhanden sind |
Wo SWID-Tags in der Praxis zu kurz greifen
Der Standard hängt von der Verbreitung ab. Ein SWID-Tag existiert nur, wenn der Installer des Herstellers ihn erzeugt. Ein Werkzeug, das allein auf Tags setzt, hat daher blinde Flecken.
Deshalb wird der größte Teil der Software-Inventarisierung weiterhin durch automatisierte Erkennung aufgebaut, also aus dem, was ein Agent oder Scanner auf dem Endgerät sieht. SWID-Tags sind dort, wo sie existieren, ein ergänzendes Signal mit höherer Verlässlichkeit. Sie sind nicht die einzige Quelle der Wahrheit. Die wichtigsten Belege stammen aus:
- Listen installierter Programme, so wie das Betriebssystem sie registriert
- Datei- und Registrierungsspuren, die eine Installation hinterlässt
- Einträgen des Paketmanagers
SWID-Tags im Vergleich zum allgemeinen Inventar
Der Standard und das Ziel sind getrennte Dinge. Das Software-Inventar ist das weiter gefasste Ziel: ein aktueller, genauer Bestand jeder Anwendung, die auf den Rechnern der Organisation installiert ist. Ein SWID-Tag ist eine standardisierte Möglichkeit, ein einzelnes installiertes Produkt präzise zu identifizieren.
Eine Organisation kann ein verlässliches Inventar auf Basis agentenbasierter Erkennung betreiben und nie einen SWID-Tag verwenden. Auch der umgekehrte Fall kommt vor: Ein Rechner kann für einige Produkte SWID-Tags tragen, während das Gesamtinventar den Rest auf anderem Weg erfasst. Den breiteren Rahmen beschreibt das Software-Asset-Management.
So sieht es in Anexet aus
Die Softwareliste von Anexet entsteht aus den Merkmalen, die der Agent auf jedem Arbeitsplatz ausliest: Name, Firma, Version und Pfad. Im Anexet Inventory listet die Gerätekarte die installierten Programme auf, sodass Software, die niemand angefordert hat, in der Liste auffällt.
Wo man anfängt
Der Einstieg gelingt über die Produkte mit den höchsten Lizenzkosten oder dem größten Sicherheitsrisiko. Dabei gilt es zu prüfen, ob ihre Hersteller Tags erstellen. Wenn ja, bestätigt der Tag das genaue Produkt. Wenn nicht, bleibt der Befund am Endgerät die Quelle, und der Prozess der Inventarisierung hält ihn aktuell.
Ein Tag sagt, was der Hersteller als installiert angibt. Das Inventar sagt, was tatsächlich auf dem Rechner liegt.
