SCW アイコン
ヒーロー背景(区切りなし)
ブログ

Coder Conquer Security: Share & Learn-Serie — Einsatz von Komponenten mit bekannten Sicherheitslücken

Jaap Karan Singh
2019年4月25日 掲載
最終更新日: 2026年3月9日

Was ist die eine Sache, die alle Anwendungen haben? Komponenten, auch bekannt als Abhängigkeiten oder Bibliotheken. Es gibt sehr wenig Code auf der Welt, der nicht zu einem bestimmten Zeitpunkt von anderem Code abhängt. Sie beginnen sogar mit einem Berg von Abhängigkeiten ab dem Zeitpunkt, an dem Sie die Anwendung erstellen!

Da alle Anwendungen Komponenten verwenden, von denen Sie die meisten nicht geschrieben haben, können Sicherheitslücken in den von Ihnen verwendeten Komponenten zu Verbindlichkeiten werden. Lassen Sie uns besprechen, was es bedeutet, Komponenten mit bekannten Sicherheitslücken zu verwenden, wie gefährlich sie ist und wie sie behoben werden können.

Verstehen Sie die Verwendung von Komponenten mit bekannten Sicherheitslücken

Jede komplexe Software weist Sicherheitslücken auf. Das liegt in der Natur der Bestie. Ihre Komponenten werden also niemals zu 100% sicher sein. Wissen Sie jedoch davon, wenn Sicherheitslücken in Komponenten gefunden werden? Bist du darauf vorbereitet?

Probleme treten am häufigsten auf, wenn Komponenten nach ihrer Nutzungsdauer verwendet werden oder wenn Sicherheitslücken gefunden wurden. Die meisten Komponenten und Bibliotheken veröffentlichen Patches für Sicherheitslücken zum oder vor der Bekanntgabe der Sicherheitslücke. Wenn Sicherheitslücken in Komponenten entdeckt und gemeldet werden, ist es daher von größter Bedeutung, die Komponenten so schnell wie möglich zu aktualisieren. Lassen Sie anfällige Software nicht in der Produktion.

Komponenten können aus verschiedenen Quellen stammen. Manchmal kaufen Sie Produkte von Drittanbietern, die sich direkt in Ihren benutzerdefinierten Code integrieren lassen. Diese Komponenten werden Teil Ihres Codes und funktionieren mit derselben Rechteebene. Eine weitere Quelle sind Open-Source-Projekte, die auf Websites wie GitHub gehostet werden. Open Source kann gefährlich sein, da nicht alle Open-Source-Bibliotheken sorgfältig auf Sicherheitslücken überprüft oder geprüft wurden.

Angreifer nutzen Informationen zu Sicherheitslücken in Komponenten zu ihrem Vorteil. Da die Sicherheitslücken öffentlich bekannt gegeben werden, wissen die Angreifer genau wie Sie von den Sicherheitslücken. Angreifer verfügen auch über Techniken, mit denen sie herausfinden können, welche Komponenten Sie verwenden. Sobald sie diese Informationen kennen, wissen sie, wie sie Ihre Anwendung angreifen können, wenn sie nicht gepatcht ist.

Erfahren Sie, warum anfällige Komponenten gefährlich sind

Wenn Sie nach Beweisen dafür suchen, wie gefährlich die Verwendung von Komponenten mit bekannten Sicherheitslücken ist, sind Sie bei der Equifax-Datenschutzverletzung von 2017 genau richtig.

Im Juli 2017 Equifax, ein Kreditbüro der Vereinigten Staaten, entdeckte eine massive Datenschutzverletzung, bei der die personenbezogenen Daten von über 147 Millionen Menschen durchsickerten. Das Ausmaß und die Auswirkungen dieser Datenschutzverletzung sind beispiellos. Vor Kurzem wurden Neuigkeiten veröffentlicht über Die laxen Sicherheitspraktiken von Equifax.

Eine dieser laxen Praktiken war das Patch-Management. Equifax hatte keine guten Patch-Management-Praktiken, was bedeutete, dass ihre Komponenten eine ganze Weile ohne Patches auskamen. Dies war die direkte Ursache des Verstoßes.

Die Website von Equifax verwendete die Apache Struts Webframework. Einige Monate bevor sich die Angreifer in das Netzwerk hackten, wurde eine Sicherheitslücke im Struts-Framework, Apache Struts CVE-2017-5638, gefunden. Equifax hat die Sicherheitslücke jedoch nicht gepatcht. Angreifer nutzten diese Sicherheitslücke, um sich Zugriff auf das Netzwerk von Equifax zu verschaffen. Von dort aus erhielten sie Zugriff auf eine Fundgrube persönlicher Informationen.

Viele Websites basieren auf Web-Frameworks, die nicht vom Unternehmen geschrieben wurden. Dies ist gängige Praxis, da es ein zu großes Unterfangen wäre, alle erforderlichen Funktionen von Grund auf neu zu integrieren. Eine starke Abhängigkeit von einem Framework kann jedoch zu Sicherheitslücken führen. Werde nicht der nächste Equifax.

So schützen Sie sich vor anfälligen Komponenten

Es gibt keine Wunderwaffe zum Schutz vor der Verwendung anfälliger Komponenten. Es gibt jedoch Richtlinien und Kontrollen, mit denen Sie das Risiko mindern können, dass anfällige Komponenten Ihre Systeme gefährden.

Sie müssen wissen, welche Komponenten und welche Version jeder Komponente Sie verwenden, um Ihre Anwendungen zu erstellen. Tools für das Abhängigkeitsmanagement wie Die Abhängigkeitsprüfung von OWASP hilft Ihnen dabei, die von Ihnen verwendeten Abhängigkeiten in den Griff zu bekommen. Dependency Check teilt Ihnen auch mit, ob eine dieser Komponenten eine öffentlich gemeldete Sicherheitslücke aufweist.

Eine Patch-Management-Methode ist ebenfalls unerlässlich. Wenn Sicherheitslücken entdeckt werden, sollten Sie über ein System verfügen, mit dem die Patches problemlos heruntergeladen, getestet und für die Produktion freigegeben werden können. Wenn Sie Ihre Software auf dem neuesten Stand halten, wird verhindert, dass monatelange Sicherheitslücken von Angreifern ausgenutzt werden.

Und schließlich sollten Sie über Richtlinien verfügen, die die Verwendung von Open-Source-Komponenten und Komponenten von Drittanbietern regeln. Entwickler mögen keine Bürokratie, und das ist verständlich. Es muss jedoch ein Überprüfungsverfahren für Code geben, der nicht von Ihrer Organisation geschrieben wurde. Es muss nicht schwergewichtig sein, ist aber ein Muss, um zu verhindern, dass unbekannte Komponenten verwendet werden. Zumindest muss ein Inventar der verwendeten Komponenten auf dem neuesten Stand gehalten werden.

Lassen Sie sich nicht vom Drittanbieter-Bug beißen

Komponenten werden Sicherheitslücken aufweisen. Ihre Geschäftsanwendungen werden Komponenten verwenden, unabhängig davon, ob sie von einem Anbieter oder aus einer Open-Source-Bibliothek stammen. Das bedeutet nicht, dass Ihr Unternehmen anfällig für Angriffe sein muss.

Obwohl die Angreifer gleichzeitig mit Ihnen wissen, welche Sicherheitslücken bestehen, werden Patches in der Regel gleichzeitig mit den öffentlichen Ankündigungen zur Verfügung gestellt. Informieren Sie sich also unbedingt darüber, was Ihre Anwendung verwendet. Wissen Sie, was anfällig ist. Sorgen Sie dafür, dass Ihre Komponenten gepatcht sind!

Bereit, einige anfällige Komponenten zu entdecken (und zu besiegen)? Begib dich in die Arena, um an Kämpfen teilzunehmen: [Fangen Sie hier an]

リソースを表示
リソースを表示

Da alle Anwendungen Komponenten verwenden, von denen Sie die meisten nicht geschrieben haben, können Sicherheitslücken in den von Ihnen verwendeten Komponenten zu Verbindlichkeiten werden. Lassen Sie uns besprechen, was es bedeutet, Komponenten mit bekannten Sicherheitslücken zu verwenden, wie gefährlich sie ist und wie sie behoben werden können.

もっと知りたいですか?

Jaap Karan Singh ist Secure Coding Evangelist, Chief Singh und Mitbegründer von Secure Code Warrior.

もっと詳しく

Secure Code Warrior 、ソフトウェア開発サイクル全体を通じてコードの安全性を確保し、サイバーセキュリティを最優先とする文化を構築するため、貴社をSecure Code Warrior 。アプリセキュリティ管理者、開発者、CISO、あるいはセキュリティに関わるあらゆる立場の方々に対し、当社が貴社のビジネスにおける不安全なコードに関連するリスクの低減を支援します。

デモを予約する
共有する:
リンクトインのブランドソーシャルx ロゴ
著者
Jaap Karan Singh
2019年4月25日発行

Jaap Karan Singh ist Secure Coding Evangelist, Chief Singh und Mitbegründer von Secure Code Warrior.

共有する:
リンクトインのブランドソーシャルx ロゴ

Was ist die eine Sache, die alle Anwendungen haben? Komponenten, auch bekannt als Abhängigkeiten oder Bibliotheken. Es gibt sehr wenig Code auf der Welt, der nicht zu einem bestimmten Zeitpunkt von anderem Code abhängt. Sie beginnen sogar mit einem Berg von Abhängigkeiten ab dem Zeitpunkt, an dem Sie die Anwendung erstellen!

Da alle Anwendungen Komponenten verwenden, von denen Sie die meisten nicht geschrieben haben, können Sicherheitslücken in den von Ihnen verwendeten Komponenten zu Verbindlichkeiten werden. Lassen Sie uns besprechen, was es bedeutet, Komponenten mit bekannten Sicherheitslücken zu verwenden, wie gefährlich sie ist und wie sie behoben werden können.

Verstehen Sie die Verwendung von Komponenten mit bekannten Sicherheitslücken

Jede komplexe Software weist Sicherheitslücken auf. Das liegt in der Natur der Bestie. Ihre Komponenten werden also niemals zu 100% sicher sein. Wissen Sie jedoch davon, wenn Sicherheitslücken in Komponenten gefunden werden? Bist du darauf vorbereitet?

Probleme treten am häufigsten auf, wenn Komponenten nach ihrer Nutzungsdauer verwendet werden oder wenn Sicherheitslücken gefunden wurden. Die meisten Komponenten und Bibliotheken veröffentlichen Patches für Sicherheitslücken zum oder vor der Bekanntgabe der Sicherheitslücke. Wenn Sicherheitslücken in Komponenten entdeckt und gemeldet werden, ist es daher von größter Bedeutung, die Komponenten so schnell wie möglich zu aktualisieren. Lassen Sie anfällige Software nicht in der Produktion.

Komponenten können aus verschiedenen Quellen stammen. Manchmal kaufen Sie Produkte von Drittanbietern, die sich direkt in Ihren benutzerdefinierten Code integrieren lassen. Diese Komponenten werden Teil Ihres Codes und funktionieren mit derselben Rechteebene. Eine weitere Quelle sind Open-Source-Projekte, die auf Websites wie GitHub gehostet werden. Open Source kann gefährlich sein, da nicht alle Open-Source-Bibliotheken sorgfältig auf Sicherheitslücken überprüft oder geprüft wurden.

Angreifer nutzen Informationen zu Sicherheitslücken in Komponenten zu ihrem Vorteil. Da die Sicherheitslücken öffentlich bekannt gegeben werden, wissen die Angreifer genau wie Sie von den Sicherheitslücken. Angreifer verfügen auch über Techniken, mit denen sie herausfinden können, welche Komponenten Sie verwenden. Sobald sie diese Informationen kennen, wissen sie, wie sie Ihre Anwendung angreifen können, wenn sie nicht gepatcht ist.

Erfahren Sie, warum anfällige Komponenten gefährlich sind

Wenn Sie nach Beweisen dafür suchen, wie gefährlich die Verwendung von Komponenten mit bekannten Sicherheitslücken ist, sind Sie bei der Equifax-Datenschutzverletzung von 2017 genau richtig.

Im Juli 2017 Equifax, ein Kreditbüro der Vereinigten Staaten, entdeckte eine massive Datenschutzverletzung, bei der die personenbezogenen Daten von über 147 Millionen Menschen durchsickerten. Das Ausmaß und die Auswirkungen dieser Datenschutzverletzung sind beispiellos. Vor Kurzem wurden Neuigkeiten veröffentlicht über Die laxen Sicherheitspraktiken von Equifax.

Eine dieser laxen Praktiken war das Patch-Management. Equifax hatte keine guten Patch-Management-Praktiken, was bedeutete, dass ihre Komponenten eine ganze Weile ohne Patches auskamen. Dies war die direkte Ursache des Verstoßes.

Die Website von Equifax verwendete die Apache Struts Webframework. Einige Monate bevor sich die Angreifer in das Netzwerk hackten, wurde eine Sicherheitslücke im Struts-Framework, Apache Struts CVE-2017-5638, gefunden. Equifax hat die Sicherheitslücke jedoch nicht gepatcht. Angreifer nutzten diese Sicherheitslücke, um sich Zugriff auf das Netzwerk von Equifax zu verschaffen. Von dort aus erhielten sie Zugriff auf eine Fundgrube persönlicher Informationen.

Viele Websites basieren auf Web-Frameworks, die nicht vom Unternehmen geschrieben wurden. Dies ist gängige Praxis, da es ein zu großes Unterfangen wäre, alle erforderlichen Funktionen von Grund auf neu zu integrieren. Eine starke Abhängigkeit von einem Framework kann jedoch zu Sicherheitslücken führen. Werde nicht der nächste Equifax.

So schützen Sie sich vor anfälligen Komponenten

Es gibt keine Wunderwaffe zum Schutz vor der Verwendung anfälliger Komponenten. Es gibt jedoch Richtlinien und Kontrollen, mit denen Sie das Risiko mindern können, dass anfällige Komponenten Ihre Systeme gefährden.

Sie müssen wissen, welche Komponenten und welche Version jeder Komponente Sie verwenden, um Ihre Anwendungen zu erstellen. Tools für das Abhängigkeitsmanagement wie Die Abhängigkeitsprüfung von OWASP hilft Ihnen dabei, die von Ihnen verwendeten Abhängigkeiten in den Griff zu bekommen. Dependency Check teilt Ihnen auch mit, ob eine dieser Komponenten eine öffentlich gemeldete Sicherheitslücke aufweist.

Eine Patch-Management-Methode ist ebenfalls unerlässlich. Wenn Sicherheitslücken entdeckt werden, sollten Sie über ein System verfügen, mit dem die Patches problemlos heruntergeladen, getestet und für die Produktion freigegeben werden können. Wenn Sie Ihre Software auf dem neuesten Stand halten, wird verhindert, dass monatelange Sicherheitslücken von Angreifern ausgenutzt werden.

Und schließlich sollten Sie über Richtlinien verfügen, die die Verwendung von Open-Source-Komponenten und Komponenten von Drittanbietern regeln. Entwickler mögen keine Bürokratie, und das ist verständlich. Es muss jedoch ein Überprüfungsverfahren für Code geben, der nicht von Ihrer Organisation geschrieben wurde. Es muss nicht schwergewichtig sein, ist aber ein Muss, um zu verhindern, dass unbekannte Komponenten verwendet werden. Zumindest muss ein Inventar der verwendeten Komponenten auf dem neuesten Stand gehalten werden.

Lassen Sie sich nicht vom Drittanbieter-Bug beißen

Komponenten werden Sicherheitslücken aufweisen. Ihre Geschäftsanwendungen werden Komponenten verwenden, unabhängig davon, ob sie von einem Anbieter oder aus einer Open-Source-Bibliothek stammen. Das bedeutet nicht, dass Ihr Unternehmen anfällig für Angriffe sein muss.

Obwohl die Angreifer gleichzeitig mit Ihnen wissen, welche Sicherheitslücken bestehen, werden Patches in der Regel gleichzeitig mit den öffentlichen Ankündigungen zur Verfügung gestellt. Informieren Sie sich also unbedingt darüber, was Ihre Anwendung verwendet. Wissen Sie, was anfällig ist. Sorgen Sie dafür, dass Ihre Komponenten gepatcht sind!

Bereit, einige anfällige Komponenten zu entdecken (und zu besiegen)? Begib dich in die Arena, um an Kämpfen teilzunehmen: [Fangen Sie hier an]

リソースを表示
リソースを表示

以下のフォームに記入してレポートをダウンロードしてください

当社製品および/またはセキュアコーディングに関連する情報について、お客様にご案内させていただくことをお許しください。お客様の個人情報は常に細心の注意をもって取り扱い、マーケティング目的で他社に販売することは一切ありません。

提出
SCW成功アイコン
SCWエラーアイコン
フォームを送信するには、「アナリティクス」クッキーを有効にしてください。完了後、いつでも無効に戻せます。

Was ist die eine Sache, die alle Anwendungen haben? Komponenten, auch bekannt als Abhängigkeiten oder Bibliotheken. Es gibt sehr wenig Code auf der Welt, der nicht zu einem bestimmten Zeitpunkt von anderem Code abhängt. Sie beginnen sogar mit einem Berg von Abhängigkeiten ab dem Zeitpunkt, an dem Sie die Anwendung erstellen!

Da alle Anwendungen Komponenten verwenden, von denen Sie die meisten nicht geschrieben haben, können Sicherheitslücken in den von Ihnen verwendeten Komponenten zu Verbindlichkeiten werden. Lassen Sie uns besprechen, was es bedeutet, Komponenten mit bekannten Sicherheitslücken zu verwenden, wie gefährlich sie ist und wie sie behoben werden können.

Verstehen Sie die Verwendung von Komponenten mit bekannten Sicherheitslücken

Jede komplexe Software weist Sicherheitslücken auf. Das liegt in der Natur der Bestie. Ihre Komponenten werden also niemals zu 100% sicher sein. Wissen Sie jedoch davon, wenn Sicherheitslücken in Komponenten gefunden werden? Bist du darauf vorbereitet?

Probleme treten am häufigsten auf, wenn Komponenten nach ihrer Nutzungsdauer verwendet werden oder wenn Sicherheitslücken gefunden wurden. Die meisten Komponenten und Bibliotheken veröffentlichen Patches für Sicherheitslücken zum oder vor der Bekanntgabe der Sicherheitslücke. Wenn Sicherheitslücken in Komponenten entdeckt und gemeldet werden, ist es daher von größter Bedeutung, die Komponenten so schnell wie möglich zu aktualisieren. Lassen Sie anfällige Software nicht in der Produktion.

Komponenten können aus verschiedenen Quellen stammen. Manchmal kaufen Sie Produkte von Drittanbietern, die sich direkt in Ihren benutzerdefinierten Code integrieren lassen. Diese Komponenten werden Teil Ihres Codes und funktionieren mit derselben Rechteebene. Eine weitere Quelle sind Open-Source-Projekte, die auf Websites wie GitHub gehostet werden. Open Source kann gefährlich sein, da nicht alle Open-Source-Bibliotheken sorgfältig auf Sicherheitslücken überprüft oder geprüft wurden.

Angreifer nutzen Informationen zu Sicherheitslücken in Komponenten zu ihrem Vorteil. Da die Sicherheitslücken öffentlich bekannt gegeben werden, wissen die Angreifer genau wie Sie von den Sicherheitslücken. Angreifer verfügen auch über Techniken, mit denen sie herausfinden können, welche Komponenten Sie verwenden. Sobald sie diese Informationen kennen, wissen sie, wie sie Ihre Anwendung angreifen können, wenn sie nicht gepatcht ist.

Erfahren Sie, warum anfällige Komponenten gefährlich sind

Wenn Sie nach Beweisen dafür suchen, wie gefährlich die Verwendung von Komponenten mit bekannten Sicherheitslücken ist, sind Sie bei der Equifax-Datenschutzverletzung von 2017 genau richtig.

Im Juli 2017 Equifax, ein Kreditbüro der Vereinigten Staaten, entdeckte eine massive Datenschutzverletzung, bei der die personenbezogenen Daten von über 147 Millionen Menschen durchsickerten. Das Ausmaß und die Auswirkungen dieser Datenschutzverletzung sind beispiellos. Vor Kurzem wurden Neuigkeiten veröffentlicht über Die laxen Sicherheitspraktiken von Equifax.

Eine dieser laxen Praktiken war das Patch-Management. Equifax hatte keine guten Patch-Management-Praktiken, was bedeutete, dass ihre Komponenten eine ganze Weile ohne Patches auskamen. Dies war die direkte Ursache des Verstoßes.

Die Website von Equifax verwendete die Apache Struts Webframework. Einige Monate bevor sich die Angreifer in das Netzwerk hackten, wurde eine Sicherheitslücke im Struts-Framework, Apache Struts CVE-2017-5638, gefunden. Equifax hat die Sicherheitslücke jedoch nicht gepatcht. Angreifer nutzten diese Sicherheitslücke, um sich Zugriff auf das Netzwerk von Equifax zu verschaffen. Von dort aus erhielten sie Zugriff auf eine Fundgrube persönlicher Informationen.

Viele Websites basieren auf Web-Frameworks, die nicht vom Unternehmen geschrieben wurden. Dies ist gängige Praxis, da es ein zu großes Unterfangen wäre, alle erforderlichen Funktionen von Grund auf neu zu integrieren. Eine starke Abhängigkeit von einem Framework kann jedoch zu Sicherheitslücken führen. Werde nicht der nächste Equifax.

So schützen Sie sich vor anfälligen Komponenten

Es gibt keine Wunderwaffe zum Schutz vor der Verwendung anfälliger Komponenten. Es gibt jedoch Richtlinien und Kontrollen, mit denen Sie das Risiko mindern können, dass anfällige Komponenten Ihre Systeme gefährden.

Sie müssen wissen, welche Komponenten und welche Version jeder Komponente Sie verwenden, um Ihre Anwendungen zu erstellen. Tools für das Abhängigkeitsmanagement wie Die Abhängigkeitsprüfung von OWASP hilft Ihnen dabei, die von Ihnen verwendeten Abhängigkeiten in den Griff zu bekommen. Dependency Check teilt Ihnen auch mit, ob eine dieser Komponenten eine öffentlich gemeldete Sicherheitslücke aufweist.

Eine Patch-Management-Methode ist ebenfalls unerlässlich. Wenn Sicherheitslücken entdeckt werden, sollten Sie über ein System verfügen, mit dem die Patches problemlos heruntergeladen, getestet und für die Produktion freigegeben werden können. Wenn Sie Ihre Software auf dem neuesten Stand halten, wird verhindert, dass monatelange Sicherheitslücken von Angreifern ausgenutzt werden.

Und schließlich sollten Sie über Richtlinien verfügen, die die Verwendung von Open-Source-Komponenten und Komponenten von Drittanbietern regeln. Entwickler mögen keine Bürokratie, und das ist verständlich. Es muss jedoch ein Überprüfungsverfahren für Code geben, der nicht von Ihrer Organisation geschrieben wurde. Es muss nicht schwergewichtig sein, ist aber ein Muss, um zu verhindern, dass unbekannte Komponenten verwendet werden. Zumindest muss ein Inventar der verwendeten Komponenten auf dem neuesten Stand gehalten werden.

Lassen Sie sich nicht vom Drittanbieter-Bug beißen

Komponenten werden Sicherheitslücken aufweisen. Ihre Geschäftsanwendungen werden Komponenten verwenden, unabhängig davon, ob sie von einem Anbieter oder aus einer Open-Source-Bibliothek stammen. Das bedeutet nicht, dass Ihr Unternehmen anfällig für Angriffe sein muss.

Obwohl die Angreifer gleichzeitig mit Ihnen wissen, welche Sicherheitslücken bestehen, werden Patches in der Regel gleichzeitig mit den öffentlichen Ankündigungen zur Verfügung gestellt. Informieren Sie sich also unbedingt darüber, was Ihre Anwendung verwendet. Wissen Sie, was anfällig ist. Sorgen Sie dafür, dass Ihre Komponenten gepatcht sind!

Bereit, einige anfällige Komponenten zu entdecken (und zu besiegen)? Begib dich in die Arena, um an Kämpfen teilzunehmen: [Fangen Sie hier an]

ウェビナーを見る
始めましょう
もっと詳しく

以下のリンクをクリックして、このリソースのPDFをダウンロードしてください。

Secure Code Warrior 、ソフトウェア開発サイクル全体を通じてコードの安全性を確保し、サイバーセキュリティを最優先とする文化を構築するため、貴社をSecure Code Warrior 。アプリセキュリティ管理者、開発者、CISO、あるいはセキュリティに関わるあらゆる立場の方々に対し、当社が貴社のビジネスにおける不安全なコードに関連するリスクの低減を支援します。

レポートを見るデモを予約する
PDFをダウンロード
リソースを表示
共有する:
リンクトインのブランドソーシャルx ロゴ
もっと知りたいですか?

共有する:
リンクトインのブランドソーシャルx ロゴ
著者
Jaap Karan Singh
2019年4月25日発行

Jaap Karan Singh ist Secure Coding Evangelist, Chief Singh und Mitbegründer von Secure Code Warrior.

共有する:
リンクトインのブランドソーシャルx ロゴ

Was ist die eine Sache, die alle Anwendungen haben? Komponenten, auch bekannt als Abhängigkeiten oder Bibliotheken. Es gibt sehr wenig Code auf der Welt, der nicht zu einem bestimmten Zeitpunkt von anderem Code abhängt. Sie beginnen sogar mit einem Berg von Abhängigkeiten ab dem Zeitpunkt, an dem Sie die Anwendung erstellen!

Da alle Anwendungen Komponenten verwenden, von denen Sie die meisten nicht geschrieben haben, können Sicherheitslücken in den von Ihnen verwendeten Komponenten zu Verbindlichkeiten werden. Lassen Sie uns besprechen, was es bedeutet, Komponenten mit bekannten Sicherheitslücken zu verwenden, wie gefährlich sie ist und wie sie behoben werden können.

Verstehen Sie die Verwendung von Komponenten mit bekannten Sicherheitslücken

Jede komplexe Software weist Sicherheitslücken auf. Das liegt in der Natur der Bestie. Ihre Komponenten werden also niemals zu 100% sicher sein. Wissen Sie jedoch davon, wenn Sicherheitslücken in Komponenten gefunden werden? Bist du darauf vorbereitet?

Probleme treten am häufigsten auf, wenn Komponenten nach ihrer Nutzungsdauer verwendet werden oder wenn Sicherheitslücken gefunden wurden. Die meisten Komponenten und Bibliotheken veröffentlichen Patches für Sicherheitslücken zum oder vor der Bekanntgabe der Sicherheitslücke. Wenn Sicherheitslücken in Komponenten entdeckt und gemeldet werden, ist es daher von größter Bedeutung, die Komponenten so schnell wie möglich zu aktualisieren. Lassen Sie anfällige Software nicht in der Produktion.

Komponenten können aus verschiedenen Quellen stammen. Manchmal kaufen Sie Produkte von Drittanbietern, die sich direkt in Ihren benutzerdefinierten Code integrieren lassen. Diese Komponenten werden Teil Ihres Codes und funktionieren mit derselben Rechteebene. Eine weitere Quelle sind Open-Source-Projekte, die auf Websites wie GitHub gehostet werden. Open Source kann gefährlich sein, da nicht alle Open-Source-Bibliotheken sorgfältig auf Sicherheitslücken überprüft oder geprüft wurden.

Angreifer nutzen Informationen zu Sicherheitslücken in Komponenten zu ihrem Vorteil. Da die Sicherheitslücken öffentlich bekannt gegeben werden, wissen die Angreifer genau wie Sie von den Sicherheitslücken. Angreifer verfügen auch über Techniken, mit denen sie herausfinden können, welche Komponenten Sie verwenden. Sobald sie diese Informationen kennen, wissen sie, wie sie Ihre Anwendung angreifen können, wenn sie nicht gepatcht ist.

Erfahren Sie, warum anfällige Komponenten gefährlich sind

Wenn Sie nach Beweisen dafür suchen, wie gefährlich die Verwendung von Komponenten mit bekannten Sicherheitslücken ist, sind Sie bei der Equifax-Datenschutzverletzung von 2017 genau richtig.

Im Juli 2017 Equifax, ein Kreditbüro der Vereinigten Staaten, entdeckte eine massive Datenschutzverletzung, bei der die personenbezogenen Daten von über 147 Millionen Menschen durchsickerten. Das Ausmaß und die Auswirkungen dieser Datenschutzverletzung sind beispiellos. Vor Kurzem wurden Neuigkeiten veröffentlicht über Die laxen Sicherheitspraktiken von Equifax.

Eine dieser laxen Praktiken war das Patch-Management. Equifax hatte keine guten Patch-Management-Praktiken, was bedeutete, dass ihre Komponenten eine ganze Weile ohne Patches auskamen. Dies war die direkte Ursache des Verstoßes.

Die Website von Equifax verwendete die Apache Struts Webframework. Einige Monate bevor sich die Angreifer in das Netzwerk hackten, wurde eine Sicherheitslücke im Struts-Framework, Apache Struts CVE-2017-5638, gefunden. Equifax hat die Sicherheitslücke jedoch nicht gepatcht. Angreifer nutzten diese Sicherheitslücke, um sich Zugriff auf das Netzwerk von Equifax zu verschaffen. Von dort aus erhielten sie Zugriff auf eine Fundgrube persönlicher Informationen.

Viele Websites basieren auf Web-Frameworks, die nicht vom Unternehmen geschrieben wurden. Dies ist gängige Praxis, da es ein zu großes Unterfangen wäre, alle erforderlichen Funktionen von Grund auf neu zu integrieren. Eine starke Abhängigkeit von einem Framework kann jedoch zu Sicherheitslücken führen. Werde nicht der nächste Equifax.

So schützen Sie sich vor anfälligen Komponenten

Es gibt keine Wunderwaffe zum Schutz vor der Verwendung anfälliger Komponenten. Es gibt jedoch Richtlinien und Kontrollen, mit denen Sie das Risiko mindern können, dass anfällige Komponenten Ihre Systeme gefährden.

Sie müssen wissen, welche Komponenten und welche Version jeder Komponente Sie verwenden, um Ihre Anwendungen zu erstellen. Tools für das Abhängigkeitsmanagement wie Die Abhängigkeitsprüfung von OWASP hilft Ihnen dabei, die von Ihnen verwendeten Abhängigkeiten in den Griff zu bekommen. Dependency Check teilt Ihnen auch mit, ob eine dieser Komponenten eine öffentlich gemeldete Sicherheitslücke aufweist.

Eine Patch-Management-Methode ist ebenfalls unerlässlich. Wenn Sicherheitslücken entdeckt werden, sollten Sie über ein System verfügen, mit dem die Patches problemlos heruntergeladen, getestet und für die Produktion freigegeben werden können. Wenn Sie Ihre Software auf dem neuesten Stand halten, wird verhindert, dass monatelange Sicherheitslücken von Angreifern ausgenutzt werden.

Und schließlich sollten Sie über Richtlinien verfügen, die die Verwendung von Open-Source-Komponenten und Komponenten von Drittanbietern regeln. Entwickler mögen keine Bürokratie, und das ist verständlich. Es muss jedoch ein Überprüfungsverfahren für Code geben, der nicht von Ihrer Organisation geschrieben wurde. Es muss nicht schwergewichtig sein, ist aber ein Muss, um zu verhindern, dass unbekannte Komponenten verwendet werden. Zumindest muss ein Inventar der verwendeten Komponenten auf dem neuesten Stand gehalten werden.

Lassen Sie sich nicht vom Drittanbieter-Bug beißen

Komponenten werden Sicherheitslücken aufweisen. Ihre Geschäftsanwendungen werden Komponenten verwenden, unabhängig davon, ob sie von einem Anbieter oder aus einer Open-Source-Bibliothek stammen. Das bedeutet nicht, dass Ihr Unternehmen anfällig für Angriffe sein muss.

Obwohl die Angreifer gleichzeitig mit Ihnen wissen, welche Sicherheitslücken bestehen, werden Patches in der Regel gleichzeitig mit den öffentlichen Ankündigungen zur Verfügung gestellt. Informieren Sie sich also unbedingt darüber, was Ihre Anwendung verwendet. Wissen Sie, was anfällig ist. Sorgen Sie dafür, dass Ihre Komponenten gepatcht sind!

Bereit, einige anfällige Komponenten zu entdecken (und zu besiegen)? Begib dich in die Arena, um an Kämpfen teilzunehmen: [Fangen Sie hier an]

目次

PDFをダウンロード
リソースを表示
もっと知りたいですか?

Jaap Karan Singh ist Secure Coding Evangelist, Chief Singh und Mitbegründer von Secure Code Warrior.

もっと詳しく

Secure Code Warrior 、ソフトウェア開発サイクル全体を通じてコードの安全性を確保し、サイバーセキュリティを最優先とする文化を構築するため、貴社をSecure Code Warrior 。アプリセキュリティ管理者、開発者、CISO、あるいはセキュリティに関わるあらゆる立場の方々に対し、当社が貴社のビジネスにおける不安全なコードに関連するリスクの低減を支援します。

デモを予約するダウンロード
共有する:
リンクトインのブランドソーシャルx ロゴ
リソースハブ

入門リソース

さらに多くの投稿
リソースハブ

入門リソース

さらに多くの投稿