Codesignatur Wird Untersucht
Codesignatur kann zur Verbesserung der Sicherheit beitragen, indem vertrauliche Anwendungskonfigurationsdaten und -Skripts validiert werden, bevor sie verwendet werden.
Codesignatur erstellt digitale Signaturen für die Daten, die später überprüft werden, um die Authentizität und Integrität der Daten zu bestätigen. Codesignatur ist ein Modul, das als Komponente von lizenziert ist ServiceNow Vault.
Codesignatur deklariert die Absicht hinter dem ausgeführten Vorgang und validiert, ob die Ressource oder der Datensatz für den beabsichtigten Zweck verwendet werden kann. Um die Codesignatur zu erleichtern Key Management Framework( KMF) Verwendet digitale Zertifikate und asymmetrische Verschlüsselung nach Industriestandard für digitale Signaturen. Verwenden Sie Codesignatur intern auf Plattform- und Infrastrukturseite. Codesignatur bietet eine Möglichkeit, den Inhalt bestimmter Tabellen oder einer Teilmenge von Datensätzen in einer bestimmten Metadatentabelle zu signieren. |
Codesignatur verwendet einen sicheren Circle of Trust( COT) Zwischen Ihren vertrauenswürdigen und geschützten Instanzen, um sicherzustellen, dass nur autorisierte, sichere vertrauenswürdige Instanzen auf die Codesignaturfunktion zugreifen können.
Anwendungsfälle
Hier sind einige häufige Anwendungsfälle für Codesignatur:
- Verhindern Sie nicht autorisierte Codeänderungen : Stellen Sie sicher, dass nur autorisierte Skripts, Integrationen und Workflows in Ihrer Instanz bereitgestellt werden. Dies schützt Ihre Instanz vor böswilligen oder versehentlichen Changes und reduziert die Betriebsrisiken und -Kosten.
- Sichere MID-Server- und Integrations-Hub-Vorgänge : Verhindern, dass nicht autorisierte oder manipulierte ECC-Warteschlangendatensätze vom MID-Server oder verarbeitet werden IntegrationHub. Dadurch wird eine sichere Integration zwischen ServiceNow und externen Systemen gewährleistet.
- Richten Sie einen Vertrauenskreis ein : Einrichten eines Vertrauenskreises zwischen Ihren vertrauenswürdigen und geschützten Instanzen. Dadurch wird sichergestellt, dass die Integrität des Codes, der in Ihrer geschützten Instanz ausgeführt wird, auch wenn andere Sicherheitsmaßnahmen gefährdet werden.
- Sichere Plugin-Bereitstellungen : Überprüfen Sie die Authentizität der in Ihrer Instanz installierten Plugins, um die Einführung von schädlichem oder manipuliertem Code aus Drittanbieter-Plugins zu verhindern.
- Sicherer Softwareentwicklungslebenszyklus (SDLC) : Integrieren Sie die Codesignatur in Ihren SDLC, um sicherzustellen, dass nur signierter und getesteter Code aus der Entwicklung in Ihre geschützte Instanz verschoben wird.
Hier ist ein Beispiel dafür, wie ein Vertrauenskreis böswillige Angriffe verhindern kann:
Angenommen, ein Angreifer erhält Zugriff auf eine Reihe von Datensätzen und ändert die SQL-Anweisung (Structured Query Language) in der geschützten Instanz des Kunden. Der MID-Server erkennt die Datenquellenanforderung und führt die böswilligen SQL-Änderungen aus, wodurch möglicherweise die Integrität beeinträchtigt wird. Durch die Implementierung eines Circle of Trust (Cot) können Systemadministratoren jedoch Schwachstellen in diesem Szenario effektiv mindern:
- Der Administrator aktualisiert die Datenquelle in der vertrauenswürdigen Instanz und signiert die Integrationsdatensätze digital.
- Die aktualisierten Daten werden sicher von der vertrauenswürdigen Instanz in die geschützte Instanz übertragen.
- Ein ungültiger Akteur versucht, die geschützte Instanz mit schädlichen SQL-Abfragen zu aktualisieren.
- Der MID-Server identifiziert die böswillige Datenquellenanforderung.
- Die Anforderung wird abgelehnt, da keine gültige digitale Signatur vorhanden ist.
- Eine Nachricht wird an die geschützte Instanz des Kunden zurückgesendet, um ihn über das Problem mit der digitalen Signatur zu informieren und zu bestätigen, dass keine weiteren Aktionen erforderlich sind.
Codesignaturvalidierung und -Aufträge
Alle Metadatentabellen mit gültigen Konfigurationen werden zum Build-Zeitpunkt mit dem Plugin „Codesignaturmetadaten“ signiert ( Com.Glide.Code_Signing ). Wenn Sie Tabellen signieren, haben Administratoranwender mit der Rolle „Sicherheitsadministrator“ Zugriff auf Codesignaturverschlüsselungsaufträge:
- Update-Sätze signieren.
- Massensignierungsdatensätze.
- Massensignierungsanhänge.
- Update-Satz signieren
- Dieser Auftrag signiert Datensätze, die einer Signaturkonfiguration im Update-Satz entsprechen. Der Auftrag fügt dem Update-Satz auch alle neuen Signaturdatensätze und die Verifizierungszertifikate hinzu.
Abbildung : 1. KMF-Signaturdatensatz für Update-Satz - Massensignierungsdatensätze
Dieser Auftrag signiert alle Datensätze, die der Signaturkonfiguration entsprechen, die auf eine bestimmte Metadatentabelle angewendet wird.
- Massensignierungsanhänge
- Dieser Auftrag signiert alle Anhangsdatensätze, die an eine Tabelle angehängt sind, die einer angegebenen Signaturkonfiguration entspricht.
Abbildung : 2. Verschlüsselungsauftrag für Massensignierungsdatensätze