🔍 CVE-2026-42890

0.0
CVSS Score
UNKNOWN
2026-06-12
2026-06-17 10:48
✅ 완료

🇰🇷 한글 설명

Actual 앱의 macOS 데스크톱 버전에서 ELECTRON_RUN_AS_NODE 설정이 비활성화되지 않아, 공격자가 환경 변수를 설정해 서명된 바이너리를 Node.js REPL로 실행할 수 있습니다. 이를 통해 Gatekeeper 우회가 가능하며 임의 코드 실행과 앱 권한 탈취가 가능합니다.

💡 쉬운 설명

해커가 앱 파일을 조작하거나 명령어를 변조하면, 보안 검사를 우회해 컴퓨터를 마음대로 조종할 수 있는 취약점입니다. 이는 앱의 높은 권한을 악용해 시스템에 심각한 피해를 줄 수 있습니다.

🇺🇸 원문 (English)

Actual is an open-source personal finance application. In the macOS desktop application version 25.x (built on Electron 39.2.7), the ELECTRON_RUN_AS_NODE fuse is not disabled, allowing an attacker who can place a file on disk or control command-line arguments to invoke the signed Actual.app binary with the ELECTRON_RUN_AS_NODE=1 environment variable set. This converts the application into a Node.js REPL capable of executing arbitrary code that inherits the application's entitlements and code signature, bypassing macOS Gatekeeper review. Version 26.5.0 patches the issue.

📍 영향받는 시스템

Actual macOS desktop application version 25.x (Electron 39.2.7)

⚔️ 공격 벡터

공격자가 대상 시스템에 파일을 배치하거나 명령줄 인자를 제어하여 ELECTRON_RUN_AS_NODE=1 환경 변수를 설정하고 Actual.app을 실행

🛡️ 대응 방법

Actual 앱의 26.5.0 버전 이상으로 업그레이드하여 해당 취약점을 패치

🔧 검증 코드

명령어 실행 시 'Not Set'이 출력되면 설정이 비활성화되어 안전하며, 값이 반환되면 취약점이 존재할 수 있습니다.

Shell / Script
defaults read /Applications/Actual.app/Contents/Info.plist ELECTRON_RUN_AS_NODE 2>/dev/null || echo 'Not Set'

💻 영향받는 소프트웨어

Node.js