Apple의 WWDC(WorldWide Developer Conference) 2020은 예년에 비해 조금 늦은 6월 하순의 이번 주에 다소 비정상적인 상황에서 시작되었습니다. 한 해의 절반이 지났는데도 여전히 코로나19가 큰 문제로 남아 있는 지금 Apple의 대표적인 이벤트는 완전히 가상 체제로 바뀌었고, 덕분에 우리 모두 Apple 플랫폼 전반에 걸친 뉴스와 공지, 향후의 개발 계획 등을 누구보다 빨리 접할 수 있게 되었습니다. 특히 기업과 보안 팀의 주요 관심사는 macOS 다음 버전의 베타 릴리스에 쏠려 있습니다. 이 게시물에서는 지금까지 발표된 변경 사항 중 macOS 보안과 관련된 가장 중요한 내용을 정리합니다. 한번 살펴보시죠!
1. 고객님의 하드웨어는 macOS 11.0 Big Sur를 지원할까요?
Big Sur에 도입된 macOS 변경 사항을 활용하려면 당연히 호환되는 Apple 하드웨어가 필요합니다. macOS Big Sur를 지원하는 제품 라인은 7종이며, 지원되는 모델 중 가장 오래된 버전은 2013년 모델입니다.
- Mac Pro, 2013년 이후 버전
- MacBook Air, 2013년 이후 버전
- MacBook Pro, 2013년 하반기 이후 버전
- Mac Mini, 2014년 이후 버전
- iMac, 2014년 이후 버전
- MacBook, 2015년 이후 버전
- iMac Pro, 2017년 이후 버전
이것은 기업에 무엇을 의미할까요?
Mac 제품군의 노후 하드웨어는 리소스 집약적인Mojave 및 Catalina부터 이미 과부하 상태였을 것입니다. 따라서 2020년 말부터 2021년 중 ARM 칩 하드웨어가 출시되기까지 업데이트해야 할 macOS 하드웨어의 비중이 얼마나 되는지를 따져 보아야 합니다.
2. Big Sur 버전 번호: macOS 10.16인가요, 아니면 11.0인가요?
macOS Big Sur 베타의 첫 번째 릴리스에는 몇 가지 큰 변화가 있었지만 월요일 Apple의 기조연설에서는 그 내용을 명시적으로 언급하지 않았습니다. 매의 눈을 가진 일부 사용자가 찾아낸 첫 번째 변화는 macOS 10.15가 macOS 10.16으로 바뀌는 것이 아니라는 사실입니다. Apple은 마침내 20년을 이어 온 Mac OS X 시대의 막을 내렸으며, 이는 이름뿐 아니라 버전 번호에서도 드러납니다. Big Sur는 최초의 macOS 11.0이 될 것입니다!
이것은 기업에 무엇을 의미할까요?
Apple에서도 체감하고 있듯이 이 작은 변화는 많은 기업에 영향을 미칠 것입니다. 10.x 범위의 버전 번호를 확인하는 스크립트로 작동되는 엔터프라이즈 워크플로가 너무나 많기 때문에 상당수는 즉시 타격을 입을 것입니다.
if [[ ${osvers_major} -ne 10 ]]; then
Apple의 자체 소프트웨어 업데이트에서도 버전 번호가 10.x인지 확인하며, 첫 번째 베타는 10.16으로 제공되었고 나머지도 그럴 것입니다. 실제로 다수의 내부 문서에는 “10.16”이라고 되어 있습니다.
3. 일시적 집행 유예 상태의 Kext
또 한 가지 놀라운 사실은 개발자는 물론 사용자들도 최대한 빨리 Kext(커널 확장)에서 벗어나 시스템 확장 및 DriverKit로 마이그레이션하고 싶어질 만큼 Apple이 충분한 장애물을 배치했음에도 불구하고 많은 사람들이 예상한 것과 달리 커널 확장의 종말이 일어나지 않았다는 것입니다.
피치 못할 종속성 문제가 있는 조직에서는 여전히 Kext를 선택할 수 있으며, Big Sur에는 Kext 및 “Kext 모음”의 로드, 언로드 및 진단을 관리하는 kmutil이라는 새로운 도구가 있습니다.
이것은 기업에 무엇을 의미할까요?
조직은 커널 확장에 의존하는 소프트웨어의 기능 손실을 염려하지 않고 macOS Big Sur로 업그레이드할 수 있습니다. 그러나 kextutil 및 kextload가 kmutil로 대체되었으며 작동 방식이 달라졌고 제한 사항이 있다는 점에 유의해야 합니다(자세한 내용은 man 페이지 참조).
Apple은 개발자들이 Kext에서 벗어나게 만들기 위한 노력을 멈추지 않을 것임을 분명히 밝히면서 다음과 같이 조언했습니다.
SentinelOne에서 곧 출시할 macOS 4.4 에이전트는 Kext를 사용하지 않으며 macOS 10.15 Catalina 및 macOS Big Sur와 호환되므로 SentinelOne 고객은 안심하셔도 됩니다.
4. Rosetta 2, Apple Silicon 및 범용 바이너리와의 호환성
물론 기조연설의 마지막 부분에 언급되었던 한 가지 큰 변화는 언론에서 널리 예상했던 것이었습니다. Apple은 macOS용 ARM 기반 칩셋(WWDC 2020에서 부른 명칭은 “Apple Silicon”)으로 이동합니다. 현재 사용 가능한 ARM 기반 하드웨어는 없지만 개발자 전환 키트를 제공 중이며, Apple은 2020년 말부터 ARM Mac을 출시하게 될 것으로 예상한다고 밝혔습니다.
이러한 전환을 촉진하기 위해 Apple은 PowerPC에서 Intel로의 전환을 기억하는 사용자에게 친숙한 Rosetta 기능을 부활시켰습니다. Rosetta 2로 다시 태어난 이 소프트웨어 계층 기술을 사용하면 Intel 아키텍처에서 컴파일된 특정 소프트웨어 클래스를 ARM 기반 디바이스에서 실행할 수 있습니다.
그러나 Rosetta 2에는 몇 가지 문제가 있습니다. 우선 변환하는 데 시간이 걸리며, 아무리 최적화를 잘한다고 해도 Rosetta 2에 의존하는 일부 애플리케이션은 원래 컴파일된 Intel 아키텍처에서 네이티브로 실행될 때보다 시작 또는 실행 속도가 느려질 수밖에 없다는 사실에는 변함이 없습니다. 이 문제를 피하기 위해 Apple은 새로운 다중 아키텍처인 범용(일명 ‘Fat’) 바이너리 형식도 도입했습니다. 개발자는 이를 통해 기존 macOS 앱을 Apple Silicon에서 네이티브로 실행할 수 있습니다. Xcode 12 이상에서는 개발자가 두 시스템 모두의 아키텍처가 포함된 “fat” 바이너리를 빌드할 수 있으며, 이러한 범용 바이너리는 ARM 기반 Mac 없이도 컴파일 가능합니다.
Rosetta 2의 두 번째 문제는 Intel 아키텍처에서 컴파일된 일부 소프트웨어를 Apple Silicon에서 실행되는 버전으로 변환하지 못한다는 것입니다. 특히 Windows 가상화 소프트웨어 및 커널 확장이 지원되지 않습니다. Rosetta 2가 커널 확장에 대한 ‘탈옥’ 카드가 되기를 바라는 개발자는 다시 생각해 봐야 합니다. 적어도 VMware에는 몇 가지 가능성이 남아 있는 것처럼 보이지만, macOS에서 Windows 가상 머신의 미래는 불확실합니다.
이것은 기업에 무엇을 의미할까요?
보편적으로 예상되는 ARM으로의 전환(Apple에서는 2년 넘게 걸릴 것으로 전망)이 기업에 즉각적인 영향을 미치지는 않겠지만, 중장기적으로 IT 팀은 범용 바이너리에서 네이티브로 실행할 수 있는 앱과 Rosetta 2에 따라 변환할 앱, 그리고 호환되지 않는 앱을 파악해 두어야 합니다.
이 게시물의 앞부분에서 언급했듯이, 이 경우 조직이 선택해야 할 가장 중요한 문제는 하드웨어를 업그레이드할 시기를 결정하고 추가 제품을 구매하기 전에 ARM 기반 Mac이 출시되기를 기다리는 것이 비즈니스에 더 유리한지 판단하는 것입니다.
5. 접근 금지! 암호로 서명된 시스템 볼륨
앞에서 다룬 커다란 변화 외에, 대중의 관심은 덜하지만 몇 가지 중요한 변경 사항이 있습니다. 그중 하나는 macOS 11에서는 시스템 볼륨에 암호로 서명한다는 사실입니다. Apple은 이미 Catalina에서 아키텍처를 변경하여 루트 볼륨을 읽기 전용 시스템 볼륨과 나머지 모든 기능을 위한 데이터 볼륨 두 개로 분할했습니다.
그리고 이제 오프라인 공격 및 악의적인 변조를 방지하기 위한 암호 검증을 통해 시스템 볼륨을 추가로 보호합니다.
이것은 기업에 무엇을 의미할까요?
Apple은 오래 전 macOS El Capitan 10.11에 시스템 무결성 보호를 도입한 이래로 시스템을 복잡하게 만드는 것에 부정적인 입장을 취해 왔으므로, 이러한 시스템 볼륨 강화가 IT 및 보안 팀에 너무 부담이 되지는 않을 것입니다.
그러나 몇 가지 주목해야 할 점이 있습니다. 첫째, FileVault가 더 이상 macOS 11의 유휴 시스템 볼륨을 암호화할 필요가 없다는 것입니다. 단, FileVault가 켜져 있다면 데이터 볼륨은 그대로 FileVault 암호화로 보호됩니다.
둘째, 시스템 무결성 보호를 해제하여 OS의 “라이브” 버전(즉, 쓰기 가능한 파일 시스템)을 부팅하는 방법은 더 이상 통하지 않습니다. 보호 기능을 비활성화하고 부팅되지 않은 상태에서 수정할 수는 있지만, macOS 11에서는 “라이브” 수정이 불가능합니다.
6. 네트워킹 이모저모
보안 또는 워크플로에 영향을 줄 수 있는 네트워킹과 인터넷 사용에 대한 여러 가지 사소한 변경 사항을 여기에서 함께 다루겠습니다.
MacRumers에 의해 공개된 첫 번째 변경 사항은 오래된 네트워크 유틸리티 앱이 “사용 중단”되었다는 것입니다. 현재 이 앱은 사실상 전혀 작동하지 않습니다.
네트워크 유틸리티에는 Netstat, Ping, Traceroute 및 Port Scanning 등 유용한 도구가 많이 포함되어 있습니다.
이와 함께 Apple은 사이트에서 사용 중인 추적 쿠키와 Safari가 차단한 쿠키를 사용자가 볼 수 있도록 유용한 개인 정보 보호 추적기 및 차단기를 Safari에 추가했습니다. 개인 정보 보호 도구 모음의 버튼 팝업과 도구 내부에서 액세스할 수 있는 여러 추가 팝업을 통해 자세한 정보가 제공된다는 점이 공개되었습니다.
널리 사용되는 모든 브라우저에서 확장 프로그램이 광범위하게 악용되고 있기 때문에 보안 팀은 macOS Big Sur의 새로운 웹 확장 기능에 관심을 보일 것입니다. 이를 통해 기존의 Chrome 및 Firefox 확장 프로그램을 손쉽게 변환하여 xcrun 도구와 함께 Safari 14에서 사용할 수 있습니다. 애플은 App Store를 통해 브라우저 확장 프로그램을 배포해야 한다고 계속 주장함으로써 이를 둘러싼 보안 문제를 개선하고자 합니다. 브라우저에서 확장 프로그램을 관리하기 위한 새로운 사용자 컨트롤도 있습니다.
또한 Safari 14는 기본적으로 HTTP/3을 사용할 것이라고 알려졌습니다. Apple의 릴리스 정보에 따르면 Big Sur는 Developer(개발자) 메뉴의 Experimental Features(실험적 기능)를 통해 Safari에서 실험적으로 HTTP/3을 지원합니다. 다음 터미널 명령으로 시스템 전체에서 사용하도록 설정할 수 있습니다.
defaults write -g CFNetworkHTTP3Override -int 3
명령줄에 대해 계속 설명하자면, macOS 11의 또 다른 네트워킹 변경 사항은 networksetup 유틸리티인 /usr/sbin/networksetup과 관련이 있습니다. Big Sur부터는 표준 사용자가 이 도구를 통해 네트워크 설정을 변경할 수 없습니다. 표준 사용자는 Wi-Fi를 켜고 끌 수 있고 네트워크 설정을 읽을 수 있지만, 수정하려면 관리자 이름과 암호가 필요합니다.
이것은 기업에 무엇을 의미할까요?
전반적으로 이러한 변경 사항은 네트워크 보안을 강화하는 데 도움이 됩니다. networksetup 명령줄 도구의 변화는 System Preferences.app의 표준 사용자 권한과 궤를 같이 하며, Apple은 여러 도구에서 보기 좋게 일관성을 유지하고 있습니다.
Apple App Store에서 악의적이거나 악용하는 행동을 적시에 효과적으로 모니터링하고 제거하는 한, 브라우저 확장 프로그램이 늘어난다고 해서 공격 표면이 크게 확대될 것으로 보이지는 않습니다. 물론 책임은 Apple에 있습니다. 기업 보안 팀은 악의적인 확장 프로그램의 역사와 브라우저 애플리케이션을 경유하는 민감한 비공개 데이터의 양을 생각할 때 MDM 또는 그와 유사한 구성 도구로 브라우저 확장 프로그램의 설치를 차단할 가치가 있다고 생각할 수 있습니다. 이 점을 고려하면 Big Sur에서 Safari 14에 새로운 개인 정보 보호 보고 도구가 추가된 것은 환영할 만한 일입니다.
마지막으로, 네트워킹과 관련하여 네트워크 유틸리티 앱이 사라져도 IT 팀이 크게 실망할 일은 없을 것입니다. IT 팀에서는 GUI 래퍼로 사용하던 도구와 동일한 명령줄 기능을 이미 사용하고 있을 것이므로, 이 앱의 퇴장을 아쉬워하는 사람이 많지는 않을 것입니다.
7. 인증서 신뢰: 루트만으로는 부족
Catalina 설치에 대한 보안 도구의 man 페이지를 보면 알 수 있듯이, macOS Catalina 및 이전 버전에서는 권한 있는 사용자가 add-trusted-cert 플래그를 통해 명령줄 보안 도구를 루트로 실행하여 인증서 신뢰 설정을 변경할 수 있습니다.
그러나 macOS Big Sur에서는 그저 UID 0으로 실행하는 것만으로는 더 이상 이렇게 변경할 수가 없습니다. 관리자 암호를 이용한 확인이 필요합니다.
관리형 엔터프라이즈 환경에는 다행스럽게도, 구성 프로필을 사용하여 루트 인증서로 인증서 페이로드를 배포한 경우 확인 없이 변경이 가능합니다.
이것은 기업에 무엇을 의미할까요?
인증서 신뢰 설정을 강화하는 이 멋진 조치는 보안 명령줄 도구를 사용하여 신뢰 설정을 변경하거나 SecTrustSettingsSetTrustSettings 함수를 호출하는 권한 있는 프로세스를 변경하는 경우 워크플로에 영향을 미칠 수 있습니다.
8. 구성 프로필 우선 처리
명령줄 프로필 도구 또는 프로필 시스템 환경설정 패널을 통해 관리할 수 있는 구성 프로필은 예전부터 macOS 맬웨어의 악용 대상이었습니다. DNS 설정 등을 악의적으로 구성하는 경우도 있었지만, 가장 심각한 피해는 브라우저 홈 페이지 및 검색 설정을 조작하는 애드웨어 감염에서 발생합니다. Apple이 이전 OS 릴리스에서 Safari 브라우저 환경설정을 잠그는 조치를 취한 후, 프로필은 애드웨어의 주된 공격 대상으로 떠올랐습니다.
Apple은 macOS Big Sur에서 이러한 프로필 악용 상황을 인정하고, 이에 따라 설치 기준을 높였습니다. 이제 MDM 프로그램에 등록되어 있지 않은 디바이스에 프로필을 설치하려면 사용자가 시스템 환경설정 앱에서 수동으로 프로필 설치를 완료해야 하며, 이때 프로필의 실제 동작에 대한 설명도 화면에 표시됩니다.
약간 이상한 일이지만 이 작업의 제한 시간은 8분입니다. 8분 내에 사용자가 설치를 완료하지 않으면 macOS Big Sur가 시스템 환경설정에서 해당 프로필을 제거합니다.
이것은 기업에 무엇을 의미할까요?
기업은 MDM 솔루션을 통해서만 프로필을 사용하는 경우가 많으므로 대개 이 변경 사항은 영향을 미치지 않습니다. 어떤 이유로든 수동 스크립트로 프로필을 설치하는 경우, 설치 단계를 8분 안에 완료하는 방법을 사용자에게 교육시켜야 합니다.
애드웨어나 기타 macOS 맬웨어 공격자들은 당연히 소셜 엔지니어링을 통해 프로필을 악용하려 하겠지만, 이 변경 사항은 최악의 공격자를 다소나마 줄이는 데 긍정적으로 작용할 것입니다.
9. 앱 보안과 관련하여 놀라운 내용이 없는 놀라운 상황
WWDC 2020은 아직 끝나지 않았지만, Apple이 macOS 11에서 앱 보안 방식을 변경할 것이라는 발표나 제안은 없었습니다. 보안 위주의 세부적인 변경 사항은 굉장히 많지만, 기업 보안 팀에서 기대해 왔던 대규모의 발전은 아직 더 기다려 봐야 합니다.
Apple은 macOS 11에서도 macOS 10.x의 세월을 거치는 동안 서서히 진화해 온 모델을 계속 사용할 것으로 보이지만, 이는 차단 및 감지를 위해 정적 서명에 의존한다는 점에서 업계의 다른 제품에 비해 여전히 뒤쳐진 모델입니다. 이 앱 보안 모델은 다음과 같은 모습을 유지할 것입니다.
- 보호: 코드 서명, 공증 및 Gatekeeper를 통한 시스템 정책 확인
- 감지: XProtect에서 정적 Yara 규칙을 통해 맬웨어 차단
- 제거: MRT.app의 정적 감지 서명을 통해 알려진 맬웨어 제거
이것은 기업에 무엇을 의미할까요?
Apple은 놀라울 정도로 보안에 집중하고 있으며 Big Sur의 몇 가지 변경 사항은 대단히 우수하지만, 어떤 면에서는 이상하게도 현실성이 떨어지는 것 같습니다. 심지어 Windows에도 기본적인 행동 감지 기능이 있는데 Apple이 Gatekeeper, XProtect, MRT.app의 세 가지에 의존하는 것은 시대착오적으로 느껴집니다.
공격자들이 10.14 버전부터 사용하기 시작해서 이제는 능숙하게 활용하는 간단한 소셜 엔지니어링 계책은 Gatekeeper와 공증을 약화시킵니다. XProtect의 정적 YARA 규칙은 이미 Apple이 알고 있는 맬웨어를 기준으로 작동하며(일부 사용자 또는 조직이 감염된 상태여야 Apple에서 서명을 업데이트할 수 있음), MRT.app은 업데이트될 때 또는 사용자가 로그인하거나 Mac을 재부팅할 때만 실행됩니다(실제로 Mac을 사용하는 대부분의 시간 동안 효과 없음).
더욱이 기업 보안 팀에서 이러한 도구가 현재 수행 중인 작업 또는 수행한 작업을 파악할 방법이 없습니다. 새로운 이름, 새로운 버전 번호, 여러 가지 새로운 기능을 갖춘 Apple의 최신 macOS 버전에서도 알려지거나 알려지지 않은 악의적인 활동을 감지, 보호, 보고할 수 있는 행동 보안 플랫폼으로 Mac을 보호해야 하는 것은 마찬가지입니다.
결론
며칠 안 남은 WWDC 2020 기간 동안 새로운 발표가 있으면 이 게시물을 업데이트하겠습니다. 지금까지 살펴본 바로는 macOS 11의 외관과 알려진 변경 사항은 상당히 매력적입니다. 이러한 많은 변경 사항에 따라 기업 보안 팀이 대부분의 워크플로에서 몇 가지만 변경하면 macOS 제품군의 보안 태세를 개선하는 데 도움이 될 것입니다.
Like this article? Follow us on LinkedIn, Twitter, YouTube or Facebook to see the content we post.
Read more about Cyber Security
- The CISO Side: A Certifiable Journey
- Next-Gen AV and The Challenge of Optimizing Big Data at Scale
- Email Reply Chain Attacks | What Are They & How Can You Stay Safe?
- 15 macOS Power Tricks for Security Pros
- Is Cryptojacking Going Out Of Fashion or Making A Comeback?
- The Stopwatch Is Ticking | How Ransomware Can Set a Breach Notification In Motion
- The CISO’s Quick Guide to Verizon’s 2020 Data Breach Investigations Report