Homebrew 6.0.0, 보안과 성능을 한 단계 끌어올리다!

by DD
23시간 전
조회수 0

Tap trust 보안 메커니즘 도입으로 악의적이거나 손상된 탭으로부터 사용자 보호 강화

내부 JSON API 기본 활성화로 업데이트 속도 향상 및 네트워크 통신 감소

Linux 환경에서 Bubblewrap 샌드박스 기본 적용으로 macOS와 동일한 보안 수준 제공

사용자 설문 기반 기본값 개선 (예: `brew install` 시 의존성 요약 및 확인 프롬프트 기본 활성화)

성능 전반적 향상 및 macOS 27(Golden Gate) 초기 지원 추가

Tap Trust 보안 모델 도입

Homebrew 6.0.0의 핵심 변화 중 하나는 Tap Trust 보안 메커니즘입니다. 이는 타사 탭(tap)에서 실행될 수 있는 임의의 Ruby 코드로부터 사용자를 보호하기 위해, 탭 및 관련 포뮬러/캐스크를 실행 전에 명시적으로 신뢰하도록 요구합니다. 공식 Homebrew 탭은 기본적으로 신뢰 상태를 유지하며, 사용자는 `brew tap` 명령어를 통해 신뢰 목록을 관리할 수 있습니다. 이는 공급망 공격(Supply Chain Attack) 위험을 줄이는 중요한 조치로 평가됩니다.

내부 JSON API 기본화 및 성능 개선

기존에 개발자에게만 옵트인(opt-in)으로 제공되던 내부 JSON API가 이제 기본값으로 활성화되었습니다. 이 API는 Homebrew의 모든 메타데이터를 단일 파일로 통합하여 `brew update` 속도를 높이고 네트워크 통신 횟수를 줄입니다. 또한, 병렬 병(Parallel Bottle) 가져오기Ruby 라이브러리 로딩 최적화를 통해 전반적인 성능 향상을 이루었다고 합니다. 이는 네트워크 I/O 최적화(Network I/O Optimization) 측면에서 긍정적인 변화입니다.

Linux 환경에서의 샌드박스 강화

Linux 환경에서 Bubblewrap 샌드박스가 기본적으로 활성화되어 macOS와 동일한 수준의 보안을 제공합니다. 빌드, 테스트, 사후 설치(postinstall) 단계가 샌드박스 내에서 실행되며, 이는 코드 실행 격리(Code Execution Isolation)를 강화합니다. CI 환경에서의 개선 및 캐스크 실행 후크(executable hooks)에 대한 샌드박싱 지원도 포함되어, Linux 개발 환경의 보안성이 향상되었습니다.

사용자 중심의 기본값 변경 및 brew bundle 개선

Homebrew 사용자 설문 조사 결과를 반영하여 'ask' 모드가 기본값으로 설정되었습니다. `brew install` 및 `brew upgrade` 시 의존성 요약과 확인 프롬프트를 먼저 표시하여 사용자의 이해도를 높였습니다. 또한, `brew bundle` 기능이 대폭 개선되어 병렬 포뮬러 설치가 기본으로 활성화되었고, npm, krew 확장 지원 및 Windows의 winget 지원이 추가되었습니다. 이는 개발자 경험(Developer Experience) 향상에 기여합니다.

보안 감사 및 향후 지원 계획

이번 릴리스에서는 세 건의 보안 권고(Security Advisory)가 공개 및 수정되었습니다. POST 다운로드 전략의 HTTPS 리디렉션 우회, Git 훅을 통한 루트 코드 실행 가능성, macOS 설치 패키지의 신뢰 문제 등이 포함됩니다. 또한, macOS 27(Golden Gate) 지원이 추가되었으나, 2026년 9월부터 Intel x86_64 지원이 단계적으로 중단될 예정임을 명시했습니다. 이는 플랫폼 지원 전략(Platform Support Strategy)의 변화를 보여줍니다.

Homebrew 6.0.0