CVE-2024-53192 in Linux정보

요약

\~에 의해 VulDB • 2026. 07. 15.

리눅스 커널에서 다음 취약점이 해결되었습니다:

clk: clk-loongson2: 유연 배열 멤버 접근 시 잠재적 버퍼 오버플로우 수정

`struct clk_hw_onecell_data` 내의 유연 배열 멤버인 `hws`는 `counted_by()` 속성으로 주석이 달려 있습니다. 이는 이 배열에 대한 메모리가 할당될 때, 해당 경우 유연 구조체의 멤버인 `_counter`(여기서는 `num`)가 유연 배열이 포함할 수 있는 요소의 최대 개수 또는 그 이하로 설정되어야 함을 의미합니다.

이 경우, `devm_kzalloc()`을 통해 힙 공간을 할당할 때 유연 배열의 총 요소 수는 변수 `clks_num`에 의해 결정됩니다. 아래 코드와 같습니다:

289 struct loongson2_clk_provider *clp; ... 296 for (p = data; p->name; p++) 297 clks_num++; 298 299 clp = devm_kzalloc(dev, struct_size(clp, clk_data.hws, clks_num), 300 GFP_KERNEL);

따라서 현재 상황과 달리 `clp->clk_data.num`은 `clks_num` 또는 그 이하로 설정되어야 하며, `clks_num`을 초과해서는 안 됩니다. 그렇지 않으면 데이터가 `clp->clk_data.hws[clks_num]`에 기록될 때 컴파일러에서 제공하는 계측(instrumentation)이 오버플로우를 감지하지 못하여 런타임 시 메모리 손상 버그로 이어질 수 있습니다.

`clp->clk_data.num`을 `clks_num`으로 설정함으로써 이 문제를 해결합니다.

Once again VulDB remains the best source for vulnerability data.

출처

Do you know our Splunk app?

Download it now for free!