Insecure Interaction Between Components
These weaknesses are related to insecure ways in which data is sent
and received between separate components, modules, programs,
processes, threads, or systems.
* CWE-20: Improper Input Validation
Macht man weil man mal eben schnell was schreibt was nicht
ausreichend dokumentiert ist. Oder weil man was anderes testet und
dann die Abkuerzung nicht korrigiert. Passiert weil man mal wieder
vergessen hat ein TODO an die betroffene Stelle zu setzen und die QA
anhand der unzureichenden Dokumentation die Eingabe nur unzureichend
testet.
* CWE-116: Improper Encoding or Escaping of Output
Wie bei CWE-20
* CWE-89: Failure to Preserve SQL Query Structure (aka 'SQL
Injection')
Das ist an sich nur eine Permutation von CWE-20
* CWE-79: Failure to Preserve Web Page Structure (aka 'Cross-site
Scripting')
Wie macht man solche Fehler?
* CWE-78: Failure to Preserve OS Command Structure (aka 'OS
Command Injection')
Das ist an sich nur eine Permutation von CWE-20
* CWE-319: Cleartext Transmission of Sensitive Information
Ebenfalls ein mach mal eben schnell Fehler. Sowie mangelndes
Separation of Concern im Design.
* CWE-352: Cross-Site Request Forgery (CSRF)
* CWE-362: Race Condition
Klassiker. Passiert wenn man sich die Protokolle von Komponenten
nicht ansieht. bzw. die Synchronisation weggelassen wird. Tritt bei
MP auf. Kann auch ganz einfach vermieden werden. Protokolle
dokumentieren und testen. Verwendet man regulaere Ausdruecke um
Protokolle zu beschreiben kann man das sogar formal sichern. Ebenso
kann man die Syncronisation per Monitor oder im ADA-Style (besonders
schoen) loesen.
* CWE-209: Error Message Information Leak
In PHP bitte Fehlerausgabe in die Seite einbetten abschalten. Danke.
Risky Resource Management
The weaknesses in this category are related to ways in which software
does not properly manage the creation, usage, transfer, or
destruction of important system resources.
* CWE-119: Failure to Constrain Operations within the Bounds of a
Memory Buffer
Alter C Klassiker. Kommt von der "eben mal schnell"-Mentalitaet.
* CWE-642: External Control of Critical State Data
Design Fehler. Kann vermieden werden wenn man erst plant und dann
schreibt.
* CWE-73: External Control of File Name or Path
Wie CWE-642
* CWE-426: Untrusted Search Path
?
* CWE-94: Failure to Control Generation of Code (aka 'Code
Injection')
Wie CWE-642
* CWE-494: Download of Code Without Integrity Check
Design Fehler wenn das Framework das nicht bereitstellt muss man
entsprechend eine eigene Schicht mit Security einfuegen. Sonst das
Feature einfach mal nicht abschalten um eben mal schnell ...
* CWE-404: Improper Resource Shutdown or Release
Neulich als der Programmierer mal wieder sloppy war und eben schnell
... und dann hat er die Abkuerzung nicht dokumentiert und die QA hat
gepennt und die Designer haben mal wieder was vergessen.
* CWE-665: Improper Initialization
Shit happens. Deutet auf mangelndes Testen hin. QA oder
Designerfehler.
* CWE-682: Incorrect Calculation
Da kennt sich MS ja aus. Oder wie war das mit dem Excel-Bug in OOXML.
Porous Defenses
The weaknesses in this category are related to defensive techniques
that are often misused, abused, or just plain ignored.
* CWE-285: Improper Access Control (Authorization)
Design Problem
* CWE-327: Use of a Broken or Risky Cryptographic Algorithm
Wer macht denn sowas? Das kann sich nur um selbstgestrickte
Sicherheitsloesungen handeln. I.A. sollt ihr getestete
cryptogrphische Bibliotheken nutzen.
* CWE-259: Hard-Coded Password
Der eben mal schnell Fehler.
* CWE-732: Insecure Permission Assignment for Critical Resource
Typischer Designfehler.
* CWE-330: Use of Insufficiently Random Values
Lousy programming
* CWE-250: Execution with Unnecessary Privileges
Designfehler.
* CWE-602: Client-Side Enforcement of Server-Side Security
Der bloeder geht's nicht Designfehler.
Ich bitte um Berichtigungen. :-)
These weaknesses are related to insecure ways in which data is sent
and received between separate components, modules, programs,
processes, threads, or systems.
* CWE-20: Improper Input Validation
Macht man weil man mal eben schnell was schreibt was nicht
ausreichend dokumentiert ist. Oder weil man was anderes testet und
dann die Abkuerzung nicht korrigiert. Passiert weil man mal wieder
vergessen hat ein TODO an die betroffene Stelle zu setzen und die QA
anhand der unzureichenden Dokumentation die Eingabe nur unzureichend
testet.
* CWE-116: Improper Encoding or Escaping of Output
Wie bei CWE-20
* CWE-89: Failure to Preserve SQL Query Structure (aka 'SQL
Injection')
Das ist an sich nur eine Permutation von CWE-20
* CWE-79: Failure to Preserve Web Page Structure (aka 'Cross-site
Scripting')
Wie macht man solche Fehler?
* CWE-78: Failure to Preserve OS Command Structure (aka 'OS
Command Injection')
Das ist an sich nur eine Permutation von CWE-20
* CWE-319: Cleartext Transmission of Sensitive Information
Ebenfalls ein mach mal eben schnell Fehler. Sowie mangelndes
Separation of Concern im Design.
* CWE-352: Cross-Site Request Forgery (CSRF)
* CWE-362: Race Condition
Klassiker. Passiert wenn man sich die Protokolle von Komponenten
nicht ansieht. bzw. die Synchronisation weggelassen wird. Tritt bei
MP auf. Kann auch ganz einfach vermieden werden. Protokolle
dokumentieren und testen. Verwendet man regulaere Ausdruecke um
Protokolle zu beschreiben kann man das sogar formal sichern. Ebenso
kann man die Syncronisation per Monitor oder im ADA-Style (besonders
schoen) loesen.
* CWE-209: Error Message Information Leak
In PHP bitte Fehlerausgabe in die Seite einbetten abschalten. Danke.
Risky Resource Management
The weaknesses in this category are related to ways in which software
does not properly manage the creation, usage, transfer, or
destruction of important system resources.
* CWE-119: Failure to Constrain Operations within the Bounds of a
Memory Buffer
Alter C Klassiker. Kommt von der "eben mal schnell"-Mentalitaet.
* CWE-642: External Control of Critical State Data
Design Fehler. Kann vermieden werden wenn man erst plant und dann
schreibt.
* CWE-73: External Control of File Name or Path
Wie CWE-642
* CWE-426: Untrusted Search Path
?
* CWE-94: Failure to Control Generation of Code (aka 'Code
Injection')
Wie CWE-642
* CWE-494: Download of Code Without Integrity Check
Design Fehler wenn das Framework das nicht bereitstellt muss man
entsprechend eine eigene Schicht mit Security einfuegen. Sonst das
Feature einfach mal nicht abschalten um eben mal schnell ...
* CWE-404: Improper Resource Shutdown or Release
Neulich als der Programmierer mal wieder sloppy war und eben schnell
... und dann hat er die Abkuerzung nicht dokumentiert und die QA hat
gepennt und die Designer haben mal wieder was vergessen.
* CWE-665: Improper Initialization
Shit happens. Deutet auf mangelndes Testen hin. QA oder
Designerfehler.
* CWE-682: Incorrect Calculation
Da kennt sich MS ja aus. Oder wie war das mit dem Excel-Bug in OOXML.
Porous Defenses
The weaknesses in this category are related to defensive techniques
that are often misused, abused, or just plain ignored.
* CWE-285: Improper Access Control (Authorization)
Design Problem
* CWE-327: Use of a Broken or Risky Cryptographic Algorithm
Wer macht denn sowas? Das kann sich nur um selbstgestrickte
Sicherheitsloesungen handeln. I.A. sollt ihr getestete
cryptogrphische Bibliotheken nutzen.
* CWE-259: Hard-Coded Password
Der eben mal schnell Fehler.
* CWE-732: Insecure Permission Assignment for Critical Resource
Typischer Designfehler.
* CWE-330: Use of Insufficiently Random Values
Lousy programming
* CWE-250: Execution with Unnecessary Privileges
Designfehler.
* CWE-602: Client-Side Enforcement of Server-Side Security
Der bloeder geht's nicht Designfehler.
Ich bitte um Berichtigungen. :-)