보안 연구원들은 Project Zero 에 프로그램이 다른 프로그램의 메모리에서 정보를 훔칠 수있는 Specter and Meltdown이라는 새로운 취약점 을 발표했습니다 . 인텔, AMD 및 ARM 아키텍처에 영향을줍니다.
이 결함은 JavaScript 웹 사이트를 방문하여 원격으로 악용 될 수 있습니다. 기술 정보는 redhat 웹 사이트 , Ubuntu 보안 팀 에서 찾을 수 있습니다 .
추측 실행 측 채널 공격을 통한 정보 유출 (CVE-2017-5715, CVE-2017-5753, CVE-2017-5754 일명 스펙터 및 멜트 다운)
새로운 클래스의 사이드 채널 공격이 인텔, AMD 및 ARM의 프로세서를 포함한 대부분의 프로세서에 영향을주는 것으로 밝혀졌습니다. 이 공격을 통해 악의적 인 사용자 공간 프로세스가 게스트의 커널 메모리 및 악의적 인 코드를 읽고 하이퍼 바이저 메모리를 읽을 수 있습니다. 이 문제를 해결하려면 Ubuntu 커널 및 프로세서 마이크로 코드에 대한 업데이트가 필요합니다. 이 업데이트는 향후 Ubuntu 보안 공지에서 발표 될 예정입니다.
개념 증명으로, JavaScript 코드는 Google Chrome 브라우저에서 실행될 때 JavaScript가 실행되는 프로세스에서 개인 메모리를 읽을 수 있도록 작성되었습니다.
내 시스템은 스펙터 취약점의 영향을받는 것 같습니다. 이 개념 증명 ( spectre.c
) 을 편집하고 실행했습니다 .
시스템 정보:
$ uname -a
4.13.0-0.bpo.1-amd64 #1 SMP Debian 4.13.13-1~bpo9+1 (2017-11-22) x86_64 GNU/Linux
$ cat /proc/cpuinfo
model name : Intel(R) Core(TM) i3-3217U CPU @ 1.80GHz
$gcc --version
gcc (Debian 6.3.0-18) 6.3.0 20170516
Linux 시스템에서 Spectre 및 Meldown 취약성을 완화하는 방법은 무엇입니까?
추가 정보 : Meltdown을 사용하여 실시간으로 암호를 훔치기 .
최신 정보
데비안 스트레치에서 cve-2017-5754를 완화 할 수있는 보안 업데이트가 제공되므로 @Carlos Pasqualini 답변 다음 커널 버전으로 Spectre & Meltdown Checker
전환 한 후 사용 4.9.0-5
:
CVE-2017-5753 [bounds check bypass] aka 'Spectre Variant 1'
* Checking count of LFENCE opcodes in kernel: NO (only 31 opcodes found, should be >= 70)
> STATUS: VULNERABLE (heuristic to be improved when official patches become available)
CVE-2017-5715 [branch target injection] aka 'Spectre Variant 2'
* Mitigation 1
* Hardware (CPU microcode) support for mitigation: NO
* Kernel support for IBRS: NO
* IBRS enabled for Kernel space: NO
* IBRS enabled for User space: NO
* Mitigation 2
* Kernel compiled with retpoline option: NO
* Kernel compiled with a retpoline-aware compiler: NO
> STATUS: VULNERABLE (IBRS hardware + kernel support OR kernel with retpoline are needed to mitigate the vulnerability)
CVE-2017-5754 [rogue data cache load] aka 'Meltdown' aka 'Variant 3'
* Kernel supports Page Table Isolation (PTI): YES
* PTI enabled and active: YES
> STATUS: NOT VULNERABLE (PTI mitigates the vulnerability)
2018 년 1 월 25 일 업데이트
이 spectre-meltdown-checker
스크립트는 공식적으로 debian 패키지로 제공되며 백 포트 저장소, Buster 및 Sid를 통해 Debian Stretch에서 사용할 수 있습니다 .
SSB (추측 저장 우회) – 변형 4라고도 함
모든 이전 메모리 쓰기의 주소가 알려지기 전에 메모리 실행의 추론 적 실행 및 추론 적 실행을 이용하는 마이크로 프로세서를 가진 시스템은 사이드 채널 분석을 통해 로컬 사용자 액세스 권한을 가진 공격자에게 정보의 무단 공개를 허용 할 수 있습니다.
RSRE (Rogue System Register Read) – 변형 3a라고도 함
추론 적 실행을 활용하고 시스템 레지스터의 추론 적 판독을 수행하는 마이크로 프로세서가있는 시스템은 사이드 채널 분석을 통해 로컬 사용자 액세스 권한을 가진 공격자에게 시스템 매개 변수를 무단으로 공개 할 수 있습니다.
2018 년 7 월 27 일 편집
NetSpectre : 네트워크를 통한 임의 메모리 읽기
이 백서에서는 Specter 변형 1을 기반으로하는 새로운 공격 인 NetSpectre를 제시합니다. 따라서 대상 장치에서 공격자 제어 코드가 필요하지 않으므로 수십억 개의 장치에 영향을줍니다. 로컬 스펙터 공격과 마찬가지로 원격 공격에는 대상 코드에 스펙터 가젯이 있어야합니다. 노출 된 네트워크 인터페이스 또는 API에 필요한 Spectre 가젯이 포함 된 시스템은 일반적인 원격 Spectre 공격으로 공격을받을 수 있으므로 네트워크를 통해 임의의 메모리를 읽을 수 있습니다. 공격자는 일련의 조작 된 요청 만 피해자에게 보내고 응답 시간을 측정하여 희생자의 메모리에서 비밀 값을 유출합니다.