📌 TL;DR: Microsoft Teams와 같은 Electron 기반 앱을 악용해 WDAC 정책을 우회하고
JavaScript 기반의 C2 프레임워크를 실행하는 최신 공격 기법인 Loki C2에 대해 소개합니다.(출처)
🤔 WDAC란?
Windows Defender Application Control (WDAC)는 Microsoft가 제공하는 강력한 보안 정책 중 하나로,
신뢰된 소프트웨어만 실행 가능하게 제한하는 기능입니다.
기업 환경에서 자주 사용되며, 이를 우회하기 위한 보안 연구는 항상 활발하게 이뤄지고 있습니다.
💡 왜 Electron 앱인가?
Electron 앱은 Node.js + Chromium 기반으로 웹 기술(HTML, JS, CSS)을 이용해 데스크탑 앱을 만드는
프레임워크입니다.
대표적으로 Microsoft Teams, Slack, VSCode 등이 Electron을 사용하죠.
Electron 앱의 특징은 다음과 같습니다:
- 앱 내부에 있는 JavaScript 파일을 직접 실행합니다.
- JS 내에서 Node.js의 child_process 같은 모듈을 통해 OS와 상호작용 가능합니다.
- Electron 실행 파일은 정식 서명된 파일이라 WDAC 우회에 유리합니다.
🚩 WDAC 우회를 위한 공격 시나리오
WDAC 환경에서는 임의 실행이 제한되므로, 서명된 앱 내에서 악성 코드를 실행하는 방식이 핵심입니다.
Loki C2 개발자들은 Microsoft Teams의 Electron 구조를 분석하고, 다음과 같은 우회 방식을 고안했습니다:
- Teams의 /resources/app/ 경로에 있는 JS 코드를 Loki C2 코드로 치환
- 서명된 Teams 실행 파일을 실행
- Electron이 자체적으로 JS 파일을 로딩하면서 악성 JavaScript 코드 실행
- WDAC는 Microsoft 서명된 Teams 앱이므로 실행을 허용함
결과적으로, WDAC 정책을 우회한 상태에서 완전한 C2 에이전트를 실행할 수 있습니다.
🧠 Loki C2: 순수 JavaScript 기반의 C2 프레임워크
Loki C2는 다음과 같은 기능을 갖춘 경량형 C2 프레임워크입니다:
- 💾 파일 업로드 및 다운로드
- 📁 디렉토리 탐색
- 📜 파일 읽기
- 💬 명령 실행
- 🧩 Node 모듈 동적 로딩
🚫 별도 실행 파일 없이, Electron 앱 내부에서 순수 JS로 모든 기능을 수행합니다.
🔥 Stage 2: 고급 C2 에이전트로의 확장
초기 침투 후, 연구팀은 다음 단계를 위한 방법도 구현했습니다:
- WDAC 정책 탐지 및 분석
- 우회 가능한 예외 정책 탐색
- C++ 기반 Stage 2 C2 업로드 및 실행
- 서명된 Node 모듈을 활용한 쉘코드 실행
Stage 2 C2는 보다 은밀하고 고기능성 (예: Dragon C2) 에이전트로 확장됩니다.
⚙️ 실전 적용: Teams Hollowing 데모
- 공격자는 Loki C2의 코드를 Teams 앱 내 /resources/app에 삽입
- 서명된 Teams 실행 파일을 실행 → WDAC 우회
- Teams 프로세스 내부에서 JavaScript 기반 Loki C2가 실행됨
- Loki C2는 원격 명령을 수신하고 실행
모든 프로세스는 Microsoft 서명된 Teams 프로세스에서 실행되므로 탐지 회피 성공 🎯
🎯 MITRE ATT&CK 매핑
- T1218.011: System Binary Proxy Execution - Electron Applications
- C2 연결 수립, 명령 실행, 권한 상승 시나리오에 활용
🚨 보안 관점에서의 시사점
- Electron 앱 내부 코드 무결성 검증 필수
- WDAC 정책 내에 Electron 앱 예외 등록 여부 점검
- Microsoft Teams, VSCode 등 주요 Electron 앱에 대한 정기 무결성 검사
- JavaScript 기반 C2 탐지를 위한 행위 기반 탐지 로직 강화 필요
🔍 마무리
Electron 앱과 WDAC의 보안 취약점을 활용한 Loki C2 사례는 현대 보안 환경에서 '신뢰된 앱'에 숨어 있는 위협을 잘 보여줍니다. 앞으로 이러한 앱 하이재킹 + 자바스크립트 C2 형태의 공격은 더욱 정교해질 것이므로, 운영팀과 보안팀의 협업 및 정책 강화가 절실합니다.
📢 “100% MITRE 커버리지”를 주장하는 보안 제품도 이처럼 허점이 존재할 수 있음을 잊지 마세요.
'CyberSecurity > Security🔐' 카테고리의 다른 글
🤖 마이크로소프트, 보안도 AI에게 맡긴다?! Security Copilot의 ‘에이전트’ 등장! (0) | 2025.03.26 |
---|---|
🧪 COM 기술로 가능한 보안 우회!? ForsHops.exe로 알아보는 최신 사이버 보안 위협 (1) | 2025.03.26 |
🚨 Next.js에서 심각한 보안 취약점 발견! 수백만 앱이 위험할 수 있습니다 😨🔒 (1) | 2025.03.25 |
🚨 [Kubernetes 보안 경보] Ingress-NGINX에 치명적 취약점 4종 발견! "IngressNightmare" 주의보 😱🛡️ (2) | 2025.03.25 |
🐜 'Weaver Ant' 해커 그룹, 아시아 통신사 침투…중국발 사이버 스파이의 실체 🔍💻 (0) | 2025.03.25 |