Ejecuta análisis estático (SAST) sobre el código buscando el patrón inseguro en el flujo de datos.
Path Equivalence: '//multiple/leading/slash'
This vulnerability occurs when an application accepts file or directory paths containing multiple leading slashes (like '//multiple/leading/slash') without proper normalization. Attackers can…
What is CWE-50?
Real-world CVEs caused by CWE-50
-
Read files with full pathname using multiple internal slash.
-
Server allows remote attackers to read arbitrary files via a GET request with more than one leading / (slash) character in the filename.
-
Server allows remote attackers to read arbitrary files via leading slash (//) characters in a URL request.
-
Server allows remote attackers to bypass authentication and read restricted files via an extra / (slash) in the requested URL.
-
Product allows local users to delete arbitrary files or create arbitrary empty files via a target filename with a large number of leading slash (/) characters.
-
Server allows remote attackers to bypass access restrictions for files via an HTTP request with a sequence of multiple / (slash) characters such as http://www.example.com///file/.
-
Product allows remote attackers to bypass authentication, obtain sensitive information, or gain access via a direct request to admin/user.pl preceded by // (double leading slash).
-
Server allows remote attackers to execute arbitrary commands via a URL with multiple leading "/" (slash) characters and ".." sequences.
Ruta del atacante paso a paso
- 1
Identifica una ruta de código que maneje entrada no confiable sin validación.
- 2
Crea un payload que ejercite el comportamiento inseguro — inyección, traversal, overflow o abuso de lógica.
- 3
Envía el payload a través de una solicitud normal y observa la reacción de la aplicación.
- 4
Itera hasta que la respuesta filtre datos, ejecute código del atacante o escale privilegios.
Vulnerable pseudo
MITRE no ha publicado un ejemplo de código para esta CWE. El patrón siguiente es ilustrativo — consulta Recursos para referencias canónicas.
// Example pattern — see MITRE for the canonical references.
function handleRequest(input) {
// Untrusted input flows directly into the sensitive sink.
return executeUnsafe(input);
} Secure pseudo
// Validate, sanitize, or use a safe API before reaching the sink.
function handleRequest(input) {
const safe = validateAndEscape(input);
return executeWithGuards(safe);
} How to prevent CWE-50
- Architecture Use safe-by-default frameworks and APIs that prevent the unsafe pattern from being expressible.
- Implementation Validate input at trust boundaries; use allowlists, not denylists.
- Implementation Apply the principle of least privilege to credentials, file paths, and runtime permissions.
- Testing Cover this weakness in CI: SAST rules + targeted unit tests for the data flow.
- Operation Monitor logs for the runtime signals listed in the next section.
How to detect CWE-50
Ejecuta pruebas dinámicas de seguridad de aplicaciones (DAST) contra el endpoint en vivo.
Vigila los logs en tiempo de ejecución para detectar trazas de excepción inusuales, entradas malformadas o intentos de bypass de autorización.
Revisión de código: marca cualquier código nuevo que maneje entrada desde esta superficie sin usar los helpers validados del framework.
Plexicus detecta automáticamente CWE-50 y abre un PR de corrección en menos de 60 segundos.
Codex Remedium escanea cada commit, identifica esta debilidad concreta y entrega un pull request listo para revisión con el parche. Sin tickets. Sin traspasos.
Frequently asked questions
¿Qué es CWE-50?
This vulnerability occurs when an application accepts file or directory paths containing multiple leading slashes (like '//multiple/leading/slash') without proper normalization. Attackers can exploit this ambiguity to bypass security checks, potentially accessing files or directories outside the intended scope.
¿Qué gravedad tiene CWE-50?
MITRE no ha publicado una calificación de probabilidad de explotación para esta debilidad. Trátala como de impacto medio hasta que tu modelo de amenazas demuestre lo contrario.
¿Qué lenguajes o plataformas se ven afectados por CWE-50?
MITRE no ha especificado plataformas afectadas para esta CWE — puede aplicar a la mayoría de los stacks de aplicaciones.
¿Cómo puedo prevenir CWE-50?
Use safe-by-default frameworks, validate untrusted input at trust boundaries, and apply the principle of least privilege. Cover the data-flow signature in CI with SAST.
¿Cómo detecta y corrige Plexicus CWE-50?
El motor SAST de Plexicus detecta la firma de flujo de datos para CWE-50 en cada commit. Cuando hay coincidencia, nuestro agente Codex Remedium abre un PR de corrección con el código corregido, las pruebas y un resumen de una línea para el revisor.
¿Dónde puedo aprender más sobre CWE-50?
MITRE publica la definición canónica en https://cwe.mitre.org/data/definitions/50.html. También puedes consultar la documentación de OWASP y NIST para guías relacionadas.
Weaknesses related to CWE-50
Improper Resolution of Path Equivalence
This vulnerability occurs when an application fails to properly handle different text representations that refer to the same file or…
Path Equivalence: 'filename.' (Trailing Dot)
This vulnerability occurs when a system accepts file or directory paths that end with a dot (like 'file.txt.' or 'folder.') without…
Path Equivalence: 'file.name' (Internal Dot)
This vulnerability occurs when an application accepts file paths containing internal dots (like 'file.ordir') without properly checking…
Path Equivalence: 'filename ' (Trailing Space)
This vulnerability occurs when an application processes file paths that end with a space character (like 'document.txt ') without properly…
Path Equivalence: ' filename' (Leading Space)
This vulnerability occurs when an application accepts file or directory paths that begin with a space character (like ' filename'),…
Path Equivalence: 'file name' (Internal Whitespace)
This vulnerability occurs when an application accepts file paths containing internal spaces (like 'file name') without proper validation.…
Path Equivalence: 'filename/' (Trailing Slash)
This vulnerability occurs when an application accepts file or directory paths that end with a slash (e.g., 'documents/') without properly…
Path Equivalence: '/multiple//internal/slash'
This vulnerability occurs when an application accepts file or directory paths containing multiple consecutive forward slashes (e.g.,…
Path Equivalence: '/multiple/trailing/slash//'
This vulnerability occurs when an application accepts file or directory paths containing multiple consecutive forward slashes (like…
Deja de pagar por desarrollador.
Empieza a cerrar el bucle.
Plexicus es el ASPM nativo de IA que escanea, filtra, corrige, pentestea y explica — de forma autónoma. Desarrolladores ilimitados, repos ilimitados, acciones de IA de uso justo. Nivel gratuito real, €269/mo anual cuando estés listo.