CVE-2026-93477 in ash정보

요약

\~에 의해 VulDB • 2026. 09. 25.

ash-project ash에서 동적으로 결정된 객체 속성에 대한 부적절하게 제어된 수정 취약점이 발견되어, 사용자가 대량 삭제(bulk destroy) 및 대량 업데이트(bulk update) 경로에서 비공개(action argument의 private) 인자 값을 설정할 수 있습니다.

public?: false로 선언된 action arguments는 신뢰할 수 있는 서버 측 코드(예: Ash.Changeset.set_private_argument/3를 통해)에 의해서만 설정되어야 하며, 최종 사용자 입력으로부터 설정되어서는 안 됩니다. CVE-2026-55736은 비대량(non-bulk) changeset 경로에서 사용자 제공 파라미터 맵에서 private arguments를 제거하여 수정되었으나, 대량 삭제 및 대량 업데이트 경로는 커버되지 않았습니다.

Ash.Actions.Destroy.Bulk.base_changeset/5와 Ash.Actions.Update.Bulk.base_changeset/5는 호출자가 제공하는 파라미터 맵의 모든 키를 action의 모든 argument와 매칭시키며 public? 체크가 수행되지 않고, 일치하는 항목이 base changeset에 적용됩니다. 따라서 대량 삭제 또는 대량 업데이트 action(예: AshJsonApi, AshGraphql, 또는 요청 파라미터를 Ash.bulk_destroy/4 또는 Ash.bulk_update/4로 전달하는 컨트롤러를 통해)에 파라미터를 제출할 수 있는 호출자는 해당 action의 모든 private argument를 설정할 수 있습니다. 여기에는 action의 변경 사항이나 검증에서 arg(...) 템플릿으로 참조되는 인자도 포함됩니다. 애플리케이션이 이 인자를 어떻게 사용하는지(예: 권한 부여나 레코드 소유권을 결정하는 acting_user_id, 또는 감사 메타데이터)에 따라 무결성 위반 또는 privilege escalation로 이어질 수 있습니다.

해당 문제는 대량 경로 모두에서 argument 매칭 시 public?을 포함해야 하며, private arguments는 :private_arguments 옵션을 통해 서버 측에서만 설정 가능하게 유지됩니다.

이 이슈는 ash: 2.17.15부터 3.33.11 미만 버전까지 영향을 미칩니다.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

책임이 있는

EEF

예약하다

2026. 09. 19.

모더레이션

수락

항목

VDB-409859

EPSS

0.00000

출처

Do you know our Splunk app?

Download it now for free!