뉴스 목록
BleepingComputer2026. 09. 26.

ShinyHunters, Grav CMS 경로 탐색 취약점으로 Clop 리크 사이트 해킹

한 줄 요약

랜섬웨어 그룹 Clop의 다크웹 데이터 유출 사이트가 ShinyHunters라는 해킹 그룹에 의해 침해·변조됐습니다. ShinyHunters는 Grav CMS의 인증 없이 악용 가능한 경로 탐색(path traversal, 허용된 폴더 밖에 파일을 쓸 수 있는 취약점) 취약점(CVE-2026-42608)을 이용해 Clop 서버에 임의 파일을 업로드했습니다. 이 취약점은 Grav CMS 1.7 버전에 패치가 적용되지 않은 상태였으며, 이번 사건 공개 이후 Grav가 1.7.53.4 버전에 백포트 패치를 배포했습니다. Grav 2.x 사용자는 이미 수개월 전부터 보호된 상태이므로, 현재 1.7.x를 사용 중인 조직은 즉시 1.7.53.4로 업그레이드해야 합니다.

사건

ShinyHunters가 Grav CMS의 인증 불필요 경로 탐색 취약점(CVE-2026-42608)을 이용해 Clop 랜섬웨어 갱단의 다크웹 데이터 유출 사이트를 침해하고 전면 변조했다. ShinyHunters는 소스 코드, 서버 로그, Tor 서비스 개인 키 등을 탈취했다고 주장하며 몸값을 요구했다.

영향

Clop의 리크 사이트가 변조되어 새 Tor 주소로 이전이 강제됐다. Clop은 서버에 유의미한 데이터나 금융 정보가 없었다고 반박했으나, Tor 개인 키 유출 주장은 운영 보안 측면에서 심각한 문제다. Grav CMS 1.7.x를 사용하는 모든 조직이 동일한 공격에 노출될 수 있다.

원인

Grav CMS 1.7.43의 폼 업로드 처리 중 `__unique_form_id__` POST 파라미터 값을 파일시스템 경로 구성 요소로 사용하기 전 검증하지 않아, `../../../shhq`와 같은 디렉터리 탐색 시퀀스를 삽입하면 의도된 `tmp/forms` 디렉터리 밖에 파일을 쓸 수 있었다. Grav 2.0에 적용된 패치가 1.7 브랜치에 백포트되지 않은 상태였다.

대응

Grav는 취약점 및 공격 방법의 정확성을 확인하고 1.7 브랜치에 패치를 백포트하여 Grav 1.7.53.4를 릴리스했다. 수정 내용은 `sanitizeId()` 함수를 통한 알파벳·숫자·일부 특수문자(`[A-Za-z0-9,_-]{1,64}`) 외 입력 차단이다.

실무 포인트

Grav CMS 1.7.x를 운영 중인 조직은 즉시 1.7.53.4로 업그레이드해야 한다. 취약점은 Form 플러그인이 아닌 Grav 코어에 존재하므로 플러그인 버전과 무관하게 코어 버전이 기준이다. CMS 등 서드파티 소프트웨어의 패치 적용 및 EOL(지원 종료) 버전 사용 여부를 주기적으로 점검하는 프로세스가 필요하다.

본문

Clop 랜섬웨어 갱단은 이전 서버가 패치되지 않은 Grav CMS 취약점을 통해 침해·변조됐음을 인정한 뒤 데이터 유출 사이트를 새 Tor 주소로 이전했다. BleepingComputer가 확인한 바에 따르면 해당 취약점은 인증이 필요 없는 경로 탐색(path traversal) 취약점이다.

Clop 리크 사이트는 이달 초 ShinyHunters 갈취 그룹에 의해 침해됐다. ShinyHunters는 처음에 소형 텍스트 파일을 업로드했다가 이후 자신들의 Umbreon 포켓몬 로고와 자체 데이터 유출 사이트 링크를 담은 전면 변조 페이지로 교체했다.

ShinyHunters에 의해 변조된 Clop 데이터 유출 사이트

이후 ShinyHunters는 자신들의 데이터 유출 사이트에서 소스 코드, Grav CMS 플러그인, 서버 로그, Clop의 Tor 어니언 서비스에 사용된 개인 키를 탈취했다고 주장했다. 또한 Clop이 몸값을 지불하지 않으면 탈취한 파일을 공개하겠다고 협박하며 랜섬 요구를 전달했다.

Clop은 현재 새 어니언 주소를 공개했으며, 기존 도메인은 폐기 전 일시적으로 접근 가능한 상태로 유지된다고 밝혔다.

Clop은 또한 ShinyHunters와 어떠한 관계나 진행 중인 협상도 없다고 부인했다.

"우리는 그들을 알지 못하고, 함께 일한 적도 없으며, 현재 연락 중이지도 않다. 또한 어떠한 정보도 제공하지 않았으며, 지금도 앞으로도 그렇게 하지 않을 것이다"라고 Clop은 BleepingComputer에 밝혔다.

ShinyHunters가 어떻게 리크 사이트를 침해했는지 파악했냐는 질문에 Clop은 자신들의 Grav 설치 버전이 완전히 업데이트되지 않았음을 인정했다.

다만 러시아 랜섬웨어 갱단은 침해된 서버에서 가치 있는 운영 정보나 금융 데이터가 탈취됐다는 ShinyHunters의 주장에는 반박했다.

"Grav 플러그인을 업데이트하지 않은 건 사실이지만 결국 업데이트했다. 하지만 해당 서버에는 콘텐츠 외에 아무것도 없었다(즉 어떠한 데이터나 금융 활동도 없었고, 있을 수도 없었다). 따라서 그들의 주장은 무가치하다—그들의 말처럼"이라고 Clop은 밝혔다.

Clop은 상대 위협 행위자와 소통하지 않는다고 밝혔지만, 이후 Clop은 ShinyHunters의 데이터 유출 사이트에서 조용히 삭제됐다. 이는 협상이 진행 중일 때 흔히 일어나는 현상이다.

해당 삭제에 대해 질문하자 ShinyHunters는 BleepingComputer에 이 건에 대해 더 이상 답변하고 싶지 않다고 전했다.

Grav, 공격에 사용된 취약점 확인

Grav CMS는 ShinyHunters가 BleepingComputer에 공유한 취약점 및 공격 방법의 정확성을 확인했다.

ShinyHunters는 BleepingComputer에 침해된 Clop 서버가 Grav CMS 1.7.43을 실행 중이었다고 밝히며, Grav의 폼 업로드 처리 기능의 인증 불필요 파일 업로드 취약점을 악용했다고 주장했다.

위협 행위자에 따르면, 취약한 코드는 임시 업로드 디렉터리 생성 시 폼 관련 POST 파라미터를 통해 입력된 값을 안전한 파일시스템 경로 구성 요소로 먼저 검증하지 않은 채 사용했다.

그룹은 구체적으로 __unique_form_id__ 파라미터를 지목하며, 해당 값이 다음과 같은 임시 경로에 추가됐다고 설명했다:

tmp/forms/<session_id>/<unique_id>

ShinyHunters는 고유 폼 식별자에 ../../../shhq와 같은 디렉터리 탐색 시퀀스를 입력함으로써 Grav가 의도된 tmp/forms 디렉터리 밖에 업로드 경로를 생성하도록 유도할 수 있었다고 주장했다.

업로드된 파일은 이후 Grav 설치 하위 어디든 기록될 수 있었다.

BleepingComputer가 기술적 세부 사항을 Grav에 공유하자, CMS 개발자들은 위협 행위자의 설명이 정확하다고 확인했다.

"맞다, 이것은 실제 취약점이며 위협 행위자의 설명은 정확하다"고 Grav는 BleepingComputer에 밝혔다.

Grav는 해당 취약점이 CVE-2026-42608로 추적되는 경로 탐색 취약점으로, 올해 초 Grav 2.0(2.0.0-beta.2)에서 비공개 보고를 통해 수정됐으며 4월 27일 보안 공지가 게시됐다고 설명했다.

수정 내용은 허용 목록에 부합하는 식별자만 허용하는 sanitizeId() 함수 추가다:

[A-Za-z0-9,_-]{1,64}

Grav는 이 검증 방식이 ShinyHunters가 BleepingComputer에 설명한 완화 조치와 동일하다고 확인했다.

그러나 현재 Grav 2.x 릴리스에는 이미 보호 조치가 적용됐음에도, 구버전 Grav 1.7 브랜치에는 해당 수정 사항이 백포트되지 않아 Clop의 1.7.43 배포본과 같은 설치 환경이 취약한 상태로 남아 있었다.

"문제는 1.7 라인이었다"고 Grav는 BleepingComputer에 밝혔다. "Grav 2.0이 현재 메이저 버전이지만 여전히 1.7을 사용하는 사이트가 많고, 해당 수정 사항이 아직 백포트되지 않았다."

BleepingComputer가 공격 방법 세부 사항을 Grav와 공유한 후, 개발자들은 1.7 브랜치에 수정 사항을 백포트하여 어제 Grav 1.7.53.4를 릴리스했다.

Grav는 또한 해당 취약점이 Form 플러그인이 아닌 Grav 코어에 위치한다고 명확히 했다.

"버그는 Form 플러그인이 아닌 Grav 코어에 있으므로, Form 플러그인 버전(예시의 7.3.0)은 사이트의 취약 여부에 영향을 주지 않는다. 중요한 것은 코어 버전이다"라고 Grav는 밝혔다.

Grav는 아직 1.7 브랜치를 사용 중인 모든 이에게 1.7.53.4로 업그레이드할 것을 촉구하고 있다. 현재 Grav 2.x 릴리스 사용자는 수개월 전부터 이미 취약점으로부터 보호된 상태다.

AI 기반 공격에 대한 보안 청사진 구축

NFL, CHANEL, Atlassian의 보안 리더들과 Mikko Hyppönen이 함께하는 2시간짜리 디지털 서밋에 참여하세요. AI 속도의 공격이 바꾸는 것, 방어자가 중단해야 할 일, 그리고 머신 속도로 검증·결정·수정·재검증하는 방법을 다룹니다.

자리 확보하기

출처
BleepingComputer · bleepingcomputer.com
원문 보기

분야별 뉴스

관심 분야의 보안 이슈를 모아 보세요.

TORUN SECURITY

투런이 제공하는 보안 솔루션

공격 표면 관리부터 엔드포인트·내부정보 보호까지, 기업 환경에 맞는 보안 솔루션을 투런이 함께 설계합니다.