Computer >> 컴퓨터 >  >> 네트워킹 >> 네트워크 보안

Magento 해킹됨:Magento 맬웨어 제거에 대한 전체 가이드

Magento는 인터넷의 1.2%와 모든 전자상거래 사이트의 12%를 차지합니다. 순수하게 250,000개의 활성 사이트에서 Magento를 사용합니다.

전자 상거래 사이트는 엄청난 양의 고객 데이터를 처리하므로 해커의 주요 대상이 됩니다. 그래서 우리는 이 위기에서 벗어나기 위해 단계별 Magento 해킹 제거 기술을 모았습니다. 이 가이드는 귀하의 Magento 웹사이트에 대한 증상, 예, 가능한 원인 및 예방 팁을 추가로 다룹니다.

Magento 해킹 유형은 부족하지 않지만 신용 카드 스키밍 및 신원 도용은 Magento에서 가장 흔한 유형입니다. 또한 Magento의 CVE 세부 정보는 Magento를 가장 위협하는 공격 벡터를 드러냅니다.

시각화 도우미별 차트

이 외에도 회사에서 SUPEE-10266이라는 새 업데이트 번들을 출시해야 했던 소프트웨어에서 몇 가지 심각한 취약점이 보고되었습니다. 마젠토 킬러'라는 이름의 공격은 불과 몇 달 전 마젠토를 맹렬히 노렸다. Magento 1에 대한 공식 지원이 곧 종료되므로 완화하지 않은 상점은 해커를 초대할 것입니다.

Magento 해킹:가능한 결과 또는 증상

귀하의 Magento 매장이 해킹당했을 수 있음을 나타내는 많은 징후가 있습니다. 열린 눈으로 이들을 찾으면 위기에서 비즈니스를 구할 수 있습니다. 여기에 이러한 증상 중 일부를 나열했습니다.

증상

  • 고객이 신용 카드 정보 도난에 대해 불만을 제기함
  • 체크아웃 페이지에 가짜 양식이 추가되어 판매로 인해 손실을 보고 있습니다.
  • 검색 엔진이 Magento 매장을 블랙리스트에 추가합니다.
  • 호스트가 웹사이트를 일시중지했습니다.
  • 웹사이트에 악성 리디렉션이 나타남
  • 관리자 패널이 손상되거나 로그인 후 빈 화면이 표시됨
  • Magento 스토어가 느려지고 오류 메시지가 표시됨
  • 로그인 데이터베이스에 새로운 불량 관리자가 나타납니다.
  • 귀하의 웹사이트에 대한 스팸 키워드(일본어 또는 제약) 검색 결과를 표시하는 Google
Magento 해킹됨:Magento 맬웨어 제거에 대한 전체 가이드

결과

  • Magento 매장의 사용자 트래픽 및 수익 감소
  • 웹사이트의 SEO에 부정적인 영향을 미칩니다.
  • 사용자가 신뢰 부족으로 인해 귀하의 Magento 매장 방문을 자제하고 있습니다.
  • 사이트 데이터는 양파 사이트에서 경쟁업체에 판매될 수 있습니다.
  • 피싱 페이지 또는 자바스크립트를 통한 상점의 민감한 데이터 도난

Magento 해킹:예

종종 여러 Magento 사용자가 한 번에 공격자의 표적이 됩니다. 모든 사이트 관리자가 보안 전문가는 아닙니다. 따라서 문제가 있는 사용자는 커뮤니티 포럼에 도움을 요청하고 Magento 해킹된 상점을 수정하는 방법을 찾을 수 있습니다.

Magento 해킹됨:Magento 맬웨어 제거에 대한 전체 가이드

Magento 해킹됨:Magento 맬웨어 제거에 대한 전체 가이드 Magento 해킹됨:Magento 맬웨어 제거에 대한 전체 가이드

Magento(1x 및 2x) 해킹된 저장소 청소

피해 통제

손상 관리부터 시작합니다. 이것은 해킹을 수정하지 않는다는 점에 유의하십시오. 그러나 분노를 멈출 것입니다. 다음은 피해 관리로 고려해야 할 사항입니다.

  1. 기본 및 명백한 자격 증명을 어렵고 임의적이며 고유한 것으로 변경합니다.
  2. 모든 공격자를 잠그기 위해 단일 SQL 문으로 사용자 암호를 업데이트합니다. 이것은 다음 SQL 문을 통해 수행할 수 있습니다.

    update users set pass = concat(‘ZZZ’, sha(concat(pass, md5(rand()))));
  3. 민감한 폴더에 대한 액세스를 거부합니다. .htaccess를 생성하여 이를 수행할 수 있습니다. 그 안에 파일. 해당 파일 내에 다음 코드를 추가하십시오.
    Order Deny,AllowDeny from allAllow from xx.xx.xx.xx

IP 주소로 xx.xx.xx.xx를 편집합니다. 더 많은 IP 주소를 추가하려면 다른 IP로 "...에서 허용" 행을 반복하십시오. 이러한 코드 행은 해당 특정 폴더에 대한 원치 않는 액세스를 차단합니다.

사이트 백업

Magento 매장 청소를 시작하기 전에 먼저 백업을 받으세요. 이 백업에는 코어 파일과 데이터베이스가 모두 포함되어야 합니다. 상점의 작업 및 모양을 정의하는 추가 파일이 있는 경우 백업에도 포함하십시오. 명확히 하려면 코어, 확장 및 데이터베이스를 백업하십시오.

해킹 확인

도구 사용

백업을 수행한 후 상점 스캔을 시작합니다. 이제 웹 사이트가 감염되었는지 여부를 확인하는 수십 개의 무료 도구를 사용할 수 있습니다. Virustotal은 가장 인기 있는 도구입니다.

Google 검색 콘솔을 확인하여

도구 외에 검색 엔진의 보안 보고서도 도움이 될 수 있습니다. 웹마스터(Google의 경우 Google 검색 콘솔)에도 로그인하여 보안 보고서를 확인합니다. 다음의 간단한 단계에 따라 웹사이트가 감염되었는지 여부를 확인하십시오.

  1. Google 검색 콘솔에 로그인합니다(웹마스터 도구)
  2. '보안 탭'으로 이동
  3. 플래그가 있는지 확인합니다. 일반적으로 해킹된 웹사이트는 검색 엔진에 의해 거의 즉시 플래그가 지정됩니다. 감염 유형과 해당 파일이 포함된 정확한 파일에 대해 자세히 설명하는 보고서가 표시됩니다.

이제 실제로 감염이 있다는 것을 알았습니다. 정확한 위치를 찾아야 할 때입니다. Magento 해킹 제거 프로세스에서 더 큰 부분이 스캔에 들어간다는 것을 기억하십시오. 따라서 이제 코어 파일, 확장 파일, 모듈 파일, 데이터베이스 등의 감염을 추적합니다.

코어 파일 스캔

해커는 데이터베이스 및 코어 파일에 코드를 삽입하여 Magento 웹사이트를 손상시킬 수 있습니다. 따라서 이러한 파일에서 최근의 익숙하지 않은 변경 사항을 확인해야 합니다. 이렇게 하려면 명령을 실행하거나 차이 검사기 도구를 사용할 수 있습니다. 그러나 귀하의 편의를 위해 다음 두 가지 방법을 모두 나열하겠습니다.

SSH 명령줄 실행:

명령줄이 작동하려면 먼저 깨끗하고 정품인 Magento 스토어 버전을 다운로드해야 합니다. Magento 공식 사이트 또는 Github에서 쉽게 다운로드할 수 있습니다. 다음 명령은 이 두 복사본에 이상이 있는지 확인합니다.

$ mkdir magento-2.2.5

$ cd magento-2.2.5

$ wget https://github.com/magento/magento2/archive/2.2.5.tar.gz

$ tar -zxvf 2.2.5.tar.gz

$ diff -r 2.2.5 ./public_html

참고:여기 Magento 2.2.5가 있습니다. 클린 파일로 사용 중이며 현재 설치가 public_html 폴더로 표시됩니다.

diff 명령줄 실행:

최근에 수정된 파일은 해킹에 대비하여 항상 의심해야 합니다. diff 명령은 설정된 기간 동안 파일에서 이러한 모든 변경 사항을 표시합니다. 예를 들어, 이 경우 기간을 10일로 설정했습니다(mtime -15 참조).
다음은 명령을 실행하는 방법입니다.

  1. Magento 웹 서버에 로그인합니다.
  2. SSH로 접속 시 다음 명령어를 실행합니다. 여기에는 지난 10일 동안의 모든 변경 사항이 나열됩니다.
    $ find ./ -type f -mtime -10
  3. SFTP로 접속 시 서버에 있는 모든 파일의 마지막 수정일 열을 확인하세요.

이를 통해 지난 10일 동안 수행된 모든 수정 목록을 얻을 수 있습니다. 이후부터는 수동으로 변경할 수 있습니다.

사용자 로그 검토

다음은 웹사이트의 사용자를 확인하는 것입니다. 때때로 해커가 귀하의 웹사이트에 무단으로 액세스합니다. 그리고 그들은 자신을 사용자로 추가합니다. 이것이 사용자 계정을 감사해야 하는 이유입니다. 관리 테이블에서 불량 사용자를 찾아 제거합니다. 이러한 계정을 제거하면 웹사이트의 손상을 확인하는 데 도움이 됩니다.

사용자 로그를 감사하려면 다음 단계를 따르세요.

  1. 관리자 패널에 로그인
  2. 시스템>권한>모든 사용자로 이동합니다.
  3. 이 목록을 주의 깊게 검토

맬웨어 찾기

SQL 주입의 경우 공격자는 코드를 사람이 읽을 수 없는 형식으로 난독화하는 경우가 많습니다. 그리고 Base64 형식은 공격자에게 유용합니다. 파일 내에서 base64 코드를 검색하려면 다음 명령을 실행하십시오.

find . -name "*.php" -exec grep "base64"'{}'; -print &> hiddencode.txt

이 명령은 base64 eth로 인코딩된 코드 라인을 스캔합니다. 그리고 hiddencode.txt 안에 저장하십시오. . 추가 분석을 위해 온라인 도구를 사용하여 이를 디코딩할 수 있습니다.

그러나 스팸 공격의 경우 phpMyAdmin과 같은 도구가 유용할 수 있습니다. Magento 스팸 공격에는 모든 Magento 해킹 페이지에 삽입된 횡설수설이 포함됩니다. 말할 것도 없이, 이것은 검색하고 제거하기가 꽤 어렵습니다. 따라서 phpMyAdmin을 사용하여 한 번에 여러 페이지 내에서 악성 코드를 검색하는 것이 좋습니다.

Magento 해킹됨:Magento 맬웨어 제거에 대한 전체 가이드

Magento 해킹됨:Magento 맬웨어 제거에 대한 전체 가이드

Magento Security:파일 복원

악성코드가 노출된 후 Magento 해킹 페이지에서 제거합니다. 코드에 대해 잘 모르는 경우 주석으로 처리하고 전문가에게 문의하십시오. 백업에서 페이지를 복원합니다. 백업을 사용할 수 없는 경우 새 복사본을 사용하십시오.

Magento 해킹의 가능한 원인

Magento 해킹:Magento SQL 주입

SQL 주입은 웹 앱에서 상당히 일반적입니다. Magento 매장의 데이터베이스를 대상으로 합니다. 데이터베이스는 종종 웹사이트의 두뇌라고 합니다. 그것은 Magento 상점의 주문 내역, 거래 등과 같은 모든 민감한 데이터를 보유합니다. 이것은 매력적인 표적이 됩니다.

효과

의심의 여지 없이 SQLi는 웹사이트에 심각한 손상을 줄 수 있습니다. 여기에 무엇이 잘못될 수 있는지 나열했습니다.

  • 공격자는 데이터베이스의 내용을 읽을 수 있습니다.
  • 데이터베이스의 내용을 변경할 수 있습니다. 그러면 상점의 콘텐츠가 수정됩니다.
  • 물론 그는 전체 데이터베이스를 삭제할 수 있습니다.
  • 신용카드 정보를 훔칠 수 있습니다.
  • 공격자는 관리자 자격 증명을 훔치고 노출할 수도 있습니다. 이는 추가 공격으로 이어질 수 있습니다.
  • 경우에 따라 리버스 쉘을 얻을 수 있습니다. 권한 상승에 도움이 될 수 있습니다.

SQL 주입 공격이 어떻게 발생하는지 명확히 하기 위해 한 가지 예를 인용했습니다. 이것은 2015년 Magento 가게 물건 훔치기 공격에서 발생한 실제 사례입니다.

이 공격에서 악성 요청이 이루어진 대상 URL은 다음과 같았습니다.

https://www.example.com/index.php/admin/Cms_Wysiwyg/directive/index/

이것은 구문 분석 오류로 인해 발생했습니다. 필터에 입력된 모든 값 키 즉 ("필터":malicious_value)가 잘못 구문 분석되었습니다. 또한 공격자는 base64를 사용했습니다. 탐지를 피하기 위해 인코딩합니다. 공격자는 기본적으로 필터에 값으로 SQL 문을 삽입했습니다. 키 및 구문 분석되었습니다.

Magento 해킹됨:Magento 맬웨어 제거에 대한 전체 가이드

Magento 해킹됨:Magento 맬웨어 제거에 대한 전체 가이드

위의 요청을 디코딩할 때 결과는 다음과 같았습니다.

여기에서 처음 몇 개의 SQL 문은 기본적으로 공격자가 선택한 솔트를 사용하여 새 암호를 설정하고 있습니다. 그 후 다음 SQL 문의 그룹은 새 admin_user 데이터베이스에. 그리고 마지막 몇 개의 SQL 문은 관리자 역할을 활용하고 있습니다. 따라서 공격자는 username=”ypwq로 새 사용자 관리자를 생성했습니다. ", 암호="123 ". 전체 익스플로잇은 GitHub에서 공개적으로 사용할 수 있습니다.

예방

다음과 같이 SQL 주입으로부터 웹사이트를 보호하세요.

  1. 클라이언트 측으로 권한 제한
  2. 준비된 문장 사용
  3. 보호 매개변수
  4. 방화벽

자세한 예방 수칙은 이 글을 참고하세요.

Magento 해킹됨:Magento 맬웨어 제거에 대한 전체 가이드

XSS 공격을 통해

Magento XSS 공격에서 공격자는 악성 JavaScript 코드를 Magento 상점의 다양한 웹 페이지에 삽입합니다. 그것은 약하거나 존재하지 않는 위생 및 검증 규칙에서 발생합니다. 이 공격은 주로 사용자의 저장된 쿠키 및 세션 세부 정보를 대상으로 합니다. 일반적으로 이 공격의 동기는 사용자 또는 관리자의 세션 세부 정보를 훔치는 것입니다. 세션 세부 정보에는 해당 사용자의 로그인 자격 증명도 포함되어 있으므로 이 정보를 사용하여 비정식으로 스토어에 로그인할 수 있습니다.

효과

  • 쿠키/세션 세부정보 도난
  • 해커에 대한 인증되지 않은 액세스
  • 해커는 CSRF 토큰과 같은 중요한 데이터를 읽을 수 있습니다.
  • 사용자를 사칭하여 요청

예시

XSS 취약점은 Magento 버전 1.9.0.1에서 발견되었습니다. 취약한 요소가 포함된 파일은 다음과 같습니다.

https://[magento_url]/skin/adminhtml/default/default/media/editor.swf
https://[magento_url]/skin/adminhtml/default/default/media/uploader.swf
https://[magento_url]/skin/adminhtml/default/default/media/uploaderSingle.swf

XSS의 원인은 FlashVar 매개변수 "브리지 이름 "가 ExternalInterface.call에 전달되었습니다. 적절한 위생이 없는 방법. 그 결과 bridgeName을 통해 악성 자바스크립트 코드를 전달할 수 있었습니다. 매개변수. 따라서 이 악성 JS 코드는 페이지가 로드될 때마다 실행됩니다. 전체 페이로드는 다음과 같았습니다.

https://example.com/skin/adminhtml/default/default/media/editor.swf?bridgeName=1%22]%29%29;alert%281%29}catch%28e%29{alert%281%29}//

예방

다음 조치를 따르면 웹사이트 XSS를 무료로 유지할 수 있습니다.

  1. 적절한 살균 및 검증 규칙 설정
  2. 권한 제한

Magento 해킹됨:Magento 교차 사이트 요청 위조

Magento CSRF 공격은 기본적으로 사용자 모르게 최종 사용자를 대신하여 위조된 요청을 실행합니다. 일반적으로 CSRF 공격에는 사회 공학이 수반됩니다. 따라서 해커는 메일을 통해 대상 사용자(일반적으로 관리자)에게 악성 링크를 보낼 수 있습니다. 이러한 링크 뒤에 있는 동기는 사용자를 대신하여 기능을 실행하는 것입니다.

효과

  • 공격자가 귀하의 계정을 삭제할 수 있습니다.
  • 그는 당신의 신용 카드를 사용할 수 있습니다
  • 은행 계좌 정보를 이용하여 공격자는 피해자의 은행 계좌에서 자신의 계좌로 자금을 이체할 수 있습니다.
  • 그는 지불하지 않거나 가격을 조작하여 Magento 매장에서 불법적으로 주문할 수 있습니다.

  1. Magento 1에서 원격 공격자가 실행을 위해 영향을 받는 서비스 모듈의 애플리케이션 측에 스크립트 코드를 삽입할 수 있는 심각한 CSRF 버그가 발견되었습니다. 이에 취약한 구성 요소는 '파일 이름 ' 이미지 업로드 모듈의 매개변수입니다. 공격자는 이 공격을 성공적으로 수행하기 위해 애플리케이션 측의 POST 요청을 사용했습니다. 그러나 이를 악용하기 위해 공격자는 낮은 권한의 웹 응용 프로그램 사용자 계정과 낮거나 중간 정도의 사용자 상호 작용이 필요했습니다. 취약한 스크립트의 코드 스니펫은 아래와 같습니다.

Magento 해킹됨:Magento 맬웨어 제거에 대한 전체 가이드 Magento 해킹됨:Magento 맬웨어 제거에 대한 전체 가이드

여기에서 공격자는 'to ' 및 parent_message_id 적절한 견제와 균형의 부족으로 인한 매개변수. 공격자는 이를 사용하여 자신의 동의 없이 다른 사용자에게 메시지를 보낼 수 있습니다. 또한 공격자에게 Magento 해킹 스토어의 콘텐츠를 조작할 수 있는 다른 능력도 부여했습니다.

  • 2.0.10/2.1.2 이전의 Magento Community 및 Enterprise 에디션도 2개의 CSRF 버그를 겪었습니다.
    APPSEC-1212: Magento는 GET 요청을 통해 미니 카트에서 항목을 삭제하는 동안 anti-CSRF 토큰의 유효성을 검사하지 못했습니다. 따라서 공격자는 이 취약점을 사용하여 피싱 및 기타 트릭을 통해 장바구니에서 항목을 제거할 수 있습니다.
    APPSEC-1433: 이것은 더 심각한 CSRF 취약점이었습니다. 이를 악용하여 공격자는 안티 CSRF 토큰 또는 Referer 헤더 유효성 검사가 없기 때문에 저장소의 모든 주소를 삭제할 수 있습니다.
  • 예방

    • CSRF 공격을 방지하는 가장 좋은 방법은 토큰 기반 방지를 사용하는 것입니다.
    • 동일 출처 정책을 사용하면 CSRF의 경우에도 작동합니다.
    • 또 다른 방법은 동기화 토큰을 보유하는 것입니다.
    • 보안문자 사용

    CSRF에 대한 자세한 정보를 보려면 여기를 방문하십시오.

    Magento 해킹됨:Magento 원격 코드 실행

    Magento 코드 실행은 공격자가 웹사이트에 악성 코드를 삽입할 수 있는 공격 유형입니다. 이 공격은

    효과

    • 공격자는 웹사이트와 웹 서버를 손상시킬 수 있습니다.
    • 파일과 데이터베이스를 보고, 변경하고, 삭제할 수 있습니다.

    Examples

    Magento CE and EE before 2.0.10/2.1.2 were vulnerable to Remote code execution. This was dubbed as APPSEC-1484 and had a severity rating of 9.8 (critical). The cause of the vulnerability was that some payment methods allowed users to execute malicious PHP code while checking out. The exploit, as well as the Metasploit module for this vulnerability, has already been released.

    Prevention

    • Set proper parsing methods.
    • Set stricter permissions for the users.

    Magento Hacked:Other Causes

    • Weak or hard-coded credentials.
    • LFI, RFI, OWASP top 10, etc.
    • Outdated versions.
    • Server misconfigurations like open ports etc.
    • Poor hosting without subnets.

    How To Prevent Magento Store From Hacker

    Magento 해킹됨:Magento 맬웨어 제거에 대한 전체 가이드

    Update and Backup

    Migrate to Magento 2. The Magento team updates critical flaws with each new update. This can be verified using the changelog. Moreover, avoid using unreputed extensions as they are likely to contain buggy code. Make sure to create a copy of the site. This could come in handy to restore the site after an attack. Updates and backups are the cheapest and most effective methods of securing a Magento store.

    Complete Step by Step Guide to Magento Security (Videos, Extensions, Code &Infographics) (Reduce the risk of getting hacked by 90%)

    Security Audit

    A security audit can protect the Magento store from attacks. Every Magento user cannot be an expert in security. Therefore use online services like Astra. Apart from this, Astra security audit and pen-testing can uncover severe threats present on the store. These vulnerabilities can be patched before an attacker exploits them!

    Magento 해킹됨:Magento 맬웨어 제거에 대한 전체 가이드

    Astra Security:Magento Malware Scanner and Magento Firewall Plugin

    New vulnerabilities are uncovered in the Magento e-commerce solution each month. Though you can still keep your store safe from fraud and malware at as low as $9 per month. Buy a feasible firewall for your store. Astra is an out of box solution deployed on the cloud. This means protecting your store without using any resource-hungry anti-virus solutions. Also, average users can comfortably use Astra through a simple dashboard. Installation of Magento Firewall plugins is pretty easy and if you are still unable to figure out, Astra’s engineers got you covered. Astra firewall is the right choice for you being highly robust and scalable.

    Cleaning and restoring a hacked Magento store is at times confusing and painstaking. The solution to all these problems is automatic tools like Astra Security. The Astra Security Magento malware scanner can detect and weed out multiple signatures of malware from hacked sites within minutes. Moreover, don’t worry about the files, Astra will patch them for you.