🇰🇷 한글 설명
Grist 스프레드시트 소프트웨어 1.7.15 미만 버전에서 GET /forms 엔드포인트가 문서의 접근 규칙을 적용하지 않고 테이블 및 컬럼 메타데이터를 읽는 취약점이 발견되었습니다. 이로 인해 부분적인 읽기 권한만 가진 사용자도 요청한 섹션이 실제 폼인지 확인하지 않고 메타데이터를 요청하여 숨겨진 데이터 구조를 노출할 수 있습니다.
💡 쉬운 설명
스프레드시트 프로그램의 보안 설정이 제대로 작동하지 않아, 권한이 없는 사람이 데이터의 구조(표와 열의 이름 등)를 몰래 훔쳐볼 수 있는 문제입니다. 이를 통해 원래는 볼 수 없어야 할 데이터의 설계도를 파악할 수 있습니다.
🇺🇸 원문 (English)
Grist is spreadsheet software using Python as its formula language. Prior to 1.7.15, the GET /forms endpoint read table and column metadata without applying the document's access rules and did not check that the requested section was actually a form. A user with only partial read access, including public access on a publicly viewable document, could request the metadata of any widget and reveal table and column structure that access rules would otherwise hide, even in documents that contain no forms. This issue is fixed in version 1.7.15.
📍 영향받는 시스템
Grist 버전 1.7.15 미만
⚔️ 공격 벡터
권한이 제한된 사용자가 특정 API 엔드포인트(GET /forms)에 조작된 요청을 보내 메타데이터를 탈취함
🛡️ 대응 방법
Grist를 최신 버전인 1.7.15 이상으로 업데이트하십시오.
🔧 검증 코드
API 요청 시 접근 권한 오류가 발생하지 않고 메타데이터가 출력된다면 취약한 상태입니다.
curl -s http://<target-host>/api/forms/ | grep -i 'error' || echo 'Check version manually'