CWE

Common Weakness Enumeration

A community-developed list of SW & HW weaknesses that can become vulnerabilities

New to CWE? click here!
CWE Most Important Hardware Weaknesses
CWE Top 25 Most Dangerous Weaknesses
Home > CWE List > CWE-300: Channel Accessible by Non-Endpoint (4.20)  
ID

  • Home
  • CWE-300: Channel Accessible by Non-Endpoint

    Weakness ID: 300
    Vulnerability Mapping: DISCOURAGED This CWE ID should not be used to map to real-world vulnerabilities
    Abstraction: Class Class - a weakness that is described in a very abstract fashion, typically independent of any specific language or technology. More specific than a Pillar Weakness, but more general than a Base Weakness. Class level weaknesses typically describe issues in terms of 1 or 2 of the following dimensions: behavior, property, and resource.
    View customized information:
    For users who are interested in more notional aspects of a weakness. Example: educators, technical writers, and project/program managers. For users who are concerned with the practical application and details about the nature of a weakness and how to prevent it from happening. Example: tool developers, security researchers, pen-testers, incident response analysts. For users who are mapping an issue to CWE/CAPEC IDs, i.e., finding the most appropriate CWE for a specific issue (e.g., a CVE record). Example: tool developers, security researchers. For users who wish to see all available information for the CWE/CAPEC entry. For users who want to customize what details are displayed.
    ×

    Edit Custom Filter


    + Description
    The product does not adequately verify the identity of actors at both ends of a communication channel, or does not adequately ensure the integrity of the channel, in a way that allows the channel to be accessed or influenced by an actor that is not an endpoint.
    + Extended Description
    In order to establish secure communication between two parties, it is often important to adequately verify the identity of entities at each end of the communication channel. Inadequate or inconsistent verification may result in insufficient or incorrect identification of either communicating entity. This can have negative consequences such as misplaced trust in the entity at the other end of the channel. An attacker can leverage this by interposing between the communicating entities and masquerading as the original entity. In the absence of sufficient verification of identity, such an attacker can eavesdrop and potentially modify the communication between the original entities.
    + Alternate Terms
    Adversary-in-the-Middle / AITM
    Attacker-in-the-Middle / AITM
    Man-in-the-Middle / MITM
    Person-in-the-Middle / PITM
    Monkey-in-the-Middle
    Monster-in-the-Middle
    Manipulator-in-the-Middle
    On-path attack
    Interception attack
    + Common Consequences
    Section HelpThis table specifies different individual consequences associated with the weakness. The Scope identifies the application security area that is violated, while the Impact describes the negative technical impact that arises if an adversary succeeds in exploiting this weakness. The Likelihood provides information about how likely the specific consequence is expected to be seen relative to the other consequences in the list. For example, there may be high likelihood that a weakness will be exploited to achieve a certain impact, but a low likelihood that it will be exploited to achieve a different impact.
    Impact Details

    Read Application Data; Modify Application Data; Gain Privileges or Assume Identity

    Scope: Confidentiality, Integrity, Access Control

    An attacker could pose as one of the entities and read or possibly modify the communication.
    + Potential Mitigations
    Phase(s) Mitigation

    Implementation

    Always fully authenticate both ends of any communications channel.

    Architecture and Design

    Adhere to the principle of complete mediation.

    Implementation

    A certificate binds an identity to a cryptographic key to authenticate a communicating party. Often, the certificate takes the encrypted form of the hash of the identity of the subject, the public key, and information such as time of issue or expiration using the issuer's private key. The certificate can be validated by deciphering the certificate with the issuer's public key. See also X.509 certificate signature chains and the PGP certification structure.
    + Relationships
    Section Help This table shows the weaknesses and high level categories that are related to this weakness. These relationships are defined as ChildOf, ParentOf, MemberOf and give insight to similar items that may exist at higher and lower levels of abstraction. In addition, relationships such as PeerOf and CanAlsoBe are defined to show similar weaknesses that the user may want to explore.
    + Relevant to the view "Research Concepts" (View-1000)
    Nature Type ID Name
    ChildOf Class Class - a weakness that is described in a very abstract fashion, typically independent of any specific language or technology. More specific than a Pillar Weakness, but more general than a Base Weakness. Class level weaknesses typically describe issues in terms of 1 or 2 of the following dimensions: behavior, property, and resource. 923 Improper Restriction of Communication Channel to Intended Endpoints
    PeerOf Class Class - a weakness that is described in a very abstract fashion, typically independent of any specific language or technology. More specific than a Pillar Weakness, but more general than a Base Weakness. Class level weaknesses typically describe issues in terms of 1 or 2 of the following dimensions: behavior, property, and resource. 602 Client-Side Enforcement of Server-Side Security
    PeerOf Base Base - a weakness that is still mostly independent of a resource or technology, but with sufficient details to provide specific methods for detection and prevention. Base level weaknesses typically describe issues in terms of 2 or 3 of the following dimensions: behavior, property, technology, language, and resource. 603 Use of Client-Side Authentication
    + Relevant to the view "Architectural Concepts" (View-1008)
    Nature Type ID Name
    MemberOf Category Category - a CWE entry that contains a set of other entries that share a common characteristic. 1011 Authorize Actors
    + Modes Of Introduction
    Section HelpThe different Modes of Introduction provide information about how and when this weakness may be introduced. The Phase identifies a point in the life cycle at which introduction may occur, while the Note provides a typical scenario related to introduction during the given phase.
    Phase Note
    Architecture and Design REALIZATION: This weakness is caused during implementation of an architectural security tactic.
    + Applicable Platforms
    Section HelpThis listing shows possible areas for which the given weakness could appear. These may be for specific named Languages, Operating Systems, Architectures, Paradigms, Technologies, or a class of such platforms. The platform is listed along with how frequently the given weakness appears for that instance.
    Languages

    Class: Not Language-Specific (Undetermined Prevalence)

    + Demonstrative Examples

    Example 1


    In the Java snippet below, data is sent over an unencrypted channel to a remote server.

    (bad code)
    Example Language: Java 
    Socket sock;
    PrintWriter out;

    try {
    sock = new Socket(REMOTE_HOST, REMOTE_PORT);
    out = new PrintWriter(echoSocket.getOutputStream(), true);

    // Write data to remote host via socket output stream.
    ...
    }

    By eavesdropping on the communication channel or posing as the endpoint, an attacker would be able to read all of the transmitted data.



    + Selected Observed Examples

    Note: this is a curated list of examples for users to understand the variety of ways in which this weakness can be introduced. It is not a complete list of all CVEs that are related to this CWE entry.

    Reference Description
    Chain: incorrect "goto" in Apple SSL product bypasses certificate validation, allowing Adversary-in-the-Middle (AITM) attack (Apple "goto fail" bug). CWE-705 (Incorrect Control Flow Scoping) -> CWE-561 (Dead Code) -> CWE-295 (Improper Certificate Validation) -> CWE-393 (Return of Wrong Status Code) -> CWE-300 (Channel Accessible by Non-Endpoint). The code's whitespace indentation did not reflect the actual control flow (CWE-1114) and did not explicitly delimit the block (CWE-483), which could have made it more difficult for human code auditors to detect the vulnerability.
    + Weakness Ordinalities
    Ordinality Description
    Primary
    (where the weakness exists independent of other weaknesses)
    Resultant
    (where the weakness is typically related to the presence of some other weaknesses)
    + Detection Methods
    Method Details

    Automated Dynamic Analysis

    Some tools can act as proxy servers that allow the tester to intercept packets or messages, inspect them, and modify them before sending them to the destination in order to see if the modified packets are still accepted by the receiving component.

    Automated Dynamic Analysis

    Dynamic Application Security Testing (DAST) tools can be used to detect network traffic without encryption and/or verification. The affected protocol may be subject to Adversary-in-the-Middle attacks. Some tools act as proxy servers that allow the tester to inspect and modify packets/messages to see if they are still accepted by the receiving component.

    Automated Static Analysis

    Automated static analysis, commonly referred to as Static Application Security Testing (SAST), can find some instances of this weakness by analyzing source code (or binary/compiled code) without having to execute it. Typically, this is done by building a model of data flow and control flow, then searching for potentially-vulnerable patterns that connect "sources" (origins of input) with "sinks" (destinations where the data interacts with external components, a lower layer such as the OS, etc.) The analysis could identify use of protocols that are subject to Adversary-in-the-Middle attacks.

    Effectiveness: Moderate

    Note:Encryption and other protection mechanisms may be provided in the environment (e.g., by a load balancer or firewall that is positioned in front of a server), but this cannot be detected by SAST tools.
    + Memberships
    Section HelpThis MemberOf Relationships table shows additional CWE Categories and Views that reference this weakness as a member. This information is often useful in understanding where a weakness fits within the context of external information sources.
    Nature Type ID Name
    MemberOf CategoryCategory - a CWE entry that contains a set of other entries that share a common characteristic. 859 The CERT Oracle Secure Coding Standard for Java (2011) Chapter 16 - Platform Security (SEC)
    MemberOf ViewView - a subset of CWE entries that provides a way of examining CWE content. The two main view structures are Slices (flat lists) and Graphs (containing relationships between entries). 884 CWE Cross-section
    MemberOf CategoryCategory - a CWE entry that contains a set of other entries that share a common characteristic. 956 SFP Secondary Cluster: Channel Attack
    MemberOf CategoryCategory - a CWE entry that contains a set of other entries that share a common characteristic. 1353 OWASP Top Ten 2021 Category A07:2021 - Identification and Authentication Failures
    MemberOf CategoryCategory - a CWE entry that contains a set of other entries that share a common characteristic. 1396 Comprehensive Categorization: Access Control
    MemberOf CategoryCategory - a CWE entry that contains a set of other entries that share a common characteristic. 1442 OWASP Top Ten 2025 Category A07:2025 - Authentication Failures
    + Vulnerability Mapping Notes
    Usage DISCOURAGED
    (this CWE ID should not be used to map to real-world vulnerabilities)
    Reason Frequent Misuse

    Rationale

    CWE-300 is commonly misused for vulnerabilities in which the prerequisites for exploitation require the adversary to be in a privileged "in-the-middle" position.

    Comments

    Consider root-cause weaknesses that allow adversary-in-the-middle attacks to happen, such as CWEs involving poor integrity protection.
    + Notes

    Maintenance

    The summary identifies multiple distinct possibilities, suggesting that this is a category that must be broken into more specific weaknesses.
    + Taxonomy Mappings
    Mapped Taxonomy Name Node ID Fit Mapped Node Name
    PLOVER Man-in-the-middle (MITM)
    WASC 32 Routing Detour
    The CERT Oracle Secure Coding Standard for Java (2011) SEC06-J Do not rely on the default automatic signature verification provided by URLClassLoader and java.util.jar
    + References
    [REF-244] M. Bishop. "Computer Security: Art and Science". Addison-Wesley. 2003.
    + Content History
    + Submissions
    Submission Date Submitter Organization
    2006-07-19
    (CWE Draft 3, 2006-07-19)
    PLOVER
    + Contributions
    Contribution Date Contributor Organization
    2024-09-02
    (CWE 4.18, 2025-09-09)
    Renaud Sauvain West Pharmaceutical Services
    + Modifications
    Modification Date Modifier Organization
    2025-12-11
    (CWE 4.19, 2025-12-11)
    CWE Content Team MITRE
    updated Observed_Examples, Relationships, Weakness_Ordinalities
    2025-09-09
    (CWE 4.18, 2025-09-09)
    CWE Content Team MITRE
    updated Alternate_Terms, Detection_Factors
    2024-07-16
    (CWE 4.15, 2024-07-16)
    CWE Content Team MITRE
    updated Alternate_Terms
    2023-06-29
    (CWE 4.12, 2023-06-29)
    CWE Content Team MITRE
    updated Mapping_Notes
    2023-04-27
    (CWE 4.11, 2023-04-27)
    CWE Content Team MITRE
    updated Detection_Factors, Relationships
    2023-01-31
    (CWE 4.10, 2023-01-31)
    CWE Content Team MITRE
    updated Relationships
    2021-10-28
    (CWE 4.6, 2021-10-28)
    CWE Content Team MITRE
    updated Relationships
    2021-07-20
    (CWE 4.5, 2021-07-20)
    CWE Content Team MITRE
    updated Alternate_Terms, Observed_Examples
    2021-03-15
    (CWE 4.4, 2021-03-15)
    CWE Content Team MITRE
    updated Alternate_Terms, Related_Attack_Patterns
    2020-12-10
    (CWE 4.3, 2020-12-10)
    CWE Content Team MITRE
    updated Relationships
    2020-02-24
    (CWE 4.0, 2020-02-24)
    CWE Content Team MITRE
    updated Alternate_Terms, Name, Observed_Examples, Related_Attack_Patterns, Relationships
    2019-06-20
    (CWE 3.3, 2019-06-20)
    CWE Content Team MITRE
    updated Related_Attack_Patterns
    2019-01-03
    (CWE 3.2, 2019-01-03)
    CWE Content Team MITRE
    updated Taxonomy_Mappings
    2017-11-08
    (CWE 3.0, 2017-11-08)
    CWE Content Team MITRE
    updated Applicable_Platforms, Modes_of_Introduction, Relationships
    2014-07-30
    (CWE 2.8, 2014-07-31)
    CWE Content Team MITRE
    updated Demonstrative_Examples, Relationships
    2014-06-23
    (CWE 2.7, 2014-06-23)
    CWE Content Team MITRE
    updated Observed_Examples
    2014-02-18
    (CWE 2.6, 2014-02-19)
    CWE Content Team MITRE
    updated Relationships
    2012-10-30
    (CWE 2.3, 2012-10-30)
    CWE Content Team MITRE
    updated Potential_Mitigations
    2012-05-11
    (CWE 2.2, 2012-05-15)
    CWE Content Team MITRE
    updated Common_Consequences, Related_Attack_Patterns, Relationships, Taxonomy_Mappings
    2011-06-01
    (CWE 1.13, 2011-06-01)
    CWE Content Team MITRE
    updated Common_Consequences, Relationships, Taxonomy_Mappings
    2010-12-13
    (CWE 1.11, 2010-12-13)
    CWE Content Team MITRE
    updated Description
    2010-02-16
    (CWE 1.8, 2010-02-16)
    CWE Content Team MITRE
    updated Taxonomy_Mappings
    2009-05-27
    (CWE 1.4, 2009-05-27)
    CWE Content Team MITRE
    updated Name
    2008-09-08
    (CWE 1.0, 2008-09-09)
    CWE Content Team MITRE
    updated Description, Maintenance_Notes, Relationships, Taxonomy_Mappings
    2008-07-01
    (CWE 1.0, 2008-09-09)
    Sean Eidemiller Cigital
    added/updated demonstrative examples
    2008-07-01
    (CWE 1.0, 2008-09-09)
    Eric Dalci Cigital
    updated Time_of_Introduction
    + Previous Entry Names
    Change Date Previous Entry Name
    2020-02-24 Channel Accessible by Non-Endpoint ('Man-in-the-Middle')
    2009-05-27 Channel Accessible by Non-Endpoint (aka 'Man-in-the-Middle')
    2008-04-11 Man-in-the-middle (MITM)
    Page Last Updated: April 30, 2026