멜트다운 및 스펙터 취약점으로부터 서버 보호

게시 됨: 2018-01-16

전 세계 대부분의 컴퓨터 프로세서가 Meltdown 및 Spectre 취약점에 취약하다는 사실을 모를 수도 있습니다. Meltdown과 Spectre는 무엇이며 서버를 보호하려면 어떻게 해야 하나요? 이 기사에서는 이러한 취약점을 살펴보고 영향을 받는 주요 하드웨어 공급업체에 대해 설명합니다. 가장 중요한 것은 데이터를 보호하기 위해 Windows 및 Linux 서버에서 수행해야 하는 단계를 설명한다는 것입니다.

뛰어들자!

Meltdown 및 Spectre 취약점은 무엇입니까?

Meltdown 및 Spectre는 컴퓨터 프로세서의 치명적인 취약점입니다. 그들은 프로그램이 실행될 때 정보를 누출하도록 허용하여 해당 정보를 해커가 사용할 수 있도록 합니다. 최신 컴퓨터 시스템은 사용자가 특별히 허용하지 않는 한 프로그램이 다른 프로그램의 데이터에 액세스할 수 없도록 설정되어 있습니다. Meltdown 및 Spectre 취약점으로 인해 공격자가 사용자의 허가 없이(일반적으로 사용자 모르게) 프로그램 데이터에 액세스할 수 있습니다. 즉, 공격자가 개인 사진, 이메일, 브라우저의 비밀번호 관리자에 저장한 비밀번호, 인스턴트 메시지, 회사 문서, 세금 신고서 등에 잠재적으로 액세스할 수 있습니다.

Meltdown 을 사용하면 모든 응용 프로그램이 전체 시스템 메모리에 액세스할 수 있습니다. 이 취약점을 완화하려면 운영 체제 패치 및 펌웨어 업데이트가 필요합니다.

왜 멜트다운이라고 합니까?
이 취약점은 민감한 정보를 보호하기 위해 존재하는 보안 경계를 "용해"합니다.

반면에 Spectre 는 한 응용 프로그램이 다른 응용 프로그램이 메모리의 일부에 액세스하도록 강제할 수 있습니다. 이 취약점은 Meltdown보다 악용하기 어렵지만 완화하기도 더 어렵습니다.

스펙터라고 불리는 이유는 무엇입니까?
이름은 취약점의 근본 원인인 "추측 실행" 프로세스를 기반으로 합니다. (또한, 고치기 어렵고 한동안 우리를 괴롭힐 것이기 때문입니다!)

어떤 하드웨어 공급업체가 영향을 받습니까?

Intel의 핵심 아키텍처와 AMD 프로세서가 가장 광범위하게 영향을 받습니다. 그러나 이러한 취약점에 영향을 받는 공급업체가 131개 이상 있습니다.

Meltdown의 영향을 받는 장치는 무엇입니까?
데스크탑, 노트북 및 클라우드 컴퓨터는 모두 Meltdown의 영향을 받습니다. Intel Itanium 및 Atom을 제외하고 투기 실행을 사용하는 1995년 이후에 만들어진 모든 Intel 프로세서는 잠재적으로 영향을 받습니다. 2013년 이후에 제조된 Itanium 및 Atom 프로세서는 Meltdown의 영향을 받지 않습니다.

어떤 장치가 Spectre의 영향을 받습니까?
Spectre는 데스크톱, 랩톱, 클라우드 서버 및 스마트폰에 영향을 미칩니다. 모든 최신 프로세서는 Spectre 취약점의 영향을 받을 수 있습니다. Spectre는 Intel, AMD 및 ARM 프로세서에서 확인되었습니다.

Meltdown 및 Spectre 취약점으로부터 Windows 서버를 보호하는 방법은 무엇입니까?

Windows 시스템이 취약한지 확인하는 것이 중요합니다. 그렇다면 조치를 취해야 합니다. 단계별 지침을 제공하여 쉽게 만들었습니다.

Windows 서버가 이러한 취약점으로부터 보호되는지 확인하는 방법은 무엇입니까?

  1. 서버에 로그인하고 Windows PowerShell 을 관리자로 실행하고 다음 명령을 실행합니다.
     설치 모듈 추측 제어 

  2. " Y "를 입력하고 Enter 키를 눌러 NuGet 공급자를 활성화합니다.
  3. 신뢰할 수 없는 소스에서 패키지를 설치할 것인지 묻는 메시지가 나타나면 " Y "를 입력하고 Enter 키를 누릅니다. 괜찮습니다!
  4. 다음 명령어를 실행하여 현재 실행 정책을 저장합니다.
     $SaveExecutionPolicy = Get-ExecutionPolicy
  5. 다음 명령을 실행하여 다음 단계에서 모듈을 가져올 수 있는지 확인하십시오.
     Set-ExecutionPolicy RemoteSigned - 범위 Currentuser
  6. Y ”를 입력하고 Enter 키를 눌러 실행 정책 변경을 확인합니다.
  7. 다음 명령을 실행하여 SpeculationControl 모듈을 가져옵니다.
     Import-Module SpeculationControl
  8. 마지막으로 다음 명령을 실행하여 장치에 필요한 업데이트가 있는지 확인하십시오.
     Get-SpeculationControlSettings 

서버가 여전히 Meltdown 및 Spectre 보안 결함에 취약한지 확인할 수 있습니다. 이 스크린샷은 보호되지 않는 Windows 시스템을 보여줍니다.

이러한 취약점으로부터 Windows 서버를 보호하는 방법은 무엇입니까?

Microsoft는 CPU 공급업체와 협력하여 중요한 보안 업데이트를 출시했습니다. 다음을 수행해야 합니다.

  1. 모든 보안 업데이트를 설치합니다.
  2. OEM 장치 제조업체의 해당 펌웨어 업데이트를 적용합니다.

Windows 업데이트를 확인할 때 2018년 1월에 릴리스된 보안 업데이트를 받지 못할 수 있습니다. 이러한 업데이트를 받으려면 가상 서버에 다음 레지스트리 키를 추가해야 합니다.

키= “HKEY_LOCAL_MACHINE” 하위 키= “SOFTWARE\Microsoft\Windows\CurrentVersion\QualityCompat” 값=”cadca5fe-87d3-4b96-b7fb-a231484277cc”
유형= “REG_DWORD”
데이터 = "0x00000000"

이 레지스트리 키를 추가했으면 서버를 재부팅하십시오. 시스템이 다시 시작된 후 업데이트를 확인하십시오. 모든 새 업데이트를 설치하고 서버를 다시 재부팅하십시오.

또한 다음 보안 패치가 설치되어 있는지 확인해야 합니다.

Windows Server, 버전 1709(Server Core 설치) – 4056892
윈도우 서버 2016 – 4056890
윈도우 서버 2012 R2 – 4056898
윈도우 서버 2008 R2 – 4056897

이러한 패치가 여전히 설치되지 않은 경우 업데이트 코드에 언급된 링크에서 다운로드할 수 있습니다.

시스템을 업데이트하고 OEM 장치 제조업체의 필수 펌웨어 업데이트를 적용했으면 Windows PowerShell에서 다음 명령을 다시 실행하여 서버가 안전한지 확인하십시오.

$SaveExecutionPolicy = Get-ExecutionPolicy
Set-ExecutionPolicy RemoteSigned - 범위 Currentuser
Import-Module SpeculationControl
Get-SpeculationControlSettings
Set-ExecutionPolicy $SaveExecutionPolicy -Scope Currentuser 

당신은 이제 위험 지대에서 벗어났습니다! 이 스크린샷은 Spectre 및 Meltdown 취약점으로부터 보호되는 Windows 시스템을 보여줍니다.

Meltdown 및 Spectre 취약점으로부터 Linux 서버를 보호하는 방법은 무엇입니까?

이러한 취약점은 하드웨어 기반이기 때문에 거의 모든 Linux 시스템이 영향을 받습니다. 많은 Linux 배포판은 취약점을 유발하는 프로세서 동작을 비활성화하거나 해결하여 Meltdown 및 Spectre를 완화하는 소프트웨어 업데이트를 출시했습니다. Linux 시스템은 아직 완전히 패치되지 않았습니다.

다음은 부분 완화가 포함된 커널 업데이트를 릴리스한 Linux 배포판 목록입니다.

  • CentOS 7: 커널 3.10.0-693.11.6
  • CentOS 6: 커널 2.6.32-696.18.7
  • 페도라 27: 커널 4.14.11-300
  • 페도라 26: 커널 4.14.11-200
  • Ubuntu 17.10: 커널 4.13.0-25-일반
  • Ubuntu 16.04: 커널 4.4.0-109-일반
  • Ubuntu 14.04: 커널 3.13.0-139-일반
  • 데비안 9: 커널 4.9.0-5-amd64
  • 데비안 8: 커널 3.16.0-5-amd64
  • 데비안 7: 커널 3.2.0-5-amd64
  • 페도라 27 아토믹: 커널 4.14.11-300.fc27.x86_64
  • CoreOS: 커널 4.14.11-coreos

커널 버전이 위에서 언급한 버전 이상으로 업데이트되면 일부 업데이트가 적용된 것입니다. 2018년 1월 12일 현재 FreeBSD 배포판은 아직 커널 업데이트를 릴리스하지 않았습니다. Ubuntu 17.04는 2018년 1월 13일에 EOL(End Of Life)에 도달하며 업데이트를 받지 않습니다.

다음은 CentOS 7.x의 Spectre 및 Meltdown 취약점을 확인하고 수정하기 위해 수행할 수 있는 단계입니다.

취약점을 확인하려면 아래 명령을 실행하십시오.

  1. 현재 OS 버전을 확인하려면.
    lsb_release -d
  2. 현재 커널 버전을 확인하려면.
    우나메 -a
  3. 시스템이 취약한지 여부를 확인합니다.
    CD/tmp
    wget https://raw.githubusercontent.com/speed47/spectre-meltdown-checker/master/spectre-meltdown-checker.sh
    sudo sh spectre-meltdown-checker.sh

    위의 스크린샷은 Meltdown/Spectre 취약점에 대한 수정 사항으로 패치되지 않은 CentOS 7.x의 출력입니다.

  4. 새 패치를 설치하려면 아래 명령을 실행해야 합니다.
    sudo 얌 업데이트
  5. yum 업데이트의 주된 이유는 커널 버전을 업데이트해야 하기 때문입니다. 패치가 설치되면 아래 명령을 사용하여 재부팅하십시오.
    재부팅
  6. 컴퓨터가 다시 시작되면 아래 명령을 사용하여 취약점을 다시 확인할 수 있습니다.
    sudo sh spectre-meltdown-checker.sh

    이 스크린샷은 Spectre Variant 1 및 Meltdown에 대해 취약하지 않음을 보여줍니다.

결론

Meltdown과 Spectre는 치명적인 취약점입니다. 그들은 계속해서 착취를 당하고 있으며, 그 피해의 전반적인 영향은 아직 확립되지 않았습니다.

시스템을 최신 운영 체제와 공급업체에서 출시한 최신 펌웨어 업데이트로 패치한 상태로 유지하는 것이 좋습니다.