Apple은 사용자가 실행하는 모든 Mac 앱을 추적합니까? OCSP 설명

Mac은 앱을 실행할 때마다 Apple의 집으로 전화를 걸나요? Apple 서버가 느려지고 최신 Mac에서 앱을 여는 데 오랜 시간이 걸렸던 2020년 10월 12일 이후에 떠도는 주장입니다. 무슨 일인지 설명드리겠습니다.

정보: 이는 macOS Big Sur 및 macOS Catalina 모두에 적용됩니다. 속도 저하 및 관련 개인 정보 보호 문제는 macOS Big Sur에서 새로운 것이 아닙니다.

Mac 앱이 개발자 인증서로 서명된 이유

Mac에서 Mac App Store 또는 웹에서 다운로드하는 앱은 개발자 인증서로 서명됩니다. 앱을 실행할 때마다 합법적인 개발자가 서명했으며 변조되지 않았는지 앱을 확인합니다. 이는 맬웨어로부터 사용자를 보호하는 데 도움이 됩니다.

예를 들어, Mozilla는 Firefox를 만들 때 Firefox 응용 프로그램 파일을 컴파일한 다음 Mozilla의 개발자 인증서로 서명합니다. 이것은 파일이 합법적이고 Mozilla에서 생성했음을 증명하는 Mozilla의 방법입니다. 나중에 응용 프로그램 파일이 변경되면 Mac에서 그 차이를 알아차릴 것입니다.

이러한 인증서는 특정 기간(예: 몇 년) 동안만 유효하지만 조기에 “취소”될 수 있습니다. 예를 들어 Apple이 개발자가 인증서를 사용하여 악성 앱에 서명하고 있음을 발견하면 Apple은 인증서를 취소합니다. Mac은 해지된 인증서가 있는 앱을 로드하지 않습니다.

OCSP 설명: Mac Phone이 집에 있는 이유는 무엇입니까?

그러나 잠시만요. Apple이 Mac의 앱과 연결된 인증서를 취소했는지 Mac에서 어떻게 알 수 있습니까? 확인하기 위해 Mac은 온라인 인증서 상태 프로토콜(OCSP)이라는 것을 사용합니다. 또한 웹 브라우저에서 탐색할 때 웹 사이트 인증서를 확인하는 데 사용됩니다.

앱을 실행하면 Mac에서 해당 인증서에 대한 정보를 Apple 서버(ocsp.apple.com)로 보냅니다. Mac은 이 Apple 서버에 인증서가 취소되었는지 묻습니다. 그렇지 않은 경우 Mac에서 앱을 실행합니다. 인증서가 취소된 경우 Mac에서 앱이 실행되지 않습니다.

앱을 실행할 때마다 이 문제가 발생합니까?

Mac은 일정 기간 동안 이러한 응답을 기억합니다. 2020년 11월 12일에 응답이 5분 동안 캐시되었습니다. 즉, 앱을 실행하고 닫았다가 4분 후에 다시 실행하면 Mac에서 Apple에 두 번째로 인증서에 대해 요청할 필요가 없습니다. 그러나 앱을 실행하고 닫았다가 6분 후에 실행하면 Mac에서 Apple 서버에 다시 요청해야 합니다.

이유가 무엇이든(아마도 macOS Big Sur의 변경으로 인해) 2020년 11월 12일에 Apple의 서버가 꽉 차서 매우 느려졌습니다. 섬기는 사람.

그 사건 이후, Apple의 OSCP 서버는 이제 Mac에 12시간 동안 인증서 유효성 응답을 기억하도록 지시합니다. Mac은 집에 전화를 걸어 앱을 실행할 때마다 인증서에 대해 묻습니다. 단, 지난 12시간 동안 응답을 받지 못한 경우에는 그럴 필요가 없습니다. (여기에 있는 기간에 대한 정보는 독립 앱 개발자가 제공한 것입니다. 제프 존슨.)

Mac이 오프라인 상태이면 어떻게 합니까?

OCSP 검사는 유예로 실패하도록 설계되었습니다. 오프라인인 경우 Mac은 자동으로 확인을 건너뛰고 앱을 정상적으로 실행합니다.

Mac이 ocsp.apple.com 서버에 연결할 수 없는 경우에도 마찬가지입니다. 아마도 서버 주소가 라우터 수준에서 네트워크에서 차단되었기 때문일 것입니다. Mac이 서버에 연결할 수 없는 경우 확인을 건너뛰고 즉시 앱을 실행합니다.

2020년 11월 12일 문제는 Mac이 Apple 서버에 도달할 수 있지만 서버 자체가 느리다는 것입니다. 그러나 Mac은 조용히 실패하고 앱을 시작하는 대신 응답을 오랫동안 기다렸습니다. 서버가 완전히 다운되었다면 아무도 눈치채지 못했을 것입니다.

개인 정보 위험은 무엇입니까? 애플은 무엇을 배웁니까?

사람들이 여기에서 제기한 몇 가지 개인 정보 보호 문제가 있습니다. 그들은 해커와 보안 연구원에서 철자 상황에 대한 Jeffrey Paul의 맹렬한 견해.

인증서가 앱과 연결됨: Mac이 OCSP 서버에 접속하면 하나의 앱 또는 아마도 소수의 앱과 연결되었을 가능성이 있는 인증서에 대해 묻습니다. 기술적으로 Mac은 Apple에 어떤 앱을 실행했는지 알려주지 않습니다. 예를 들어 Firefox를 실행하면 Apple은 Mozilla에서 만든 앱을 실행했다는 사실만 알게 됩니다. Firefox 또는 Thunderbird일 수 있지만 Apple은 어느 쪽인지 모릅니다. 그러나 Tor 프로젝트에서 서명한 앱을 실행하면 Apple은 사용자가 Tor 브라우저를 열었음을 꽤 잘 알 수 있습니다.
요청은 IP 주소 및 시간과 연결됨: 이러한 요청은 물론 날짜 및 시간 및 IP 주소와 연결될 수 있습니다. 그것이 바로 인터넷이 작동하는 방식입니다. 귀하의 IP 주소는 특정 도시 및 주와 연결되어 있습니다. 각 OCSP 요청은 실행 중인 앱을 만든 개발자, 일반적인 위치, 앱을 실행한 날짜 및 시간을 Apple에 알려줍니다.
암호화 부족은 스누핑이 가능함을 의미합니다. OCSP 프로토콜이 암호화되지 않았습니다. Apple은 이 정보를 얻을 뿐만 아니라 중간에 있는 사람도 이 정보를 볼 수 있습니다. 인터넷 서비스 제공업체, 직장 네트워크 관리자 또는 인터넷 트래픽을 모니터링하는 스파이 기관이 귀하와 Apple 간의 OSCP 트래픽을 도청하여 이러한 모든 세부 정보를 알 수 있습니다. 이러한 요청은 타사를 통해서도 콘텐츠 배포 네트워크(CDN) 아카마이. 이렇게 하면 속도가 빨라지지만 기술적으로 스누핑할 수 있는 또 다른 중개인이 추가됩니다.
정보: Mac은 어떤 앱을 시작하는지 Apple에 알려주지 않습니다. 대신, Mac은 Apple에게 출시하려는 앱을 만든 개발자를 알려주는 것뿐입니다. 물론 많은 개발자가 하나의 앱만 만듭니다. 이 기술적 차이는 종종 큰 의미가 없습니다.

(기억하십시오: 캐싱 동작이 변경됨에 따라 Mac은 더 이상 앱을 실행할 때마다 Apple에 요청하지 않습니다. 5분이 아닌 12시간마다 요청합니다.)

Mac에서 이 작업을 수행하는 이유는 무엇입니까?

예상할 수 있듯이 이것은 모두 보안에 관한 것입니다. Mac은 iPad 및 iPhone보다 더 개방적인 플랫폼입니다. Apple의 Mac App Store 외부를 포함하여 어디서나 앱을 다운로드할 수 있습니다.

맬웨어로부터 Mac을 보호하기 위해(예, Mac 맬웨어가 더 보편화되었습니다) Apple은 이 보안 검사를 구현했습니다. 앱 서명에 사용된 인증서가 해지되면 Mac이 즉시 작동하여 해당 앱 열기를 거부할 수 있습니다. 이를 통해 Apple은 Mac이 알려진 악성 앱을 실행하지 못하도록 막을 수 있습니다.

OCSP 검사를 차단할 수 있습니까?

이러한 OCSP 검사는 Mac이 오프라인이거나 ocsp.apple.com 서버에 연결할 수 없을 때 빠르고 조용히 실패하도록 설계되었습니다.

따라서 차단하기 쉽습니다. Mac이 ocsp.apple.com에 연결되지 않도록 하십시오. 예를 들어 라우터에서 이 주소를 차단하여 네트워크의 모든 장치가 이 주소에 연결하지 못하도록 할 수 있습니다.

불행히도, 그것은 Big Sur처럼 보입니다. 더 이상 허용하지 않습니다 Mac의 소프트웨어 수준 방화벽은 Mac에 내장된 신뢰할 수 있는 프로세스가 이와 같은 원격 서버에 액세스하는 것을 차단합니다.

경고: ocsp.apple.com 서버를 차단하면 Apple이 앱의 개발자 인증서를 취소했을 때 Mac에서 이를 알 수 없습니다. 보안 기능을 비활성화하도록 선택하면 Mac이 위험에 처할 수 있습니다.

Apple은 무엇을 말하고 변화를 약속합니까?

MacBook을 사용하는 남자

애플은 비판을 들은 것으로 보인다. 2020년 11월 16일에 회사는 다음 정보를 추가했습니다. Gatekeeper에 대한 “개인 정보 보호” 웹사이트에서.

첫째, Apple은 이러한 인증서 또는 맬웨어 검사의 데이터를 Apple이 알고 있는 다른 데이터와 결합한 적이 없다고 밝혔습니다. 회사는 개인이 Mac에서 실행하는 앱을 추적하는 데 이 정보를 사용하지 않을 것이라고 약속합니다.

둘째, Apple은 이러한 인증서 확인이 귀하의 Apple ID 또는 귀하의 IP 주소 이외의 장치 관련 정보와 관련이 없다고 주장합니다. Apple은 이러한 요청과 관련된 IP 주소 로깅을 중단했으며 Apple의 로그에서 제거할 것이라고 밝혔습니다.

Apple은 내년, 즉 2021년 말까지 다음과 같은 변경 사항을 적용할 것이라고 말합니다.

OCSP를 암호화된 프로토콜로 교체: Apple은 개발자 인증서 확인을 위해 암호화되지 않은 OCSP 시스템을 교체하기 위해 새로운 암호화된 프로토콜을 만들 것이라고 밝혔습니다. 이렇게 하면 중간에 있는 사람이 스누핑하는 것을 방지할 수 있습니다.
속도 저하 중지: Apple은 또한 “서버 오류에 대한 강력한 보호”를 약속합니다. 즉, 서버 속도가 다시 느려져도 앱 로드가 느려지지 않습니다.
사용자에게 선택권 제공: Apple은 Mac 사용자가 이러한 보안 보호를 해제하고 Mac이 해지된 개발자 인증서를 확인하지 못하도록 할 수 있다고 말합니다.

전반적으로 이러한 변경은 다양한 문제를 제거할 것입니다. 제3자는 더 이상 중간에 스누핑할 수 없습니다. Mac은 여전히 ​​사용자가 여는 앱을 추적하는 데 사용할 수 있는 Apple 정보를 보내지만 Apple은 해당 정보를 사용자와 연관시키지 않을 것을 약속합니다. Apple이 성능 문제도 해결하므로 속도 저하를 제거해야 합니다.

이 더 나은 프로토콜은 무엇입니까? 글쎄요, 애플은 OCSP를 무엇으로 대체할지 아직 말하지 않았습니다. 보안 연구원으로서 스콧 헬름 메모, 같은 것 CRL라이트 여기에 바늘을 실을 수 있습니다. Mac이 Apple에서 단일 파일을 다운로드하고 정기적으로 업데이트할 수 있다고 상상해 보십시오. 파일에는 모든 인증서 해지의 압축 목록이 포함됩니다. 앱을 실행할 때마다 Mac에서 파일을 확인하여 네트워크 확인 및 개인 정보 문제를 제거할 수 있습니다.

Mac이 때때로 Apple에 앱 해시를 보냅니다.

그건 그렇고, Mac은 때때로 귀하가 연 앱의 해시를 Apple 서버로 보냅니다. 이것은 OCSP 서명 확인과 다릅니다. 대신 게이트키퍼와 관련이 있습니다. 공증.

개발자는 앱을 Apple에 업로드할 수 있습니다. Apple은 앱에 맬웨어가 있는지 확인한 다음 안전하다고 판단되면 “공증”합니다. 이 공증 티켓 정보는 앱에 “스테이플”할 수 있습니다. 개발자가 티켓 정보를 앱 파일에 스테이플링하지 않으면 해당 앱을 처음 실행할 때 Mac에서 Apple 서버를 확인합니다.

이것은 앱이 열릴 때마다가 아니라 특정 버전의 앱을 처음 실행할 때만 발생합니다. 그리고 개발자가 스테이플링을 통해 온라인 체크를 없앨 수 있습니다.

여기에서 Mac은 고유하지 않습니다. 예를 들어 Windows 10 PC는 사용자가 다운로드한 앱에 대한 데이터를 Microsoft의 SmartScreen 서비스에 업로드하여 맬웨어를 확인하는 경우가 많습니다. 바이러스 백신 프로그램 및 기타 보안 응용 프로그램도 의심스러운 앱에 대한 정보를 보안 회사에 업로드할 수 있습니다.