물리적 액세스에 노출 된 원격 배포 서버의 데이터 도난 방지 [폐쇄]


13

물리적 액세스에 노출 된 Linux 서버를 보호하는 방법을 생각하고 있습니다. 내 특정 플랫폼은 PC Engines 브랜드 alix2d13 마더 보드의 소형 폼 팩터 Linux 서버입니다 . 크기가 작 으면 공격자가 구내에서 제거 할 위험이 추가로 발생합니다.

서버에 물리적으로 액세스한다고 가정합니다.

1) 루트 암호 : 콘솔 케이블을 서버에 연결하면 암호를 묻는 메시지가 나타납니다. 비밀번호를 모르면 단일 사용자 모드에서 기기를 다시 시작하고 비밀번호를 재설정 할 수 있습니다. Voilà, 당신은 루트 액세스 권한을 얻습니다.

위의 내용을 보호하기 위해 GRUB 메뉴 에 암호를 삽입하여 단일 사용자 모드로 들어가기 위해 서버를 다시 시작할 때 GRUB 암호를 제공해야합니다.

2) GRUB_PASSWORD. 머신을 종료하고 하드 드라이브를 꺼내 다른 워크 스테이션에 마운트 /boot하면 GRUB 암호를 찾을 수있는 grub.cfg 파일이 들어있는 디렉토리 를 찾아 볼 수 있습니다. GRUB 비밀번호를 변경하거나 삭제할 수 있습니다.

분명히 우리가 큰 생산 기계에 대해 이야기 할 때 아마도 물리적 액세스가 없을 것입니다. 다른 사람이 서버에 물리적으로 액세스하더라도 서버를 종료하지 않을 것입니다.

물리적으로 도용하기 쉬운 서버에서 데이터 도난을 방지 할 수있는 솔루션은 무엇입니까?

내가 보는 방식으로 포함 된 데이터에 대한 한 가지 방법 또는 다른 방법으로 액세스 할 수 있습니다.


3
부팅 할 때마다 암호 해독 암호를 입력하고 싶지 않다면 할 수있는 일은 많지 않습니다. 적절한 네트워크에있는 경우에만 사용할 수있는 네트워크 서비스와 통신하여 암호 해독을 수행 할 수 있습니다. 그것은 매우 안전하지는 않지만 도둑이 현장에서 데이터에 액세스하려고하지 않는 경우를 다루기에 충분합니다. 그러나 대상 공격자는 전원을 끄지 않고도 컴퓨터를 훔칠 수도 있습니다. 몇 분 동안 전원을 공급하는 데 배터리 용량이 많이 들지 않을 것이라고 생각합니다.
kasperd

12
콘크리트에 묻으십시오. 확실히 도난을 막을 것입니다!
Michael Hampton

14
위협 모델이 무엇인지는 확실하지 않습니다. 물리적 손상에 취약한 장치를 원하십니까? 그것은 매우 복잡하고 비쌀 것입니다. 컴퓨터는 볼트가 아닙니다. 볼트를 원하면 볼트가 필요합니다.
David Schwartz

3
@BlueCompute이 문제는 전문적인 환경에서도 발생할 수 있으므로 여기에 머물러 있어야합니다.
Nils

3
@giomanda 그리고 "threa t 모델"입니다. 그리고 그것이 의미하는 것의 일부는 당신이 무엇을 확보하고 있는지, 무엇을 확보하고 있는지 철저히 이해해야한다는 것입니다. SEAL Team Six를 사용하여 Al Qaeda의 Fort Knox를 방어 할 수 있지만 인근 도둑으로부터 새로운 플라즈마 TV를 방어 할 수는 없습니다.
David Schwartz

답변:


18

내가 항상 일한 규칙은 일단 공격자가 호스트에 물리적으로 액세스하면 결국 호스트에 침입 할 수 있다는 것입니다. 호스트가 부팅 할 때마다 입력합니다.


14
그리고 물리적 액세스가 가능한 somwone은 부팅 암호를 입력하는 데 사용되는 키보드를 대체하여 암호를 배울 수 있습니다.
Hagen von Eitzen

2
@HagenvonEitzen 솔루션 : 키보드를 가지고 다니면서 상자의 물리적 USB (또는 PS / 2) 포트를 조작하지 마십시오.
Jules

10
@JulesMazur 반격 : Evil Maid가 온보드 펌웨어를 다시 깜박입니다.
CVn

1
@ MichaelKjörling Defense : 펌웨어 암호, 물리적으로 강력하게 고정 된 서버 상자.
Jules

6
@ MichaelKjörling 당신은 키보드 및 / 또는 펌웨어를 가로채는 사악한 하녀들의 깡패를 돌보는 것으로 너무 안전하지 않을 수 있습니다
Jules

10

내가 아는 해결책은 디스크를 암호화하고 TPM을 사용하는 것입니다 : 신뢰할 수있는 플랫폼 모듈

이런 식으로 하드 드라이브의 암호를 해독하는 방법은 다음과 같습니다.

전체 디스크 암호화 응용 프로그램 [...]은이 기술 [TPM]을 사용하여 컴퓨터의 하드 디스크를 암호화하고 신뢰할 수있는 부팅 경로 (예 : BIOS, 부팅 섹터 등)에 대한 무결성 인증을 제공 할 수 있습니다. 타사 전체 디스크 암호화 제품도 TPM을 지원합니다. 그러나 TrueCrypt는 사용하지 않기로 결정했습니다. -위키 백과

물론 틀릴 ​​수도 있고 TPM이 쉽게 깨지거나 다른 해결책을 모를 수도 있습니다.


맞습니다. TPM, 암호화 된 드라이브 및 UEFI 서명을 사용하면 외부인이 드라이브를 읽거나 부트 로더를 수정하여 암호화를 피할 수 없습니다.
longneck

이 기능을 모든 컴퓨터에 추가하기 위해 TPM에 USB 펜이 있는지 알고 있으면 흥미로울 것입니다.
ColOfAbRiX

1
아닙니다. 바이오스는 tpm을 관리해야하기 때문입니다.
longneck

3
물리적 액세스를 통해 TPM조차도 많은 일을하지 않을 것입니다 ... 컴퓨터가 부팅 될 때 TPM 칩에서 데이터를 쉽게 스니핑하거나 컴퓨터에 알리지 않고 컴퓨터의 전체 메모리에 액세스 할 수 있습니다. "열쇠는 괜찮습니다).

2
TPM은 PCI 열거에 응답하지 않지만 나중에 DMA를 통해 OS를 덮어 쓰는 버스의 PCI 장치로 넘어갑니다.
joshudson

7

전체 디스크 암호화는 랩톱 및 소규모 홈 서버에 적합합니다.

전체 디스크 암호화에는 TPM이 필요하지 않습니다. 그리고 심지어 TPM조차도 정교한 사악한 하녀 공격 으로부터 당신을 보호 할 수 없습니다 . 따라서 소규모 홈 Linux 서버 (또는 데이터 센터)를 실제로 보호하려면 적절한 다른 물리적 대응 조치가 필요합니다.

가정용 유스 케이스의 경우 다음과 같은 창의적인 DIY 하드웨어를 설치하는 것으로 충분할 수 있습니다.

  1. 돌아 왔을 때 물리적 인 침입을 인식하고
  2. 물리적 침입 시도시 컴퓨터의 전원 공급 장치를 방해합니다.

일부 대기업이나 강력한 정부 기관을 상대로 삼고있는 언론인과 호루라기 송풍기의 경우 여전히 충분하지 않습니다. 이 세 기관은 전원 을 끈 후에도 몇 분 안에 RAM에서 일반 텍스트를 구제하는 데 필요한 법의학 장비를 보유 할 수 있습니다 .


7

간단한 해결책은 다음과 같습니다. 단일 사용자 모드없이 커널을 다시 빌드하십시오!

더 적절하게 말하면, 모드 S가 기본 모드 (3,4,5)가 될 때마다 다시 매핑되도록 사용중인 Linux 커널을 편집하십시오. 이렇게하면 단일 사용자 모드로 부팅하려고하면 시스템이 정상적으로 시작됩니다. init 스크립트에서 똑같은 일을 할 수 있습니다. 그렇게하면 암호를 몰라도 시스템에 들어가는 특별한 수단이 없습니다.


그래도 grub 프롬프트에 액세스 할 수 있으면 커널 매개 변수를로 변경할 수 있습니다 init=/bin/bash. 그러면 루트 bash 쉘로 부팅 한 다음 마운트 할 수 있습니다 /.
Jens Timmerman

Grub은 항상 셸에 대한 액세스를 허용하지 않도록 구성 할 수 있습니다.
Arkain

이 질문에 대한 다른 답변에서 이미 지적한 바와 같이 : 숙련 된 공격자가 컴퓨터에 물리적으로 액세스 할 수있는 경우 귀사의 재 구축 커널은 귀중한 비밀 데이터 보석이 포함 된 무덤으로가는 오래된 스파이더 웹에 지나지 않습니다. :-)
pefu

3

가서 전자 사이트에 문의하십시오. 나는 모든 것을 암호화하는 내장 SOC 디자인이 있다고 확신하고 일단 융합하면 리버스 엔지니어링이 불가능하다.

즉, 팀이 어떻게 분리했는지 정확히 보여주는 DefCon 프레젠테이션에있었습니다. 많은 경우에 칩이 융합되지 않았거나 칩 설계에 어리석게 연결되지 않은 디버그 포트가 포함되어있었습니다. 다른 이들은 칩 층을 화학적으로 제거하고 전자 현미경 스캔으로 칩을 읽었습니다. 당신은 정말로 헌신적 인 해커로부터 안전하지 않을 것입니다.


1

파괴적인 예방 조치를 기꺼이 원한다면 다른 접근법을 제안하고 싶습니다. 대용량 감지 커패시터를 hdd 및 램에 납땜하여 변조 감지 (방법 / 센서 결정)시 데이터 파괴를 방지합니다.

이것은 빈 의미에서 아무도 "시스템을 액세스하지 못합니다"라는 접근을 방지합니다. 따라서 그것은 의도적으로 완전히 빠져있는 동안 질문에 대답합니다.

커패시터는 단지 예일뿐입니다. 다른 가능성이 존재합니다. 문제는 장치의 날씨 파괴 (또는 적어도 포함 된 데이터)가 허용 가능하다는 것입니다.

타이머 기반 솔루션도 가능합니다-장치가 몇 분 / 시간 / 시간마다 집으로 핑 (ping) 할 수 없다면 ... 스스로 파괴합니다. 이 주제에 따른 다양한 가능성.


최소한 회전식 HDD는 플래터를 다른 동일한 모델 드라이브에 이식 할 수 있으며 PCB가 완전히 파괴 된 경우에도 잘 읽습니다. (SSD에 대해서는 확실하지 않지만, 그렇게 힘들지는 않을 것입니다.) 이것은 데이터 복구 회사가 항상하는 일입니다. 합리적인 정도의 확실성 (여전히 확실하지는 않지만)으로 이와 같은 작업을 수행하려는 경우 드라이브의 창자 안에 작은 폭발물을 넣으십시오. 의도 한 파괴력과 관련이없는 이유로 회전식 HDD보다 SSD에서 더 잘 작동합니다.
CVn

@ MichaelKjörling Thermite가 갈 길입니다. HDD의 폭발물은 실제로 데이터를 파괴하기 위해 비교적 큰 폭발이 필요합니다. 폭발물이 실제로 드라이브 있으면 상단 플래터를 파괴 하지만 드라이브 플래터는 꽤 무겁습니다. 안전하지 않은 폭발물이 없으면 소각되지 않습니다. Thermite는 금속을 통해 아주 좋은 화상을 입습니다.
DanielST

1

잠재적 인 해결책은 전체 디스크 암호화를 사용하고 USB 스틱 / 메모리 카드에 키를 넣은 다음 일부 환경 센서와 함께 개방 스위치가있는 단일 도어가있는 금속 상자에 컴퓨터를 넣는 것입니다.

USB 드라이브를 포트 ( "볼트"외부)에 넣고 장치를 부팅하려면 여기에서 FDE 키를 읽고 시스템을 부팅하십시오. "볼트"가 열려 있으면 열기 스위치가 시스템을 재설정하여 메모리에서 키를 지 웁니다.

환경이 허용하는 경우 온도, 가속도, 습도 등과 같은 센서를 더 추가 할 수 있습니다.보고 된 값에서 갑작스러운 변화가 감지되면 시스템이 재설정되므로 도둑이 시스템을 가져 가려고하면 그의 주머니에는 모든 케이블에서 분리하기 전에 이미 재설정되어 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.