전자상거래가 급성장하면서 그만큼 보안 위협도 커지고 있습니다. Magento 기반 쇼핑몰에게 가장 큰 위험 중 하나가 바로 마젝카트(Magecart) 공격입니다. 마젝카트는 카드 스키머(card skimmer) 그룹으로, 오랫동안 Magento 웹사이트를 주요 표적으로 삼아 왔습니다. 이들에게 해킹당한 사이트는 결제 페이지에 악성 자바스크립트(JS)를 삽입해 고객의 신용카드 정보를 몰래 빼돌립니다. 다수의 고객이 카드 도용 피해를 호소하는 것이 마젝카트 해킹의 대표적인 신호입니다. 만약 마젝카트 공격을 당했다면 아래 내용을 참고해 신속히 대응하세요.
Magecart 해킹 여부를 알려주는 Magento 주요 증상
초기에는 Magento 침해 여부를 파악하기 어려울 수 있지만, 몇 가지 징후를 통해 마젝카트 공격을 의심해볼 수 있습니다.
- 고객들의 카드 도용 신고 급증: 결제 관련 불만이 늘어나는 것이 첫 번째 신호입니다. 특히 본인이 주문하지 않은 건에 대해 결제만 진행된 사례가 많다면 전형적인 카드 도용입니다. 이런 불만이 갑자기 늘어난다면 마젝카트 공격을 강력히 의심해야 합니다.
- 구매 패턴의 급격한 변화: 주문 유형의 변화도 주의 깊게 살펴봐야 합니다. 예를 들어 평소 10대처럼 활동하던 계정이 갑자기 유아용 기저귀를 대량 주문한다면 경계할 필요가 있습니다. 비정상적인 구매 행동 변화는 문제 발생의 초기 신호일 수 있습니다.
- 배송지와 카드 청구지 주소 불일치: 결제 폼에서 배송지와 청구지가 지리적으로 지나치게 먼 경우 역시 마젝카트 해킹의 증상입니다. 이는 실제 구매자가 바뀌었음을 의미할 수 있으므로, 이런 경우 계정 소유자에게 직접 전화해 확인하는 것이 좋습니다.
- 주문 가격 조작: 결제 금액을 0원으로 변경하거나 상품 결제 정보를 조작하는 행위도 나타날 수 있습니다. 상품은 배송됐는데 정산된 금액이 없다면 공격을 받고 있을 가능성이 높습니다.
일반 사용자라면 무엇을 알아야 할까요?
사용자 입장에서 이용 중인 쇼핑몰이 해킹당했는지 직접 알기는 어렵습니다. 하지만 해당 스토어에서 구매한 후 카드 명세서와 결제 내역을 꼼꼼히 확인하면 해킹 여부를 짐작할 수 있습니다. 데이터 유출이 확실하다고 판단되면 가장 먼저 은행에 연락해 신용카드 정지 및 재발급 처리를 해 추가 피해를 막아야 합니다.
그다음 해당 쇼핑몰(Magento 사이트)에 문제를 신고하는 것도 중요합니다. 이미 카드를 정지했다 하더라도 불만 접수는 필수입니다. 신고를 통해 해킹 사실이 운영자에게 전달되면 다른 사용자들의 추가 피해를 막을 수 있고, 피해에 대한 보상을 요청할 수도 있습니다.
쇼핑몰 운영자라면? Magecart 해킹 제거 방법
Magento 스토어가 해킹당했다면 신속한 복구 계획을 세우는 것이 중요합니다.
1단계. 악성코드 스캐너로 웹사이트 검사
악성코드 스캐너로 사이트를 검사하면 숨어 있던 악성 JS를 한 번에 찾아낼 수 있고, 손쉽게 검토·삭제할 수 있습니다. 다만 정상 코드와 악성 코드를 구분하기 어렵다면 전문가에게 검토 및 제거를 의뢰하는 것이 좋습니다. 대표적인 보안 솔루션인 Astra Security는 뛰어난 악성코드 제거 서비스를 제공하며, 업계 최고 수준인 4~6시간 내에 작업을 완료합니다.
2단계. 웹사이트 백업 후 복원 준비
기술적 지식이 있다 하더라도 사이트를 수정하기 전에 반드시 백업을 해두는 것이 좋습니다. 악성 JS를 찾는 작업은 생각보다 어려워 실수하기 쉬우며, 백업본이 있으면 문제가 생겨도 빠르게 복구할 수 있습니다. 처음이라면 상세한 Magento 해킹 제거 가이드를 따라 하는 것을 추천합니다.
평소 백업 습관이 있었다면 정상 백업본으로 롤백하는 것만으로 해킹을 되돌릴 수 있습니다. 다만 마젝카트 해킹은 몇 주 동안 은밀하게 숨어 있어 정확한 감염 시점을 파악하기 어려운 경우가 많습니다. 어떤 백업본이 안전하고 어떤 백업본이 오염됐는지 판단하기 어려울 수 있다는 점을 유의하세요.
3단계. 안전한 결제 게이트웨이 확보
웹사이트 결제는 대부분 신용카드 등으로 이루어집니다. 결제 게이트웨이를 확실히 보안해 피싱(phishing)이나 파밍(pharming) 공격을 차단해야 합니다. 데이터 암호화와 개인키(private key) 적용은 필수 단계이며, 보안성이 더 높은 암호화폐 결제 도입도 하나의 트렌드입니다.
4단계. 온라인 스토어 보안 강화를 위한 추가 조치
- 멀웨어 클리너와 웹 방화벽(WAF)으로 웹사이트를 보호해 악성 공격을 차단합니다.
- 관리자 페이지의 로그인 URL과 계정 정보를 정기적으로 변경합니다.
- 중요 파일은 암호화 및 접근 권한 설정으로 보호합니다.
Magecart 해킹 대응 체크리스트 요약
- 웹사이트 위협을 식별하고 유출된 카드 정보 내역을 파악합니다.
- 웹사이트의 중요 데이터를 백업합니다.
- 파일 무결성을 유지합니다. SSH 명령어로 파일 무결성을 확인하고 diff 명령어로 차이점을 찾아냅니다.
- 관리자 패널에 로그인해 사용자 계정을 검토합니다. ID 번호나 이상한 이름의 사용자명을 발견하면 즉시 삭제합니다.
- Google 세이프 브라우징(Safe Browsing)에서 웹사이트 안전성 리포트를 확인합니다. 보안 문제로 Google에 차단된 사이트라면 이 단계가 특히 중요합니다.
- SSH로 로그인해 최근 변경된 콘텐츠를 확인하고, 악성 도메인을 검색하며, diff가 지적한 파일들을 검토한 뒤 시스템을 복구합니다.
- 의심되는 파일과 깨끗한 백업본을 비교해 악성 파일과 악성 코드를 완전히 제거합니다.
- 모든 수정이 끝나면 사이트를 오픈하기 전에 반드시 테스트를 진행합니다.
이러한 문제 해결은 기술적 난이도가 높을 수 있습니다. 기술적인 부분이 부담스럽다면 주저하지 말고 Astra Security에 상담을 맡기세요. 사이버 보안 분야의 풍부한 경험을 바탕으로 단 몇 시간 만에 Magento 마젝카트 해킹 문제를 신속하게 해결해 드립니다. 지금 바로 문의하세요!