WordPress 맬웨어 스캐너가 가치가 없는 이유

게시 됨: 2023-07-18

Snicco, WeWatchYourWebsite, Automattic 지원 GridPane 및 PatchStack의 새로운 연구에 따르면 손상된 환경에서 플러그인으로 작동하는 WordPress 맬웨어 스캐너에 근본적인 결함이 있음이 밝혀졌습니다. 맬웨어 스캐너는 기껏해야 이미 손상된 사이트를 정리하는 도구입니다. 그들은 견고한 방어선이 아니며 현재 야생에서 맬웨어에 의해 적극적으로 패배하고 있습니다. 맬웨어 탐지는 우수한 호스트에 맡기십시오. 로그인 인증 강화, 사용자 관리, 적절한 권한 위임, 철저한 버전 관리에 보안 정책을 집중하십시오.

그래서 2000년 이후: 맬웨어 스캐너는 유용성을 상실했습니다.

WordPress용 맬웨어 탐지 플러그인은 SQL 주입 공격이 일반적이고 효과적이었던 2011년경으로 거슬러 올라갑니다. 당시 WordPress로 작업하는 사람이라면 TimThumb이라는 널리 사용되는 이미지 편집 라이브러리를 기억할 것입니다. 수백만 사이트에서 끔찍한 결과를 초래한 제로데이 익스플로잇의 대상이 되었습니다.

이것은 반응으로 WordPress 보안 플러그인이 성장한 비상 상황이었습니다. 오늘날 일부 보안 플러그인은 여전히 ​​Norton Security 및 McAfee Anti-Virus처럼 보입니다. 20~30년 전에는 Windows용으로 널리 사용되던 보안 응용 프로그램이었습니다. 그러나 John McAfee가 자신이 만든 회사를 떠난 후 말했듯이 그의 안티바이러스 스캐너는 "블로트웨어"로 바뀌었습니다. 그의 의견으로는 "세계 최악의 소프트웨어"였습니다.

오늘날 여러 WordPress 보안 연구원의 최근 연구 결과를 기반으로 WordPress 맬웨어 스캐너에 대해 유사한 결론을 내릴 수 있습니다.

Malware Madness
맬웨어 스캐너는 WordPress 사이트를 보호하지 않습니다.

"이미 손상된 환경은 자체 분석을 신뢰할 수 없습니다."

안전에 대한 환상: WordPress 맬웨어 스캐너 테스트

"Malware Madness: WordPress Malware Scanner에 대해 알고 있는 모든 것이 잘못된 이유" 시리즈의 첫 번째 부분에서 WordPress 보안 연구원인 Calvin Alkan(보안 회사 Snicco의 설립자)이 자신의 작업 중 일부를 공유합니다. Alkan은 Patrick Gallagher(GridPane CEO 겸 공동 창립자) 및 Thomas Raef(WeWatchYourWebsite.com 소유자)와 협력하여 맬웨어 스캐너를 무력화할 수 있는지 확인했습니다. 당연히 그들은 매우 쉽게 패배할 수 있다는 것이 밝혀졌습니다. Patchstack은 Alkan의 결과에 대한 독립적인 확인을 제공했습니다.

로컬 스캐너: 집안에서 전화가 옵니다

테스트에서 Alkan과 그의 협력자들은 먼저 로컬 스캐너를 살펴보았습니다. Wordfence, WPMU Defender, All-In-One Security(AIOS)의 무료 버전 및 NinjaScanner는 설치된 WordPress 사이트와 동일한 서버에서 모든 작업을 수행합니다. 즉, 맬웨어 스캐너는 WordPress 및 이를 감염시키는 맬웨어와 동일한 PHP 프로세스를 사용합니다. 맬웨어가 스캐너와 적극적으로 상호 작용하는 것을 막을 방법은 없습니다. 이 멀웨어는 탐지한 모든 보안 플러그인을 비활성화하거나 자체적으로 화이트리스트에 추가하거나(2018년에 보고됨) 침입을 탐지하지 않도록 스캐너를 조작할 수 있습니다.

“Malware Scanner와 Malware는 모두 동일한 PHP 프로세스 내에서 실행됩니다. 이것은 맬웨어가 스캐너의 기능을 조작하거나 변조할 수 있음을 의미합니다. 동등한 시나리오는 법정 재판에서 피고가 자신의 판사 역할을 하는 것입니다 .”

다음으로 Alkan과 그의 파트너는 맬웨어 스캐너를 무력화하기 위해 작동하는 개념 증명을 생성했습니다. (그들은 또한 보안 연구원 및 벤더와 비공개로 익스플로잇 킷을 공유하겠다고 제안했습니다.) Patchstack CEO Oliver Sild에 따르면 익스플로잇 킷은 단 몇 줄의 코드로 구성되어 있습니다.

Alkan은 또한 "PHP를 사용하여 동적으로 구성되는" "렌더링된" 맬웨어가 로컬 맬웨어 스캐너에서 감지되지 않는다는 사실을 발견했습니다. 마지막으로 로컬 스캐너는 "진행 중인" 맬웨어를 감지하지 못했습니다. 이러한 유형의 맬웨어는 "한 번 실행된 다음 시스템에서 자신을 삭제하여 존재 흔적을 남기지 않습니다."

원격 스캐너: 증거 변조 및 범죄 현장 청소로 패배

원격 서버에서 분석을 수행하는 스캐너에는 Malcare, Virusdie, All-In-One Security(AIOS) Pro, Sucuri 및 JetPack Scan이 있습니다. 이러한 최신 원격 검색 방법에는 공간 감소 및 로컬 서버 성능에 대한 영향을 포함하여 몇 가지 장점이 있습니다. 로컬 스캐너는 사이트의 서버 리소스를 사용하여 성능 비용이 있는 작업을 수행합니다. 원격 맬웨어 분석은 활성 맬웨어 감염과 동일한 PHP 프로세스 내에서 발생하지 않기 때문에 조작으로부터 보호됩니다.

원격 스캐너가 취약한 것은 분석을 위해 원격 서버로 다시 전송된 데이터를 조작하는 맬웨어입니다. Alkan은 맬웨어 감염의 "증거"를 숨겨 이러한 방식으로 원격 스캐너를 무력화할 수 있음을 보여주는 또 다른 개념 증명을 구축했습니다. Oliver Sild도 이 결과를 확인했습니다.

“데이터 변조는 속임수의 대상이 되는 로컬 플러그인으로 개념적으로 달성될 수 있습니다. 우리는 이것을 명확하게 보여주는 개념 증명을 받았습니다.”

약간 다른 맬웨어 전술은 "범죄 현장을 청소"하고 검사할 감염 흔적을 남기지 않는 것과 관련될 수 있습니다. Alkan은 이것이 가능하다고 제안했지만 개념 증명은 제공하지 않았습니다.

무단 변경을 찾는 파일 무결성 검사는 맬웨어 감염을 감지하려고 할 때 유용할 수 있다는 점에 유의하는 것이 중요합니다. 이 유형의 스캔은 로컬 파일을 보호된 원격 코드 리포지토리와 비교하여 WordPress 코어 또는 플러그인 및 테마 파일의 비공식 변경 사항을 감지합니다. 불행하게도 맬웨어에 의해 프로세스가 변조되면 변경 감지가 실패할 수 있습니다.

단순한 가설이 아닙니다: 맬웨어는 이미 야생에서 WordPress 보안 스캐너를 비활성화하고 있습니다.

Alkan의 익스플로잇 킷에 이어 Snicco의 보고서에서 가장 큰 폭로 내용은 해킹된 WordPress 사이트를 탐지하고 정리하는 We Watch Your Website의 CEO인 Thomas Raef에서 나온 것입니다.

“지난 60일 동안 52,848개의 사이트가 감염되기 전에 설치된 WordFence로 해킹당했습니다. 설치된 맬웨어는 14%의 경우(7,399건)에서 WordFence 파일을 변조했습니다 . 다른 인기 있는 서비스는 훨씬 더 높은 비율을 보였습니다. MalCare는 22%, VirusDie는 24%입니다.”

We Watch Your Website의 분석에 대한 자세한 내용은 Thomas Raef의 보고서 "How We Identified Nearly 150K Hacked WordPress Sites in 60 Days"를 참조하십시오.

맬웨어 검색 플러그인의 게임은 끝났습니다. WordPress 맬웨어 검사는 순수한 보안 극장, 즉 "보안을 달성하기 위해 거의 또는 전혀 하지 않으면서 향상된 보안 느낌을 제공하는 것으로 간주되는 보안 조치를 취하는 관행"임을 알려줍니다.

의심 할 여지없이 이것은 오랫동안 계속되어 왔습니다.

보안 업계 베테랑이자 Kadence 마케팅 이사인 Kathy Zant는 Alkan에게 다음과 같이 말했습니다.

“약 18개월 동안 저는 WordPress에서 잘 알려진 회사의 WordPress 사이트를 정리하여 재임 기간 동안 2,000개 이상의 사이트에서 맬웨어를 제거했습니다. 내가 본 가장 초기 [맬웨어 스캔을 물리치는 맬웨어]는 2017년 중후반이었습니다. [….] 여전히 존재한다고 확신합니다. 그리고 유사한 작업을 수행하거나 더 나쁜 작업을 수행하는 추가 변형이 있을 수 있습니다.”

그것은 나쁜 소식입니다. 맬웨어 스캐너는 신뢰할 수 없습니다. 좋은 소식은 그들이 진정한 방어를 제공한 적이 없다는 것입니다. 당신이 잃은 것이 안전에 대한 환상뿐이라면 그것은 실제로 진정한 안전을 얻기 위한 단계입니다.

WordPress 사이트를 올바르게 보호하는 방법

Snicco와 같은 보고서에 따르면 가장 큰 질문은 "WordPress 사이트가 어떻게 보안에 대한 높은 신뢰를 얻을 수 있습니까?"입니다.

Alkan은 보안 방법이 각 서버 스택에 맞게 조정되어야 하며 호스트에서 수행하는 서버 측 맬웨어 검색이 사이트 소유자에게 유일하게 가치 있는 검색 유형이라고 생각합니다.

"WordPress 보안 플러그인은 애플리케이션/PHP 계층에서 가장 잘 수행할 수 있는 작업만 수행해야 합니다."라고 그는 강조합니다.

"WordPress 커뮤니티는 '상위 계층' 보안의 효율성을 확인하기 위해 맬웨어 검색의 중요성을 유지하면서 보안 접근 방식을 감지에서 예방으로 전환해야 합니다."

세션 보안과 결합된 2단계 인증 및 암호 키와 같은 강력한 사용자 로그인 보안은 Alkan이 WordPress 플러그인(iThemes Security와 같은 플러그인)이 도움이 될 수 있다고 말합니다. 그것은 항상 우리 개발 팀의 지도 철학이었습니다. 보안 플러그인은 사이트를 강화하고 공격 표면을 줄이는 데 가장 적합합니다.

WordPress 사이트의 방어를 강화하는 다른 필수 방법에는 최소 권한 원칙에 따라 신중한 사용자 관리가 포함됩니다. 사용자에게 필요한 것보다 더 많은 권한을 부여하지 마십시오. 그리고 더 많은 권한을 가진 사용자의 경우 2FA, 암호 키, 신뢰할 수 있는 장치 및 알려진 위반에 한 번도 나타나지 않은 강력한 암호와 같은 더 높은 보안 표준이 필요합니다.

오늘날의 공격 추세는 비밀번호 채우기, 피싱 및 스피어피싱을 통해 중소기업을 지능적으로 표적으로 삼고 있습니다. 이러한 공격 벡터는 취약한 로그인 인증과 사람의 실수를 악용합니다. 그들은 무차별 대입과 영리한 사회 공학 전술을 사용하여 개별 사용자 계정을 손상시킵니다. 해킹된 사용자 계정으로 무장한 공격자는 많은 피해를 입힐 수 있습니다. 악용할 수 있는 취약한 플러그인도 발견하면 더 큰 해를 끼칠 수 있습니다. 일단 시스템에 들어가면 공격자는 백도어를 만들어 언제든지 다시 들어올 수 있습니다.

맬웨어 스캐너를 강조하는 보안 플러그인은 이를 막을 수 없습니다.