어제 한글날에 클라이언트로부터 워드프레스 사이트에서 악성코드 제거 작업을 의뢰받았습니다. 쇼플릭이라는 워드프레스 호스팅에서 운영되고 있던 워드프레스 사이트였는데, 사이트 접속이 접속이 되지 않아 호스팅 업체에 물어보니 사이트가 멀웨어에 감염되었다고 합니다.
실제로 사이트에 접속해 보니 악성코드에 감염된 이상한 파일들이 있었습니다. 백업본을 사용하여 테스트 서버에 사이트를 만들어 복원한 후에 악성코드 제거 작업을 진행했습니다.
워드프레스 악성코드 제거 작업
어제 2024년 10월 9일은 578돌 한글날이라고 하네요. 세종대왕님께서 만든 한글 덕분에 오늘날 우리나라 문화가 세계로 뻗어나가는 것 같습니다.😄
워드프레스 사이트를 운영하면서 신경 써야 할 부분이 보안 같습니다. 워드프레스 자체는 보안에 강하지만 업데이트를 소홀히 하거나 약한 비밀번호를 사용하는 등 보안에 구멍이 생기면 악성코드에 감염되거나 사이트가 해킹당할 수 있습니다.
실제로 FTP에 접속해보니 이상한 이름의 파일들이 생성되어 있었습니다. 날짜가 9월 12일에 생성된 것으로 나오는 것으로 보아 이때 사이트가 멀웨어에 감염된 것 같습니다.
blurbs1.php 파일과 124.php 파일 등은 루트 폴더에 생성되어 있으면 안 되는 파일입니다. 124.php 파일은 살펴보니 악성코드와 상관이 없는 것 같지만, blurbs1.php 파일에는 난독화된 코드로 되어 있어 전형적인 악성코드가 삽입되어 있었습니다.
사이트의 PHP 버전을 살펴보니 7.2 버전으로 다소 낮았습니다.
PHP 7.2인 경우 엘리멘터와 같은 일부 플러그인의 최신 버전을 설치할 수 없습니다.
PHP 버전은 7.4 이상이 권장됩니다.
워드프레스 버전도 5.2.21로 구 버전이었습니다.
백업 파일을 받아서 클라우드웨이즈에서 테스트 사이트를 만들어 이전하여 악성코드 제거 작업을 진행했습니다.
Cloudways에서는 최근 Malware Protection 애드온을 도입하여 애플리케이션에 멀웨어가 있는지를 스캔해 줍니다.
Malware Protection 애드온을 활성화하면 비용이 청구되지만, 활성화하지 않아도 멀웨어 스캔을 하여 악성코드에 감염된 경우 감염된 위치를 알려줍니다.
테스트 사이트에 워드프레스 복구하고 멀웨어 의심 코드를 모두 제거한 후에 Malware Protection 페이지를 방문하여 확인해 보니 멀웨어가 검출되지 않았습니다.
테스트 서버에서는 PHP 7.4로 설정하고 워드프레스 최신 버전을 설치하여 사이트를 복구하여 악성코드 제거 작업을 했습니다. 클라우드웨이즈에서는 현재 최신 버전인 PHP 버전 8.3을 지원합니다. 하지만 원본 사이트의 PHP 버전이 7.2이기 때문에 클라우드웨이즈가 지원하는 가장 낮은 PHP 7.4를 선택했습니다.
멀웨어를 치료하고, 보안 문제 등으로 인해 워드프레스 저장소에 제거된 플러그인들을 고객의 동의를 받아 삭제했습니다.
악성코드가 완전히 제거되었지만, 사이트를 업데이트하지 않고 보안 취약점이 존재하는 플러그인이나 테마를 사용할 경우 추후에 다시 멀웨어에 재감염될 수 있습니다.
다만, 오랫동안 사이트를 업데이트하지 않다가 갑자기 버전을 크게 올려 업데이트하면 예상치 못한 문제가 발생할 수 있습니다. 가급적 최신 버전이 나오면 적시에 업데이트하는 것이 바람직합니다.
테스트 사이트에서 멀웨어를 제거한 후에 클라이언트께서 생성해 준 사이트로 복구하여 작업을 마무리했습니다. iwinv 업체에서 사이트를 생성해주셨는데, 워드프레스가 설치가 안 되어 있어서 직접 설치했습니다. iwinv 관리자 패널에서는 wp 폴더에 워드프레스가 설치되는 것 같습니다. 저는 루트 디렉터리에 워드프레스를 설치했습니다.
악성코드 감염을 비롯하여 워드프레스나 웹호스팅 관련 문제 해결에 어려움을 겪는 경우 여기에서 서비스(유료)를 의뢰하실 수 있습니다.
참고
https://avada.tistory.com/3458
https://avada.tistory.com/3417
https://avada.tistory.com/3419