Warum SQL-Injections die Kakerlaken der AppSec-Welt sind (und wie CISOs sie ein für alle Mal ausrotten können)
Es gibt eine bekannte Theorie, dass Kakerlaken im Grunde alles überleben können - sogar eine Atomexplosion. Obwohl diese Theorie nur bis zu einem gewissen Punkt wahr ist, macht ihr einfacher Körperaufbau sie für ihre Größe extrem widerstandsfähig und unter den meisten Bedingungen schwer auszurotten.
Ich habe nachgedacht... wenn Kakerlaken ein Äquivalent in der digitalen Welt hätten, dann müssten es SQL-Injection (SQLi)-Schwachstellen im Code sein. Diese Schwachstelle ist seit mehr als zwanzig Jahren bekannt, dennoch werden Unternehmen immer wieder Opfer davon. Der weit verbreitete, kostspielige Angriff auf Target war das Ergebnis von SQL-Injection, ebenso wie ein Fall von Wahl-Hacking in Illinois, bei dem 200.000 Wählerdaten offengelegt wurden, was das FBI dazu veranlasste, allen IT-Administratoren zu empfehlen, ihre Sicherheitspraktiken schnell zu verbessern.
Der Hacker Intelligence Initiative Report von Imperva zeigte, dass zwischen 2005 und 2011 SQLi-Angriffe bei 83 % aller gemeldeten Datenverletzungen verwendet wurden. Heute sind Injektionsschwachstellen nach wie vor die Bedrohung Nummer eins in der OWASP Top 10. Sie sind relativ einfach, aber sie wollen einfach nicht verschwinden.
Es erscheint lächerlich, dass dieselbe Schwachstelle immer noch in einer beträchtlichen Anzahl von Anwendungssicherheitsscans auftaucht. Wir wissen, wie sie funktioniert, und wir wissen, wie man sie stoppen kann. Wie ist das möglich? Die Wahrheit ist, dass unsere Softwaresicherheit noch sehr viel Raum für Verbesserungen hat.
Der State of Software Security Report von Veracode - basierend auf 400.000 Anwendungsscans im Jahr 2017 " enthüllte eine alarmierende Statistik: Nur 30 % der Anwendungen bestanden die OWASP Top 10-Richtlinie. Dies war in den letzten fünf Jahren ein durchgängiges Thema, wobei SQL-Injections in fast 1 von 3 neu gescannten Anwendungen auftraten. Dies ist ein Beweis für ein endemisches Problem; wir lernen nicht aus unseren Fehlern, und CISOs scheinen einen schweren Stand zu haben, wenn es darum geht, genügend Sicherheitstalente zu beschaffen. Typischerweise ist das Verhältnis von AppSec-Spezialisten zu Entwicklern ein unzureichendes 1:100.
Warum ist die Software-Sicherheit auf Lebenserhaltung?
Es ist kein Geheimnis, dass spezialisierte Sicherheitstalente knapp sind, aber wir müssen auch die Tatsache berücksichtigen, dass Entwickler Probleme nicht beheben, wenn sie entstehen, und ganz offensichtlich schlecht ausgerüstet sind, um Schwachstellen gar nicht erst einzuführen. In demselben Veracode-Bericht wurde enthüllt, dass es für nur 14,4 % aller Entwicklungsschwachstellen dokumentierte Abhilfemaßnahmen gab. Mit anderen Worten: Die meisten Schwachstellen wurden ohne Entwicklungsabschwächung eingereicht. Weniger als ein Drittel der Schwachstellen wurden in den ersten 90 Tagen geschlossen, und 42 % der Schwachstellen wurden nie innerhalb der Entwicklungszeit geschlossen.
Ich spreche ständig mit Sicherheitsexperten, CISOs und CEOs, und anekdotisch habe ich festgestellt, dass viele Unternehmen von der Anzahl der gefundenen Schwachstellen, die nicht entschärft werden können, so frustriert sind (zusätzlich zu der Geißel, die als False Positives bekannt ist), dass sie das Scannen nach diesen Schwachstellen ganz einstellen, die Finger kreuzen und auf das Beste hoffen.
Warum lassen AppSec-Profis dies geschehen?
Machen Sie keinen Fehler: AppSec-Mitarbeiter sind sich der Probleme im Code schmerzlich bewusst. Schließlich ist das eine ihrer Kernkompetenzen, die sie zu einer so wertvollen Teamressource macht. Allerdings werden sie oft durch mehrere Faktoren behindert.
Zum Beispiel wird ein AppSec-Manager ein Problem finden und den Entwickler fragen: "Können Sie den Code reparieren?". Die Antwort auf diese wichtige Frage ist von Unternehmen zu Unternehmen unterschiedlich, aber in der Regel sind die Entwickler so sehr damit beschäftigt, strenge Feature-Delivery-Sprints einzuhalten, dass sie einfach nicht die Zeit haben, diese Probleme zu beheben, und auch keine anständigen Tools, die ihnen dabei helfen. AppSec-Profis selbst können zwar Schwachstellen identifizieren, haben aber oft nicht die Fähigkeiten und/oder den Zugang, um sie an Ort und Stelle zu beheben.
Wir müssen auch erkennen, dass es für jedes Problem einen Prozess gibt, in dem eine Lösung gefunden, implementiert und dann getestet werden muss. Selbst für das kleinste Problem, das im Code gefunden wird, ist der Zeitaufwand zur Behebung immens, ganz zu schweigen von den benötigten Ressourcen. Es gibt über 700 Schwachstellen, die in Software eingeschleust werden können, und es ist für eine einzelne Person schlicht unmöglich, sich gegen alle zu verteidigen. Aus diesem Grund halten sich die meisten Unternehmen nur an die OWASP Top 10. Die ganze Zeit über entwickeln die Entwickler neue Funktionen, und im Gegenzug führen sie immer wieder Schwachstellen in den Code ein, den sie schreiben.
Was ist die Lösung?
Die einfache Tatsache ist, dass wir unseren Entwicklern nicht die Werkzeuge und das Training geben, um einen sicheren Kodierungserfolg zu fördern. Es gibt keine Vorschriften, die Unternehmen dazu zwingen, dafür zu sorgen, dass Entwickler über angemessene Sicherheitskenntnisse verfügen, und es ist eine traurige Realität, dass die meisten Universitäten und Praktika junge Entwickler auch nicht darauf vorbereiten, sicher zu programmieren.
Wenn jemand ein Flugzeug fliegen möchte, gibt es einen sehr strengen Prozess, der Ausbildung, praktische Erfahrung, medizinische Checks, Sicherheitswissen und Prüfungen sicherstellt, bevor er fliegen kann. Niemand würde es wagen, sich vorzustellen, dass er ohne diese umfangreiche Vorbereitung und Validierung der Fähigkeiten in den Himmel losgelassen wird, doch genau das passiert tagtäglich beim Schreiben von Code.
Wir müssen die Zeit aufwenden, um Entwickler im Schreiben von sicherem Code zu schulen. In der heutigen Welt, in der die Softwareentwicklung schnelllebig ist und gute Entwickler und Sicherheitsexperten Mangelware sind, scheint dies jedoch nie eine Priorität zu sein. Es ist an der Zeit, dass wir die Konversation ändern.
Eine kürzliche Schlagzeile des Weltwirtschaftsforums schrie: "Es gibt keine digitale Wirtschaft ohne Sicherheit", und der begleitende Inhalt argumentiert, dass Sicherheit ein zentraler Bestandteil jeder Strategie zur digitalen Transformation sein muss. "Sicherheit ist das, was Unternehmen schützt und es ihnen ermöglicht, innovativ zu sein und neue Produkte und Dienstleistungen zu entwickeln. Über eine defensive Rolle hinaus bietet Sicherheit den Unternehmen einen strategischen Wachstumsvorteil."
Die Verbesserung von Fähigkeiten und Ergebnissen im Bereich der sicheren Codierung wird Unternehmen eine zusätzliche Ebene des Cyber-Schutzes bieten und sie dabei unterstützen, besseren und schnelleren Code zu erstellen. Entwickler müssen keine Sicherheitsexperten werden, aber sie müssen positiv und praktisch dazu befähigt werden, die erste Verteidigungslinie gegen Cyberangriffe zu sein. Entwickler können die nächsten Sicherheits- und Innovationshelden sein. Sie sind sehr kluge Menschen, sie sind kreative Problemlöser und im Allgemeinen sehr daran interessiert, ihre Fähigkeiten auszubauen. Nutzen Sie ihre Stärken mit der spezialisierten Ausbildung, die sie verdienen, und verpflichten Sie sich zu einem höheren Software-Sicherheitsstandard. Lesen Sie unser Whitepaper, um mehr darüber zu erfahren.
Wenn jemand ein Flugzeug fliegen möchte, gibt es einen sehr strengen Prozess, der Ausbildung, praktische Erfahrung, medizinische Checks, Sicherheitswissen und Prüfungen sicherstellt, bevor er fliegen kann. Niemand würde es wagen, sich vorzustellen, dass er ohne diese umfangreiche Vorbereitung und Validierung der Fähigkeiten in den Himmel losgelassen wird, doch genau das passiert tagtäglich beim Schreiben von Code.
Es gibt eine bekannte Theorie, dass Kakerlaken im Grunde alles überleben können - sogar eine Atomexplosion.
Matias Madou, Ph.D., ist Sicherheitsexperte, Forscher, CTO und Mitbegründer von Secure Code Warrior. Matias promovierte an der Universität Gent im Bereich Anwendungssicherheit und konzentrierte sich dabei auf statische Analyselösungen. Später wechselte er zu Fortify in den USA, wo er erkannte, dass es nicht ausreicht, nur Codeprobleme zu erkennen, ohne den Entwicklern beim Schreiben von sicherem Code zu helfen. Dies inspirierte ihn dazu, Produkte zu entwickeln, die Entwickler unterstützen, den Aufwand für die Sicherheit verringern und die Erwartungen der Kunden übertreffen. Wenn er nicht an seinem Schreibtisch im Team Awesome sitzt, steht er gerne auf der Bühne und hält Vorträge auf Konferenzen wie der RSA Conference, BlackHat und DefCon.
Secure Code Warrior ist für Ihr Unternehmen da, um Sie dabei zu unterstützen, Ihren Code über den gesamten Lebenszyklus der Softwareentwicklung hinweg zu sichern und eine Kultur zu schaffen, in der Cybersicherheit an erster Stelle steht. Ganz gleich, ob Sie AppSec-Manager, Entwickler, CISO oder ein anderer Sicherheitsverantwortlicher sind, wir können Ihrem Unternehmen helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Demo buchenMatias Madou, Ph.D., ist Sicherheitsexperte, Forscher, CTO und Mitbegründer von Secure Code Warrior. Matias promovierte an der Universität Gent im Bereich Anwendungssicherheit und konzentrierte sich dabei auf statische Analyselösungen. Später wechselte er zu Fortify in den USA, wo er erkannte, dass es nicht ausreicht, nur Codeprobleme zu erkennen, ohne den Entwicklern beim Schreiben von sicherem Code zu helfen. Dies inspirierte ihn dazu, Produkte zu entwickeln, die Entwickler unterstützen, den Aufwand für die Sicherheit verringern und die Erwartungen der Kunden übertreffen. Wenn er nicht an seinem Schreibtisch im Team Awesome sitzt, steht er gerne auf der Bühne und hält Vorträge auf Konferenzen wie der RSA Conference, BlackHat und DefCon.
Matias ist ein Forscher und Entwickler mit mehr als 15 Jahren praktischer Erfahrung im Bereich der Softwaresicherheit. Er hat Lösungen für Unternehmen wie Fortify Software und sein eigenes Unternehmen Sensei Security entwickelt. Im Laufe seiner Karriere hat Matias mehrere Forschungsprojekte zur Anwendungssicherheit geleitet, die zu kommerziellen Produkten geführt haben, und kann auf über 10 Patente verweisen. Wenn er nicht am Schreibtisch sitzt, ist Matias als Ausbilder für fortgeschrittene Anwendungssicherheitstrainings courses tätig und hält regelmäßig Vorträge auf globalen Konferenzen wie RSA Conference, Black Hat, DefCon, BSIMM, OWASP AppSec und BruCon.
Matias hat einen Doktortitel in Computertechnik von der Universität Gent, wo er die Sicherheit von Anwendungen durch Programmverschleierung untersuchte, um die innere Funktionsweise einer Anwendung zu verbergen.
Es gibt eine bekannte Theorie, dass Kakerlaken im Grunde alles überleben können - sogar eine Atomexplosion. Obwohl diese Theorie nur bis zu einem gewissen Punkt wahr ist, macht ihr einfacher Körperaufbau sie für ihre Größe extrem widerstandsfähig und unter den meisten Bedingungen schwer auszurotten.
Ich habe nachgedacht... wenn Kakerlaken ein Äquivalent in der digitalen Welt hätten, dann müssten es SQL-Injection (SQLi)-Schwachstellen im Code sein. Diese Schwachstelle ist seit mehr als zwanzig Jahren bekannt, dennoch werden Unternehmen immer wieder Opfer davon. Der weit verbreitete, kostspielige Angriff auf Target war das Ergebnis von SQL-Injection, ebenso wie ein Fall von Wahl-Hacking in Illinois, bei dem 200.000 Wählerdaten offengelegt wurden, was das FBI dazu veranlasste, allen IT-Administratoren zu empfehlen, ihre Sicherheitspraktiken schnell zu verbessern.
Der Hacker Intelligence Initiative Report von Imperva zeigte, dass zwischen 2005 und 2011 SQLi-Angriffe bei 83 % aller gemeldeten Datenverletzungen verwendet wurden. Heute sind Injektionsschwachstellen nach wie vor die Bedrohung Nummer eins in der OWASP Top 10. Sie sind relativ einfach, aber sie wollen einfach nicht verschwinden.
Es erscheint lächerlich, dass dieselbe Schwachstelle immer noch in einer beträchtlichen Anzahl von Anwendungssicherheitsscans auftaucht. Wir wissen, wie sie funktioniert, und wir wissen, wie man sie stoppen kann. Wie ist das möglich? Die Wahrheit ist, dass unsere Softwaresicherheit noch sehr viel Raum für Verbesserungen hat.
Der State of Software Security Report von Veracode - basierend auf 400.000 Anwendungsscans im Jahr 2017 " enthüllte eine alarmierende Statistik: Nur 30 % der Anwendungen bestanden die OWASP Top 10-Richtlinie. Dies war in den letzten fünf Jahren ein durchgängiges Thema, wobei SQL-Injections in fast 1 von 3 neu gescannten Anwendungen auftraten. Dies ist ein Beweis für ein endemisches Problem; wir lernen nicht aus unseren Fehlern, und CISOs scheinen einen schweren Stand zu haben, wenn es darum geht, genügend Sicherheitstalente zu beschaffen. Typischerweise ist das Verhältnis von AppSec-Spezialisten zu Entwicklern ein unzureichendes 1:100.
Warum ist die Software-Sicherheit auf Lebenserhaltung?
Es ist kein Geheimnis, dass spezialisierte Sicherheitstalente knapp sind, aber wir müssen auch die Tatsache berücksichtigen, dass Entwickler Probleme nicht beheben, wenn sie entstehen, und ganz offensichtlich schlecht ausgerüstet sind, um Schwachstellen gar nicht erst einzuführen. In demselben Veracode-Bericht wurde enthüllt, dass es für nur 14,4 % aller Entwicklungsschwachstellen dokumentierte Abhilfemaßnahmen gab. Mit anderen Worten: Die meisten Schwachstellen wurden ohne Entwicklungsabschwächung eingereicht. Weniger als ein Drittel der Schwachstellen wurden in den ersten 90 Tagen geschlossen, und 42 % der Schwachstellen wurden nie innerhalb der Entwicklungszeit geschlossen.
Ich spreche ständig mit Sicherheitsexperten, CISOs und CEOs, und anekdotisch habe ich festgestellt, dass viele Unternehmen von der Anzahl der gefundenen Schwachstellen, die nicht entschärft werden können, so frustriert sind (zusätzlich zu der Geißel, die als False Positives bekannt ist), dass sie das Scannen nach diesen Schwachstellen ganz einstellen, die Finger kreuzen und auf das Beste hoffen.
Warum lassen AppSec-Profis dies geschehen?
Machen Sie keinen Fehler: AppSec-Mitarbeiter sind sich der Probleme im Code schmerzlich bewusst. Schließlich ist das eine ihrer Kernkompetenzen, die sie zu einer so wertvollen Teamressource macht. Allerdings werden sie oft durch mehrere Faktoren behindert.
Zum Beispiel wird ein AppSec-Manager ein Problem finden und den Entwickler fragen: "Können Sie den Code reparieren?". Die Antwort auf diese wichtige Frage ist von Unternehmen zu Unternehmen unterschiedlich, aber in der Regel sind die Entwickler so sehr damit beschäftigt, strenge Feature-Delivery-Sprints einzuhalten, dass sie einfach nicht die Zeit haben, diese Probleme zu beheben, und auch keine anständigen Tools, die ihnen dabei helfen. AppSec-Profis selbst können zwar Schwachstellen identifizieren, haben aber oft nicht die Fähigkeiten und/oder den Zugang, um sie an Ort und Stelle zu beheben.
Wir müssen auch erkennen, dass es für jedes Problem einen Prozess gibt, in dem eine Lösung gefunden, implementiert und dann getestet werden muss. Selbst für das kleinste Problem, das im Code gefunden wird, ist der Zeitaufwand zur Behebung immens, ganz zu schweigen von den benötigten Ressourcen. Es gibt über 700 Schwachstellen, die in Software eingeschleust werden können, und es ist für eine einzelne Person schlicht unmöglich, sich gegen alle zu verteidigen. Aus diesem Grund halten sich die meisten Unternehmen nur an die OWASP Top 10. Die ganze Zeit über entwickeln die Entwickler neue Funktionen, und im Gegenzug führen sie immer wieder Schwachstellen in den Code ein, den sie schreiben.
Was ist die Lösung?
Die einfache Tatsache ist, dass wir unseren Entwicklern nicht die Werkzeuge und das Training geben, um einen sicheren Kodierungserfolg zu fördern. Es gibt keine Vorschriften, die Unternehmen dazu zwingen, dafür zu sorgen, dass Entwickler über angemessene Sicherheitskenntnisse verfügen, und es ist eine traurige Realität, dass die meisten Universitäten und Praktika junge Entwickler auch nicht darauf vorbereiten, sicher zu programmieren.
Wenn jemand ein Flugzeug fliegen möchte, gibt es einen sehr strengen Prozess, der Ausbildung, praktische Erfahrung, medizinische Checks, Sicherheitswissen und Prüfungen sicherstellt, bevor er fliegen kann. Niemand würde es wagen, sich vorzustellen, dass er ohne diese umfangreiche Vorbereitung und Validierung der Fähigkeiten in den Himmel losgelassen wird, doch genau das passiert tagtäglich beim Schreiben von Code.
Wir müssen die Zeit aufwenden, um Entwickler im Schreiben von sicherem Code zu schulen. In der heutigen Welt, in der die Softwareentwicklung schnelllebig ist und gute Entwickler und Sicherheitsexperten Mangelware sind, scheint dies jedoch nie eine Priorität zu sein. Es ist an der Zeit, dass wir die Konversation ändern.
Eine kürzliche Schlagzeile des Weltwirtschaftsforums schrie: "Es gibt keine digitale Wirtschaft ohne Sicherheit", und der begleitende Inhalt argumentiert, dass Sicherheit ein zentraler Bestandteil jeder Strategie zur digitalen Transformation sein muss. "Sicherheit ist das, was Unternehmen schützt und es ihnen ermöglicht, innovativ zu sein und neue Produkte und Dienstleistungen zu entwickeln. Über eine defensive Rolle hinaus bietet Sicherheit den Unternehmen einen strategischen Wachstumsvorteil."
Die Verbesserung von Fähigkeiten und Ergebnissen im Bereich der sicheren Codierung wird Unternehmen eine zusätzliche Ebene des Cyber-Schutzes bieten und sie dabei unterstützen, besseren und schnelleren Code zu erstellen. Entwickler müssen keine Sicherheitsexperten werden, aber sie müssen positiv und praktisch dazu befähigt werden, die erste Verteidigungslinie gegen Cyberangriffe zu sein. Entwickler können die nächsten Sicherheits- und Innovationshelden sein. Sie sind sehr kluge Menschen, sie sind kreative Problemlöser und im Allgemeinen sehr daran interessiert, ihre Fähigkeiten auszubauen. Nutzen Sie ihre Stärken mit der spezialisierten Ausbildung, die sie verdienen, und verpflichten Sie sich zu einem höheren Software-Sicherheitsstandard. Lesen Sie unser Whitepaper, um mehr darüber zu erfahren.
Wenn jemand ein Flugzeug fliegen möchte, gibt es einen sehr strengen Prozess, der Ausbildung, praktische Erfahrung, medizinische Checks, Sicherheitswissen und Prüfungen sicherstellt, bevor er fliegen kann. Niemand würde es wagen, sich vorzustellen, dass er ohne diese umfangreiche Vorbereitung und Validierung der Fähigkeiten in den Himmel losgelassen wird, doch genau das passiert tagtäglich beim Schreiben von Code.
Es gibt eine bekannte Theorie, dass Kakerlaken im Grunde alles überleben können - sogar eine Atomexplosion. Obwohl diese Theorie nur bis zu einem gewissen Punkt wahr ist, macht ihr einfacher Körperaufbau sie für ihre Größe extrem widerstandsfähig und unter den meisten Bedingungen schwer auszurotten.
Ich habe nachgedacht... wenn Kakerlaken ein Äquivalent in der digitalen Welt hätten, dann müssten es SQL-Injection (SQLi)-Schwachstellen im Code sein. Diese Schwachstelle ist seit mehr als zwanzig Jahren bekannt, dennoch werden Unternehmen immer wieder Opfer davon. Der weit verbreitete, kostspielige Angriff auf Target war das Ergebnis von SQL-Injection, ebenso wie ein Fall von Wahl-Hacking in Illinois, bei dem 200.000 Wählerdaten offengelegt wurden, was das FBI dazu veranlasste, allen IT-Administratoren zu empfehlen, ihre Sicherheitspraktiken schnell zu verbessern.
Der Hacker Intelligence Initiative Report von Imperva zeigte, dass zwischen 2005 und 2011 SQLi-Angriffe bei 83 % aller gemeldeten Datenverletzungen verwendet wurden. Heute sind Injektionsschwachstellen nach wie vor die Bedrohung Nummer eins in der OWASP Top 10. Sie sind relativ einfach, aber sie wollen einfach nicht verschwinden.
Es erscheint lächerlich, dass dieselbe Schwachstelle immer noch in einer beträchtlichen Anzahl von Anwendungssicherheitsscans auftaucht. Wir wissen, wie sie funktioniert, und wir wissen, wie man sie stoppen kann. Wie ist das möglich? Die Wahrheit ist, dass unsere Softwaresicherheit noch sehr viel Raum für Verbesserungen hat.
Der State of Software Security Report von Veracode - basierend auf 400.000 Anwendungsscans im Jahr 2017 " enthüllte eine alarmierende Statistik: Nur 30 % der Anwendungen bestanden die OWASP Top 10-Richtlinie. Dies war in den letzten fünf Jahren ein durchgängiges Thema, wobei SQL-Injections in fast 1 von 3 neu gescannten Anwendungen auftraten. Dies ist ein Beweis für ein endemisches Problem; wir lernen nicht aus unseren Fehlern, und CISOs scheinen einen schweren Stand zu haben, wenn es darum geht, genügend Sicherheitstalente zu beschaffen. Typischerweise ist das Verhältnis von AppSec-Spezialisten zu Entwicklern ein unzureichendes 1:100.
Warum ist die Software-Sicherheit auf Lebenserhaltung?
Es ist kein Geheimnis, dass spezialisierte Sicherheitstalente knapp sind, aber wir müssen auch die Tatsache berücksichtigen, dass Entwickler Probleme nicht beheben, wenn sie entstehen, und ganz offensichtlich schlecht ausgerüstet sind, um Schwachstellen gar nicht erst einzuführen. In demselben Veracode-Bericht wurde enthüllt, dass es für nur 14,4 % aller Entwicklungsschwachstellen dokumentierte Abhilfemaßnahmen gab. Mit anderen Worten: Die meisten Schwachstellen wurden ohne Entwicklungsabschwächung eingereicht. Weniger als ein Drittel der Schwachstellen wurden in den ersten 90 Tagen geschlossen, und 42 % der Schwachstellen wurden nie innerhalb der Entwicklungszeit geschlossen.
Ich spreche ständig mit Sicherheitsexperten, CISOs und CEOs, und anekdotisch habe ich festgestellt, dass viele Unternehmen von der Anzahl der gefundenen Schwachstellen, die nicht entschärft werden können, so frustriert sind (zusätzlich zu der Geißel, die als False Positives bekannt ist), dass sie das Scannen nach diesen Schwachstellen ganz einstellen, die Finger kreuzen und auf das Beste hoffen.
Warum lassen AppSec-Profis dies geschehen?
Machen Sie keinen Fehler: AppSec-Mitarbeiter sind sich der Probleme im Code schmerzlich bewusst. Schließlich ist das eine ihrer Kernkompetenzen, die sie zu einer so wertvollen Teamressource macht. Allerdings werden sie oft durch mehrere Faktoren behindert.
Zum Beispiel wird ein AppSec-Manager ein Problem finden und den Entwickler fragen: "Können Sie den Code reparieren?". Die Antwort auf diese wichtige Frage ist von Unternehmen zu Unternehmen unterschiedlich, aber in der Regel sind die Entwickler so sehr damit beschäftigt, strenge Feature-Delivery-Sprints einzuhalten, dass sie einfach nicht die Zeit haben, diese Probleme zu beheben, und auch keine anständigen Tools, die ihnen dabei helfen. AppSec-Profis selbst können zwar Schwachstellen identifizieren, haben aber oft nicht die Fähigkeiten und/oder den Zugang, um sie an Ort und Stelle zu beheben.
Wir müssen auch erkennen, dass es für jedes Problem einen Prozess gibt, in dem eine Lösung gefunden, implementiert und dann getestet werden muss. Selbst für das kleinste Problem, das im Code gefunden wird, ist der Zeitaufwand zur Behebung immens, ganz zu schweigen von den benötigten Ressourcen. Es gibt über 700 Schwachstellen, die in Software eingeschleust werden können, und es ist für eine einzelne Person schlicht unmöglich, sich gegen alle zu verteidigen. Aus diesem Grund halten sich die meisten Unternehmen nur an die OWASP Top 10. Die ganze Zeit über entwickeln die Entwickler neue Funktionen, und im Gegenzug führen sie immer wieder Schwachstellen in den Code ein, den sie schreiben.
Was ist die Lösung?
Die einfache Tatsache ist, dass wir unseren Entwicklern nicht die Werkzeuge und das Training geben, um einen sicheren Kodierungserfolg zu fördern. Es gibt keine Vorschriften, die Unternehmen dazu zwingen, dafür zu sorgen, dass Entwickler über angemessene Sicherheitskenntnisse verfügen, und es ist eine traurige Realität, dass die meisten Universitäten und Praktika junge Entwickler auch nicht darauf vorbereiten, sicher zu programmieren.
Wenn jemand ein Flugzeug fliegen möchte, gibt es einen sehr strengen Prozess, der Ausbildung, praktische Erfahrung, medizinische Checks, Sicherheitswissen und Prüfungen sicherstellt, bevor er fliegen kann. Niemand würde es wagen, sich vorzustellen, dass er ohne diese umfangreiche Vorbereitung und Validierung der Fähigkeiten in den Himmel losgelassen wird, doch genau das passiert tagtäglich beim Schreiben von Code.
Wir müssen die Zeit aufwenden, um Entwickler im Schreiben von sicherem Code zu schulen. In der heutigen Welt, in der die Softwareentwicklung schnelllebig ist und gute Entwickler und Sicherheitsexperten Mangelware sind, scheint dies jedoch nie eine Priorität zu sein. Es ist an der Zeit, dass wir die Konversation ändern.
Eine kürzliche Schlagzeile des Weltwirtschaftsforums schrie: "Es gibt keine digitale Wirtschaft ohne Sicherheit", und der begleitende Inhalt argumentiert, dass Sicherheit ein zentraler Bestandteil jeder Strategie zur digitalen Transformation sein muss. "Sicherheit ist das, was Unternehmen schützt und es ihnen ermöglicht, innovativ zu sein und neue Produkte und Dienstleistungen zu entwickeln. Über eine defensive Rolle hinaus bietet Sicherheit den Unternehmen einen strategischen Wachstumsvorteil."
Die Verbesserung von Fähigkeiten und Ergebnissen im Bereich der sicheren Codierung wird Unternehmen eine zusätzliche Ebene des Cyber-Schutzes bieten und sie dabei unterstützen, besseren und schnelleren Code zu erstellen. Entwickler müssen keine Sicherheitsexperten werden, aber sie müssen positiv und praktisch dazu befähigt werden, die erste Verteidigungslinie gegen Cyberangriffe zu sein. Entwickler können die nächsten Sicherheits- und Innovationshelden sein. Sie sind sehr kluge Menschen, sie sind kreative Problemlöser und im Allgemeinen sehr daran interessiert, ihre Fähigkeiten auszubauen. Nutzen Sie ihre Stärken mit der spezialisierten Ausbildung, die sie verdienen, und verpflichten Sie sich zu einem höheren Software-Sicherheitsstandard. Lesen Sie unser Whitepaper, um mehr darüber zu erfahren.
Wenn jemand ein Flugzeug fliegen möchte, gibt es einen sehr strengen Prozess, der Ausbildung, praktische Erfahrung, medizinische Checks, Sicherheitswissen und Prüfungen sicherstellt, bevor er fliegen kann. Niemand würde es wagen, sich vorzustellen, dass er ohne diese umfangreiche Vorbereitung und Validierung der Fähigkeiten in den Himmel losgelassen wird, doch genau das passiert tagtäglich beim Schreiben von Code.
Klicken Sie auf den unten stehenden Link und laden Sie die PDF-Datei dieser Ressource herunter.
Secure Code Warrior ist für Ihr Unternehmen da, um Sie dabei zu unterstützen, Ihren Code über den gesamten Lebenszyklus der Softwareentwicklung hinweg zu sichern und eine Kultur zu schaffen, in der Cybersicherheit an erster Stelle steht. Ganz gleich, ob Sie AppSec-Manager, Entwickler, CISO oder ein anderer Sicherheitsverantwortlicher sind, wir können Ihrem Unternehmen helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Bericht ansehenDemo buchenMatias Madou, Ph.D., ist Sicherheitsexperte, Forscher, CTO und Mitbegründer von Secure Code Warrior. Matias promovierte an der Universität Gent im Bereich Anwendungssicherheit und konzentrierte sich dabei auf statische Analyselösungen. Später wechselte er zu Fortify in den USA, wo er erkannte, dass es nicht ausreicht, nur Codeprobleme zu erkennen, ohne den Entwicklern beim Schreiben von sicherem Code zu helfen. Dies inspirierte ihn dazu, Produkte zu entwickeln, die Entwickler unterstützen, den Aufwand für die Sicherheit verringern und die Erwartungen der Kunden übertreffen. Wenn er nicht an seinem Schreibtisch im Team Awesome sitzt, steht er gerne auf der Bühne und hält Vorträge auf Konferenzen wie der RSA Conference, BlackHat und DefCon.
Matias ist ein Forscher und Entwickler mit mehr als 15 Jahren praktischer Erfahrung im Bereich der Softwaresicherheit. Er hat Lösungen für Unternehmen wie Fortify Software und sein eigenes Unternehmen Sensei Security entwickelt. Im Laufe seiner Karriere hat Matias mehrere Forschungsprojekte zur Anwendungssicherheit geleitet, die zu kommerziellen Produkten geführt haben, und kann auf über 10 Patente verweisen. Wenn er nicht am Schreibtisch sitzt, ist Matias als Ausbilder für fortgeschrittene Anwendungssicherheitstrainings courses tätig und hält regelmäßig Vorträge auf globalen Konferenzen wie RSA Conference, Black Hat, DefCon, BSIMM, OWASP AppSec und BruCon.
Matias hat einen Doktortitel in Computertechnik von der Universität Gent, wo er die Sicherheit von Anwendungen durch Programmverschleierung untersuchte, um die innere Funktionsweise einer Anwendung zu verbergen.
Es gibt eine bekannte Theorie, dass Kakerlaken im Grunde alles überleben können - sogar eine Atomexplosion. Obwohl diese Theorie nur bis zu einem gewissen Punkt wahr ist, macht ihr einfacher Körperaufbau sie für ihre Größe extrem widerstandsfähig und unter den meisten Bedingungen schwer auszurotten.
Ich habe nachgedacht... wenn Kakerlaken ein Äquivalent in der digitalen Welt hätten, dann müssten es SQL-Injection (SQLi)-Schwachstellen im Code sein. Diese Schwachstelle ist seit mehr als zwanzig Jahren bekannt, dennoch werden Unternehmen immer wieder Opfer davon. Der weit verbreitete, kostspielige Angriff auf Target war das Ergebnis von SQL-Injection, ebenso wie ein Fall von Wahl-Hacking in Illinois, bei dem 200.000 Wählerdaten offengelegt wurden, was das FBI dazu veranlasste, allen IT-Administratoren zu empfehlen, ihre Sicherheitspraktiken schnell zu verbessern.
Der Hacker Intelligence Initiative Report von Imperva zeigte, dass zwischen 2005 und 2011 SQLi-Angriffe bei 83 % aller gemeldeten Datenverletzungen verwendet wurden. Heute sind Injektionsschwachstellen nach wie vor die Bedrohung Nummer eins in der OWASP Top 10. Sie sind relativ einfach, aber sie wollen einfach nicht verschwinden.
Es erscheint lächerlich, dass dieselbe Schwachstelle immer noch in einer beträchtlichen Anzahl von Anwendungssicherheitsscans auftaucht. Wir wissen, wie sie funktioniert, und wir wissen, wie man sie stoppen kann. Wie ist das möglich? Die Wahrheit ist, dass unsere Softwaresicherheit noch sehr viel Raum für Verbesserungen hat.
Der State of Software Security Report von Veracode - basierend auf 400.000 Anwendungsscans im Jahr 2017 " enthüllte eine alarmierende Statistik: Nur 30 % der Anwendungen bestanden die OWASP Top 10-Richtlinie. Dies war in den letzten fünf Jahren ein durchgängiges Thema, wobei SQL-Injections in fast 1 von 3 neu gescannten Anwendungen auftraten. Dies ist ein Beweis für ein endemisches Problem; wir lernen nicht aus unseren Fehlern, und CISOs scheinen einen schweren Stand zu haben, wenn es darum geht, genügend Sicherheitstalente zu beschaffen. Typischerweise ist das Verhältnis von AppSec-Spezialisten zu Entwicklern ein unzureichendes 1:100.
Warum ist die Software-Sicherheit auf Lebenserhaltung?
Es ist kein Geheimnis, dass spezialisierte Sicherheitstalente knapp sind, aber wir müssen auch die Tatsache berücksichtigen, dass Entwickler Probleme nicht beheben, wenn sie entstehen, und ganz offensichtlich schlecht ausgerüstet sind, um Schwachstellen gar nicht erst einzuführen. In demselben Veracode-Bericht wurde enthüllt, dass es für nur 14,4 % aller Entwicklungsschwachstellen dokumentierte Abhilfemaßnahmen gab. Mit anderen Worten: Die meisten Schwachstellen wurden ohne Entwicklungsabschwächung eingereicht. Weniger als ein Drittel der Schwachstellen wurden in den ersten 90 Tagen geschlossen, und 42 % der Schwachstellen wurden nie innerhalb der Entwicklungszeit geschlossen.
Ich spreche ständig mit Sicherheitsexperten, CISOs und CEOs, und anekdotisch habe ich festgestellt, dass viele Unternehmen von der Anzahl der gefundenen Schwachstellen, die nicht entschärft werden können, so frustriert sind (zusätzlich zu der Geißel, die als False Positives bekannt ist), dass sie das Scannen nach diesen Schwachstellen ganz einstellen, die Finger kreuzen und auf das Beste hoffen.
Warum lassen AppSec-Profis dies geschehen?
Machen Sie keinen Fehler: AppSec-Mitarbeiter sind sich der Probleme im Code schmerzlich bewusst. Schließlich ist das eine ihrer Kernkompetenzen, die sie zu einer so wertvollen Teamressource macht. Allerdings werden sie oft durch mehrere Faktoren behindert.
Zum Beispiel wird ein AppSec-Manager ein Problem finden und den Entwickler fragen: "Können Sie den Code reparieren?". Die Antwort auf diese wichtige Frage ist von Unternehmen zu Unternehmen unterschiedlich, aber in der Regel sind die Entwickler so sehr damit beschäftigt, strenge Feature-Delivery-Sprints einzuhalten, dass sie einfach nicht die Zeit haben, diese Probleme zu beheben, und auch keine anständigen Tools, die ihnen dabei helfen. AppSec-Profis selbst können zwar Schwachstellen identifizieren, haben aber oft nicht die Fähigkeiten und/oder den Zugang, um sie an Ort und Stelle zu beheben.
Wir müssen auch erkennen, dass es für jedes Problem einen Prozess gibt, in dem eine Lösung gefunden, implementiert und dann getestet werden muss. Selbst für das kleinste Problem, das im Code gefunden wird, ist der Zeitaufwand zur Behebung immens, ganz zu schweigen von den benötigten Ressourcen. Es gibt über 700 Schwachstellen, die in Software eingeschleust werden können, und es ist für eine einzelne Person schlicht unmöglich, sich gegen alle zu verteidigen. Aus diesem Grund halten sich die meisten Unternehmen nur an die OWASP Top 10. Die ganze Zeit über entwickeln die Entwickler neue Funktionen, und im Gegenzug führen sie immer wieder Schwachstellen in den Code ein, den sie schreiben.
Was ist die Lösung?
Die einfache Tatsache ist, dass wir unseren Entwicklern nicht die Werkzeuge und das Training geben, um einen sicheren Kodierungserfolg zu fördern. Es gibt keine Vorschriften, die Unternehmen dazu zwingen, dafür zu sorgen, dass Entwickler über angemessene Sicherheitskenntnisse verfügen, und es ist eine traurige Realität, dass die meisten Universitäten und Praktika junge Entwickler auch nicht darauf vorbereiten, sicher zu programmieren.
Wenn jemand ein Flugzeug fliegen möchte, gibt es einen sehr strengen Prozess, der Ausbildung, praktische Erfahrung, medizinische Checks, Sicherheitswissen und Prüfungen sicherstellt, bevor er fliegen kann. Niemand würde es wagen, sich vorzustellen, dass er ohne diese umfangreiche Vorbereitung und Validierung der Fähigkeiten in den Himmel losgelassen wird, doch genau das passiert tagtäglich beim Schreiben von Code.
Wir müssen die Zeit aufwenden, um Entwickler im Schreiben von sicherem Code zu schulen. In der heutigen Welt, in der die Softwareentwicklung schnelllebig ist und gute Entwickler und Sicherheitsexperten Mangelware sind, scheint dies jedoch nie eine Priorität zu sein. Es ist an der Zeit, dass wir die Konversation ändern.
Eine kürzliche Schlagzeile des Weltwirtschaftsforums schrie: "Es gibt keine digitale Wirtschaft ohne Sicherheit", und der begleitende Inhalt argumentiert, dass Sicherheit ein zentraler Bestandteil jeder Strategie zur digitalen Transformation sein muss. "Sicherheit ist das, was Unternehmen schützt und es ihnen ermöglicht, innovativ zu sein und neue Produkte und Dienstleistungen zu entwickeln. Über eine defensive Rolle hinaus bietet Sicherheit den Unternehmen einen strategischen Wachstumsvorteil."
Die Verbesserung von Fähigkeiten und Ergebnissen im Bereich der sicheren Codierung wird Unternehmen eine zusätzliche Ebene des Cyber-Schutzes bieten und sie dabei unterstützen, besseren und schnelleren Code zu erstellen. Entwickler müssen keine Sicherheitsexperten werden, aber sie müssen positiv und praktisch dazu befähigt werden, die erste Verteidigungslinie gegen Cyberangriffe zu sein. Entwickler können die nächsten Sicherheits- und Innovationshelden sein. Sie sind sehr kluge Menschen, sie sind kreative Problemlöser und im Allgemeinen sehr daran interessiert, ihre Fähigkeiten auszubauen. Nutzen Sie ihre Stärken mit der spezialisierten Ausbildung, die sie verdienen, und verpflichten Sie sich zu einem höheren Software-Sicherheitsstandard. Lesen Sie unser Whitepaper, um mehr darüber zu erfahren.
Wenn jemand ein Flugzeug fliegen möchte, gibt es einen sehr strengen Prozess, der Ausbildung, praktische Erfahrung, medizinische Checks, Sicherheitswissen und Prüfungen sicherstellt, bevor er fliegen kann. Niemand würde es wagen, sich vorzustellen, dass er ohne diese umfangreiche Vorbereitung und Validierung der Fähigkeiten in den Himmel losgelassen wird, doch genau das passiert tagtäglich beim Schreiben von Code.
Inhaltsübersicht
Matias Madou, Ph.D., ist Sicherheitsexperte, Forscher, CTO und Mitbegründer von Secure Code Warrior. Matias promovierte an der Universität Gent im Bereich Anwendungssicherheit und konzentrierte sich dabei auf statische Analyselösungen. Später wechselte er zu Fortify in den USA, wo er erkannte, dass es nicht ausreicht, nur Codeprobleme zu erkennen, ohne den Entwicklern beim Schreiben von sicherem Code zu helfen. Dies inspirierte ihn dazu, Produkte zu entwickeln, die Entwickler unterstützen, den Aufwand für die Sicherheit verringern und die Erwartungen der Kunden übertreffen. Wenn er nicht an seinem Schreibtisch im Team Awesome sitzt, steht er gerne auf der Bühne und hält Vorträge auf Konferenzen wie der RSA Conference, BlackHat und DefCon.
Secure Code Warrior ist für Ihr Unternehmen da, um Sie dabei zu unterstützen, Ihren Code über den gesamten Lebenszyklus der Softwareentwicklung hinweg zu sichern und eine Kultur zu schaffen, in der Cybersicherheit an erster Stelle steht. Ganz gleich, ob Sie AppSec-Manager, Entwickler, CISO oder ein anderer Sicherheitsverantwortlicher sind, wir können Ihrem Unternehmen helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.
Demo buchenHerunterladenRessourcen für den Einstieg
Benchmarking von Sicherheitskompetenzen: Optimierung von Secure-by-Design im Unternehmen
Die Secure-by-Design-Bewegung ist die Zukunft der sicheren Softwareentwicklung. Erfahren Sie mehr über die wichtigsten Elemente, die Unternehmen berücksichtigen müssen, wenn sie über eine Secure-by-Design-Initiative nachdenken.
DigitalOcean verringert Sicherheitsverschuldung mit Secure Code Warrior
DigitalOceans Einsatz von Secure Code Warrior hat die Sicherheitsverschuldung deutlich reduziert, so dass sich die Teams stärker auf Innovation und Produktivität konzentrieren können. Die verbesserte Sicherheit hat die Produktqualität und den Wettbewerbsvorteil des Unternehmens gestärkt. Mit Blick auf die Zukunft wird der SCW Trust Score dem Unternehmen helfen, seine Sicherheitspraktiken weiter zu verbessern und Innovationen voranzutreiben.
Ressourcen für den Einstieg
Trust Score zeigt den Wert von Secure-by-Design-Upskilling-Initiativen
Unsere Forschung hat gezeigt, dass Schulungen für sicheren Code funktionieren. Trust Score verwendet einen Algorithmus, der auf mehr als 20 Millionen Lerndaten aus der Arbeit von mehr als 250.000 Lernenden in über 600 Organisationen basiert, und zeigt, wie effektiv die Initiative ist, um Schwachstellen zu beseitigen und wie man sie noch effektiver gestalten kann.
Reaktive versus präventive Sicherheit: Prävention ist das bessere Heilmittel
Der Gedanke, Legacy-Code und -Systeme zur gleichen Zeit wie neuere Anwendungen mit präventiver Sicherheit auszustatten, kann entmutigend erscheinen, aber ein Secure-by-Design-Ansatz, der durch die Weiterbildung von Entwicklern durchgesetzt wird, kann die besten Sicherheitsverfahren auf diese Systeme anwenden. Dies ist für viele Unternehmen die beste Chance, ihre Sicherheitslage zu verbessern.
Die Vorteile eines Benchmarking der Sicherheitskompetenzen von Entwicklern
Der zunehmende Fokus auf sicheren Code und Secure-by-Design-Prinzipien erfordert, dass Entwickler von Beginn des SDLC an in Cybersicherheit geschult werden, wobei Tools wie Secure Code Warrior's Trust Score dabei helfen, ihre Fortschritte zu messen und zu verbessern.
Wesentlicher Erfolg für Enterprise Secure-by-Design-Initiativen
Unser jüngstes Forschungspapier „Benchmarking Security Skills: Streamlining Secure-by-Design in the Enterprise“ ist das Ergebnis einer umfassenden Analyse echter Secure-by-Design-Initiativen auf Unternehmensebene und der Ableitung von Best-Practice-Ansätzen auf Grundlage datengesteuerter Erkenntnisse.