CWE-322 未进行实体认证的密钥交换

Key Exchange without Entity Authentication

结构: Simple

Abstraction: Base

状态: Draft

被利用可能性: High


The software performs a key exchange with an actor without verifying the identity of that actor.


Performing a key exchange will preserve the integrity of the information sent between two entities, but this will not guarantee that the entities are who they claim they are. This may enable a set of "man-in-the-middle" attacks. Typically, this involves a victim client that contacts a malicious server that is impersonating a trusted server. If the client skips authentication or ignores an authentication failure, the malicious server may request authentication information from the user. The malicious server can then use this authentication information to log in to the trusted server using the victim's credentials, sniff traffic between the victim and trusted server, etc.


  • cwe_Nature: ChildOf cwe_CWE_ID: 923 cwe_View_ID: 1000 cwe_Ordinal: Primary

  • cwe_Nature: PeerOf cwe_CWE_ID: 295 cwe_View_ID: 1000


Language: {'cwe_Class': 'Language-Independent', 'cwe_Prevalence': 'Undetermined'}


范围 影响 注释
Access Control Bypass Protection Mechanism No authentication takes place in this process, bypassing an assumed protection of encryption.
Confidentiality Read Application Data The encrypted communication between a user and a trusted host may be subject to a "man-in-the-middle" sniffing attack.


Architecture and Design


Ensure that proper authentication is included in the system design.



Understand and properly implement all checks necessary to ensure the identity of entities involved in encrypted communications.


Many systems have used Diffie-Hellman key exchange without authenticating the entities exchanging keys, leading to man-in-the-middle attacks. Many people using SSL/TLS skip the authentication (often unknowingly).


映射的分类名 ImNode ID Fit Mapped Node Name
CLASP Key exchange without entity authentication