Magecart는 지난 5년간 웹 스키밍(web skimming) 활동으로 악명 높은 해커 조직들의 연합입니다. 이들은 Magento, OpenCart, PrestaShop, Shopify와 같은 주요 전자상거래 CMS의 취약점을 찾아내어 악성 자바스크립트를 주입하는 방식으로 공격을 감행합니다.
주입된 자바스크립트는 웹사이트를 방문한 고객의 신용카드 정보처럼 민감하면서도 상업적으로 가치가 큰 데이터를 몰래 탈취하는 데 사용됩니다. 이전 포스트에서는 Magecart가 Magento를 공격하는 방식을 다루었는데, 이번 글에서는 OpenCart를 겨냥한 Magecart 공격의 전체 실행 과정을 자세히 살펴보겠습니다.
OpenCart에 대한 Magecart 공격 현황
OpenCart는 전자상거래 웹사이트용 CMS 가운데 톱 3에 꼽히는 플랫폼입니다. 인기 기준으로 Magento와 Shopify에 이어 3위를 차지하고 있으며, 이러한 높은 인기 때문에 자연스럽게 Magecart 조직의 주요 표적 목록에도 오르게 됩니다.
Magecart의 실태를 폭로해 큰 반향을 일으켰던 보고서에 이어, RiskIQ의 연구원은 Magecart 그룹 12(Group 12)가 OpenCart 스토어에서 벌이는 활동을 상세히 담은 새로운 보고서를 다시 공개했습니다. 이 그룹은 언론 헤드라인에 노출되지 않고 은신 상태를 유지하기 위해 의도적으로 규모가 작은 스토어들을 표적으로 삼습니다.
보고서에 따르면 Magecart 그룹 12는 유명 프랑스 광고 업체인 Adverline까지 침해한 것으로 확인되었습니다. 이로 인해 Adverline과 연결된 모든 웹사이트는 자신도 모르는 사이에 악성 스크립트를 로드하게 되었습니다. 뿐만 아니라 이 그룹은 Magento, OpenCart, OSCommerce를 기반으로 운영되던 수천 개의 소규모 웹사이트의 보안을 뚫고 데이터를 유출했습니다.
최근 공격 사례를 보면 더욱 교묘해진 수법이 눈에 띕니다. Magecart는 사전 필터링(pre-filter) 자바스크립트 코드를 활용해, 방문자가 결제 페이지로 이동한다는 사실을 감지한 후에야 스키머(skimmer)를 OpenCart 사이트에 주입하고 있습니다.
OpenCart에 대한 Magecart 공격은 어떻게 실행될까?
지금까지 보고된 바로는 OpenCart를 겨냥한 Magecart 공격에는 세 가지 침입 경로가 있습니다.
1. 취약점 악용
첫 번째 방법은 알려진 취약점을 악용하는 것입니다. 이러한 취약점 정보는 온라인에서 무료로 유통되기도 하고, 일부는 금액을 주고 거래되기도 합니다.
2. 관리자 패널 탈취
두 번째 방법은 무차별 대입 공격(brute-force)이나 피싱을 통해 관리자 패널의 로그인 자격 증명을 빼내는 것입니다.
3. 서드파티 공급업체 침해
세 번째 방법은 플러그인·테마 개발자와 같은 서드파티 공급업체를 침해하는 것입니다. 공격자는 이런 외부 경로를 통해 전자상거래 스토어 내부로 침투한 뒤 웹 스키머를 심어둡니다.

OpenCart에 대한 Magecart 공격 예방 대책
웹에서 완벽하게 해킹으로부터 안전하다고 장담할 수 있는 곳은 없지만, 올바른 보안 수칙을 준수하면 공격 발생 가능성과 피해의 심각도를 충분히 낮출 수 있습니다. 실천할 수 있는 대책들을 정리해 보았습니다.
1. 항상 최신 버전 유지
비즈니스를 운영하는 CMS 버전을 절대 소홀히 다루지 마세요. 최신 버전으로 업데이트하지 않으면 문제만 더 불려집니다. 구버전에는 이미 공개된 취약점이 많아 공격자가 훨씬 수월하게 악용할 수 있습니다.
2. 파일 및 폴더 권한 제대로 설정
웹사이트의 모든 진입 지점을 단단히 강화하는 것도 효과적인 대응 방법입니다. 웹사이트에 더욱 엄격한 파일 권한을 설정하세요. 설정 방법이 익숙하지 않다면 관련 보안 가이드 문서를 참고하시기 바랍니다.
3. 보안 솔루션 도입
검증된 보안 솔루션은 위기 상황에서 생명줄이 되어 줍니다. Astra의 방화벽(WAF)은 비인가 침입 시도를 사전에 차단하며, SQLi, RFI/LFI, XSS, CSRF, OWASP Top 10 등 100여 가지의 알려진 사이버 공격을 막아줍니다. 또한 Astra의 자동화된 멀웨어 스캐너를 활용하면 클릭 한 번으로 웹사이트를 간편하게 정기 검사할 수 있습니다.
결론
Magecart만이 사이버 공간에서 활동하는 웹 스키밍 그룹은 아닙니다. 웹이 제공하는 익명성을 악용하는 해커는 수백 명에 달합니다. Magecart가 당장 활동을 멈추지 않는 한 신용카드 정보 탈취 위험이 하룻밤 사이에 사라지지는 않을 것입니다. 하지만 우리가 공격자보다 한 수 앞선다면 그들의 모든 시도를 충분히 무력화할 수 있으며, 웹사이트에 더 나은 보호 체계를 적용하는 것이 그 출발점입니다.
Astra Security Suite는 웹을 그 어느 때보다 안전하게 만들기 위해 노력하고 있습니다. Astra는 이미 수백 개의 웹사이트를 안전한 수준으로 끌어올렸으며, 여러분의 OpenCart 웹사이트 역시 Astra로 보호할 수 있습니다. 지금 바로 Astra 데모를 신청해 보세요.