IT-Sicherheit Sichere Programmierstandards CWE und CERT für embedded Cybersecurity © shutterstock_SW-Programmierg-776545783 Parasoft www.parasoft.com Angetrieben durch die Digitalisierung und zunehmende Vernetzung von Software ist Cybersicherheit heute in aller Munde. Um vorzubeugen und Software zu programmieren, die sicherer ist, sollten Standards wie CWE und CERT berücksichtigt werden. Beide beruhen auf Forschungsergebnissen, die zeigen, dass das Testen von Software alleine nicht ausreicht, um die Aufgabe zu erfüllen. Oft wird gefragt „Was soll ich verwenden? Ist da eine besser als das andere?“ Beide ergänzen sich gegenseitig und jedes hat eine etwas andere Ausrichtung: Bei CWE handelt es sich um eine Liste von Schwachstellen, über die ein Softwaresystem angegriffen werden kann, während CERT ein Programmierstandard ist, der helfen soll, Schwachstellen zu verhindern, indem fehleranfällige Konstrukte und Muster vermieden werden. Bei Software-Sicherheitsverletzungen werden Schwachstellen in der Software (CWE) ausgenutzt, und entsprechende Richtlinien und bewährte Verfahren (CERT) weisen darauf hin, dass man solche Schwachstellen in seinem System vermeiden muss. Ein Vergleich mit einem Verkehrsunfall macht es deutlich: CWE bezeichnet die Unfallursache(n), z. B. schlechte Sicht an einer Kreuzung, schlechte Bremsen, Ablenkung des Fahrers, zu dichtes Auffahren. CERT sind Vermeidungssysteme, wie z. B. Spiegel an unübersichtlichen Ecken, dritte Bremslichter in Autos, ABS-Bremsen. Risikoverständnis und Priorisierung Ein interessanter und oft übersehener Aspekt von CWE und CERT ist: Beide Standards verfügen über Daten zum Risikoverständnis und zur Priorisierung der gefundenen Sicherheitsmängel. Im Fall von CWE heißen diese Daten CWSS und Technical Impact. Sie helfen zu verstehen, dass die in CWE beschriebenen grundlegenden Code-Probleme (wie Pufferüberlauf) zu spezifischen Problemen führen, wenn sie ausgenutzt werden. Weiß man, welche Probleme auftreten können, lässt sich besser entscheiden, welche Probleme im Zusammenhang mit der eigenen Anwendung oder dem Gerät am wichtigsten sind. Bei CERT gibt es für jede Regel eine Bewertung und eine Empfehlung, die angibt, wie wahrscheinlich es ist, dass das Problem in der Realität auftritt, wie schwierig es zu entschärfen ist und wie schwerwiegend es ist, wenn es tatsächlich auftritt. Zusammen ergeben sie eine Prio- 24 2/2022
IT-Sicherheit CERT-CWE Landscape ritätsstufe, die dabei hilft, um sich auf die wichtigsten Probleme zu konzentrieren. Was ist also der erste Schritt? Hat man beschlossen, das Sicherheitsproblem mit Hilfe der statischen Codeanalyse in den Griff zu bekommen, muss man sich für ein Tool entscheiden. Es sollte: • alle erforderlichen Sicherheitsstandards und mehr als die CW Tops 25 unterstützen, • mit gegebenen Code-Editoren und IDEs sowie Build- und CI- Tools zusammenarbeiten, • ein flexibles und umfassendes Berichtswesen beinhalten, • sowohl Erkennungsregeln (Fluss/ Verfälschung) als auch Präventionsregeln (Standards/Muster) enthalten, • Risikobewertungsalgorithmen in CWE und CERT enthalten, um vorliegende Sicherheitsmängel zu priorisieren und • selektiv auf der Grundlage von aktuellem / neuem / geändertem und altem Code ausgeführt werden. Das passende Tool auswählen Laut Forschern verschiedener Institute sind die aktuellen Open- Source-Tools für die statische Analyse nicht so umfassend wie die kommerziellen Tools. Darum sollte man sicherstellen, dass das eingesetzte Tool die für das eigene Unternehmen wichtigen Punkte abdeckt. Ist die Entscheidung für ein Tool gefallen, muss man es so konfigurieren, dass es die gewünschten Regeln ausführt. Man sollte nicht einfach alle Sicherheitsregeln aktivieren - das zerstört die langfristige Rentabilität der statischen Analyse, weil mehr sicherheitsrelevante Erkenntnisse gewonnen werden, als man sinnvoll verwalten kann. Es ist also lohnenswert, die Anzahl der Regeln zu Beginn zu begrenzen und sie dann zu erhöhen, wenn man den Code in Übereinstimmung mit den Vorschriften bringt. Ein einfacher Ausgangspunkt ist die CWE Top 25, um sich auf die wichtigsten Probleme zu beschränken. Setzt man CERT ein, sollte man nur die Regeln verwenden, die auf die höchste Prioritätsstufe eingestellt sind. Es ist hilfreich, die Entwickler daran zu gewöhnen, sich mit den Problemen zu befassen, und sicherzustellen, dass sie die Beziehung zwischen Regeln, die zur Fehlervermeidung beitragen, und Regeln zur Fehlererkennung verstehen. Wenn der Code sauberer wird, kann man weitere Regeln hinzufügen. Nicht zu vergessen: In einem breit gefächerten Bereich wie der Cybersicherheit wird man nicht alles, was man braucht, bei einem einzigen Anbieter finden. Daher ist es sowohl für die Effizienz als auch für die Einhaltung von Vorschriften wichtig, eine Möglichkeit zu haben, alle Tools in einen einzigen Prozess mit einem umfassenden Bericht zu integrieren, der alle Sicherheitsaktivitäten berücksichtigt. Fazit Angesichts der ansteigenden Zahl von Vorfällen im Bereich der Cybersicherheit müssen sich die Verbraucher (notgedrungen) zunehmend um die Sicherheit von Software und Geräten kümmern. Es ist gut vorstellbar, wenn sich Regierungen mit verschiedenen Formen der Regulierung einmischen, indem sie z. B. die Einhaltung von CWE und/oder CERT vorschreiben. Unabhängig davon, wo die Software ausgeführt wird, ob auf einem Desktop, einem mobilen Gerät, einem IoT- Gerät oder in der Fabrikautomatisierung, kann die Software sicherheit durch einen strengen, auf Standards basierenden Entwicklungsprozess erreicht werden. ◄ 2/2022 25
SCHNEEBERGER GmbH Gräfenau, 75339
Vision & Motion Ing. Ges. Graben 10
Dienstleistung Bauteil-Jammer hausg
Dienstleistung Stellenwert des Zwis
Dienstleistung Step by Step zur Sma
Dienstleistung Abgeschlossen wird d
Dienstleistung Die Elektronikfertig
Dienstleistung Über die TQ-Group:
Dienstleistung ganzheitliche modula
Dienstleistung Krisensichere Liefer
Qualitätssicherung Bild 2: Optisch
Qualitätssicherung Volle Kontrolle
Qualitätssicherung Das mikroskopba
Anzeige Der Ablauf ist nun wie folg
Qualitätssicherung Void in einer T
Qualitätssicherung Der Phoenix Spe
Qualitätssicherung tronik-Inspekti
Qualitätssicherung SCALEREO Desk -
Qualitätssicherung Neue Generation
Löt- und Verbindungstechnik Vapor
SPIRFLAME® PATENTIERTE MULTIZELLEN
15 Jahre Hightech! Technologie des
Löt- und Verbindungstechnik 2K-Epo
Dosiertechnik Klebstoffe und Vergus
Dosierroboter bietet Qualität und
Rund um die Leiterplatte Klimaneutr
Rund um die Leiterplatte Multilayer
Laser-Nutzentrennen in der DACH-Reg
Produktionsausstattung Neue Rezeptu
Produktionsausstattung Abstand vs.
Produktionsausstattung Absaug- und
Produktion COMPLETE AND FLEXIBLE SM
Lasertechnik Microscan-Extension f
Komponenten Mehrfach-Transistorhalt
EMV Bild 3: Beispielkurve einer Mes
Aktuelles SMTconnect: Herzschlag de
IoT/Industrie 4.0 Bild 2: Mit Hilfe
Aktuelles Einmalige QS-Business-Pla
IoT/Industrie 4.0 IIoT resultieren:
Qualitätssicherung Bild 2: Überga
Laden...
Laden...
Laden...