DMA 공격으로부터 Linux를 강화하는 방법은 무엇입니까?

DMA 공격으로부터 Linux를 강화하는 방법은 무엇입니까?

DMA 공격에 저항하도록 Linux 시스템을 어떻게 구성합니까? 불가능하게 만드는 방법이 있나요?

DMA 공격

발췌위키피디아에서

최신 운영 체제에서는 비시스템(예: 사용자 모드) 응용 프로그램이 가상 메모리 컨트롤러(MMU 또는 메모리 매핑 장치라고 함)에 의해 명시적으로 승인되지 않은 메모리 위치에 액세스할 수 없습니다. 의도하지 않은 소프트웨어 오류로 인한 손상을 억제하고 물리적 메모리를 보다 효율적으로 사용할 수 있게 하는 것 외에도 이 아키텍처는 최신 운영 체제 보안의 필수적인 부분을 구성합니다. 그러나 커널 모드 드라이버, 많은 하드웨어 장치 및 가끔씩 발생하는 사용자 모드 취약성으로 인해 물리적 메모리 주소 공간에 대한 직접적이고 방해받지 않는 액세스가 허용됩니다. 물리적 주소 공간에는 모든 기본 시스템 메모리뿐만 아니라 메모리 매핑된 버스 및 하드웨어 장치(일반 RAM과 마찬가지로 읽기 및 쓰기를 통해 운영 체제에 의해 제어됨)가 포함됩니다.

답변1

즉, 잠재적인 공격 경로를 완전히 차단하는 것은 불가능합니다. Wikipedia 기사를 보면 기본적으로 4가지 경로를 이해해야 합니다.

  1. 커널 모드 드라이버
  2. 많은 하드웨어 장치
  3. 사용자 모드 취약점
  4. 사회공학

위험을 완화하는 가장 좋은 방법(무언가를 보호할 때 할 수 있는 전부)은 위의 네 가지 항목에 대한 노출을 제어하는 ​​것입니다.

1을 차단하려면 누구에게도 커널 드라이버를 로드할 수 있는 권한을 부여하지 마십시오. 또한 불필요한 드라이버를 설치하지 마십시오.

2를 차단하려면 사람들이 시스템에 물리적으로 접근하는 것을 거부합니다. 물리적 접근이 컴퓨터의 핵심 운영자로 제한되는 안전한 데이터 센터를 사용하십시오.

포인트 3을 방지하려면 사용자가 꼭 필요한 것보다 더 많은 애플리케이션을 실행하도록 허용하지 마십시오. 이는 작업 범위를 벗어나므로 필요한 것 이상을 설치하지 마십시오. gcc예를 들어 프로덕션 서버인 경우 해당 서버에 설치하지 마세요.

포인트 4, 사기를 탐지할 수 있도록 지원 직원을 교육하십시오.

또 다른 방법은 업데이트가 적시에 설치되고 검토되도록 하는 것입니다. 예를 들어, 1년에 한 번 시스템을 업데이트하지 마세요.

답변2

Thunderbolt 및 FireWire 어댑터를 비활성화하고 다른 사람이 PCI(e) 카드를 삽입할 수 없도록 상자를 물리적으로 잠급니다.

답변3

펜치를 들고 마더보드의 포트나 액세스 포인트를 물리적으로 찢어냅니다. 도둑이 물리적으로 하드웨어에 침투할 수 있는 방법을 찾을 수 없다면 최대한 안전할 것입니다. 주변에 아무것도 손상시키지 않도록 하세요. 물론 이렇게 하면 특정 지점이 작동하지 않게 되므로 이 작업을 시도하고 싶은지 확실히 확인하세요.

관련 정보