maccy.app피해자가 가짜 사이트를 방문하면 디스크 이미지(.dmg) 파일이 다운로드되고, 그 안에는 Maccy.scpt라는 이름의 컴파일된 AppleScript 파일이 들어있습니다. 주의할 점은, 정식 Maccy는 절대 DMG 형식으로 배포된 적이 없으며, 항상 Maccy.app.zip 형태로만 제공된다는 사실입니다.
macOS에서 .scpt 파일을 더블클릭하면 기본적으로 Script Editor가 열립니다. 이 파일의 눈에 보이는 부분에는 브랜드 로고와 함께 "시작하려면 ⌘+R을 누르세요"라는 안내문이 표시되지만, 실제 악성 코드는 수백 줄의 빈 줄 아래에 숨겨져 있습니다. 게다가 코드 내의 'Maccy'라는 단어 일부를 그리스어나 키릴 문자로 된 **동형 이의어(homoglyph)**로 치환하여 텍스트 기반 스캐너의 탐지를 회피합니다.
2단계에서 실행되는 Rust 기반 Mach-O 실행 파일은 매우 광범위한 민감 정보를 수집합니다:
pam_start, pam_authenticate, pam_end API를 호출하여 PAM을 통해 유효성을 검증합니다.Security.framework를 동적으로 로드하여 키체인에 저장된 모든 비밀번호를 빼냅니다.ethereum-rpc.publicnode[.]com으로 연결을 시도한 정황이 포착되었습니다.수집된 모든 데이터는 ChaCha20-Poly1305 알고리즘으로 암호화되어 MacOSapp1{"data":"..."} 형식의 JSON 봉투에 담긴 후, HTTPS를 통해 C2 서버(관찰된 도메인: avenger-sync[.]live, avengerflow[.]com)로 유출됩니다.
페이로드를 실행하기 전에, 드로퍼(dropper)는 가짜 애플리케이션 번들에 대해 codesign -fs - --deep 명령어로 애드혹(ad-hoc) 서명을 수행합니다(합법적인 Apple Developer ID 서명이 아님). 이후 창이나 Dock 아이콘 없이 완전히 숨겨진 상태로 실행합니다. 또한 프로그램 실행 전에 디버깅 도구와 시스템 무결성 보호(SIP) 상태를 확인하는 회피 루틴을 갖추고 있습니다.
2단계 페이로드는 Finder.app이라는 이름의 번들 안에 위치하며, 번들 식별자는 com.apple.finder.monitor이고 아이콘은 /System/Library/CoreServices/에서 복사한 진짜 Finder.icns 파일을 사용합니다. 이 가짜 Finder가 pbpaste를 실행하기 때문에, 활동 모니터(Activity Monitor)에서 Finder 프로세스가 2개 떠 있거나, 그중 하나가 지속적으로 클립보드 읽기를 수행하는 비정상적인 현상이 강력한 감염 징후입니다.
지속성은 LaunchAgents나 LaunchDaemons가 아닌 **로그인 항목(Login Items)**을 통해 확보됩니다. 최신 SMAppService API와 레거시 LSSharedFileList API를 모두 사용하며, 악성 번들은 com.apple.finder.monitor와 (소프트웨어 업데이트로 위장한) com.apple.security.daemon 식별자로 등록됩니다. 시스템 설정의 로그인 항목 창은 전체 경로를 표시하지 않기 때문에, 사용자 눈에는 이 악성 항목들이 평범한 시스템 구성 요소로 보입니다.
curl이나 osascript 기반 다운로더보다 프로세스 생성 아티팩트가 적은 JavaScript for Automation (JXA) 페이로드를 네이티브 ObjC API(NSURLSession)를 통해 실행합니다.maccy.app 또는 Homebrew, 공식 GitHub 저장소를 통해서만 다운로드하세요. 정식 프로젝트는 개발자 Alexey Rodionov(Team Identifier MN3X4648SC)가 운영하는 오픈소스(MIT 라이선스)입니다..scpt 파일을 Script Editor에서 열어 절대 실행하지 마세요. 어떤 정식 macOS 앱도 이런 방식으로 설치를 요구하지 않습니다.com.apple.finder.monitor 같은 시스템 구성 요소로 위장한 항목이 있는지 살펴보세요.maccy.app피해자가 가짜 사이트를 방문하면 디스크 이미지(.dmg) 파일이 다운로드되고, 그 안에는 Maccy.scpt라는 이름의 컴파일된 AppleScript 파일이 들어있습니다. 주의할 점은, 정식 Maccy는 절대 DMG 형식으로 배포된 적이 없으며, 항상 Maccy.app.zip 형태로만 제공된다는 사실입니다.
macOS에서 .scpt 파일을 더블클릭하면 기본적으로 Script Editor가 열립니다. 이 파일의 눈에 보이는 부분에는 브랜드 로고와 함께 "시작하려면 ⌘+R을 누르세요"라는 안내문이 표시되지만, 실제 악성 코드는 수백 줄의 빈 줄 아래에 숨겨져 있습니다. 게다가 코드 내의 'Maccy'라는 단어 일부를 그리스어나 키릴 문자로 된 **동형 이의어(homoglyph)**로 치환하여 텍스트 기반 스캐너의 탐지를 회피합니다.
2단계에서 실행되는 Rust 기반 Mach-O 실행 파일은 매우 광범위한 민감 정보를 수집합니다:
pam_start, pam_authenticate, pam_end API를 호출하여 PAM을 통해 유효성을 검증합니다.Security.framework를 동적으로 로드하여 키체인에 저장된 모든 비밀번호를 빼냅니다.ethereum-rpc.publicnode[.]com으로 연결을 시도한 정황이 포착되었습니다.수집된 모든 데이터는 ChaCha20-Poly1305 알고리즘으로 암호화되어 MacOSapp1{"data":"..."} 형식의 JSON 봉투에 담긴 후, HTTPS를 통해 C2 서버(관찰된 도메인: avenger-sync[.]live, avengerflow[.]com)로 유출됩니다.
페이로드를 실행하기 전에, 드로퍼(dropper)는 가짜 애플리케이션 번들에 대해 codesign -fs - --deep 명령어로 애드혹(ad-hoc) 서명을 수행합니다(합법적인 Apple Developer ID 서명이 아님). 이후 창이나 Dock 아이콘 없이 완전히 숨겨진 상태로 실행합니다. 또한 프로그램 실행 전에 디버깅 도구와 시스템 무결성 보호(SIP) 상태를 확인하는 회피 루틴을 갖추고 있습니다.
2단계 페이로드는 Finder.app이라는 이름의 번들 안에 위치하며, 번들 식별자는 com.apple.finder.monitor이고 아이콘은 /System/Library/CoreServices/에서 복사한 진짜 Finder.icns 파일을 사용합니다. 이 가짜 Finder가 pbpaste를 실행하기 때문에, 활동 모니터(Activity Monitor)에서 Finder 프로세스가 2개 떠 있거나, 그중 하나가 지속적으로 클립보드 읽기를 수행하는 비정상적인 현상이 강력한 감염 징후입니다.
지속성은 LaunchAgents나 LaunchDaemons가 아닌 **로그인 항목(Login Items)**을 통해 확보됩니다. 최신 SMAppService API와 레거시 LSSharedFileList API를 모두 사용하며, 악성 번들은 com.apple.finder.monitor와 (소프트웨어 업데이트로 위장한) com.apple.security.daemon 식별자로 등록됩니다. 시스템 설정의 로그인 항목 창은 전체 경로를 표시하지 않기 때문에, 사용자 눈에는 이 악성 항목들이 평범한 시스템 구성 요소로 보입니다.
curl이나 osascript 기반 다운로더보다 프로세스 생성 아티팩트가 적은 JavaScript for Automation (JXA) 페이로드를 네이티브 ObjC API(NSURLSession)를 통해 실행합니다.maccy.app 또는 Homebrew, 공식 GitHub 저장소를 통해서만 다운로드하세요. 정식 프로젝트는 개발자 Alexey Rodionov(Team Identifier MN3X4648SC)가 운영하는 오픈소스(MIT 라이선스)입니다..scpt 파일을 Script Editor에서 열어 절대 실행하지 마세요. 어떤 정식 macOS 앱도 이런 방식으로 설치를 요구하지 않습니다.com.apple.finder.monitor 같은 시스템 구성 요소로 위장한 항목이 있는지 살펴보세요.