CWE-606 循环条件输入未经检查 类弱点 27 条 CVE 漏洞汇总,含 AI 中文分析。
CWE-606 属于输入验证缺陷,指程序未对用于循环条件的输入进行充分检查。攻击者通常通过构造恶意输入,触发无限循环或过度迭代,从而导致系统资源耗尽,引发拒绝服务攻击。开发者应避免直接使用不可信数据控制循环,需在循环前验证输入范围,或设置最大迭代次数上限,以确保程序逻辑的安全性与稳定性。
void iterate(int n){ int i; for (i = 0; i < n; i++){ foo(); } } void iterateFoo() { unsigned int num; scanf("%u",&num); iterate(num); }int processMessageFromSocket(int socket) { int success; char buffer[BUFFER_SIZE]; char message[MESSAGE_SIZE]; // get message from socket and store into buffer //Ignoring possibliity that buffer > BUFFER_SIZE if (getMessage(socket, buffer, BUFFER_SIZE) > 0) { // place contents of the buffer into message structure ExMessage *msg = recastBuffer(buffer); // copy message body into string for processing int index; for (index = 0; index < msg->msgLength; index++) { message[index] = msg->msgBody[index]; } message[index] = '\0'; // process message success = processMessage(message); } return success; }CWE-606(循环条件输入未经检查) 是常见的弱点类别,本平台收录该类弱点关联的 27 条 CVE 漏洞。