Dienstag, 5. Juli 2011

Programmierung - die TOP 25 Sicherheitslücken

Die Top25 der sicherheitsrelevanten Programmierfehler wurden veröffentlicht. Es finden sich auf den TOP Plätzen die 1. SQL-Injection, 2. OS-Command Injection. 3. Buffer Overflow. Die Informationswebseite von SANS ermöglicht es sich einen Überblick zu verschaffen und erklärt anhand von Beispielen, um welche Fehler es sich handelt. Wie hoch die Kosten für die Behebung sind. Wie oft diese Fehler von Angreifern ausgenutzt werden und was die Konsequenzen sind. 

1.) SQL Command  - SQL Injection - MSSQL 

Beispiel C# 


string userName = ctx.getAuthenticatedUserName();

string query = "SELECT * FROM items WHERE owner = '" + userName + "' AND itemname = '" + ItemName.Text + "'";
sda = new SqlDataAdapter(query, conn);
DataTable dt = new DataTable();
sda.Fill(dt);

Aufgeführter Befehl -> SELECT * FROM items WHERE owner = <userName> AND itemname = <itemName>;

Möglicher Befehl: '; exec master..xp_cmdshell 'dir' --  , würde das ausführen von diversen Systembefehlen ermöglichen und zurückgeben


2.) OS Befehl Injection
- Beispiele

und noch viele mehr bin mal zu faul die hier alle aufzulisten, ist wirklich sehr aufschlussreich, weil ein Fehler nicht nur in einer Programmiersprache erklärt wird, sondern gleich in mehreren z.B. auch CGI, .NET, PHP, C
Ich füge mal stumpf die Tabelle rein, also unter dem jeweiligen Bereich sehr ihr auch einen Link "Code Examples".

RankScoreIDName
[1]93.8CWE-89Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
[2]83.3CWE-78Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')
[3]79.0CWE-120Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')
[4]77.7CWE-79Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
[5]76.9CWE-306Missing Authentication for Critical Function
[6]76.8CWE-862Missing Authorization
[7]75.0CWE-798Use of Hard-coded Credentials
[8]75.0CWE-311Missing Encryption of Sensitive Data
[9]74.0CWE-434Unrestricted Upload of File with Dangerous Type
[10]73.8CWE-807Reliance on Untrusted Inputs in a Security Decision
[11]73.1CWE-250Execution with Unnecessary Privileges
[12]70.1CWE-352Cross-Site Request Forgery (CSRF)
[13]69.3CWE-22Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
[14]68.5CWE-494Download of Code Without Integrity Check
[15]67.8CWE-863Incorrect Authorization
[16]66.0CWE-829Inclusion of Functionality from Untrusted Control Sphere
[17]65.5CWE-732Incorrect Permission Assignment for Critical Resource
[18]64.6CWE-676Use of Potentially Dangerous Function
[19]64.1CWE-327Use of a Broken or Risky Cryptographic Algorithm
[20]62.4CWE-131Incorrect Calculation of Buffer Size
[21]61.5CWE-307Improper Restriction of Excessive Authentication Attempts
[22]61.1CWE-601URL Redirection to Untrusted Site ('Open Redirect')
[23]61.0CWE-134Uncontrolled Format String
[24]60.3CWE-190Integer Overflow or Wraparound
[25]59.9CWE-759Use of a One-Way Hash without a Salt
Zur Übersicht der von SANS erhobenen TOP 25 Sicherheitslücken bei der Programmierung.

Keine Kommentare:

Kommentar veröffentlichen

Related Posts Plugin for WordPress, Blogger...