CWE-420 Base Brouillon

Unprotected Alternate Channel

This vulnerability occurs when an application secures its main communication path but leaves a backup or alternative channel with weaker or no protection.

Définition

What is CWE-420?

This vulnerability occurs when an application secures its main communication path but leaves a backup or alternative channel with weaker or no protection.
Think of an application that uses strong encryption for its primary web login but sends password reset codes via unencrypted SMS. An attacker can ignore the fortified main door and easily intercept data through this neglected side channel. This creates a false sense of security, as the overall system is only as strong as its weakest point. Developers often focus all their security efforts on the obvious primary path, forgetting that attackers actively seek out these alternate, less-guarded routes. To prevent this, you must perform a thorough threat model that maps all data flows, not just the primary ones. Apply consistent security controls—like encryption, authentication, and integrity checks—across every channel that handles sensitive data or critical commands. Regularly test both primary and alternate paths during security assessments to ensure your defenses are uniform and comprehensive.
Impact réel

Real-world CVEs caused by CWE-420

  • When the internal flash is protected by blocking access on the Data Bus (DBUS), it can still be indirectly accessed through the Instruction Bus (IBUS).

  • DB server assumes that local clients have performed authentication, allowing attacker to directly connect to a process to load libraries and execute commands; a socket interface also exists (another alternate channel), so attack can be remote.

  • Product does not restrict access to underlying database, so attacker can bypass restrictions by directly querying the database.

  • User can avoid lockouts by using an API instead of the GUI to conduct brute force password guessing.

  • FTP service can not be disabled even when other access controls would require it.

  • Windows named pipe created without authentication/access control, allowing configuration modification.

  • Router management interface spawns a separate TCP connection after authentication, allowing hijacking by attacker coming from the same IP address.

Comment les attaquants l'exploitent

Parcours de l'attaquant étape par étape

  1. 1

    Identifier un chemin de code qui traite des entrées non fiables sans validation.

  2. 2

    Élaborer une charge utile qui exploite le comportement non sécurisé — injection, traversal, débordement ou abus de logique.

  3. 3

    Délivrer la charge utile via une requête normale et observer la réaction de l'application.

  4. 4

    Itérer jusqu'à ce que la réponse divulgue des données, exécute le code de l'attaquant ou élève les privilèges.

Exemple de code vulnérable

Vulnerable Verilog

Vulnérable Verilog
assign addr_auth = (address == 32'hF00) ? 1: 0;
Exemple de code sécurisé

Secure Verilog

The bugged line of code is repeated in the Bad example above. The weakness arises from the fact that the SECURE_ME register can be modified by writing to the shadow register COPY_OF_SECURE_ME. The address of COPY_OF_SECURE_ME should also be included in the check. That buggy line of code should instead be replaced as shown in the Good Code Snippet below.

Sécurisé Verilog
assign addr_auth = (address == 32'hF00 || address == 32'h800F00) ? 1: 0;
What changed: the unsafe sink is replaced (or the input is validated/escaped) so the same payload no longer triggers the weakness.
Liste de contrôle de prévention

How to prevent CWE-420

  • Architecture and Design Identify all alternate channels and use the same protection mechanisms that are used for the primary channels.
Signaux de détection

How to detect CWE-420

SAST High

Exécuter une analyse statique (SAST) sur le code source à la recherche du motif non sécurisé dans le flux de données.

DAST Moderate

Exécuter des tests de sécurité applicative dynamique (DAST) contre le point de terminaison en ligne.

Runtime Moderate

Surveiller les journaux runtime pour détecter des traces d'exception inhabituelles, des entrées malformées ou des tentatives de contournement d'autorisation.

Code review Moderate

Revue de code : signaler tout nouveau code qui traite les entrées de cette surface sans utiliser les helpers du framework validés.

Correction automatique Plexicus

Plexicus détecte automatiquement CWE-420 et ouvre une PR de correction en moins de 60 secondes.

Codex Remedium analyse chaque commit, identifie cette faiblesse précise et livre une pull request prête à être relue avec le correctif. Pas de tickets. Pas de transferts.

Questions fréquentes

Frequently asked questions

Qu'est-ce que CWE-420 ?

This vulnerability occurs when an application secures its main communication path but leaves a backup or alternative channel with weaker or no protection.

Quelle est la gravité de CWE-420 ?

MITRE n'a pas publié de note de probabilité d'exploitation pour cette faiblesse. Traitez-la comme un impact moyen jusqu'à ce que votre modèle de menace prouve le contraire.

Quels langages ou plateformes sont affectés par CWE-420 ?

MITRE n'a pas spécifié les plateformes affectées pour ce CWE — il peut s'appliquer à la plupart des stacks applicatives.

Comment puis-je prévenir CWE-420 ?

Identify all alternate channels and use the same protection mechanisms that are used for the primary channels.

Comment Plexicus détecte et corrige CWE-420 ?

Le moteur SAST de Plexicus reconnaît la signature de flux de données de CWE-420 à chaque commit. Lorsqu'une correspondance est trouvée, notre agent Codex Remedium ouvre une PR de correction avec le code corrigé, les tests et un résumé d'une ligne pour le relecteur.

Où puis-je en savoir plus sur CWE-420 ?

MITRE publie la définition canonique à https://cwe.mitre.org/data/definitions/420.html. Vous pouvez également consulter la documentation OWASP et NIST pour des conseils adjacents.

Faiblesses associées

Weaknesses related to CWE-420

CWE-923 Parent

Improper Restriction of Communication Channel to Intended Endpoints

This vulnerability occurs when a system opens a communication channel for a sensitive task but fails to properly verify that it's actually…

CWE-1275 Frère

Sensitive Cookie with Improper SameSite Attribute

This vulnerability occurs when a sensitive cookie does not have a secure SameSite attribute configured, leaving it exposed to cross-site…

CWE-291 Frère

Reliance on IP Address for Authentication

This vulnerability occurs when a system uses a client's IP address as the sole or primary method to verify their identity.

CWE-297 Frère

Improper Validation of Certificate with Host Mismatch

This vulnerability occurs when an application accepts a valid SSL/TLS certificate without properly verifying that it actually belongs to…

CWE-300 Frère

Channel Accessible by Non-Endpoint

This vulnerability occurs when a system fails to properly verify who is on the other end of a communication link or to secure the channel…

CWE-419 Frère

Unprotected Primary Channel

This vulnerability occurs when an application exposes a privileged administrative interface or restricted functionality through a primary…

CWE-940 Frère

Improper Verification of Source of a Communication Channel

This vulnerability occurs when an application accepts incoming communication requests without properly checking where they originate from,…

CWE-941 Frère

Incorrectly Specified Destination in a Communication Channel

This vulnerability occurs when an application establishes an outgoing communication channel but fails to correctly define or enforce the…

CWE-942 Frère

Permissive Cross-domain Security Policy with Untrusted Domains

This vulnerability occurs when a web application's cross-domain security policy, like a Content Security Policy (CSP), explicitly allows…

Prêt quand vous l'êtes

Arrêtez de payer par développeur.
Commencez à fermer la boucle.

Plexicus est l'ASPM natif IA qui scanne, filtre, corrige, penteste et explique — de façon autonome. Développeurs illimités, dépôts illimités, actions IA à usage équitable. Vrai niveau gratuit, €269/mo annuel quand vous êtes prêt.