Difference between revisions of "Germany/Projekte/Top 10 fuer Entwickler-2013/A6-Verlust der Vertraulichkeit sensibler Daten"

From OWASP
Jump to: navigation, search
(Created page with "{{Top_10_2010_Developer_Edition_De:TopTemplate|useprev=PrevLink_Germany_Projekte|usenext=NextLink_Germany_Projekte|next=Top_10_fuer_Entwickler/A7 Kryptografisch unsichere Spei...")
 
m
(9 intermediate revisions by one user not shown)
Line 1: Line 1:
{{Top_10_2010_Developer_Edition_De:TopTemplate|useprev=PrevLink_Germany_Projekte|usenext=NextLink_Germany_Projekte|next=Top_10_fuer_Entwickler/A7 Kryptografisch unsichere Speicherung|prev=Top_10_fuer_Entwickler/A5_Cross-Site Request Forgery (CSRF)}}
+
{{Top_10_2010_Developer_Edition_De:TopTemplate
 +
    |useprev=PrevLink_Germany_Projekte
 +
    |usenext=NextLink_Germany_Projekte
 +
    |prev=Top_10_fuer_Entwickler/A6_{{Top_10_2010_Developer_Edition_De:ByTheNumbers
 +
              |6
 +
              |language=de
 +
              |year=2010}}
 +
    |next=Top_10_fuer_Entwickler/A8_{{Top_10_2010_Developer_Edition_De:ByTheNumbers
 +
              |8
 +
              |language=de
 +
              |year=2010}}
 +
}}
 
== Seite in Bearbeitung (BAUSTELLE!!) ==
 
== Seite in Bearbeitung (BAUSTELLE!!) ==
  
 
+
== A7 Kryptografisch unsichere Speicherung ==  
== A1 Injection (Befehle einschleusen)==  
+
  
 
{{Top_10_2010_Developer_Edition_De:SummaryTableHeaderBeginTemplate}}
 
{{Top_10_2010_Developer_Edition_De:SummaryTableHeaderBeginTemplate}}
Line 21: Line 31:
 
{{Top_10_2010:SummaryTableEndTemplate}}
 
{{Top_10_2010:SummaryTableEndTemplate}}
  
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=1|risk=7}}   
+
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=1|risk=7|year=2010|language=de}}   
 
'''<u>Szenario 1</u>''': Eine Anwendung speichert verschlüsselt Kreditkartendaten in einer Datenbank, um Sie vor Angreifern zu schützen. Die Datenbank ist so eingerichtet, dass die Daten beim Auslesen automatisch entschlüsselt werden. Durch SQL-Injection können in diesem Fall alle Kreditkartendaten im Klartext ausgelesen werden. Das System hätte so konfiguriert sein sollen, dass nur nachgelagerte Anwendungen und nicht die Webanwendung selbst entschlüsseln dürfen.<br/>  
 
'''<u>Szenario 1</u>''': Eine Anwendung speichert verschlüsselt Kreditkartendaten in einer Datenbank, um Sie vor Angreifern zu schützen. Die Datenbank ist so eingerichtet, dass die Daten beim Auslesen automatisch entschlüsselt werden. Durch SQL-Injection können in diesem Fall alle Kreditkartendaten im Klartext ausgelesen werden. Das System hätte so konfiguriert sein sollen, dass nur nachgelagerte Anwendungen und nicht die Webanwendung selbst entschlüsseln dürfen.<br/>  
 
'''<u>Szenario 2</u>''': Ein Datensicherungsband speichert verschlüsselte Gesundheitsdaten, aber der Schlüssel ist ebenfalls dort gespeichert. Das Band geht auf dem Transportweg verloren.<br/>
 
'''<u>Szenario 2</u>''': Ein Datensicherungsband speichert verschlüsselte Gesundheitsdaten, aber der Schlüssel ist ebenfalls dort gespeichert. Das Band geht auf dem Transportweg verloren.<br/>
 
'''<u>Szenario 3</u>''': Die Passwortdatenbank benutzt Hashwerte ohne Salt zur Speicherung der Passwörter. Eine Schwachstelle in der Downloadfunktion ermöglicht einem Angreifer den Zugriff auf die Datei. Zu allen Hashes kann in vier Wochen ein passender Klartext gefunden werden. Bei starken Hashwerten mit Salt hätte dieser Angriff über 3000 Jahre gedauert.
 
'''<u>Szenario 3</u>''': Die Passwortdatenbank benutzt Hashwerte ohne Salt zur Speicherung der Passwörter. Eine Schwachstelle in der Downloadfunktion ermöglicht einem Angreifer den Zugriff auf die Datei. Zu allen Hashes kann in vier Wochen ein passender Klartext gefunden werden. Bei starken Hashwerten mit Salt hätte dieser Angriff über 3000 Jahre gedauert.
  
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=2|risk=7}}  
+
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=2|risk=7|year=2010|language=de}}  
 
Eine Übersicht über alle Tücken unsicherer Kryptografie liegt weit außerhalb des Rahmens der Top 10. Für alle vertrau-lichen Daten sollten Sie zumindest:
 
Eine Übersicht über alle Tücken unsicherer Kryptografie liegt weit außerhalb des Rahmens der Top 10. Für alle vertrau-lichen Daten sollten Sie zumindest:
 
# Die Bedrohungen betrachten, vor denen Sie die Daten schützen wollen (z. B. Innen- und Außentäter) und sicherstellen, dass diese Daten angemessen durch Verschlüsselung geschützt werden.
 
# Die Bedrohungen betrachten, vor denen Sie die Daten schützen wollen (z. B. Innen- und Außentäter) und sicherstellen, dass diese Daten angemessen durch Verschlüsselung geschützt werden.
Line 38: Line 48:
 
= '''JAVA''' =   
 
= '''JAVA''' =   
 
<!-- z.Z ohne Template --->
 
<!-- z.Z ohne Template --->
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=11|risk=1}} <!-- war number=3 -->
+
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=11|risk=7|year=2010|language=de}} <!-- war number=3 -->
 
==== Tbd ====
 
==== Tbd ====
  
Line 45: Line 55:
 
{{Top_10_2010:ExampleEndTemplate}}  
 
{{Top_10_2010:ExampleEndTemplate}}  
  
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=4|risk=1}}
+
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=4|risk=7|year=2010|language=de}}
 
==== Tbd ====
 
==== Tbd ====
 
{{Top_10_2010:ExampleBeginTemplate}}
 
{{Top_10_2010:ExampleBeginTemplate}}
Line 51: Line 61:
 
{{Top_10_2010:ExampleEndTemplate}}
 
{{Top_10_2010:ExampleEndTemplate}}
  
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=5|risk=1}}
+
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=5|risk=7|year=2010|language=de}}
 
==== Tbd ====
 
==== Tbd ====
  
Line 58: Line 68:
 
{{Top_10_2010:ExampleEndTemplate}}
 
{{Top_10_2010:ExampleEndTemplate}}
  
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=8|risk=1}}
+
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=8|risk=7|year=2010|language=de}}
 
{{Top_10_2010:SubSubsectionOWASPReferencesTemplate}}
 
{{Top_10_2010:SubSubsectionOWASPReferencesTemplate}}
  
Line 66: Line 76:
 
* [http://www.owasp.org/index.php/Guide_to_Cryptography#Insecure_transmission_of_secrets OWASP Development Guide: Chapter on Cryptography]
 
* [http://www.owasp.org/index.php/Guide_to_Cryptography#Insecure_transmission_of_secrets OWASP Development Guide: Chapter on Cryptography]
 
* [[Codereview-Cryptography | OWASP Code Review Guide: Chapter on Cryptography]]
 
* [[Codereview-Cryptography | OWASP Code Review Guide: Chapter on Cryptography]]
{{Top_10_2010:SubSubsectionExternalReferencesTemplate}}
+
{{Top_10_2010_Developer_Edition_De:SubSubsectionExternalReferencesTemplate|language=de}}
 
* [http://cwe.mitre.org/data/definitions/310.html CWE Entry 310 on Cryptographic Issues]
 
* [http://cwe.mitre.org/data/definitions/310.html CWE Entry 310 on Cryptographic Issues]
 
* [http://cwe.mitre.org/data/definitions/312.html CWE Entry 312 on Cleartext Storage of Sensitive Information]
 
* [http://cwe.mitre.org/data/definitions/312.html CWE Entry 312 on Cleartext Storage of Sensitive Information]
 
* [http://cwe.mitre.org/data/definitions/326.html CWE Entry 326 on Weak Encryption]
 
* [http://cwe.mitre.org/data/definitions/326.html CWE Entry 326 on Weak Encryption]
{{Top_10_2010:BottomAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|useprev=2010PrevLink|usenext=2010NextLink|prev=A6-Security Misconfiguration|next=A8-Failure to Restrict URL Access}}
 
 
</td></tr></table>
 
</td></tr></table>
  
 
= '''Test''' =
 
= '''Test''' =
 
<!-- weitere Programmiersprachen oder evtl Anti-Beispiele --->
 
<!-- weitere Programmiersprachen oder evtl Anti-Beispiele --->
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=11|risk=7}}
+
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=11|risk=7|year=2010|language=de}}
 
{{Top_10_2010:ExampleBeginTemplate}}
 
{{Top_10_2010:ExampleBeginTemplate}}
 
tbd
 
tbd
Line 81: Line 90:
 
{{Top_10_2010:ExampleEndTemplate}}
 
{{Top_10_2010:ExampleEndTemplate}}
  
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=4|risk=7}}
+
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=4|risk=7|year=2010|language=de}}
 
{{Top_10_2010:ExampleBeginTemplate}}
 
{{Top_10_2010:ExampleBeginTemplate}}
 
tbd
 
tbd
Line 87: Line 96:
 
{{Top_10_2010:ExampleEndTemplate}}
 
{{Top_10_2010:ExampleEndTemplate}}
  
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=6|risk=7}}
+
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=6|risk=7|year=2010|language=de}}
 
tbd
 
tbd
 
Text
 
Text
  
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=7|risk=7}}
+
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=7|risk=7|year=2010|language=de}}
 
(ganze Breite)
 
(ganze Breite)
 
Text
 
Text
  
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=9|risk=7}}
+
{{Top_10_2010_Developer_Edition_De:SubsectionAdvancedTemplate|type={{Top_10_2010:StyleTemplate}}|number=9|risk=7|year=2010|language=de}}
 
</td></tr></table>
 
</td></tr></table>
 
 
<headertabs />
 
<headertabs />
  
{{Top_10_2010_Developer_Edition_De:BottomAdvancedTemplate|type=0|usenext=NextLink_Germany_Projekte|next=Top_10_fuer_Entwickler/A7 Kryptografisch unsichere Speicherung|useprev=PrevLink_Germany_Projekte|prev=Top_10_fuer_Entwickler/A5_Cross-Site Request Forgery (CSRF)}}
+
{{Top_10_2010_Developer_Edition_De:BottomAdvancedTemplate
 +
    |type=0
 +
    |useprev=PrevLink_Germany_Projekte
 +
    |usenext=NextLink_Germany_Projekte
 +
    |prev=Top_10_fuer_Entwickler/A6_{{Top_10_2010_Developer_Edition_De:ByTheNumbers
 +
              |6
 +
              |language=de
 +
              |year=2010}}
 +
    |next=Top_10_fuer_Entwickler/A8_{{Top_10_2010_Developer_Edition_De:ByTheNumbers
 +
              |8
 +
              |language=de
 +
              |year=2010}}
 +
}}
 +
 
  
[[Category:OWASP_Top_Ten_Project]] [[Category:Germany]]
+
[[Category:OWASP Top 10 fuer Entwickler]]

Revision as of 06:04, 8 March 2013

← Top_10_fuer_Entwickler/A6_Sicherheitsrelevante Fehlkonfiguration
Top 10 fuer Entwickler-2013: Inhaltsverzeichnis

Die Top-10-Risiken

Top_10_fuer_Entwickler/A8_Mangelhafter URL-Zugriffsschutz →

Seite in Bearbeitung (BAUSTELLE!!)

A7 Kryptografisch unsichere Speicherung

Threat Agents
Attack Vectors
Security Weakness
Technical Impacts
Business Impacts
______ Ausnutzbarkeit
SCHWIERIG
Verbreitung
SELTEN
Auffindbarkeit
SCHWIERIG
Auswirkung
SCHWERWIEGEND
Application / Business Specific
Jeder Benutzer des Systems ist zu betrachten.

Haben diese ein Interesse, auf geschützte Daten unberechtigt zuzugreifen?

Wie steht es um Administratoren?
Angreifer brechen üblicherweise nicht die eigentliche Kryptografie. Statt dessen finden Sie Schlüssel, Klartexte oder greifen über Kanäle mit automatischer Entschlüsselung auf Daten zu. Fehlende Verschlüsselung vertraulicher Daten ist die häufigste Schwachstelle, gefolgt von unsicherer Schlüsselerzeugung, der Speicherung statischer Schlüssel und die Nutzung schwacher Algorithmen. Schwache Hashwerte ohne Salt kommen zum Passwortschutz oft vor. Ein ein-geschränkter Zugriff lässt externe Angreifer solche Probleme i.d.R. nicht leicht ent-decken. Den nötigen Zugriff müssen sie vorher auf andere Weise erlangen. Fehler kompromittieren regelmäßig vertrauliche Daten. Es handelt sich hierbei oft um sensitive Daten wie personenbezogene Daten, Benutzernamen und Passwörter oder Kreditkarteninformationen. Betrachten Sie den Wert verlorener Daten und die Auswirkungen auf die Reputation des betroffenen Unternehmens. Hat es ggf. auch juristische Konsequenzen, wenn die Daten bekannt werden?
Bin ich durch 'Kryptografisch unsichere Speicherung' verwundbar?

Szenario 1: Eine Anwendung speichert verschlüsselt Kreditkartendaten in einer Datenbank, um Sie vor Angreifern zu schützen. Die Datenbank ist so eingerichtet, dass die Daten beim Auslesen automatisch entschlüsselt werden. Durch SQL-Injection können in diesem Fall alle Kreditkartendaten im Klartext ausgelesen werden. Das System hätte so konfiguriert sein sollen, dass nur nachgelagerte Anwendungen und nicht die Webanwendung selbst entschlüsseln dürfen.
Szenario 2: Ein Datensicherungsband speichert verschlüsselte Gesundheitsdaten, aber der Schlüssel ist ebenfalls dort gespeichert. Das Band geht auf dem Transportweg verloren.
Szenario 3: Die Passwortdatenbank benutzt Hashwerte ohne Salt zur Speicherung der Passwörter. Eine Schwachstelle in der Downloadfunktion ermöglicht einem Angreifer den Zugriff auf die Datei. Zu allen Hashes kann in vier Wochen ein passender Klartext gefunden werden. Bei starken Hashwerten mit Salt hätte dieser Angriff über 3000 Jahre gedauert.

Wie kann ich 'Kryptografisch unsichere Speicherung' verhindern?

Eine Übersicht über alle Tücken unsicherer Kryptografie liegt weit außerhalb des Rahmens der Top 10. Für alle vertrau-lichen Daten sollten Sie zumindest:

  1. Die Bedrohungen betrachten, vor denen Sie die Daten schützen wollen (z. B. Innen- und Außentäter) und sicherstellen, dass diese Daten angemessen durch Verschlüsselung geschützt werden.
  2. Sicherstellen, dass ausgelagerte Datensicherungen verschlüsselt sind und die Schlüssel getrennt verwaltet und gesichert werden.
  3. Sicherstellen, dass angemessene, starke Algorithmen und Schlüssel verwendet und verwaltet werden.
  4. Sicherstellen, dass Passwörter mit einem starken Algorithmus und einem angemessenen Salt gehasht werden.
  5. Sicherstellen, dass alle Schlüssel und Passwörter vor unberechtigtem Zugriff geschützt sind.
[edit]

style="vertical-align: top; padding:5px; width: 50%;
          border: 3px solid 
  1. 4F81BD;
          background-color: 
  1. F2F2F2;">

Tbd

</td>
                  <td
   style="vertical-align: top; padding:5px; width: 50%;
          border: 3px solid 
  1. 4F81BD;
          background-color: 
  1. F2F2F2;">
Referenzen

Tbd

style="vertical-align: top; padding:5px; width: 50%;
          border: 3px solid 
  1. 4F81BD;
          background-color: 
  1. F2F2F2;">

Tbd

style="vertical-align: top; padding:5px; width: 50%;
          border: 3px solid 
  1. 4F81BD;
          background-color: 
  1. F2F2F2;">

OWASP

Einen umfangreicheren Überblick über die Anforderungen und die hierbei zu vermeidenden Probleme gibt es unter ASVS requirements on Cryptography (V7). Des Weiteren:

Andere

</td></tr></table>

style="vertical-align: top; padding:5px; width: 50%;
          border: 3px solid 
  1. 4F81BD;
          background-color: 
  1. F2F2F2;">

tbd Text

</td>
                  <td
   style="vertical-align: top; padding:5px; width: 50%;
          border: 3px solid 
  1. 4F81BD;
          background-color: 
  1. F2F2F2;">
Referenzen

tbd Text

style="vertical-align: top; padding:5px; width: 50%;
          border: 3px solid 
  1. 4F81BD;
          background-color: 
  1. F2F2F2;">

tbd Text

style="vertical-align: top; padding:5px; width: 50%;
          border: 3px solid 
  1. 4F81BD;
          background-color: 
  1. F2F2F2;">

(ganze Breite) Text

style="vertical-align: top; padding:5px; width: 50%;
          border: 3px solid 
  1. 4F81BD;
          background-color: 
  1. F2F2F2;">

</td></tr></table>


← Top_10_fuer_Entwickler/A6_Sicherheitsrelevante Fehlkonfiguration
Top 10 fuer Entwickler-2013: Inhaltsverzeichnis

Die Top-10-Risiken

Top_10_fuer_Entwickler/A8_Mangelhafter URL-Zugriffsschutz →

© 2002-2013 OWASP Foundation This document is licensed under the Creative Commons Attribution-ShareAlike 3.0 license. Some rights reserved. CC-by-sa-3 0-88x31.png