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

News

Bad Bots werden immer menschenähnlicher

Bei Bad Bots handelt es sich um automatisierte Softwareprogramme, die für die Durchführung von Online-Aktivitäten im großen Maßstab entwickelt werden. Bad Bots sind für entsprechend schädliche Online-Aktivitäten konzipiert und können gegen viele verschiedene Ziele eingesetzt werden, darunter Websites, Server, APIs und andere Endpunkte. […]

Frauen berichten vielfach, dass ihre Schmerzen manchmal jahrelang nicht ernst genommen oder belächelt wurden. Künftig sollen Schmerzen gendersensibel in 3D visualisiert werden (c) mit KI generiert/DALL-E
News

Schmerzforschung und Gendermedizin

Im Projekt „Embodied Perceptions“ unter Leitung des AIT Center for Technology Experience wird das Thema Schmerzen ganzheitlich und gendersensibel betrachtet: Das Projektteam forscht zu Möglichkeiten, subjektives Schmerzempfinden über 3D-Avatare zu visualisieren. […]

Be the first to comment

Leave a Reply

Your email address will not be published.


*