CacheWarp - AMD SEV-ES와 SEV-SNP에 대한 소프트웨어 결함 공격
(cachewarpattack.com)- CISPA가 AMD의 SEV로 보호받는 VM에 침입할 수 있는 소프트웨어 결함을 공개함.
- SEV는 Secure Encrypted Virtualization의 약자로 클라우드 제공업체가 VM을 확인하거나 조작할 수 없도록 암호화하는 VM 보안 기능임.
- SEV-SNP는 SEV의 최신 버전으로 VM 내부의 저장된 데이터를 변경하는 것 또한 방지함.
- CacheWarp는 SEV VM에 대한 소프트웨어 결함 공격을 통해 메모리 쓰기를 선택적으로 제거하여 오래된 값으로 되돌릴 수 있음.
- 이를 통해 시스템 변수를 변경하여 인증된 세션을 복원하거나, 스택에 저장된 주소를 변경하여 프로그램의 제어 흐름을 변경하는 것이 가능함.
- 이는 SEV-SNP에도 적용되어 모든 SEV 변종에 대해 공격이 가능.
- 이 공격을 통해 OpenSSH의 인증을 우회하여 원격 코드 실행을 하거나, Sudo의 인증을 우회하여 권한 상승을 하는 데모를 공개함.
- CPU의 설계에 문제가 있는 하드웨어 결함이며, 임시 실행 공격이나 부채널 공격이 아님.
- 취약점은 1~3세대 AMD EPYC™ 프로세서에만 영향을 미치며, 4세대에는 영향을 주지 않는 것으로 확인됨.
- AMD는 3세대 EPYC™ 프로세서에 대한 패치를 제공했으며, 1세대 및 2세대에서는 완화 조치를 사용할 수 없다고 밝힘.
쉽게 말하면 호스트가 AMD SEV로 보호된 VM의 데이터를 조작하거나 침입할 수 있는 취약점인 것 같습니다.심각성은 중단 정도로 평가하는 것 같네요.
로고가 이뻐서 가져와봤습니다.
논문 AI 요약.
이 백서에서는 AMD SEV-ES 및 SEV-SNP 아키텍처에 대한 새로운 소프트웨어 기반 결함 공격인 CacheWarp를 소개합니다. 이 공격은 캐시 라인을 메모리에 다시 쓰지 않고 무효화하는 invd 명령을 악용하여 게스트 가상 머신이 수행한 쓰기를 선택적으로 삭제할 수 있습니다. 이를 통해 캐시 라인을 이전의 오래된 값으로 되돌리고 메모리 일관성을 위반할 수 있습니다.
세 가지 사례 연구가 제시됩니다. 첫째, 이 공격은 오류를 유도하여 인텔의 IPP 라이브러리에서 RSA-CRT 구현을 중단시켜 개인 키를 추출할 수 있도록 합니다. 둘째, 비밀번호 확인의 쓰기를 삭제하여 OpenSSH 서버에서 인증을 우회하는 데 사용됩니다. 셋째, 이 공격은 sudo 바이너리에 대한 권한 상승을 가능하게 합니다.
이 논문에서는 페이지 폴트 스테핑 및 선택적 캐시 라인 퇴거와 같은 기술을 개발하여 게스트 실행을 정밀하게 제어하고 원하는 쓰기만 삭제합니다. 이러한 기법은 SEV-ES와 최신 SEV-SNP 모두에서 작동하며, 취약점이 완전히 완화되지 않았음을 보여줍니다.
요약하면, 캐시워프는 AMD의 보안 가상화 기술의 무결성 보장을 손상시키는 강력하고 새로운 소프트웨어 기반 결함 공격을 제시합니다. 이는 암호화 키 해독 및 권한 상승과 같은 실제 공격을 가능하게 합니다. 이번 연구 결과는 메모리 일관성이 신뢰할 수 있는 실행 환경에서도 여전히 도전적인 문제임을 강조합니다.