메인 콘텐츠로 건너뛰기
Background

생산성 확장 프로그램이 공격 플랫폼으로 변질될 때

September 30, 2026 by Natalie Zagarov

공유

핵심 내용

LayerX Research(현재 Akamai에 합병됨)는 Chrome 웹 스토어와 Microsoft Edge 추가 기능 스토어에서 32개의 악성 브라우저 확장 프로그램이 조직적으로 유포되었고 6150명 이상의 사용자가 피해를 입었다는 사실을 발견했습니다.

이 확장 프로그램은 텍스트 카운터, 노트 필기 앱, YouTube 기능 개선 툴과 같은 유용한 생산성 툴로 위장해 사용자의 신뢰를 얻었지만, 실제로는 사용자의 데이터를 몰래 수집하고 브라우징 습관을 감시했습니다.

정적 분석을 통해 거의 동일한 코드베이스, 원격 설정 엔드포인트, 한국어 개발 아티팩트가 발견되었으며, 이는 해당 클러스터가 한국어를 구사하는 한 명의 공격자와 밀접하게 연관되어 있음을 강력히 시사합니다.

공격자는 외부 호스팅 설정 파일(런타임 시 난독화가 해제됨)을 활용해 웹 탐색을 조작하고, 공식 스토어 리뷰 프로세스를 거치지 않고도 제휴사 사기를 감행했습니다.

이러한 동적 위협을 방어하려면 광범위한 권한(예: webNavigation, <all_urls>)을 가진 불필요한 확장 프로그램을 제거하고, 원격 명령 및 제어(C2) 인프라를 모니터링하며, 외부 설정 소스를 검사하도록 브라우저 스토어 심사 범위를 확대해야 합니다.

브라우저 확장 프로그램은 사이버 공격자들이 사용자의 인터넷 사용 활동을 지속적으로 추적할 수 있는 가장 효과적인 수단 중 하나로 자리 잡았습니다. 기존의 멀웨어와 달리, 악성 확장 프로그램은 사용자의 신뢰를 악용해 브라우저 내에서 실행되며, 단 한 번의 설치만으로도 영구적으로 활동할 수 있습니다.

Chrome 웹 스토어와 Microsoft Edge 추가 기능 스토어를 대상으로 한 지속적인 위협 헌팅 과정에서, LayerX Research(현재 Akamai에 합병됨)는 32개의 악성 확장 프로그램으로 구성된 조직적인 브라우저 확장 프로그램 캠페인을 발견했고, 이 캠페인은 6150명 이상의 사용자에게 영향을 미쳤습니다.

처음 보면 이 확장 프로그램들은 서로 관련이 없는 것처럼 보입니다. 이들은 텍스트 유틸리티, YouTube 기능 개선, SEO 지원, 노트 필기 애플리케이션, 언어 도우미, 마크다운 유틸리티, 기타 브라우저 편의 기능 등의 생산성 툴로 소개됩니다. 각 제품은 서로 다른 브랜드를 사용하고, 서로 다른 기능을 홍보합니다.

이러한 표면적인 다양성에도 불구하고, 대부분의 확장 기능은 거의 동일한 인프라를 공유하고 있어 공통된 개발 프레임워크에서 비롯된 것으로 보입니다. 또한 모든 확장 프로그램은 한국어 현지화 리소스, 한국어 주석, 기타 개발 관아티팩트를 공유합니다. 

이러한 공통된 특징은 해당 확장 프로그램이 동일한 캠페인에 포함되며, 조직된 그룹이든 개인이든 동일한 공격자에 의해 개발되었다는 저희의 판단을 뒷받침합니다.

원격 제어, 공유 코드, 진화하는 위협

분석 결과, 확장 프로그램 대부분의 특징은 다음과 같습니다.

  • 사용자의 브라우징 활동을 지속적으로 모니터링함

  • 공격자가 제어하는 설정 파일을 동일한 원격 인프라에서 가져옴

  • 원격 명령을 로컬에서 디코딩 및 캐시함

  • 추가 조치를 취해야 할 웹사이트를 동적으로 결정함

  • 거의 동일한 백그라운드 서비스 워커 구현을 공유함

  • 동일한 원격 측정 이벤트, 저장 구조 및 탐색 로직을 사용함

더욱 우려스러운 점은 이 캠페인이 원격 설정을 기반으로 한다는 것입니다. 이를 통해 공격자는 브라우저 스토어에서 확장 프로그램을 업데이트하지 않고도 확장 프로그램의 동작을 게시 후에도 변경할 수 있습니다. Akamai는 주로 브라우징 원격 측정 데이터 수집과 트래픽 조작을 관찰했지만, 해당 아키텍처는 피싱, 멀웨어 유포, 또는 인증정보 탈취와 같은 기타 악의적인 목적으로도 쉽게 재활용될 수 있습니다.

이 주요 캠페인 외에도, LayerX 연구원들은 동일한 퍼블리셔 계정으로 배포된 또 다른 악성 확장 프로그램 그룹을 발견했습니다. 분석 당시 해당 확장 프로그램은 주로 제휴사 사기에 연루되어 있었으며, 제휴사 링크를 통해 사용자를 자동으로 이동시켜 무단 수수료를 발생시키고 있었습니다.

이 캠페인은 2025년 3월부터 진행 중이며, 악성 브라우저 확장 프로그램이 변방의 위협에서 원격 관리 플랫폼으로 발전해 브라우저 스토어의 검토를 통과한 후에도 기능을 변경할 수 있음을 보여줍니다.

캠페인 구조 및 효과

캠페인 일정

이 캠페인과 관련된 첫 번째 확장 프로그램은 2025년 3월에 등장했으며, 이후 몇 달 동안 추가 확장 프로그램이 계속 출시되었습니다.

공격자는 동일한 확장 프로그램을 재출시하는 대신, 동일한 기본 프레임워크를 기반으로 한 새로운 변형 버전을 지속적으로 출시했습니다.

확장

LayerX 연구진이 밝혀낸 사실은 다음과 같습니다.

  • 악성 브라우저 확장 프로그램 32개

  • 배포 방법:

    • Google Chrome 웹 스토어

    • Microsoft Edge 추가 기능 스토어

  • 피해 사용자 6150명 이상

생산성 소프트웨어로 위장함

이 확장 프로그램은 다음과 같이 관련 없는 유틸리티로 위장하고 있습니다.

  • 텍스트 카운터

  • 마크다운 유틸리티

  • YouTube 기능 개선

  • 동영상 속도 조절기

  • SEO 툴

  • 언어 도우미

  • 노트 필기 툴

  • 스크롤 유틸리티

  • AI 관련 도우미

확장 기능은 서로 관련이 없는 것처럼 보이지만, 정적 분석을 통해 대부분의 확장 기능이 거의 동일한 백그라운드 서비스 워커, 원격 측정 로직, 저장 구조, 그리고 탐색 처리 방식을 재사용하고 있다는 사실이 밝혀졌습니다. 브랜딩 자산과 그 기능에 대한 홍보 내용과는 별개로, 기본 구현 방식은 거의 변하지 않았으며, 이는 확장 프로그램이 공통된 개발 프레임워크에서 생성되었음을 강력히 시사합니다.

개별 확장 기능을 따로 떼어 놓고 보면 특별히 눈에 띄는 점이 없습니다. 각 제품은 그럴듯한 생산성 기능을 홍보하고, 자체 브랜드를 사용하며, 비교적 적은 수의 사용자 기반을 보유하고 있습니다. 퍼블리셔 정보, 코드 유사성, 공유 원격 인프라, 그리고 런타임 동작을 서로 연관시켜 분석해야만 전체 캠페인의 실체가 명확히 드러납니다. 

그림 1은 악성 기능을 여러 개의 무관한 확장 프로그램에 분산시켜 최신 브라우저 확장 프로그램 캠페인이 어떻게 눈에 띄지 않게 숨겨질 수 있는지 보여줍니다.

공격 흐름
그림 1: 공격 흐름
공격 흐름

기술 개요

공유 코드베이스를 분석한 결과, 대부분의 변형에서 공통적으로 나타나는 네 가지 핵심 기능이 확인되었습니다.

  1. 활성 C2 - 원격 설정 가져오기

  2. 설정 난독화 해제

  3. 브라우징 활동 모니터링

  4. 원격 제어 탐색 조작

활성 C2 - 원격 설정 가져오기

대부분의 확장 프로그램은 확장 패키지 내부에 운영 로직을 내장하는 대신, 동일한 jsDelivr 호스팅 엔드포인트에서 원격 설정 파일을 가져옵니다(그림 2).

원격 설정 URL
그림 2: 원격 설정 URL
원격 설정 URL

다운로드가 완료되면 설정 파싱되어 로컬에 캐시됩니다.

await chrome.storage.session.set({
    nav_cfg_cache: parsedConfig
});

원격 설정을 사용하면 캠페인의 유연성이 크게 향상됩니다. 공격자는 Chrome 웹 스토어나 Microsoft Edge 추가 기능 스토어를 통해 새로운 확장 프로그램 버전을 출시하는 대신 설정 파일을 수정해 확장 프로그램의 동작을 변경할 수 있습니다. 이를 통해 표적 웹사이트를 즉시 업데이트하거나, 리디렉션 경로를 변경하거나, 캠페인 로직을 수정할 수 있으며, 별도의 브라우저 스토어 심사를 거치지 않아도 됩니다.

Akamai는 조사 과정에서 원격 설정이 여러 차례 변경된 것을 확인했습니다. 어느 시점에는 설정이 완전히 비어 있어서 인프라가 일시적으로 비활성화되거나 재설정되었음을 알 수 있었습니다(그림 3).

빈 설정
그림 3: 빈 설정
빈 설정

며칠 후, 설정에 제휴사 트래픽 리디렉션에 대한 룰이 추가되었습니다. 이는 캠페인의 동작이 확장 프로그램 내부에 정적으로 내장된 것이 아니라 원격 설정을 통해 동적으로 관리되고 있음을 보여줍니다(그림 4).

새 설정
그림 4: 새 설정
새 설정

설정 난독화 해제

다운로드된 설정에는 일반 텍스트 값이 포함되어 있지 않습니다. 그 대신 호스트네임, 리디렉션 페이로드, 내부 식별자는 Base64로 인코딩되며, 런타임 시 재구성됩니다(그림 5).

Base64 디코딩
그림 5: Base64 디코딩
Base64 디코딩

Base64 인코딩은 암호화 보호 기능을 제공하지 않으며, 확장 프로그램 자체에 기능적 이점을 제공하지 않습니다. 그 대신, 표적으로 하는 도메인을 숨기고 런타임 시점까지 페이로드를 리디렉션함으로써 수동 검사 및 자동 정적 분석에 필요한 작업량을 늘립니다.

디코딩된 값은 확장 프로그램의 나머지 실행 과정에서 적용될 탐색 룰을 재구성하는 데 사용됩니다.

브라우징 활동 모니터링

초기화 후, 백그라운드 서비스 워커가 webNavigation API를 활용해 사용자의 브라우징 활동을 지속적으로 모니터링합니다(그림 6).

onCompleted 설정
그림 6: onCompleted 설정
onCompleted 설정

모든 탐색이 완료되어야 해당 작업이 처리되기 때문에 확장 프로그램은 방문한 웹사이트가 확장 프로그램의 기능과 관련이 있는지 여부와 상관없이 사용자의 브라우징 세션을 효과적으로 모니터링합니다(그림 7).

활동 캡처
그림 7: 활동 캡처
활동 캡처

원격 제어 탐색 조작

호스트네임이 원격으로 제공된 룰 중 하나와 일치하면 확장 프로그램은 chrome.tabs.update() 함수를 호출해 활성 탭을 자동으로 교체합니다.

하드 코딩된 리디렉션 캠페인과 달리, 대상 URL은 확장 프로그램 내부에 임베딩되는 것이 아니라 다운로드된 설정을 기반으로 동적으로 생성됩니다.

리디렉션 대상이 확장 프로그램에 임베딩되지 않고 원격으로 제공되기 때문에, 공격자는 새로운 브라우저 스토어 업데이트를 출시하지 않고도 언제든지 캠페인 표적을 변경할 수 있습니다.

출처 파악

출처 파악은 본질적으로 어려운 일이지만, 이번 사례의 경우 여러 증거가 이 캠페인을 한국어를 구사하는 공격자(조직화된 집단이든 개인이든)와 연관 짓고 있습니다.  관찰된 지표는 다음과 같습니다.

  • 코드베이스 내 한국어 식별자

  • 한국어 현지화 리소스

  • 한국어 주석 및 개발 아티팩트

  • 제휴사 클러스터에 한국 쇼핑 서비스를 사용함

캠페인 전반에서 가장 강력한 기술적 연결 고리는 공유된 원격 설정 엔드포인트와 백그라운드 서비스 워커의 구현 방식이 거의 동일하다는 점입니다.

코드, 인프라, 원격 측정 데이터, 스토리지 설계의 재사용은 서로 무관한 확장 프로그램 퍼블리셔가 아니라 단일 공격자 또는 긴밀히 협력하는 집단에 의한 중앙 집중식 개발을 강력하게 시사합니다.

결론

이 캠페인은 최신 악성 브라우저 확장 프로그램이 변방의 멀웨어에서 원격 관리형 플랫폼으로 어떻게 발전했는지를 보여줍니다. 이 확장 프로그램은 서로 다른 생산성 툴인 것처럼 보이지만, 동일한 인프라와 코드베이스, 원격 설정 프레임워크를 공유합니다. 

공격자는 확장 프로그램에 악성 로직을 직접 임베딩하는 대신 주요 기능을 공격자가 제어하는 외부 설정 파일에 저장했습니다. 그래서 브라우저 스토어 심사를 통과한 후에도 해당 캠페인이 장기간 지속될 수 있었습니다. 

동일한 퍼블리셔가 운영하는 또 다른 제휴사 사기 조직이 발견됨에 따라 해당 조사 결과는 여러 수익화 및 공격 전략을 동시에 구사할 수 있는 역동적인 생태계가 존재함을 시사합니다.

감염 지표(IOC)

확장 프로그램

ID이름설치저장

ID

이름

설치

저장

dblfldpldecohjpjgmhnigajjdjloega

Youtube Detox: 시간을 되찾고 집중력을 유지하세요!


56

Google Chrome

ofgiffiieajicdflklkoapgndinhfacm

Eye Rest Reminder

 

91

Google Chrome

nokclhllnnnahhfbpibpmnahpepahklo

Youtube Detox: 시간을 되찾고 집중력을 유지하세요!

 

25

Microsoft Edge

kdkfbahpggclmigankbnjgmhimfoijkk

Eye Rest Reminder

 

24

Microsoft Edge

hgcmokdfbgnakiifclhfifdphfofmngp

Quick Memo

 

89

Google Chrome

ffjagifkdpammmgijbglgkklomipinem

Quick Memo

 

127

Microsoft Edge

mfnlknmbkfnlgcjebdogolbakcekohfj

KoreaDropdown

 

825

Google Chrome

ddbhcdcfllihhljfboihdbpfddibkjjg

Language Learning

 

38

Microsoft Edge

ekoglbhkaeljnakpledcdpfojbjdllmb

YouTube Summary

 

51

Microsoft Edge

pllpmojagjlnbclefckhdebmlkjhhcfh

Air Quality Monitor


17

Google Chrome

cogfipmojjaephpnihpeemgdmofhnaaj

SnapShot


69

Google Chrome

pppcpccgdjdniohmegcejgamdnhilkml

SnapShot

18

Microsoft Edge

coohonllohmhpbklloifbjjibeggijol

Copy as Markdown

 

102

Microsoft Edge

bjdlhcllmhaiigiaiaibaoihlmheomjgo

YouTube Enhancer

 

32

Microsoft Edge

bodnffdkjnpeholiplcncfegnliheamk

SEO Toolkit

 

35

Microsoft Edge

ahagmkpannaempjmlijhejhaajoiibel

Text Counter - Word & Character Count

8

Microsoft Edge

ahemlacbncnpikgfoegfjfendahcahdl

Web Highlighter - Highlight Text on Pages

 

10

Microsoft Edge

ieigeddfggngchfecpibaikoebaenpgm

Page Ruler - Measure Pixels on Screen

27

Microsoft Edge

bahnaggfidlcllmceahngpllpaahkbkd

Video Speed Controller - Playback Speed

 

13

Microsoft Edge

pncbphagfmgfopmhlbkifoonnbfdihbm

Tab Manager - Organize & Search Tabs

5

Microsoft Edge

hbjfkpmmomlaghbembkhhaaegbnlaicf

Scroll to Top - Back to Top Button

35

Microsoft Edge

nehmipanmmnkdpbjjfinnnlficndfhhd

Web Highlighter - Highlight Text on Pages

60

Google Chrome

eobmkhocignkllbfigodhemdefbjldcb

Video Speed Controller - Playback Speed

108

Google Chrome

gajghfhmgcemdgjkamllmoejhkklphnc

Holiday D-day

 

18

Google Chrome

pifjjafdfdkglnnkeahlcndkmknlgocm

Reaction Time Test - New Tab Game

60

Google Chrome

ndoihodpeipgbogeecdiphdkjpcjoofp

Page Ruler - Measure Pixels on Screen

38

Google Chrome

bjokekhmbkkgohiedecgkkfgppoghjji

Reading Time — Article Read Time Calculator

19

Google Chrome

efieelkohffbjnblcmomcejjbapaipnh

Scroll to Top - Back to Top Button

11

Google Chrome

gbgdekgkmaaamplkcdaanpdokmjjcdbm

Image Downloader - Save All Images

29

Google Chrome

fkddfdhkgfneiibakfdhgpbkkcnnlook

GitHub 한국어 (GitHub Korean)

4,000

Google Chrome

ebkkpkifaojdccgpaldnpclompdojmbh

SEO Toolkit

 

22

Google Chrome

iclkfegmbldfjjlgngidahinmhogbfna

Auto Scroll - Hands Free Page Scroller

78

Google Chrome

jocoenanieejnoookkphbljadiahaopd

YouTube Summary

 

27

Google Chrome

URL

https://cdn.jsdelivr.net/gh/chosanghyeon-dev/chosanghyeon-dev@main/cf.json

https://link.coupang.com/a/dUnRI6

https://link.coupang.com/a/ej6z6U

api.pvmf.workers.dev

이메일

indie05hacker@gmail.com

전술, 기법, 절차(TTP)

기법기법

초기 접속

LX3.003(T1199) - 신뢰 관계

방어 회피

LX7.003(T1140) - 코드 난독화/복호화

방어 회피

LX7.021 - 기만적 트래픽 세탁

인증정보 접속

LX8.008 - 네트워크 조작

수집

LX10.012(T1114) - 웹 통신 데이터

권장 사항

  • 사용자는 자신의 환경에 설치된 브라우저 확장 프로그램을 꼼꼼히 확인하고, 더 이상 필요하지 않은 확장 프로그램은 제거해야 합니다. 특히 <all_urls>, webNavigation, tabs와 같이 광범위한 권한을 요구하거나, 광고된 기능과 무관한 확장 프로그램은 반드시 삭제해야 합니다. 

  • 기업은 브라우저 확장 프로그램에서 의심스러운 권한 조합, 원격 설정 가져오기, 탐색 조작 기능 등을 지속적으로 모니터링해야 하며 원격으로 제어되는 확장 프로그램은 정적인 브라우저 추가 기능이 아닌 지속적인 공격을 단행하는 플랫폼으로 간주해야 합니다. 

  • 브라우저 벤더사는 공유 코드 및 인프라를 기반으로 확장 프로그램 그룹을 식별하고, 확장 프로그램 출시 후 동작을 변경할 수 있는 외부 호스팅 설정 파일을 검토하는 프로세스를 확대함으로써 리스크를 더욱 경감할 수 있습니다.

저자 정보

 Natalie Zargarov

Natalie Zagarov

Natalie Zargarov is a Security Researcher with more than 10 years of experience in cybersecurity as a malware reverser and cyber intelligence researcher.