VU#293714: macOS (APFS)에서 심볼릭 ... 노트

VU#293714: macOS (APFS)에서 심볼릭 링크 추적을 통한 Develar app-builder의 임의 파일 덮어쓰기 (zipx.Unzip)

macOS, Windows 및 Linux용 애플리케이션 번들을 패키징하고 배포하는 데 사용되는 명령줄 빌드 도구인 Develar의 app-builder에서 취약점이 발견되었습니다. 이 문제는 zipx.Unzip 추출 루틴의 유니코드 정규화 충돌과 안전하지 않은 심볼릭 링크 추종 동작의 조합으로 인해 발생합니다. 이를 통해 공격자는 유니코드 정규화 충돌과 악성 심볼릭 링크를 결합한 ZIP 아카이브를 제작하여 APFS(Apple File System)를 사용하는 macOS 시스템에서 임의의 파일을 덮어쓸 수 있습니다. 이 취약점은 관리자 권한 없이 ZIP 추출 중에 악용될 수 있으며 무결성 손실, 서비스 거부 또는 잠재적인 코드 실행으로 이어질 수 있습니다. Develar의 app-builder는 생태계 전반에 걸쳐 종속성으로 널리 사용되며 수많은 다운스트림 리포지토리에 영향을 미치고 있으며, 이미 여러 프로젝트에서 노출을 완화했습니다. 완전한 해결을 위해서는 취약점을 근본적으로 수정해야 하며, 다운스트림 고객에게 참조 수정 사항을 제공하기 위해 GitHub Pull Request가 개발되었습니다. Pull Request는 해결된 대상이 의도된 출력 디렉터리를 벗어나는 모든 심볼릭 링크를 거부하고 일반 파일 쓰기에 O_NOFOLLOW를 추가하여 취약점의 심볼릭 링크 추종 변형을 해결합니다. 보고자인 Tomas Illuminati는 많은 다운스트림 공급업체 및 개발자가 이 문제를 완화하는 데 도움을 주었으며, Electron-Userland는 신속하게 대응하여 다운스트림 사용자를 보호하기 위한 완화 조치를 구현했습니다. 이 취약점은 유니코드 정규화 충돌과 심볼릭 링크 추종 동작을 결합하여 악용될 수 있으며, 공격자는 경로 유효성 검사를 우회하고 의도된 추출 디렉터리 외부로 쓰기를 리디렉션할 수 있습니다. CERT/CC는 사용자에게 이 문제에 대해 알리고 완화 및 해결에 대한 지침을 제공하기 위해 취약점 노트를 준비했습니다. 전반적으로 이 취약점은 APFS를 사용하는 macOS 시스템의 보안에 상당한 영향을 미치며, 사용자는 노출을 완화하기 위한 조치를 취하는 것이 좋습니다.