CVE-2021-29440
정적 페이지의 안전하지 않은 Twig 처리로 인한 Grav CMS 1.7.10의 RCE
- Grav은 파일 기반 웹 플랫폼입니다. 페이지 생성 또는 편집 권한이 있는 모든 관리 사용자가 정적 페이지의 앞부분(front matter)에서 Twig 처리를 활성화할 수 있습니다. Twig 프로세서가 샌드박스 없이 실행되므로 이 동작을 사용하여 임의 코드 실행을 달성하고 인스턴스에서 권한을 상승시킬 수 있습니다.
설명
- /admin 대시보드에 접근할 수 있고 페이지 생성 권한이 있는 사용자가 필요합니다.
- 앞부분 블록은 process.twig라는 지시어를 지원하며, 이는 페이지를 제공하기 전에 콘텐츠에 Twig 렌더링 패스를 적용합니다.
- 이 동작은 기본적으로 비활성화되어 있지만, 기본 페이지 생성 권한이 있는 사용자는 앞부분에서 이 기능을 활성화할 수 있습니다.
{{ system("id") }} 콘텐츠로 페이지를 만든 다음 Twig 렌더링을 활성화합니다: Advanced --> Process --> Twig (enable)
- 생성된 페이지를 방문하여 명령어의 출력을 확인합니다.
사용법
- username, password 및 url 변수를 편집한 후 스크립트를 실행합니다.
환경
- environment.sh를 실행하여 Apache에서 Grav CMS 1.7.10을 설정합니다.
크레딧