Remote Code Exclusion – CVE-2012-1823

Was bedeutet Remote Code Exclusion – CVE-2012-1823?

Remote Code Exclusion erfasst CVE-2012-1823, um die Remote-Code-Ausführung auf einem PHP-CGI-basierten Webserver auszuführen. Eingaben, die sich auf den Steuerungsfluss oder den Datenfluss eines Programms auswirken können, werden nicht oder fehlerhaft überprüft.

Beschreibung

Wenn eine Software die Eingabe nicht ordnungsgemäß überprüft, kann ein Angreifer eine Eingabe so erstellen, das die Anwendung dies in dieser Form nicht erwartet. Dies führt dazu, dass Teile des Systems unbeabsichtigte Eingaben erhalten, was zu einer veränderten, willkürlichen Steuerung einer Ressource oder Codes führen kann.

Diese Schwachstelle wird während der Implementierung einer architektonischen Sicherheitstaktik verursacht.

Wenn ein Programmierer der Meinung ist, dass ein Angreifer bestimmte Eingaben nicht ändern kann, führt der Programmierer möglicherweise keine Überprüfung der Eingaben durch, obwohl Eingaben mit einem Proxy oder einem benutzerdefinierten Programm geändert werden können. In einer Client-Server-Architektur kann der Programmierer davon ausgehen, dass clientseitige Sicherheitsprüfungen nicht umgangen werden können, selbst wenn ein benutzerdefinierter Client geschrieben werden könnte, der diese Prüfungen überspringt.

Tipp

Überprüfen Sie die Sicherheit Ihrer Website mit unserem kostenlosen Security Crawler oder mit der OSG Performance Suite Free Version.

Lösung

Phase: Architektur und Design
Verwenden Sie ein Eingabevalidierungsframework wie Struts oder die OWASP ESAPI Validation-API.
Verstehen Sie alle potenziellen Bereiche, in denen nicht vertrauenswürdige Eingaben Ihre Software eingeben können: Parameter oder Argumente, Cookies, alles, was aus dem Netzwerk gelesen wird, Umgebungsvariablen, Reverse-DNS-Lookups, Abfrageergebnisse, Anforderungsheader, URL-Komponenten, E-Mail, Dateien, Dateinamen, Datenbanken sowie alle externen Systeme, die der Anwendung Daten zur Verfügung stellen. Beachten Sie, dass solche Eingaben indirekt durch API-Aufrufe abgerufen werden können.

Phase: Implementierung
Verwenden Sie eine Whitelist mit akzeptablen Eingaben, die streng den Spezifikationen entsprechen. Verwerfen Sie Eingaben, die nicht genau den Spezifikationen entsprechen, oder wandeln Sie sie in etwas um, das dies tut.
Berücksichtigen Sie bei der Eingabevalidierung alle potenziell relevanten Eigenschaften, einschließlich Länge, Eingabetyp, den gesamten zulässigen Wertebereich, fehlende oder zusätzliche Eingaben, Syntax, Konsistenz in verwandten Feldern und die Einhaltung von Geschäftsregeln.
Verlassen Sie sich nicht ausschließlich auf die Suche nach schädlichen oder fehlerhaften Eingaben (d.h. Verlassen Sie sich nicht auf eine Blacklist). Bei einer Blacklist wird wahrscheinlich mindestens eine unerwünschte Eingabe übersehen, insbesondere wenn sich die Code-Umgebung ändert. Dadurch können Angreifer genügend Spielraum haben, um die beabsichtigte Validierung zu umgehen. Blacklists können jedoch hilfreich sein, um potenzielle Angriffe zu erkennen oder um festzustellen, welche Eingaben so fehlerhaft sind, dass sie völlig abgelehnt werden sollten.
Wenn Ihre Anwendung Daten aus mehreren Quellen kombiniert, führen Sie die Validierung durch, nachdem die Quellen kombiniert wurden. Die einzelnen Datenelemente können den Validierungsschritt bestehen, verletzen jedoch die beabsichtigten Beschränkungen, nachdem sie kombiniert wurden.

Andere Informationen

Die Überprüfung der Eingabe kann in jedem System, das Daten von einer externen Quelle empfängt, ein Problem darstellen.
Die Validierung von Eingaben – ob fehlend oder fehlerhaft – ist ein so wesentlicher und weit verbreiteter Teil einer sicheren Entwicklung, dass sie in vielen verschiedenen Schwachstellen enthalten ist. Traditionell werden Probleme wie Pufferüberläufe und XSS von vielen Sicherheitsexperten als Probleme bei der Eingabevalidierung eingestuft. Die Eingabevalidierung ist jedoch nicht notwendigerweise der einzige Schutzmechanismus, um solche Probleme zu vermeiden, und reicht in manchen Fällen nicht aus.

Allgemeiner Schwachstellen-Datenbanklink

https://cwe.mitre.org/data/definitions/20.html


Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG


Weitere Inhalte