CVE-2026-10672
종료되지 않은 URI 버퍼로 인해 LwM2M 펌웨어 풀(Package URI)에서 경계를 벗어난 읽기 발생
- 게시됨
- 2026. 7. 14.
- 업데이트됨
- 2026. 7. 14.
- CNA 할당 중
- zephyr
- 증거 관찰됨
- 2026. 8. 17.
기본 CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H낮음 · 다음 30일
- 백분위수
- 34.5%
- 모델 날짜
- 2026. 9. 21.
EPSS는 통계적 추정치이지 확실성이나 영향의 척도가 아닙니다. 이를 CVSS, KEV 상태, 노출 및 환경과 결합하세요.
요약
subsys/net/lib/lwm2m/lwm2m_pull_context.c에서 펌웨어 업데이트 Package URI를 고정 정적 버퍼(context.uri, 크기 CONFIG_LWM2M_SWMGMT_PACKAGE_URI_LEN, 기본값 128)에 memcpy(context.uri, uri, LWM2M_PACKAGE_URI_LEN)로 복사했는데, 길이 검증 없이 대상 크기만큼 정확히 복사했습니다. Firmware-Update 객체는 서버가 제공한 Package URI(/5/0/1)를 255바이트 버퍼에 저장하므로, LwM2M 관리 서버(또는 강력한 DTLS가 없는 세션에서 경로상의 공격자)가 128~254자 길이의 URI를 WRITE할 수 있습니다. 이후 context.uri에는 처음 128바이트만 NUL 종결자 없이 복사됩니다. 해당 버퍼는 이후 http_parser_parse_url(context.uri, strlen(context.uri), ...), strlen 기반 CoAP URI-path/PROXY-URI 옵션 추가, lwm2m_parse_peerinfo()에서 C 문자열로 사용되어 인접 정적 메모리의 경계를 벗어난 읽기(오버리드)가 발생합니다. 오버리드된 바이트는 발신 CoAP 요청에 추가되어(인접 디바이스 메모리 정보가 서버/프록시로 유출) 디바이스를 충돌시킬 수 있습니다(서비스 거부). 취약한 복사는 pull-context 리팩터링(v3.0.0에서 처음 릴리스)에서 도입되었으며 v4.4.0까지 존재합니다. 기본 활성화된 CONFIG_LWM2M_FIRMWARE_UPDATE_PULL_SUPPORT 경로가 영향을 받습니다. 수정은 strlen(uri) >= sizeof(context.uri) 검사를 추가하여 -ENOMEM을 반환하고 strcpy()로 전환하여 경계가 제한되고 NUL로 종결되는 버퍼를 보장합니다.
소스
1CVE-2026-10672에 대한 개념 증명 익스플로잇으로, Zephyr RTOS LwM2M 펌웨어 업데이트 풀 클라이언트의 out-of-bounds read(경계를 벗어난 읽기) 취약점입니다. 독립형 C 재현 코드와 테스트용 악성 CoAP/LwM2M 서버를 포함합니다.
책임 있는 사용
귀하가 소유하고 있거나 테스트할 권한이 있는 시스템에 대해서만 취약점 정보를 사용하십시오. Kitploit은 공개 연구 메타데이터에 연결되며 익스플로잇 코드나 악성 페이로드를 저장하지 않습니다.