본문으로 건너뛰기
피드

개발자의 국민 에디터 Notepad++, 4개월간 공급망 공격에 당했다

security 약 9분
vote
0
댓글
북마크

Notepad++ 업데이트 인프라가 호스팅 제공업체 수준에서 침해되어 2025년 6월~12월간 공격자가 악성 업데이트를 배포함. 7월부터 10월까지 세 가지 서로 다른 감염 체인이 관찰되었으며, 매달 C2 서버, 다운로더, 페이로드를 교체하는 고도화된 공격이었음.

  • 1

    호스팅 제공업체 침해로 Notepad++ 업데이트 서버가 6개월간 장악됨

  • 2

    ProShow 취약점 악용, Lua 인터프리터 악용, DLL 사이드로딩 등 3가지 감염 체인을 매달 교체

  • 3

    베트남/엘살바도르/호주/필리핀 등 약 12대 머신만 정밀 타격하는 APT 스타일

  • 4

    최종 페이로드는 Cobalt Strike Beacon과 중국어 위협 행위자 패턴의 Chrysalis 백도어

⚠️주의

> Notepad++를 사용 중이라면 2025년 6월~12월 사이에 업데이트를 수행한 이력이 있는지 반드시 확인해야 함. 아래 IOC 목록과 대조하여 시스템 점검을 권장함.

  • Kaspersky가 Notepad++ 업데이트 인프라에 대한 공급망 공격을 상세 분석한 보고서를 공개함
  • 호스팅 제공업체 수준의 침해로 2025년 6월~9월 사이 업데이트 서버가 장악되었고, 공격자는 12월까지 내부 서비스 접근 권한을 유지함
  • 개발자라면 누구나 아는 텍스트 에디터가 APT 공격의 전달 수단이 된 사례로, 공급망 보안의 심각성을 다시 한번 보여줌

공격 타임라인과 표적

  • 2025년 7월부터 10월까지 약 4개월간 세 가지 서로 다른 감염 체인이 관찰됨
  • 공격 대상은 약 12대의 머신으로 매우 선별적이었음:
    • 베트남, 엘살바도르, 호주의 개인 사용자
    • 필리핀 정부 기관
    • 엘살바도르 금융 기관
    • 베트남 IT 서비스 제공업체
  • 공격자는 C2 서버 주소, 다운로더, 최종 페이로드를 매달 교체하며 탐지를 회피함
  • 타겟이 적다는 건 오히려 공격자가 고도로 선별적인 APT 스타일로 운영했음을 의미함

Chain #1: 2025년 7월 말~8월 초 (ProShow 취약점 악용)

sequenceDiagram
    participant GUP as GUP.exe (정상 업데이터)
    participant NSIS as update.exe (NSIS 인스톨러)
    participant Temp as temp.sh
    participant Pro as ProShow.exe (취약점 악용)
    participant Meta as Metasploit Downloader
    participant CS as Cobalt Strike Beacon

    GUP->>NSIS: 악성 업데이트 다운로드 실행
    NSIS->>NSIS: whoami, tasklist 실행 → 1.txt 생성
    NSIS->>Temp: curl로 1.txt 업로드
    NSIS->>NSIS: temp.sh URL을 User-Agent에 담아 C2로 전송
    NSIS->>Pro: %appdata%\ProShow에 파일 드롭 후 실행
    Note over Pro: DLL 사이드로딩이 아닌
2010년대 초 알려진 취약점 악용 Pro->>Meta: load 파일 내 쉘코드 → 다운로더 복호화 Meta->>CS: Beacon 쉘코드 다운로드 및 실행 CS->>CS: cdncheck.it.com C2와 통신
  • 정상 Notepad++ 업데이터 프로세스(GUP.exe)가 악성 update.exe를 다운로드하여 실행함
  • update.exe는 약 1MB 크기의 NSIS 인스톨러로, 먼저 시스템 정보를 수집하여 temp.sh에 업로드함
  • 주목할 점은 DLL 사이드로딩 대신 ProShow 소프트웨어의 오래된 취약점을 악용했다는 것임. 요즘 DLL 사이드로딩이 너무 많은 관심을 받고 있어서 의도적으로 회피한 것으로 분석됨
  • load 파일에는 두 개의 쉘코드가 포함되어 있었는데, 첫 번째는 가짜 패딩용이었고 실제 실행되는 건 두 번째 쉘코드임. 분석가와 자동화 시스템을 혼란시키려는 의도로 보임
  • 최종적으로 Metasploit 다운로더를 통해 Cobalt Strike Beacon을 배포함
  • 8월 초에는 같은 체인을 사용하되 C2 URL만 변경함

Chain #2: 2025년 9월 (Lua 인터프리터 악용)

  • 한 달 반의 공백 후 9월 중순에 새로운 감염 체인으로 공격 재개함
  • 여전히 NSIS 인스톨러를 사용하지만 파일 크기가 약 140KB로 대폭 축소됨
  • 시스템 정보 수집이 강화됨: whoami, tasklist에 더해 systeminfo, netstat -ano까지 수집
  • 2단계 페이로드는 완전히 변경됨:
    • 정상 Lua 인터프리터 파일들(script.exe, lua5.1.dll, alien.dll)을 %APPDATA%\Adobe\Scripts에 드롭
    • 악성 Lua 스크립트(alien.ini)가 쉘코드를 실행 가능한 메모리에 배치하고 EnumWindowStationsW API를 통해 실행
  • 최종 페이로드는 여전히 Cobalt Strike Beacon이지만, C2 URL이 변경됨
  • 9월 말에는 시스템 정보 수집 명령어를 단일 명령에서 여러 개별 명령으로 분리하는 변화도 관찰됨
  • 이후 C2 도메인을 self-dns.it.com, safe-dns.it.com으로 교체함

Chain #3: 2025년 10월 (DLL 사이드로딩 + Chrysalis 백도어)

  • 10월 초에 또다시 감염 체인을 변경하고, 악성 업데이트 배포 C2 서버 IP도 교체함
  • 이번에는 시스템 정보 수집 기능이 제거되고, 순수하게 페이로드 배포에만 집중함
  • %appdata%\Bluetooth\ 디렉터리에 세 개 파일을 드롭:
    • BluetoothService.exe (정상 실행 파일)
    • log.dll (악성 DLL)
    • BluetoothService (암호화된 쉘코드)
  • 이 체인은 DLL 사이드로딩 방식으로, Chain #1에서 의도적으로 회피했던 기법을 다시 사용함
  • 최종 페이로드는 Cobalt Strike가 아닌 Chrysalis 백도어로, 중국어 사용 위협 행위자에게서 흔히 관찰되는 패턴임
  • Rapid7의 인시던트 대응 과정에서 별도로 Cobalt Strike Beacon도 발견되었으며, Chain #1/#2의 Beacon과 유사한 특징을 보임:
    • Metasploit 다운로더 URL 패턴 유사
    • Beacon 설정이 CRAZY XOR 키로 암호화
    • 유사한 C2 URL 구조 사용

10월 중후반: Chain #2의 복귀와 URL 변경

  • 10월 중순에 Chain #2 페이로드가 새로운 IP에서 다시 배포됨
  • 10월 후반에는 업데이트 파일명도 다양화됨: install.exe, update.exe, AutoUpdater.exe
  • Chain #2와 Chain #3을 혼용하여 배포함
  • 11월 이후로는 새로운 페이로드 배포가 관찰되지 않음

핵심 시사점

  • 공격자는 매달 감염 체인을 완전히 교체할 정도로 높은 수준의 역량과 자원을 보유함
  • ProShow 취약점 악용, Lua 인터프리터 악용, DLL 사이드로딩 등 세 가지 서로 다른 기법을 사용한 것은 단일 탐지 규칙으로는 대응이 매우 어렵다는 것을 의미함
  • 공격 대상이 소수에 불과했다는 점에서, 이건 대량 감염이 아닌 정밀 타격형 공급망 공격이었음
  • Notepad++ 커뮤니티 포럼의 사용자 soft-parsley가 보고한 행동 패턴과 Kaspersky의 분석이 일치하는 것도 확인됨
  • Kaspersky는 식별된 모든 공격을 차단했다고 밝혔으며, 상세한 IOC와 탐지 방법을 제공함

탐지 권고 사항

  • NSIS 인스톨러 배포 흔적 점검: %localappdata%\Temp s.tmp 디렉터리 생성 로그 확인
  • 네트워크 트래픽에서 temp.sh 도메인 DNS 해석 기록 확인 (기업 환경에서는 비정상적)
  • User-Agent에 temp.sh URL이 포함된 HTTP 요청 탐지
  • whoami, tasklist, systeminfo, netstat -ano 연속 실행 명령 모니터링
  • 보고서에 포함된 IOC(악성 URL, 파일 해시)와 자사 환경 대조 필수

원문 보기 (Kaspersky Securelist)

개발자가 가장 많이 쓰는 도구 중 하나가 공급망 공격의 수단이 되었다는 점에서, 소프트웨어 업데이트 인프라의 보안이 코드 자체의 보안만큼이나 중요하다는 것을 보여줌. 매달 감염 체인을 완전히 바꿀 수 있는 역량의 공격자를 상대하려면 단일 탐지 규칙이 아닌 다층적 방어가 필수임.

댓글

댓글

댓글을 불러오는 중...

security

한양대 에리카와 네이버클라우드, 클라우드·보안·AI 인재 키우는 산학협력 체결

한양대 에리카가 네이버클라우드와 첨단 분야 지역인재 양성과 글로벌 산학협력을 위한 업무협약을 맺었다. 협력 범위는 클라우드, 사이버보안, 블록체인, 개인정보보호, 인공지능(AI), 디지털 전환(DX) 교육·연구 기반 구축까지 포함된다.

security

악성 npm 패키지가 AI 개발도구의 지침 파일과 MCP까지 노리기 시작함

이스트시큐리티가 웹과 탈중앙화금융 개발자를 겨냥한 악성 npm 패키지 캠페인을 포착했어. 공격자는 유명 웹3 도구를 사칭하는 데서 그치지 않고, AI 에이전트가 읽는 프로젝트 지침 파일과 MCP 기반 외부 도구 호출까지 공격 경로로 삼으려 했어.

security

금융권, 앤트로픽 미토스가 찾은 오픈소스 취약점에 긴급 점검 들어감

앤트로픽의 AI 모델 클로드 미토스가 1000개 넘는 오픈소스에서 대량의 취약점 후보를 찾아냈고, 그중 일부가 실제 취약점으로 검증돼 공개됐어. 금융당국은 nginx, wolfSSL, FreeRDP, Ghost 같은 널리 쓰이는 구성요소를 중심으로 금융권에 긴급 자산 점검과 패치 적용을 권고했어.

security

애플이 양자 내성 암호화 검증 코드를 공개했다, 핵심은 수학적 증명

애플이 corecrypto 라이브러리의 포스트 양자 암호화 구현과 검증 코드를 GitHub에 공개했다. ML-KEM, ML-DSA 구현과 형식 검증 접근을 공개해 보안 연구자들이 직접 검토할 수 있게 했고, 이 기술은 25억 대 이상 활성 기기에서 쓰이는 암호화 기반과 연결된다.

security

라라벨 번역 패키지 태그가 통째로 바뀌었다, 개발자 비밀값 털리는 공급망 공격

전 세계 라라벨 개발자가 쓰는 Laravel-Lang 패키지가 공격을 받아 Git 태그가 악성 버전을 가리키도록 바뀌었다. 5월 22일 약 90분 동안 4개 저장소의 태그가 교체됐고, 감염된 패키지는 AWS 키, GitHub 토큰, Stripe 시크릿, 암호화폐 지갑 복구 구문, SSH 개인키 등을 노렸다.