복구 파티션에 WiFi 암호를 저장하지 못하게하는 방법은 무엇입니까?


13

복구 파티션이 부팅되고 기본 시스템 파티션이 잠겨있을 때 Mac이 인터넷에 어떻게 연결될 수 있는지 항상 궁금했습니다.

일부 인터넷 검색 결과 오늘 WiFi 비밀번호가 NVRAM에 저장되어 있으며 비밀번호를 제거하기 위해 재설정해야한다는 것이 밝혀졌습니다 (예 : 여기 및 여기 에 묻습니다 ). 보안에 민감한 사람으로서 이것은 받아 들일 수 없습니다. 전체 디스크 암호화 (예 : Filevault2)를 사용하는 경우 네트워크에 대해서도 시스템이 안전하다고 생각합니다.

그렇다면 OS X이 복구 파티션에서 암호를 사용할 수 없도록하는 방법이 있습니까? 언제 어떻게 NVRAM에 들어가는 지 잘 모르겠습니다.

UPDATE1 : NVRAM에는 다음 키가 포함되어 있습니다. ( nvram -p) :

BootCampHD
SystemAudioVolume
SystemAudioVolumeDB
aht-results
backlight-level
bluetoothActiveControllerInfo
bluetoothInternalControllerInfo
boot-gamma
efi-apple-recovery
efi-boot-device
efi-boot-device-data
fmm-computer-name
good-samaritan-message
gpu-policy
prev-lang:kbd

키 efi-apple-recovery와 efi-boot-device암호화 된 데이터를 포함 할 수있는 것처럼 보입니다.


최근 게시물 중 하나로 MacBook Pro (2012 년 중반)가 있습니까? 그렇다면, 이것은 Intel Base Mac이며 PowerPC 기반 Mac에서와 같이 PRAM이 없습니다. 인텔 기반 Mac에는 NVRAM이 있습니다. 언급 한 기사에 대한 링크를 제공하십시오.
— user3439894

역사 수업에 대한 @ user3439894 감사합니다 :) 질문을 업데이트했습니다. 나는이 문제가 Mac 및 OS X와 ​​독립적이라고 생각합니다 (10.7에서 처음 주목했습니다).
— n1000

1
" OS X가 복구 파티션에 암호를 저장하지 못하게하는 방법이 있습니까? "라고 물었고 , 제공 한 링크에서 암호가 복구 HD 파티션이 아닌 NVRAM에 저장되고있는 것 같습니다. 터미널에서 사용하는 경우 nvram -pWi-Fi 암호를 보유하고있는 펌웨어 변수를 출력에서 ​​알 수 있습니까? 그렇다면 전체 NVRAM을 재설정하지 않고 해당 변수 하나만 지울 수 있습니다. sudo nvram -d variable_name터미널에서 사용하십시오 .
— user3439894

@ user3439894 흥미 롭습니다. 질문을 업데이트했습니다.
— n1000

답변:


17

OS X가 WPA 암호 (또는 PSK)를 NVRAM에 저장하지 못하게하는 방법은 항상 똑 같았습니다.

'nvram'을 사용하면 이러한 자격 증명을 보유하고 있다고 생각한 변수를 찾을 수 없었습니다. 오늘 저는 Linux의 USB 라이브 이미지로 부팅하고 Chipsec을 실행 하려고했습니다 . EFI 변수를 나열하는 명령은 OS X에서 nvram을 실행하여 얻는 것보다 훨씬 더 많은 결과를 얻습니다. MacBook Pro (2010 년 중반)의 변수 중 다음과 같습니다.

  • 현재 네트워크
  • 선호 네트워크
  • 보안 암호

현재 네트워크 변수의 데이터는 일반 텍스트로 내 홈 라우터의 SSID를 포함한다. 그런 다음 끝까지 32 바이트 인 0 바이트까지 채워지고 PSK (Pre-Shared Key) 의 64 자리 16 진수를 나타냅니다 .

바람직 - 네트워크는 동일한 내용 같은 변수 보이는 현재 네트워크 .

보안 암호 나는 이것이 펌웨어 잠금 암호 가정 있도록 변수는 EFI 암호 I 세트로 바이트 정확히 같은 수를 보유하고 있습니다. 나는 일종의 마스킹 / 인코딩을 사용하고 있다고 생각합니다. 내가 가진 한 가지 이론은이 암호가 키보드 스캔 코드 또는 다른 것으로 저장되어 있지만 아직 충분한 정보가 없다는 것입니다.

아마도 Chipsec 또는 다른 EFI 도구를 사용하면 이러한 EFI 변수를 제로화하고 다시 작성할 수 없도록 액세스 제어 / 권한 플래그를 설정할 수 있습니다. 아마도 그것들을 제로화하는 것조차도 당신에게 해결책이 될 것입니다 (노트북이나 무언가를 재판매 해야하는 경우). OS X이 정기적으로 다시 작성하는지 또는 WPA 자격 증명을 변경할 때만 알 수 있습니다.

편집 : 방금 NVRAM에서 wifi 암호를 검색하는 명령에 대해 배웠습니다. /usr/libexec/airportd readNVRAM

또한 GUID를 연결하여 nvram은 실제로 다음 값을 읽을 수 있습니다.

  • nvram 36C28AB5-6566-4C50-9EBD-CBB920F83843:current-network
  • nvram 36C28AB5-6566-4C50-9EBD-CBB920F83843:preferred-networks
  • nvram 36C28AB5-6566-4C50-9EBD-CBB920F83843:preferred-count

따라서 이러한 변수를 날려 버릴 수 있습니다.

편집 2 : 이전 주석에서 언급했듯이 EFI 변수를 삭제하는 방법은 다음과 같습니다 (삭제해야하는 경우).sudo nvram -d 36C28AB5-6566-4C50-9EBD-CBB920F83843:current-network

변수가 반환되는지 여부는 아직 확실하지 않습니다.


흥미로운 통찰력. 자세한 내용은 계속 업데이트하십시오! IMHO이 질문에 대한 완전한 대답은 암호를 삭제하는 지침을 이상적으로 제공합니다 ... /usr/libexec/airportd readNVRAM현재 네트워크가 나열되어 있지만 Recovery Networks목록이 비어 있습니다.
— n1000

감사. 변수를 삭제하는 방법에 대한 메모와 함께 편집을 추가했지만 변수가 반환되지 않도록하는 방법을 모르겠습니다.
— Mike Myers

nvram에 액세스하기 위해 루트로 실행하지 않아도됩니까? 암호를 암호화 한 것 같습니다. 보안 측면에서 충분하지 않습니까?
— videoguy

nvram을 읽기 위해 루트로 실행하지 않아도되지만 삭제해야합니다.
— Mike Myers

1
암호를 암호화하는지 여부 : 무선 네트워크 자격 증명은 암호 / 암호로 저장되지 않지만 실제로는 2 진 PSK입니다. 표시 될 때 암호화 된 것처럼 보일 수 있지만 그렇지 않습니다. 인코딩 된 16 진 문자열입니다. nvram 명령을 실행할 때보 다 airportd 명령을 사용하는 것이 더 쉽습니다. 방금 OS X 10.11로 테스트했지만 nvram 명령 방법이 여전히 작동합니다. 공항에 관해서는, 루트 여부에 상관없이 "readNVRAM"명령을 무시하는 것 같습니다. 그들이 무엇을 바꿨는지 모르겠다. 매뉴얼 페이지에 여전히 명령이 존재하지만 더 이상 작동하지 않습니까?
— Mike Myers
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.