Probleme mit der Code-Sicherheit vermeiden

Der Online-Dienst Jaxenter.com hat vier häufige Probleme bei der Software-Sicherheit untersucht und gibt Hinweise darauf, wie man sie vermeiden kann. [...]

(c) veracode.com

Der Prozess der Verwaltung und Wartung sicherer Software kann unerwartete Hürden für Entwickler darstellen, die versuchen, Funktionen so schnell wie möglich zu liefern. Untersuchungen zeigen, dass 59 Prozent der Unternehmen heute mehrmals täglich, einmal täglich oder einmal alle paar Tage Code bereitstellen. Da Software jedoch zum Rückgrat moderner Unternehmen geworden ist, sind Cyberattacken zu einer allgegenwärtigen Bedrohung geworden, die Anwendungssicherheit zu einer kritischen Notwendigkeit macht, um die Geschäftskontinuität zu gewährleisten.

1. Sicherheitslücken beheben dauert zu lange

Eine der häufigsten Herausforderungen sowohl für Entwickler als auch für Sicherheitsteams sind Sicherheitsschulden. Um zu vermeiden, dass sie zu den Sicherheitsschulden beitragen, können Entwickler automatisiertes Scannen und Testen implementieren. Je mehr Automatisierung, desto besser: Der „State of Software Security (SoSS) Report“ hat herausgefunden, dass Unternehmen, die dynamische Analyse (DAST) mit statischer Analyse (SAST) kombinieren, die Hälfte ihrer Sicherheitslücken deutlich schneller beheben – im Schnitt um 24,5 Tage schneller.

Eine weitere Möglichkeit, neue Schwachstellen schneller zu finden und zu beheben, besteht darin, häufiger zu scannen. Zudem kann eine gleichmäßige Scan-Kadenz dem Team helfen, sinnvolle Veränderungen im Anteil der Fehlertypen zu sehen und die Sicherheitsschulden im Laufe der Zeit zu reduzieren.

2. Gängige Code-Sicherheitslücken verstehen

Dieselben vier Schwachstellen tauchen Jahr für Jahr in den Top 10 des Sicherheitsberichts auf, was auf eine Lücke im Bewusstsein und in der Ausbildung der Entwickler hinweist. In der Tat ist das Sicherheitstraining für Entwickler möglicherweise die größte Herausforderung von allen. Nicht nur, dass sicheres Coding nicht regelmäßig an der Universität gelehrt wird, auch Training on the job ist schwer zu bekommen, da der Großteil der Anwendungssicherheit beim Sicherheitsteam liegt. Um Entwickler in die Lage zu versetzen, Schwachstellen im Code zu verhindern, zu finden und zu beheben, müssen Unternehmen umsetzbare, praxisnahe Schulungen anbieten, die Entwickler sofort anwenden können, um das Gelernte zu festigen und es zu einem Teil ihrer täglichen Routine zu machen.

3. Abhängigkeit von Open-Source-Bibliotheken

Open-SourceCode ist fast überall im Einsatz. Und wenn man bedenkt, dass viele Open-Source-Bibliotheken nicht direkt von den Entwicklern ausgewählt werden – 46,6 Prozent der unsicheren Open-Source-Bibliotheken in Anwendungen werden von einer anderen verwendeten Bibliothek in die Anwendung eingebracht – ist es leicht zu verstehen, wie Open-Source-Code die Angriffsfläche innerhalb von Anwendungen vergrößert. Die Integration eines Scan-Tools wie Software Composition Analysis (SCA) kann helfen, Open-Source-Schwachstellen mit größerer Genauigkeit zu erkennen. Und da 74 Prozent der Open-Source-Schwachstellen mit einem Patch, einer Revision oder einem Major/Minor-Versions-Update behoben werden können, ermöglicht dieser Prozess eine effiziente Schadensbegrenzung.

4. Fehler mit hohem und sehr hohem Schweregrad

Unabhängig davon, welche Sprache Sie bevorzugen, hilft Ihnen das Verständnis der Fehler, die sie am meisten betreffen. Untersuchungen haben gezeigt, dass

  • Fast 60 Prozent der C++-Anwendungen Fehler mit hohem und sehr hohem Schweregrad aufweisen; zu den häufigsten Fehlern gehören Fehler bei der Fehlerbehandlung, Fehler bei der Pufferverwaltung, numerische Fehler und Fehler bei der Umgehung von Verzeichnissen.
  • 52,6 Prozent der PHP-Anwendungen weisen Fehler mit hohem und sehr hohem Schweregrad auf; zu den am häufigsten gefundenen Fehlern gehören Cross-Site-Scripting (XSS), kryptografische Probleme, Fehler beim Directory Traversal und Schwachstellen durch Informationsabfluss.
  • Java leidet unter CRLF-Injection-Fehlern, Code-Qualitätsproblemen, Informationslecks und kryptografischen Problemen. Java-Anwendungen bestehen zu 97 Prozent aus Drittanbieter-Code und bergen ein größeres, nicht sichtbares Risiko.

Durch die Untersuchung der Fehlerhäufigkeitstrends in verschiedenen gängigen Sprachen haben Entwickler ein besseres Verständnis für die alltäglichen Risiken, denen sie beim Programmieren ausgesetzt sind, und können dieses Wissen nutzen, um diesen Fehlern zuvorzukommen, bevor sie zu einem Problem werden. Die Implementierung von sicheren Kodierungspraktiken und die Nutzung von praktischen Schulungen zur Erweiterung des Know-hows tragen dazu bei, dass die Sicherheit von Anwendungen mit den modernen Entwicklungsanforderungen Schritt halten kann. Wenn Entwickler in die Lage versetzt werden, Fehler in ihrem Code nicht nur zu finden, sondern auch zu beheben, sind sie auf dem besten Weg, sicherheitsbewusste Entwickler zu werden.

Den kompletten englischsprachigen Artikel zum Thema finden Sie hier.

*Bernhard Lauer ist unter anderem freier Redakteur der dotnetpro und betreut hier beispielsweise die Rubrik Basic Instinct. Mit Visual Basic programmiert er privat seit der Version 1.0.


Mehr Artikel

Gregor Schmid, Projektcenterleiter bei Kumavision, über die Digitalisierung im Mittelstand und die Chancen durch Künstliche Intelligenz. (c) timeline/Rudi Handl
Interview

„Die Zukunft ist modular, flexibel und KI-gestützt“

Im Gespräch mit der ITWELT.at verdeutlicht Gregor Schmid, Projektcenterleiter bei Kumavision, wie sehr sich die Anforderungen an ERP-Systeme und die digitale Transformation in den letzten Jahren verändert haben und verweist dabei auf den Trend zu modularen Lösungen, die Bedeutung der Cloud und die Rolle von Künstlicher Intelligenz (KI) in der Unternehmenspraxis. […]

News

Richtlinien für sichere KI-Entwicklung

Die „Guidelines for Secure Development and Deployment of AI Systems“ von Kaspersky behandeln zentrale Aspekte der Entwicklung, Bereitstellung und des Betriebs von KI-Systemen, einschließlich Design, bewährter Sicherheitspraktiken und Integration, ohne sich auf die Entwicklung grundlegender Modelle zu fokussieren. […]

News

Datensilos blockieren Abwehrkräfte von generativer KI

Damit KI eine Rolle in der Cyberabwehr spielen kann, ist sie auf leicht zugängliche Echtzeitdaten angewiesen. Das heißt, die zunehmende Leistungsfähigkeit von GenAI kann nur dann wirksam werden, wenn die KI Zugriff auf einwandfreie, validierte, standardisierte und vor allem hochverfügbare Daten in allen Anwendungen und Systemen sowie für alle Nutzer hat. Dies setzt allerdings voraus, dass Unternehmen in der Lage sind, ihre Datensilos aufzulösen. […]

Be the first to comment

Leave a Reply

Your email address will not be published.


*