🔍 CVE-2026-89720

7.7
CVSS Score
HIGH
2026-09-11
2026-10-19 09:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 UBIFS 파일 시스템에서 서명 길이 확인 시 잘못된 연산으로 인해 경계 외 읽기(Out-of-bounds read) 취약점이 발생합니다. 공격자가 조작된 UBIFS 이미지를 마운트할 경우, 서명 페이로드의 길이를 실제 할당된 메모리보다 크게 설정하여 메모리 범위를 벗어난 읽기가 가능해집니다.

💡 쉬운 설명

파일의 서명을 확인하는 과정에서 실제 크기보다 더 큰 데이터를 읽으려고 시도하는 오류가 있습니다. 이를 통해 해커가 조작된 파일을 시스템에 연결하면 컴퓨터의 메모리 일부를 잘못 읽어낼 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: ubifs: fix out-of-bounds read in signature length check ubifs_sb_verify_signature() bounds the on-disk ubifs_sig_node->len field before handing the signature payload to verify_pkcs7_signature(), but the check has the wrong sign: if (le32_to_cpu(signode->len) > snod->len + sizeof(struct ubifs_sig_node)) The signature bytes start sizeof(struct ubifs_sig_node) (UBIFS_SIG_NODE_SZ, 64 bytes) into the node, so the payload is at most snod->len - sizeof(struct ubifs_sig_node) bytes long. Adding the header size instead of subtracting it accepts a declared length up to 2 * UBIFS_SIG_NODE_SZ larger than the node actually holds -- past the end of c->sbuf, which is vmalloc(c->leb_size). verify_pkcs7_signature() -> pkcs7_parse_message() -> asn1_ber_decoder() is then handed that inflated length and reads beyond the allocation while walking the DER headers. The node length comes straight from the mounted image, so a crafted signed UBIFS image reaches this via ubifs_read_superblock() before the signature is cryptographically checked. snod->len is guaranteed to be >= UBIFS_SIG_NODE_SZ by the node scanner (c->ranges[UBIFS_SIG_NODE].min_len == UBIFS_SIG_NODE_SZ), so the corrected subtraction cannot underflow. Legitimately signed images are unaffected: a correct superblock never declares a signature longer than the node it is embedded in.

📍 영향받는 시스템

Linux kernel (UBIFS 파일 시스템을 사용하는 시스템)

⚔️ 공격 벡터

조작된 서명 길이를 포함한 UBIFS 이미지를 시스템에 마운트하여 발생

🛡️ 대응 방법

UBIFS 서명 길이 검증 로직이 수정된 최신 Linux 커널로 업데이트

🔧 검증 코드

출력된 커널 버전이 해당 취약점이 패치된 보안 업데이트 버전인지 확인

Shell / Script
uname -r

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H

💻 영향받는 소프트웨어

Linux Kernel