700개 이상의 WordPress 및 Joomla 웹사이트가 합법적인 ionCube 인코딩 파일로 위장하는 ionCube 멀웨어에 감염되었습니다.
IonCube는 PHP 인코딩, 암호화, 난독화 및 라이선스 기능으로 파일을 암호화하고 보호하는 데 사용되는 강력하고 오래된 PHP 인코더입니다. 라이센스 비용으로 인해 ionCube는 일반적으로 악의적인 사용에 대한 경쟁자가 아닙니다.
그러나 공격자는 ionCube로 인코딩된 파일과 유사한 멀웨어를 가장하여 다양한 웹 사이트를 손상시키는 방법을 찾았습니다. 영향을 받은 사이트 중에는 WordPress, Joomla 및 CodeIgniter를 기반으로 하는 사이트가 있습니다. 멀웨어는 해커가 취약한 웹사이트에 백도어를 생성할 수 있도록 하여 취약한 사이트 사용자로부터 데이터를 도용할 수 있습니다.
ionCube 악성코드 감염 징후
연구원들은 PHP 서버에서 실행되는 무해한 이름을 가진 7000개 이상의 가짜 ionCube 파일을 발견했습니다. 연구원들에 따르면 합법적인 ionCube 파일에는 줄이 거의 없지만 가짜 파일의 경우에는 그렇지 않습니다. 또한 모든 합법적인 Ioncube 파일은 ioncube.com 도메인을 참조합니다. 가짜 파일에서는 그렇지 않았습니다.
가짜 ionCube 파일은 이렇게 생겼습니다.
합법적인 ionCube 파일은 다음과 같습니다.
또한 연구원들은 실제 파일과 달리 영숫자 문자와 줄 바꿈만으로 구성된 PHP 닫는 태그 뒤에 코드 블록을 발견했습니다. 연구원에 따르면:
조사 결과 700개의 감염된 사이트가 발견되었으며 총 7,000개가 넘는 감염된 파일이 발견되었습니다. "diff98.php", "wrgcduzk.php"와 같은 기본적으로 의심스러운 난독화 파일인 PHP 파일은 합법적인 ionCube로 인코딩된 파일과 거의 동일하게 나타났습니다.
디코딩 시 가짜 ionCube 파일은 ionCube 악성코드로 구성됩니다. 이론적으로 주입된 악성 코드는 PHP를 실행하는 웹 서버를 기반으로 하는 모든 웹사이트를 감염시킬 수 있습니다.
완화하는 방법
악성코드 변형이 많기 때문에 가짜 ionCube 파일과 합법적인 ionCube 파일을 구별하기 어려울 수 있습니다. 또한 개발자가 ionCube로 인코딩된 파일을 특별히 설치하지 않았지만 서버에서 이러한 파일을 발견하면 감염될 가능성이 있습니다. 단일 사이트에서 맬웨어의 약간 다른 변종을 최대 100개까지 보는 것이 일반적입니다. 또한 다른 버전의 PHP와의 교차 호환성이 최소화되어 맬웨어로 사용할 가능성이 줄어듭니다.
ionCube Malware는 완화될 수 있습니다. 연구원은 관리자가 ionCube로 인코딩된 파일의 존재 여부를 손상의 지표로 확인할 것을 권장합니다. 포지티브 탐지 시 위협을 완전히 제거하기 위해 웹 애플리케이션 방화벽(WAF)의 채택과 함께 사이트 전체에 대한 스캔이 필수입니다.
무료 다운로드 개발자를 위한 보안 코딩 관행 체크리스트를 통해 사이트가 코딩 보안의 모든 측면을 준수하는지 확인하십시오.
이러한 온라인 위협으로부터 웹사이트를 더욱 완화하려면 Astra의 Web Security Firewall을 설치하십시오.