C를 메모리 안전하게 만들었다는 부분이 한 문단으로만 언급된 게 놀라움
iOS 14 이후 Apple이 iBoot 부트로더를 빌드할 때 사용하는 C 컴파일러 툴체인을 수정해 보안성을 높였다고 함
포인터에 경계 정보와 타입 정보를 붙여 버퍼 오버플로, 힙 익스플로잇, 타입 혼동, use-after-free 같은 취약점을 방지하는 구조라고 함
예전부터 존재하던 프로젝트로, 이름은 Firebloom이라고 함
Fil-C와 비슷한 계보를 가진 것으로 보임
참고 링크: iBoot Firebloom
내가 이해하기로는 clang의 fbounds 체크 기능을 적극적으로 활용해 함수 단위로 검사를 삽입한 것 같음
새 프로세서의 메모리 태깅 기능도 오버플로 공격 방지에 도움을 줌
그래도 결국은 C의 변형 버전일 뿐이며, Swift Embedded 로드맵의 목표 중 하나가 이 방언을 대체하는 것임
Apple이 프라이버시와 보안에 진심인 점이 인상적임
Google이나 Meta는 광고 수익 구조상 프라이버시를 약속하기 어렵지만, Apple은 하드웨어 중심 회사라 가능한 전략적 선택처럼 보임
iMessage 암호화 관련 글을 보면,
Google은 기본적으로 메시지 백업과 전송 모두 E2E 암호화를 적용하지만,
Apple은 메시지 전송만 E2EE이고, 백업은 기본적으로 Apple이 접근 가능한 구조임
ADP(Advanced Data Protection)를 켜면 막을 수 있지만, 대부분의 사용자가 설정하지 않기 때문에 실질적으로는 Apple이 모든 메시지에 접근 가능한 셈임
소비자 입장에서 iPhone과 Pixel, Samsung의 차이가 실제로 뭔지 궁금함
두 회사 모두 암호화 키를 보관하고, ADP를 켜지 않으면 Apple도 접근 가능함
Pixel은 2G 차단이나 IMEI 추적 알림 같은 기능이 있어 세밀한 보안 제어가 가능함
Apple 보안팀장이 발표한 iCloud 보안 구조 영상을 꼭 보라고 권함
HSM, rate limit 등 실제 보호 메커니즘이 자세히 설명되어 있음
하지만 결국 Apple이 기기 내에서 허용하는 앱과 기능을 통제한다는 점이 문제임
이는 시민권적 측면에서도 점점 더 큰 영향을 미치고 있음
게다가 이제 Apple도 광고 사업을 하고 있음
Apple이 사용자가 원하는 소프트웨어를 자유롭게 설치하지 못하게 한 건 아쉬움
보안을 이유로 들지만, 사실상 사용자 통제권을 제한하는 구조임
결국 선택지는 (A) 추적 기반 OS vs (B) 설치 행위 자체를 수익화한 OS인데, 둘 다 만족스럽지 않음
macOS는 여전히 외부 앱 설치가 가능하고, 대규모 악성코드 문제도 없음
App Store에도 사기 앱이 많기 때문에 “스토어=안전, 외부=위험”은 거짓 이분법임
Apple이 진짜로 막는 이유는 30% 수수료 구조를 유지하기 위해서임
그래도 보안 강화 노력 자체는 인정함
원글이 보안 얘기인데, 앱스토어 논쟁으로 흐르는 건 아쉬움
https://privacy.apple.com에서 Apple이 보유한 내 데이터 사본을 요청할 수 있음
iCloud 사진도 지정한 크기 단위로 내려받을 수 있어, 웹 인터페이스로 1000장씩 느리게 받는 것보다 훨씬 효율적임
Apple의 모든 소프트웨어가 폐쇄형이라, 보안 주장을 검증할 방법이 거의 없음
암호화 키도 사용자에게 없으므로 데이터 통제권이 실질적으로 없음
보안을 잘 구현한 예로는 GrapheneOS를 들 수 있음
하지만 GrapheneOS도 사용자가 암호화 키를 직접 다루지 못함
공식 빌드에서는 앱이 허용하지 않으면 데이터 추출이 불가능함
백업 기능도 Apple보다 제한적임
또한 개발자들이 앱이 사용자의 기기 신뢰도를 검사하도록 허용해, 사용자 자유를 제약하는 방향으로 가고 있음
관련 문서: Attestation Compatibility Guide
결국 “AOSP 보안 모델”은 앱을 사용자로부터 보호하는 구조라는 점을 간과하는 경우가 많음
Hacker News 의견들
C를 메모리 안전하게 만들었다는 부분이 한 문단으로만 언급된 게 놀라움
iOS 14 이후 Apple이 iBoot 부트로더를 빌드할 때 사용하는 C 컴파일러 툴체인을 수정해 보안성을 높였다고 함
포인터에 경계 정보와 타입 정보를 붙여 버퍼 오버플로, 힙 익스플로잇, 타입 혼동, use-after-free 같은 취약점을 방지하는 구조라고 함
관련 문서: Clang Bounds Safety Overview
Fil-C와 비슷한 계보를 가진 것으로 보임
참고 링크: iBoot Firebloom
새 프로세서의 메모리 태깅 기능도 오버플로 공격 방지에 도움을 줌
Apple이 프라이버시와 보안에 진심인 점이 인상적임
Google이나 Meta는 광고 수익 구조상 프라이버시를 약속하기 어렵지만, Apple은 하드웨어 중심 회사라 가능한 전략적 선택처럼 보임
Google은 기본적으로 메시지 백업과 전송 모두 E2E 암호화를 적용하지만,
Apple은 메시지 전송만 E2EE이고, 백업은 기본적으로 Apple이 접근 가능한 구조임
ADP(Advanced Data Protection)를 켜면 막을 수 있지만, 대부분의 사용자가 설정하지 않기 때문에 실질적으로는 Apple이 모든 메시지에 접근 가능한 셈임
두 회사 모두 암호화 키를 보관하고, ADP를 켜지 않으면 Apple도 접근 가능함
Pixel은 2G 차단이나 IMEI 추적 알림 같은 기능이 있어 세밀한 보안 제어가 가능함
HSM, rate limit 등 실제 보호 메커니즘이 자세히 설명되어 있음
이는 시민권적 측면에서도 점점 더 큰 영향을 미치고 있음
Apple이 사용자가 원하는 소프트웨어를 자유롭게 설치하지 못하게 한 건 아쉬움
보안을 이유로 들지만, 사실상 사용자 통제권을 제한하는 구조임
결국 선택지는 (A) 추적 기반 OS vs (B) 설치 행위 자체를 수익화한 OS인데, 둘 다 만족스럽지 않음
App Store에도 사기 앱이 많기 때문에 “스토어=안전, 외부=위험”은 거짓 이분법임
Apple이 진짜로 막는 이유는 30% 수수료 구조를 유지하기 위해서임
그래도 보안 강화 노력 자체는 인정함
https://privacy.apple.com에서 Apple이 보유한 내 데이터 사본을 요청할 수 있음
iCloud 사진도 지정한 크기 단위로 내려받을 수 있어, 웹 인터페이스로 1000장씩 느리게 받는 것보다 훨씬 효율적임
Apple의 모든 소프트웨어가 폐쇄형이라, 보안 주장을 검증할 방법이 거의 없음
암호화 키도 사용자에게 없으므로 데이터 통제권이 실질적으로 없음
보안을 잘 구현한 예로는 GrapheneOS를 들 수 있음
공식 빌드에서는 앱이 허용하지 않으면 데이터 추출이 불가능함
백업 기능도 Apple보다 제한적임
또한 개발자들이 앱이 사용자의 기기 신뢰도를 검사하도록 허용해, 사용자 자유를 제약하는 방향으로 가고 있음
관련 문서: Attestation Compatibility Guide
그래도 개인 보안과 opsec을 신경 쓰는 기술 기업이 아직 존재한다는 게 반가움
Apple 보안 가이드의 웹 버전은 여기에서 볼 수 있음
Apple이 “Mac은 PC 중 가장 강력한 DMA 보호를 갖췄다”고 주장한 문구가 흥미로움
이제 Apple이 스스로 Mac을 PC라고 부르는 게 웃기기도 함
새로 도입된 A19 + M5 프로세서의 MIE(EMTE) 기능이 실제로 얼마나 활용되는지 궁금함
지금 당장 효과가 있는지, 아니면 몇 년 후에야 체감될지 모르겠음
Apple의 MTE 구현은 GrapheneOS나 Android보다 적용 범위가 제한적임
성능 저하가 크기 때문임
Lockdown Mode를 켜면 전역적으로 MTE를 강제했으면 좋겠음
이런 보안 기능들이 성능에 얼마나 오버헤드를 주는지 궁금함
보안 기능을 켠 상태와 끈 상태의 벤치마크를 보고 싶음
특히 예전 FileVault는 디스크 이미지 기반이라 훨씬 느렸음