
CVE-2026-64531에 대한 로컬 권한 상승 개념 증명(PoC)으로, OVS 커널 데이터패스를 악용해 자격 증명을 손상시키고 sudoers 주입을 통해 루트 권한을 획득합니다.
[!WARNING] 이 PoC는 방어자, 유지보수자, 그리고 권한이 부여된 보안 팀이 자체 소유 또는 명시적으로 테스트 권한을 부여받은 시스템에서 패치, 완화 조치, 탐지 및 노출 범위를 검증하는 데만 도움이 되도록 제공됩니다.
이 자료의 사용이 합법적이고, 권한이 부여되었으며, 통제된 상태에서 격리된 테스트 환경에서 수행되도록 하는 책임은 전적으로 사용자에게 있습니다.
[!WARNING] 이 PoC는 파괴적입니다. 성공 시 라이브 커널 자격 증명(credential)을 손상시키고,
/etc/sudoers.d또는/etc/sudoers를 수정하며, 루트 셸을 열고, 안전하지 않은 종료를 피하기 위해 분리된 프로세스와 손상된 OVS 상태를 남겨둡니다.일회용 VM/임시 호스트에서만 실행하십시오. 재부팅하면 남아 있는 프로세스는 중지되지만 sudoers 수정은 되돌리지 않습니다.
이 PoC는:
nla_len을 래핑합니다.sudo -n bash를 실행합니다.이 PoC는 단순함을 위해 x86-64를 대상으로 가정합니다. 이론적으로 이 버그는 아키텍처 특정적이지 않아야 합니다.
unshare -Urn)sudo, bash, unshare, idpasswd 항목이 있는 권한 없는 사용자로 실행하십시오.
python3 ovswrap-poc.py
PoC는 자동으로 unshare -Urn을 시도하고, AppArmor에 차단된 경우 aa-exec -p trinity -- unshare -Urn으로 대체합니다.
PoC에는 약 800개의 정확한 x86-64 커널 빌드에 대해 미리 파생된 값이 포함되어 있으며, 다음을 사용하여 매칭합니다:
uname -r
uname -v
uname -m
일치하는 레코드는 로컬 심볼, BTF, 디버그 패키지 또는 pahole이 필요 없습니다. 포함되지 않은 빌드의 경우, PoC는 확인을 요청하고 다음에서 동적 파생을 시도합니다:
System.map 또는 0이 아닌 /proc/kallsyms;pahole.값 파생에 실패한다고 해서 커널이 영향을 받지 않는다는 의미는 아닙니다. 동적 파생은 여러 이유로 실패할 수 있기 때문입니다. 영향을 받는지 확인하는 더 나은 방법은 writeup을 참조하십시오.