CWE-328 可逆的单向哈希 类弱点 78 条 CVE 漏洞汇总,含 AI 中文分析。
CWE-328 指使用弱哈希算法的漏洞,此类算法生成的摘要无法抵御预像、第二预像或生日攻击,导致攻击者能逆向推导原始输入或构造碰撞数据。攻击者常借此伪造数据完整性或破解密码存储。开发者应摒弃 MD5、SHA-1 等弱算法,改用 SHA-256 或 SHA-3 等强哈希函数,并结合加盐技术,以确保数据不可逆性和抗碰撞能力,从而有效防范此类安全风险。
unsigned char *check_passwd(char *plaintext) { ctext = simple_digest("sha1",plaintext,strlen(plaintext), ... ); //Login if hash matches stored hash if (equal(ctext, secret_password())) { login_user(); } }String plainText = new String(plainTextIn); MessageDigest encer = MessageDigest.getInstance("SHA"); encer.update(plainTextIn); byte[] digest = password.digest(); //Login if hash matches stored hash if (equal(digest,secret_password())) { login_user(); }CWE-328(可逆的单向哈希) 是常见的弱点类别,本平台收录该类弱点关联的 78 条 CVE 漏洞。