악성 리디렉션 맬웨어 해킹에서 복구하는 방법
게시 됨: 2022-10-18악의적인 공격자의 가장 인기 있는 전술 중 하나는 트래픽을 다른 사이트로 유도할 목적으로 사이트에 악성 리디렉션 멀웨어를 추가하는 것입니다. 이는 사이트 소유자뿐만 아니라 사이트 방문자에게도 해로울 수 있습니다. 악성 리디렉션은 종종 의심하지 않는 사이트 방문자를 스팸 사이트 또는 제거하기 까다로울 수 있는 맬웨어로 사용자의 컴퓨터를 감염시킬 수 있는 사이트로 유도합니다.
이 게시물에서는 악성 리디렉션 맬웨어가 무엇인지, 해커가 이 전술을 사용하는 이유, 사이트가 이 맬웨어의 영향을 받는지 여부를 확인하는 방법, 악성 리디렉션 맬웨어의 영향으로부터 사이트를 복구하는 몇 가지 가능한 솔루션에 대해 설명합니다. .
또한 사이트가 복구된 후에도 보호 상태를 유지하기 위한 몇 가지 중요한 단계를 간략하게 설명합니다.
악성 리디렉션 멀웨어란 무엇입니까?
악성 리디렉션은 사이트 방문자를 다른 웹사이트로 리디렉션할 목적으로 웹사이트에 삽입되는 코드(일반적으로 Javascript)입니다. 종종 이 악성 멀웨어는 다른 사이트에서 광고 노출을 생성할 목적으로 공격자가 WordPress 웹사이트에 추가합니다. 그러나 일부 악의적인 리디렉션은 더 심각한 의미를 가질 수 있습니다. 더 심각한 악의적인 리디렉션은 사이트 방문자의 컴퓨터에서 잠재적인 취약점을 악용할 수 있습니다. 이 유형의 멀웨어는 사용자의 Mac 또는 Windows 컴퓨터에 큰 피해를 줄 수 있는 악성 멀웨어로 개인용 컴퓨터를 감염시키는 멀웨어를 설치하는 것을 목표로 합니다.
사이트 감염 여부 확인
사이트 소유자는 사이트가 리디렉션되고 있다는 사실을 모를 수 있습니다. 인증되지 않은(로그인하지 않은 사용자)만 리디렉션되도록 악성 리디렉션이 숨겨지는 경우가 많습니다. 또는 사용자가 사이트를 방문할 때 사용하는 브라우저를 감지하고 해당 특정 브라우저로만 리디렉션할 수 있습니다. 예를 들어 취약한 버전의 Chrome만 감염시킬 수 있는 멀웨어가 있는 개인용 컴퓨터를 악용하려는 경우 악성 스크립트에서 감지한 해당 버전을 사용하는 컴퓨터만 리디렉션됩니다. 무슨 일이 일어나고 있는지 확인하려면 약간의 조사가 필요할 수 있습니다.
사이트 소유자는 고객이 보고한 리디렉션을 복제하려고 시도했지만 모든 것이 자신의 컴퓨터에서 제대로 보이는지 확인할 수 있었습니다. 모바일 플랫폼의 사이트 방문자는 동시에 악의적인 활동을 경험할 수 있습니다. 리디렉션은 일부 페이지에서 발생하고 다른 페이지에서는 발생하지 않을 수 있습니다. 또는 사이트가 로드되기 전에 발생할 수 있습니다.
내 WordPress 사이트가 다른 사이트로 리디렉션되는 이유는 무엇입니까?
사이트가 리디렉션되는 경우 공격자가 리디렉션을 생성하는 데 사용할 수 있는 몇 가지 방법이 있습니다. 물론 이러한 방법은 모두 리디렉션을 생성하는 매우 유효한 방법일 수 있지만 악의적인 경우에는 사이트 방문자에게 가장 좋은 방법이 아닙니다. 다음은 공격자가 리디렉션하는 데 사용하는 몇 가지 방법입니다. 리디렉션의 기본 방법에는 .htaccess 리디렉션 또는 Javascript 리디렉션이 포함됩니다. 드문 경우지만 HTTP 헤더(예: META HTTP-EQUIV=REFRESH 리디렉션)를 찾을 수 있지만 이는 드뭅니다. 많은 경우 리디렉션이 난독화되어 코드의 진정한 의도를 숨기는 데 함수가 사용됩니다. 이 난독화는 종종 무언가 잘못되었다는 첫 번째 열쇠이지만 공격자는 대부분의 WordPress 사이트 소유자가 난독화에 겁을 먹고 더 깊이 파고 싶지 않을 것이라고 확신합니다.
리디렉션 감염은 정확히 어디에 있습니까?
해커가 악성 코드를 삽입하여 WordPress 리디렉션 해킹이 발생하는 여러 영역이 있습니다.
1. PHP 파일
공격자는 WordPress 코어 파일에 코드를 삽입하여 사이트를 감염시킬 수 있습니다. 다음은 문제를 일으키는 악성 코드를 포함할 수 있는 일부 파일입니다.
공격자는 WordPress의 모든 핵심 파일에 코드를 삽입하여 웹사이트를 감염시킬 수 있습니다. 이 파일에 악성 코드가 있는지 확인하십시오. 악성 코드와 악성 코드가 무엇인지 확실하지 않은 경우 파일을 WordPress 코어 또는 테마 및 플러그인 파일의 알려진 양호한 사본과 항상 비교할 수 있습니다.
- index.php
- wp-config.php
- wp-settings.php
- wp-load.php
- .ht액세스
- 테마 파일(wp-content/themes/{themeName}/)
- 헤더.php
- 기능.php
- 바닥글.php
2. 자바스크립트 파일
리디렉션 멀웨어의 일부 변종은 사이트의 모든 JavaScript(.js) 파일에 영향을 미칩니다. 여기에는 플러그인, 테마 폴더 및 wp-includes의 Javascript 파일이 포함됩니다.
그리고 일반적으로 각 JavaScript 파일의 맨 위 또는 맨 아래에 동일한 악성 코드가 추가됩니다.
3. .htaccess 파일
.htaccess 파일은 웹 서버가 사이트 방문자로부터 요청을 받는 즉시 수행할 작업을 알려주는 일련의 지시문입니다. PHP 이전, 데이터베이스 호출 이전에 작동하며 브라우저, 컴퓨터 유형 및 요청이 있는 경우에도 사용자가 있는 시스템에 대해 서버에 알려주는 특정 "환경 변수"를 감지할 수 있습니다. 사이트 페이지의 경우 검색 엔진 크롤러에서 가져옵니다.
일반적인 WordPress .htaccess 파일이 어떻게 생겼는지 모른다면 .htaccess에 있는 많은 코드가 혼란스러울 수 있습니다. 그리고 .htaccess 파일을 하드 드라이브에 다운로드하여 더 자세히 살펴보면 이 파일 유형을 "숨겨진 파일"로 간주하는 많은 개인용 컴퓨터에서 종종 사라질 수 있습니다.
악성 코드가 .htaccess 파일에 추가되는 매우 일반적인 Pharma 해킹은 검색 엔진 결과 페이지에서 오는 경우에만 사이트 방문자를 리디렉션하는 경우가 많습니다.
해커는 사용자가 오른쪽으로 멀리 스크롤하지 않는 한 파일 내에서 숨겨져 있는 것을 찾을 수 없는 방식으로 악성 코드를 배치합니다. 이렇게 하면 이러한 리디렉션 해킹을 발견하고 제거하기가 훨씬 더 어려워집니다.
3. 워드프레스 데이터베이스
wp_options 및 wp_posts 테이블은 일반적으로 악성 리디렉션을 삽입하는 해커의 표적이 되는 WordPress 데이터베이스의 테이블입니다. Javascript 코드는 각 게시물 또는 전체 게시물에 포함되어 있습니다. 위젯에 숨겨진 경우 wp_options 테이블에서 리디렉션을 찾을 수도 있습니다.
4. 가짜 favicon.ico 파일
악성 PHP 코드가 포함된 임의의 .ico 파일 또는 악성 favicon.ico 파일을 사이트 서버에 생성하는 악성 코드가 존재합니다. 이러한 .ico 파일에는 사이트의 다른 파일에 포함된 악성 리디렉션이 포함됩니다.
@include "/home/sitename/sitename.com/cdhjyfe/cache/.2c96f35d.ico";
악성 리디렉션에서 신속하게 복구
악의적인 리디렉션 해킹에 노출된 경우 이러한 유형의 맬웨어로부터 복구하는 가장 빠르고 쉬운 방법은 알려진 양호한 백업에서 복원하는 것입니다. BackupBuddy를 사용하여 사이트를 정기적으로 백업하는 경우 사이트의 좋은 복사본이 포함된 최근 백업이 있다는 것을 알 수 있습니다. 알려진 양호한 백업에서 사이트를 복원하는 것은 사이트를 신속하게 백업하고 실행할 수 있는 훌륭한 방법입니다.
물론 자주 변경되는 콘텐츠가 있는 사이트를 실행하는 경우 악의적인 리디렉션에 대한 최선의 방어는 최신 백업과 침입 탐지를 통해 문제에 대해 신속하게 경고를 받는 것입니다. 이러한 방식으로 신속하게 조치를 취하고 가동 중지 시간을 최소화할 수 있습니다.
물론 액세스 로그를 확인하여 해커가 리디렉션을 배치하는 방법도 확인해야 합니다.
추가 도메인에 대한 참고 사항
WordPress 사이트가 해킹되는 가장 일반적인 방법 중 하나는 유지 관리되지 않는 추가 기능 도메인 또는 호스팅 계정에 WordPress를 추가로 설치하는 것입니다. 동일한 계정에서 작동할 수 있는 항목이 있는지 확인하기 위해 테스트 사이트를 설정했는데 해당 설치를 잊어버렸을 수 있습니다. 해커가 이를 발견하고 유지 관리되지 않은 사이트의 취약점을 악용하여 기본 사이트에 맬웨어를 설치합니다. 또는 가족 구성원의 사이트도 같은 공간에서 호스팅하여 비용을 절약하고 있지만 손상된 비밀번호를 재사용하고 있을 수 있습니다.
항상 하나의 호스팅 계정에 하나의 WordPress 사이트를 보유하는 것이 가장 좋습니다. 또는 동일한 호스팅 계정에서 여러 사이트를 사용하는 경우 서로 격리되고 각 사이트에 대해 다른 서버 기반 사용자를 사용하는지 확인하십시오. 이러한 방식으로 한 취약한 사이트에서 다른 인접 사이트로의 교차 오염이 발생할 수 없습니다.
호스팅 계정에 둘 이상의 사이트가 있는 경우 동일한 공간에서 실행되는 모든 사이트(예: public_html에서 실행되는 모든 사이트)를 악성 리디렉션 맬웨어에 모두 감염된 것처럼 처리해야 합니다. 이와 같은 경우가 있는 경우 해당 호스팅 인스턴스 내의 각 사이트에 대해 이러한 각 단계를 수행해야 합니다. 확실하지 않은 경우 호스팅 제공업체에 문의하세요.
사이트에서 WordPress 리디렉션 해킹 멀웨어 검사
최근의 깨끗한 백업이 없는 경우에도 스스로 맬웨어를 제거할 수 있습니다. 그렇게 하는 것은 지루한 과정이 될 수 있으며 맬웨어를 리디렉션하는 것 이상을 찾아야 합니다. 리디렉션 맬웨어는 백도어 및 악성 관리자 사용자를 비롯한 다른 맬웨어와 함께 발생하는 것이 가장 일반적이며 해커가 침입한 경로(종종 "침입 벡터"라고도 함)도 확인해야 합니다. 맬웨어 제거에 대한 전체적인 접근 방식을 취하지 않으면 리디렉션 문제가 다시 발생합니다.
iThemes Security Pro에는 리디렉션 해킹 또는 백도어를 나타내는 변경 사항과 같이 웹 사이트에서 파일 변경 사항이 발생하면 경고하는 파일 변경 감지 기능이 있습니다.
다음은 권장되는 맬웨어 제거 프로세스입니다.
1. 사이트 백업
예, 사이트가 감염되더라도 발생한 일에 대한 증거를 보존하고 싶을 것입니다. 해킹 범죄 현장을 고려하면 언제 무슨 일이 일어났는지 알고 싶을 것입니다. 파일 타임스탬프는 침입이 다시 발생하지 않도록 방지할 수 있도록 침입이 어떻게 발생했는지 결정할 때 조사에 도움이 됩니다.
2. 사이트를 중단해야 하는지 결정
악의적인 리디렉션을 사용하면 유지 관리를 위해 사이트를 일시적으로 중단할 수 있습니다. 모든 리디렉션이 이를 보증하는 것은 아니지만 사이트가 사용자의 컴퓨터에 해를 끼칠 수 있는 위치로 리디렉션되는 경우 사이트를 잠시 중단하면 추가 손상을 방지할 수 있습니다.
해커가 사이트에서 여전히 활동 중일 수 있다고 생각되는 경우(모르는 경우 활동 중이라고 가정) 사이트를 중단하고 액세스할 수 없도록 하면 추가 피해를 방지할 수 있습니다.
각 상황은 다를 것입니다. 무슨 일이 일어나고 있는지에 따라 이 결정을 내려야 합니다.
3. 사이트를 로컬 드라이브에 복사
백업을 유지하면서 사이트를 로컬 드라이브에 복사합니다. 텍스트 편집기를 사용하여 로컬 드라이브에서 정리를 수행하고 로컬에서 비교하고 인터넷에 액세스할 수 없는 로컬 상황에서 PHP 및 Javascript 파일에서 .htaccess 파일에 이르기까지 모든 파일을 검토하는 것이 좋습니다. 이러한 방식으로 파일을 검사할 수 있는 제어된 환경을 갖게 됩니다. WordPress, 테마 및 플러그인의 새 복사본을 다운로드하고 해킹된 사이트와 파일 비교를 수행하여 어떤 파일이 변경되었고 어떤 파일이 단순히 속하지 않았는지 확인할 수 있습니다. 사용할 수 있는 파일 비교 도구가 많이 있습니다.
4. 리디렉션 및 숨겨진 백도어 제거
파일을 살펴보면서 멀웨어가 있는 파일을 알려진 양호한 복사본으로 교체하거나 그렇게 하는 것이 편하다면 거기에 있어서는 안 되는 파일(일반적으로 백도어)과 코드 줄을 제거할 수 있습니다. 그것은 텍스트 편집기와 함께 있어서는 안됩니다.
/wp-content/uploads 디렉토리와 모든 하위 디렉토리에서 존재해서는 안 되는 PHP 파일을 확인하십시오.
일부 파일은 WordPress.org 저장소에서 다운로드한 파일과 다릅니다. 이러한 파일에는 .htaccess 파일과 wp-config.php 파일이 포함됩니다. 잘못된 악성 코드가 있는지 면밀히 조사해야 합니다. 둘 다 리디렉션을 포함할 수 있으며 wp-config.php 파일에는 백도어가 포함될 수 있습니다.
5. 정리된 파일을 서버에 업로드
모든 맬웨어를 한 번에 제거하고 해킹된 사이트에서 활성화된 백도어에 대한 액세스를 방지하려면 해킹된 사이트에 인접한 정리된 사이트를 업로드하십시오. 예를 들어 해킹된 사이트가 /public_html/ 아래에 있는 경우 해당 사이트 옆에 /public_html_clean/에 깨끗한 사이트를 업로드합니다. 일단 거기에 있으면 라이브 /public_html/ 디렉토리의 이름을 /public_html_hacked/로 바꾸고 /public_html_clean/의 이름을 public_html로 바꿉니다. 청소 프로세스를 시작할 때 사이트를 중단하지 않도록 선택한 경우 이 작업은 몇 초 밖에 걸리지 않으며 가동 중지 시간을 최소화합니다. 또한 활성 공격자와 함께 "두더지 잡기"를 플레이하여 공격을 받고 있는 해킹된 라이브 사이트를 정리하려는 시도를 방지합니다.
이제 파일이 정리되었으므로 할 일이 있습니다. 사이트가 프런트 엔드와 wp-admin 내에서 정상적으로 보이는지 다시 확인하십시오.
6. 악의적인 관리자 사용자 찾기
사이트에 추가된 악의적인 관리 사용자를 찾습니다. wp-admin > users로 이동하여 모든 admin 사용자가 유효한지 다시 확인하십시오.
7. 모든 관리 비밀번호 변경
모든 관리자 계정이 손상된 것으로 간주하고 모두에 대해 새 비밀번호를 설정하십시오.
8. 악의적인 등록으로부터 보호
wp-admin > 설정 > 일반으로 이동하여 "누구나 등록할 수 있음"이라는 "멤버십" 설정이 비활성화되어 있는지 확인합니다. 사용자가 등록해야 하는 경우 "새 사용자 기본 역할"이 관리자 또는 편집자가 아닌 구독자로만 설정되어 있는지 확인하십시오.
9. 악성 링크에 대한 데이터베이스 검색
파일 시스템에서 문제를 찾을 때와 유사한 방식으로 WordPress 데이터베이스에서 악의적인 PHP 기능을 수동으로 검색합니다. 이렇게 하려면 PHPMyAdmin 또는 다른 데이터베이스 관리 도구에 로그인하고 사이트에서 사용 중인 데이터베이스를 선택합니다.
그런 다음 다음과 같은 용어를 검색합니다.
- 평가
- 스크립트
- 진플레이트
- Base64_decode
- Str_replace
- preg_replace
데이터베이스에서 무엇이든 변경하기 전에 매우 주의하십시오. 실수로 공간을 추가하는 것과 같이 아주 작은 변경으로도 사이트가 다운되거나 제대로 로드되지 않을 수 있습니다.
10. 사이트 확보
침입이 있었기 때문에 사이트와 관련된 모든 것이 손상되었다고 가정해야 합니다. 호스팅 계정 패널에서 데이터베이스 비밀번호를 변경하고 wp-config.php 파일에서 자격 증명을 변경하여 WordPress 사이트가 WordPress 데이터베이스에 로그인할 수 있도록 합니다.
또한 SFTP/FTP 암호를 변경하고 cPanel 또는 호스팅 계정의 암호도 변경하십시오.
11. 구글 문제 확인
Google Search Console에 로그인하여 악성 사이트 경고가 있는지 확인합니다. 그렇다면 수정 사항으로 문제가 해결되었는지 검토하십시오. 그렇다면 검토를 요청하십시오.
12. iThemes 보안 설치
아직 iThemes Security를 설치 및 구성하지 않았다면 지금이 최적기입니다. ithemes 보안은 귀하의 사이트를 침입으로부터 보호하는 가장 좋은 방법입니다
13. 취약한 소프트웨어 업데이트 또는 제거
업데이트가 필요한 소프트웨어, 테마, 플러그인 또는 코어가 있는 경우 지금 업데이트하십시오. 사용 중인 플러그인에 패치가 적용되지 않은 취약점이 있는 경우(iThemes Security를 사용하여 확인할 수 있음) 해당 소프트웨어를 비활성화하고 사이트에서 완전히 제거하십시오.
이 시점에서 사이트를 잠근 경우 유지 관리 알림을 제거하여 사이트에 다시 액세스할 수 있도록 할 수 있습니다.
다른 침입 방지
사이트를 잠그고 활성화한 후에는 침입이 다시 발생하지 않도록 조치를 취하는 것이 중요합니다. 로그 파일을 확인하여 처음에 침입이 어떻게 발생했는지 확인하십시오. 취약한 소프트웨어였습니까? 손상된 관리자 사용자 계정이었습니까? 유지 관리되지 않은 인접한 WordPress 설치로 인한 교차 오염이었습니까? 침입이 어떻게 발생했는지 알면 앞으로 다시는 이를 방지하기 위한 조치를 취해야 합니다.
그리고 iThemes Security를 사용하는 것은 사이트를 안전하게 유지하기 위한 중요한 첫 단계입니다.
WordPress는 현재 모든 웹사이트의 40% 이상을 차지하므로 악의적인 의도를 가진 해커의 쉬운 표적이 되었습니다. 공격자는 WordPress 사용자가 보안 지식이 부족하다고 가정하므로 보호되지 않는 WordPress 사이트를 찾고 잘못된 암호, 재사용된 암호 또는 취약한 소프트웨어를 악용하여 순진한 호스팅 계정에 발판을 마련합니다.
Verizon의 2022년 DBIR 보고서에 따르면 보안 침해의 80% 이상이 도난당한 자격 증명에 기인할 수 있으며 취약성 악용에 비해 주요 침입 벡터로서 도난당한 자격 증명이 30% 증가했습니다. 이것이 iThemes Security가 암호 키 및 2단계 인증과 같은 사용자 자격 증명 혁신을 우선시하여 이러한 침입으로부터 WordPress 사이트를 보호하는 이유 중 하나입니다.
이 기사에서 무언가를 본 적이 있다면 침해 전에 보안을 심각하게 생각하는 것이 얼마나 중요한지 바랍니다. 몇 가지 설정만으로 코드를 검토하는 수많은 시간을 절약할 수 있습니다. BackupBuddy를 사용하면 복구가 훨씬 쉬워지고 iThemes Security Pro를 사용하여 무단 액세스로부터 보호할 수 있습니다.
WordPress 보안 및 보호를 위한 최고의 WordPress 보안 플러그인
WordPress는 현재 모든 웹사이트의 40% 이상을 차지하므로 악의적인 의도를 가진 해커의 쉬운 표적이 되었습니다. iThemes Security Pro 플러그인은 WordPress 보안에서 추측을 배제하여 WordPress 웹사이트를 쉽게 보호하고 보호할 수 있습니다. 귀하의 WordPress 사이트를 지속적으로 모니터링하고 보호하는 전임 보안 전문가를 직원으로 두는 것과 같습니다.
매주 iThemes 팀의 팀은 주간 WordPress 취약점 보고서를 포함하여 새로운 WordPress 자습서 및 리소스를 게시합니다. 2008년부터 iThemes는 귀하 또는 고객을 위해 WordPress 사이트를 구축, 유지 관리 및 보호하는 데 전념해 왔습니다. 우리의 미션? 사람들의 삶을 멋지게 만드십시오 .