CWE-433 Variant Incomplete

Unparsed Raw Web Content Delivery

This vulnerability occurs when a web application stores unprocessed files—like configuration scripts or raw source code—in publicly accessible directories using file extensions the server doesn't…

Definition

What is CWE-433?

This vulnerability occurs when a web application stores unprocessed files—like configuration scripts or raw source code—in publicly accessible directories using file extensions the server doesn't recognize.
Web servers are configured to process certain file types (like .php or .asp) before sending them to users. When you place files with extensions like .inc, .config, .bak, or .old in a web-accessible folder, and the server doesn't have a handler for them, it treats them as plain text. The server then delivers the raw, unprocessed file content directly to anyone who requests it. This becomes critical when these files contain sensitive information such as database connection strings, API keys, internal comments, or backend logic. Attackers can easily discover and download these files, bypassing any intended security controls. To prevent this, always store supporting code and configuration files outside the web root or use server rules to explicitly block access to non-standard extensions.
Auswirkungen in der Praxis

Real-world CVEs caused by CWE-433

  • ".inc" file stored under web document root and returned unparsed by the server

  • ".inc" file stored under web document root and returned unparsed by the server

  • ".inc" file stored under web document root and returned unparsed by the server

  • direct request to .pl file leaves it unparsed

  • .inc file

  • unparsed config.conf file

  • Chain: uppercase file extensions causes web server to return script source code instead of executing the script.

Wie Angreifer es ausnutzen

Angreiferpfad Schritt für Schritt

  1. 1

    The following code uses an include file to store database credentials:

  2. 2

    database.inc

  3. 3

    login.php

  4. 4

    If the server does not have an explicit handler set for .inc files it may send the contents of database.inc to an attacker without pre-processing, if the attacker requests the file directly. This will expose the database name and password.

Verwundbares Codebeispiel

Vulnerable PHP

database.inc

Verwundbar PHP
<?php
  $dbName = 'usersDB';
  $dbPassword = 'skjdh#67nkjd3$3$';
  ?>
Sicheres Codebeispiel

Secure pseudo

Sicher pseudo
// Validate, sanitize, or use a safe API before reaching the sink.
function handleRequest(input) {
  const safe = validateAndEscape(input);
  return executeWithGuards(safe);
}
What changed: the unsafe sink is replaced (or the input is validated/escaped) so the same payload no longer triggers the weakness.
Präventions-Checkliste

How to prevent CWE-433

  • Architecture and Design Perform a type check before interpreting files.
  • Architecture and Design Do not store sensitive information in files which may be misinterpreted.
Erkennungssignale

How to detect CWE-433

SAST High

Führe statische Analyse (SAST) auf der Codebasis aus und suche im Datenfluss nach dem unsicheren Muster.

DAST Moderate

Führe dynamische Application-Security-Tests gegen den Live-Endpoint aus.

Runtime Moderate

Beobachte Runtime-Logs auf ungewöhnliche Exception-Traces, fehlerhafte Eingaben oder Versuche, Autorisierung zu umgehen.

Code review Moderate

Code Review: Markiere jeden neuen Code, der Eingaben von dieser Oberfläche ohne validierte Framework-Helper verarbeitet.

Plexicus Auto-Fix

Plexicus erkennt CWE-433 automatisch und öffnet in unter 60 Sekunden einen Fix-PR.

Codex Remedium scannt jeden Commit, identifiziert genau diese Schwachstelle und liefert einen reviewer-ready Pull Request mit dem Patch. Keine Tickets. Keine Hand-offs.

Häufig gestellte Fragen

Frequently asked questions

Was ist CWE-433?

This vulnerability occurs when a web application stores unprocessed files—like configuration scripts or raw source code—in publicly accessible directories using file extensions the server doesn't recognize.

Wie gravierend ist CWE-433?

MITRE hat für diese Schwachstelle keine Exploit-Wahrscheinlichkeit veröffentlicht. Behandle sie als mittlere Auswirkung, bis dein Threat Model anderes belegt.

Welche Sprachen oder Plattformen sind von CWE-433 betroffen?

MITRE hat für diese CWE keine betroffenen Plattformen spezifiziert — sie kann in den meisten Anwendungs-Stacks auftreten.

Wie kann ich CWE-433 verhindern?

Perform a type check before interpreting files. Do not store sensitive information in files which may be misinterpreted.

Wie erkennt und behebt Plexicus CWE-433?

Die SAST-Engine von Plexicus erkennt die Datenfluss-Signatur von CWE-433 bei jedem Commit. Bei einem Treffer öffnet unser Codex-Remedium-Agent einen Fix-PR mit korrigiertem Code, Tests und einer einzeiligen Zusammenfassung für den Reviewer.

Wo erfahre ich mehr über CWE-433?

MITRE veröffentlicht die kanonische Definition unter https://cwe.mitre.org/data/definitions/433.html. Für ergänzende Hinweise kannst du auch die OWASP- und NIST-Dokumentation heranziehen.

Bereit, wenn du es bist

Schluss mit dem Bezahlen pro Entwickler.
Schließ den Kreislauf.

Plexicus ist die KI-native ASPM, die scannt, filtert, fixt, pentestet und erklärt — autonom. Unbegrenzte Entwickler, unbegrenzte Repos, Fair-Use-KI-Aktionen. Echter kostenloser Tarif, €269/mo jährlich, wenn du bereit bist.