웹사이트가 정상적으로 열리고 결제까지 완료된다고 해서 모든 코드가 안전한 것은 아닙니다. 2026년 9월 16일 Cloudflare는 실제 온라인 상점에서 탐지한 네 가지 악성 자바스크립트 캠페인을 공개했습니다.
이 사례들은 화면을 망가뜨리는 대신 광고 수익과 분석 데이터를 가로채거나 원격 코드를 불러오는 방식으로 움직였습니다. 이번 사례를 일반적인 쇼핑몰 운영자와 방문자가 어떤 관점에서 봐야 하는지 정리해 보겠습니다.
3줄 핵심 요약
- Cloudflare가 온라인 쇼핑몰에서 보이지 않게 실행된 악성 자바스크립트 8개를 분석했습니다.
- 공격 코드는 클릭을 가로채거나 광고·분석 도구를 바꾸고, 조건이 맞을 때만 움직여 일회성 점검을 피했습니다.
- 운영자는 외부 스크립트 목록과 변경 기록을 계속 관찰하고, 방문자는 낯선 리디렉션과 결제 화면 변화를 주의해야 합니다.

왜 기존 스캐너가 놓칠 수 있었나
Cloudflare가 분석한 공격은 모두 8개의 페이로드로 구성됐지만, 보안 스캐너를 다시 확인했을 때 7개는 VirusTotal에 악성 판정이 없었고 URLScan도 악성 결과를 내지 않았습니다. 공격 코드는 특정 기기, 국가, 시간, 유입 경로, 브라우저 상태가 맞을 때만 실행되거나 며칠 동안 다시 움직이지 않도록 설정되어 있었습니다.
HTML을 한 번 읽는 정적 점검만으로는 실제 방문자의 상호작용 중 나타나는 동작을 확인하기 어려운 이유입니다.
공격자가 노린 것은 결제 화면만이 아니었다
한 캠페인은 상품 클릭을 가로채 공격자의 제휴 추적 경로를 거치게 해 수익 귀속을 바꾸려 했습니다. 다른 캠페인은 보이지 않는 iframe으로 클릭 없이 제휴 요청을 보내도록 설계됐습니다.
또 다른 스크립트는 방문자의 브라우저에서 원격 자바스크립트를 추가로 실행할 수 있는 통로를 만들었고, 모바일 광고 유입만 골라 분석 도구와 고객지원 화면을 숨기려 했습니다. 즉 쇼핑몰이 계속 판매되고 있어도 매출 분석, 제휴 정산, 고객 문의, 브라우저에서 실행되는 코드의 통제권이 훼손될 수 있습니다.
운영자가 5분 안에 확인할 체크리스트
첫째, 관리 화면에서 직접 추가한 적 없는 외부 스크립트와 태그를 목록화하세요. 둘째, 태그 관리자와 테마·플러그인 변경 기록을 배포 기록과 대조하세요.
셋째, 모바일·데스크톱과 광고 캠페인 유입에서 스크립트 요청과 리디렉션이 달라지는지 확인하세요. 넷째, 결제·로그인·분석 페이지에서 새 도메인으로 전송되는 네트워크 요청을 살펴보세요.
다섯째, 한 번의 정적 검사로 끝내지 말고 실제 브라우저 상태와 시간 조건을 바꾼 지속적인 모니터링을 운영하세요.
방문자도 알아두면 좋은 신호
상품을 눌렀는데 새 탭이 예고 없이 열리거나 주소가 여러 번 바뀌면 결제를 계속하기 전에 창을 닫고 공식 주소를 직접 입력하세요. 광고를 누르지 않았는데 낯선 사이트가 잠깐 열리거나, 모바일에서만 고객센터와 분석 동의 화면이 사라지는 경우도 운영자가 점검해야 할 신호입니다.
단순한 화면 오류일 수도 있으므로 특정 업체나 도메인을 근거 없이 악성으로 단정하지 말고, 쇼핑몰 운영자와 공식 고객센터에 사실을 전달하는 것이 안전합니다.
사용자와 업계에 미치는 영향
이번 사례의 핵심은 악성 코드가 반드시 결제 실패나 화면 파손을 일으키지는 않는다는 점입니다. 운영팀은 ‘페이지가 정상적으로 보인다’는 확인만으로 안전을 판단하기보다 어떤 코드가 언제 실행되고 어디로 연결되는지 관찰해야 합니다.
특히 광고·분석·태그 관리 도구처럼 여러 외부 공급자가 연결된 영역은 변경 승인과 최소 권한, 정기적인 스크립트 목록 검토를 함께 운영하는 것이 좋습니다.
확인할 점
Cloudflare의 글은 자사 보안 모델이 실시간 트래픽에서 발견한 사례를 분석한 자료입니다. 각 캠페인의 실제 금전 피해 규모나 최초 침투 경로까지 모두 확인된 것은 아니며, 글에 나온 지표가 모든 쇼핑몰의 위험도를 뜻하지도 않습니다.
의심스러운 스크립트는 격리된 환경에서 확인하고, 침해가 의심되면 호스팅·보안 담당자와 전문 대응 절차를 따르세요.
출처
'수수께끼연구소' 카테고리의 다른 글
| AI 시대 보안 점검, 제품보다 먼저 확인할 5가지 기본기 (0) | 2026.09.18 |
|---|---|
| AWS 앱 여러 개를 한 번에 운영한다? Elastic Beanstalk 새 클러스터 모드 핵심 (0) | 2026.09.18 |
| AWS 가입부터 비용 관리까지 쉬워진다? 새 시작 화면에서 꼭 확인할 5가지 (0) | 2026.09.17 |
| AI 에이전트·CI에 운영 권한 줄 때 지켜야 할 최소 권한 원칙 (0) | 2026.09.16 |
| 검색 노출은 유지하고 AI 학습은 거부할 수 있을까? (0) | 2026.09.16 |