최근 카페24에 설치된 워드프레스 사이트에 접속하지 못하는 문제로 클라이언트로부터 문제해결 요청을 받았습니다. 사이트를 살펴보니 모든 폴더에 .htaccess 파일이 생성되어 있어서 사이트에 대한 접속이 차단되어 있는 상태였습니다. 사이트가 멀웨어에 감염된 것으로 보였습니다. 우선 접속만 가능하게 해 달라는 요청에 따라 모든 .htaccess 파일을 삭제하니 접속 문제는 해결되었습니다.
이후에 Quform 등 일부 플러그인을 업로드하려고 시도하거나 워드프레스 알림판에서 플러그인을 검색하여 설치하려고 시도할 때 일부 플러그인이 설치가 안 되면서 UploadGuard Blocked 화면이 표시되는 현상이 발생했습니다.
워드프레스 멀웨어: 플러그인 업로드 시 UploadGuard Blocked 에러
FTP에 접속했을 때 모든 디렉터리에 .htaccess 파일이 생성되어 있으면 멀웨어 감염을 의심할 수 있습니다. 이번에 문제가 되었던 사이트에는 다음과 같은 내용으로 된 .htaccess 파일이 모든 폴더에 생성되어 있었습니다.
이 .htaccess 파일은 아래 글에서 언급한 적이 있는 .htaccess 파일의 콘텐츠와 거의 동일합니다.
모든 .htaccess 파일을 삭제하는 방법(멀웨어 치료)
워드프레스는 보안이 강하지만 1) 워드프레스 코어, 테마, 플러그인을 최신 버전으로 업데이트하지 않거나 2) 오랫동안 업데이트가 안 되고 방치되고 있는 플러그인을 사용하거나 3) 쉽게 짐직할
avada.tistory.com
아래 코드 부분이 조금 달랐습니다.
<FilesMatch "^(about.php|radio.php|index.php|content.php|lock360.php|admin.php|wp-login.php)$">
Order allow,deny
Allow from all
</FilesMatch>
이 코드가 악성코드와 관련될 수 있는 이유
① PHP 실행 제한을 우회할 가능성
- 일반적으로 .htaccess를 사용하여 모든 .php 파일을 차단하는 경우, 서버에서 PHP 코드 실행을 막을 수 있습니다.
- 하지만 이 코드는 특정한 PHP 파일(about.php, radio.php, index.php, content.php, lock360.php, admin.php, wp-login.php)은 예외적으로 허용하고 있습니다.
- 특히 wp-login.php와 admin.php는 워드프레스와 관련된 로그인 페이지이므로, 악성코드가 포함될 가능성이 높습니다.
- lock360.php와 같은 특정 파일은 악성코드에 의해 생성된 백도어 파일일 수 있습니다.
② 모든 요청을 index.php로 리디렉션 (백도어 가능성)
- RewriteRule . /index.php [L]는 모든 요청을 index.php로 보내도록 강제합니다.
- 만약 index.php에 악성 코드가 포함되어 있다면, 사용자가 어떤 URL을 입력하든 악성 PHP 코드가 실행될 수 있습니다.
- 백도어가 있는 경우, 공격자는 특정한 요청을 통해 서버에서 악의적인 명령을 실행할 가능성이 있습니다.
③ 특정 파일만 실행 가능하도록 설정 (악성 파일 보호)
- 일반적인 .htaccess 보안 정책에서는 모든 PHP 파일을 차단하거나, 특정한 안전한 PHP 파일만 허용하는 것이 일반적입니다.
- 하지만 이 설정은 특정한 파일(lock360.php 같은 의심스러운 파일)을 예외적으로 허용하면서, 나머지 PHP 파일을 차단하는 방식으로 동작합니다.
- 즉, 공격자가 미리 배포한 악성 PHP 파일을 보호하려는 목적일 수 있습니다.
모든 .htaccess 파일 삭제
카페24에서는 SSH를 지원하므로 SSH에 접속하여 모든 .htaccess 파일을 삭제할 수 있었습니다. SSH에 접속 권한이 없는 호스팅을 이용하는 경우에는 웹호스팅 업체에 연락하여 모든 .htaccess 파일의 삭제를 요청할 수 있을 것입니다.
cd wp-content
find . -type f -name ".htaccess" -exec rm -f {} +
의도치 않게 정상적인 .htaccess 파일도 삭제될 우려가 있으므로 가능하면 전체 사이트 백업을 한 후에 진행하시기 바랍니다.
PuTTY 툴을 사용하여 SSH에 접속할 수 있습니다.
플러그인 업로드 시 UploadGuard Blocked 에러
모든 .htaccess 파일을 삭제한 후에 사이트 접속이 정상화되었습니다. 하지만 이런 경우 사이트 전체 대하여 멀웨어 스캔을 하여 악성코드를 치료하고 보안 조치를 해야 재발하지 않을 것입니다.
.htaccess 파일을 삭제한 후에 사이트 접속이 정상적으로 이루어졌지만, 일부 플러그인을 설치하려고 시도하거나 FTP를 통해 업로드하려고 하면 UploadGuard Blocked라는 생소한 오류 메시지가 출력되면서 설치나 업로드가 되지 않았습니다.
"UploadGuard Blocked"를 구글링 해보아도 전혀 검색이 되지 않았습니다.
웹호스팅에서 제공하는 보안 기능일 수 있지만, 구글링해도 전혀 검색이 안 되는 것으로 보아서 악성코드와 관련된 것이 아닌가 하는 의심이 들었습니다.
이 문제를 접할 가능성이 전혀 없겠지만 .upload_guard라는 파일이 있으면 이런 에러가 발생할 수 있습니다. 이 파일을 찾아서 삭제하거나 이름을 변경하면 문제가 해결될 것입니다.
멀웨어에 감염될 경우 사이트 전체에서 멀웨어를 완전히 제거한 후에 보안 조치를 하여 재발되지 않도록 하시기 바랍니다. 워드프레스 악성코드나 기타 워드프레스 또는 웹호스팅 관련 문제로 어려움을 겪는 경우 여기에서 서비스(유료)를 의뢰하실 수 있습니다.😀😀
참고
https://avada.tistory.com/3458
블루호스트에서 멀웨어 치료 및 클라우드웨이즈로 워드프레스 이전 작업
한 계정에 여러 개의 사이트를 설치하는 경우 하나의 사이트가 멀웨어에 감염되며 다른 사이트들도 멀웨어에 감염되는 경우가 많습니다. 블루호스트(Bluehost)에서 같은 계정에 있는 모든 워드프
avada.tistory.com
https://avada.tistory.com/3417
아바다 테마가 설치된 워드프레스 사이트에서 멀웨어 (악성코드) 제거 작업
어제는 워드프레스 베스트셀링 테마인 아바다 테마가 설치된 워드프레스 사이트에서 멀웨어를 제거하는 작업을 수행했습니다. 사이트를 오랫동안 업데이트를 하지 않고 방치하다 악성코드에
avada.tistory.com