🔍 CVE-2026-56422

0.0
CVSS Score
UNKNOWN
2026-06-22
2026-06-22 18:16
✅ 완료

🇰🇷 한글 설명

MISP의 여러 코어 컨트롤러와 모델 캡처 경로에서 클라이언트가 제어하는 요청 필드(ID, 소유권 관련 키 등)를 적절히 검증하거나 고정하지 않는 취약점이 발견되었습니다. 인증된 사용자가 조작된 페이로드를 전송할 경우, 권한이 없는 다른 객체에 데이터를 저장하거나 소유권을 변경하고 데이터를 덮어쓰는 등의 행위가 가능합니다.

💡 쉬운 설명

로그인한 사용자가 시스템의 허점을 이용해 자신이 권한이 없는 다른 사람의 정보를 수정하거나 가로챌 수 있는 보안 결함입니다. 공격자가 데이터의 주인인 것처럼 속여서 정보를 마음대로 바꾸거나 다른 곳으로 옮길 수 있습니다.

🇺🇸 원문 (English)

Multiple MISP core controllers and model capture paths accepted client-controlled request fields such as primary keys (id) and ownership/scope foreign keys (event_id, org_id, user_id, sharing_group_id, galaxy_cluster_uuid, organisation_uuid, and related nested object identifiers) without consistently stripping, pinning, or revalidating them against the server-authorized object. In affected paths, an authenticated user with access to one authorized object could submit crafted REST or form payloads that caused MISP to save data against a different object than the one checked by the authorization logic. Depending on the endpoint, this could allow object overwrite, object re-parenting, ownership transfer, unauthorized sharing-group scoping, event/object injection, proposal retargeting, or stored attacker-controlled content appearing in another user’s context. The fixes harden affected create/edit/import flows by stripping client-supplied primary keys on create-only saves, re-pinning route- or database-authorized identifiers before save operations, validating effective sharing-group scope, and adding field whitelists where ownership fields must never be editable. The initial broad fix also added a central CRUDComponent::edit() primary-key re-pin so payload-supplied IDs cannot redirect saves away from the already-authorized row. GitHub’s patch for 7acf8220c describes this central issue as CRUDComponent::edit() copying supplied fields, including a payload primary key, onto the loaded record, allowing CakePHP save() to update an arbitrary row unless the loaded ID is re-pinned.

📍 영향받는 시스템

MISP (Multiple core controllers and model capture paths)

⚔️ 공격 벡터

인증된 사용자가 조작된 REST 또는 Form 페이로드를 전송하여 권한 검증을 우회하고 다른 객체의 ID를 지정함

🛡️ 대응 방법

최신 보안 패치가 적용된 버전으로 업데이트하고, 생성/수정 시 클라이언트가 제공한 ID를 무시하도록 설정된 CRUDComponent::edit() 패치를 적용해야 함

🔧 검증 코드

명령어 실행 결과로 패치 커밋 해시인 7acf8220c가 포함된 로그가 출력되면 취약점이 해결된 상태입니다.

Shell / Script
git log -1 --format=%H | grep -E '7acf8220c'

💻 영향받는 소프트웨어

Spring Data REST