目标达成 感谢每一位支持者 — 我们达成了 100% 目标!

目标: 1000 元 · 已筹: 1000

100.0%

CWE-301 认证协议中的反射攻击 类漏洞列表 1

CWE-301 认证协议中的反射攻击 类弱点 1 条 CVE 漏洞汇总,含 AI 中文分析。

CWE-301指认证协议中的反射攻击,属于身份验证类漏洞。攻击者利用目标机器作为中介,通过反射自身发出的挑战响应,冒充受信任用户进行非法访问。这通常发生在双向认证协议中,当不同实体共享相同预共享密钥时尤为危险。开发者应避免复用密钥,确保每个通信对拥有唯一密钥,并实施严格的挑战-响应机制以防止响应被恶意反射利用。

MITRE CWE 官方描述
CWE:CWE-301 认证协议中的反射攻击(Reflection Attack) 如果恶意用户能够利用目标机器冒充受信任的用户,则简单的认证协议容易受到反射攻击(Reflection Attack)。 相互认证协议(Mutual Authentication Protocol)要求每一方使用预共享密钥(Pre-shared Key)对另一方发出的随机挑战(Random Challenge)进行加密并作出响应。然而,此类协议通常在与多个不同实体通信时使用相同的预共享密钥。恶意用户或攻击者可以通过对协议实施反射攻击,在无需拥有正确密钥的情况下轻易破坏该协议。反射攻击利用相互认证机制,诱使目标机器泄露其与另一合法用户之间共享的密钥。在基本的相互认证方案中,合法用户和服务器均知晓一个秘密值,从而允许双方进行身份验证。为了在不通过明文传输该共享密钥的情况下验证此共享密钥,双方采用一种类似 Diffie-Hellman 的方案:双方各自选择一个值,然后请求对方使用共享密钥对该值进行哈希运算。在反射攻击中,攻击者声称自己是合法用户,并向服务器请求对某个随机值进行哈希运算。当服务器返回该值并请求攻击者对其自身选择的值进行哈希运算时,攻击者向服务器建立另一个连接。此时,攻击者请求哈希的值正是服务器在第一个连接中请求的值。当服务器返回该哈希值时,攻击者将其用于第一个连接,从而成功通过身份验证,冒充为被仿冒的合法用户。
常见影响 (1)
Access ControlGain Privileges or Assume Identity
The primary result of reflection attacks is successful authentication with a target machine -- as an impersonated user.
缓解措施 (2)
Architecture and DesignUse different keys for the initiator and responder or of a different type of challenge for the initiator and responder.
Architecture and DesignLet the initiator prove its identity before proceeding.
代码示例 (1)
The following example demonstrates the weakness.
unsigned char *simple_digest(char *alg,char *buf,unsigned int len, int *olen) { const EVP_MD *m; EVP_MD_CTX ctx; unsigned char *ret; OpenSSL_add_all_digests(); if (!(m = EVP_get_digestbyname(alg))) return NULL; if (!(ret = (unsigned char*)malloc(EVP_MAX_MD_SIZE))) return NULL; EVP_DigestInit(&ctx, m); EVP_DigestUpdate(&ctx,buf,len); EVP_DigestFinal(&ctx,ret,olen); return ret; } unsigned char *generate_password_and_cmd(char *password_and_cmd) { simple_digest("sha1",password,strlen(password_and_cmd) ... ); }
Bad · C
String command = new String("some cmd to execute & the password") MessageDigest encer = MessageDigest.getInstance("SHA"); encer.update(command.getBytes("UTF-8")); byte[] digest = encer.digest();
Bad · Java
CVE ID标题CVSS风险等级Published
CVE-2019-9497 WPA 授权问题漏洞 — hostapd with EAP-pwd support 9.8 -2019-04-17

CWE-301(认证协议中的反射攻击) 是常见的弱点类别,本平台收录该类弱点关联的 1 条 CVE 漏洞。