🇰🇷 한글 설명
@neo4j/graphql 7.6.3 이하 버전에서 스키마 또는 Query/Mutation 타입 수준에 적용된 @authentication 지시어가 @cypher가 지정된 최상위 필드에서 무시되는 취약점이 발견되었습니다. 이로 인해 인증되지 않은 사용자가 권한 없이 Cypher 문을 실행하여 데이터를 읽거나 수정할 수 있습니다.
💡 쉬운 설명
보안 설정이 특정 명령문에서 제대로 작동하지 않아, 로그인하지 않은 사람도 데이터베이스에 접근할 수 있는 문제입니다. 공격자가 허가 없이 데이터를 훔쳐보거나 내용을 바꿀 위험이 있습니다.
🇺🇸 원문 (English)
In @neo4j/graphql versions up to and including 7.6.3, @authentication directives applied at the schema level or on the Query or Mutation types are silently ignored for top-level fields annotated with @cypher. Only @authentication directives placed directly on the individual fields are enforced. An application that exposes a top-level @cypher field and relies on schema-level or type-level @authentication to protect it allows unauthenticated callers to invoke the field and run the configured Cypher statement with the privileges of the GraphQL service account, which may permit reading and modifying data. Fixed in 7.6.4.
📍 영향받는 시스템
@neo4j/graphql versions up to and including 7.6.3
⚔️ 공격 벡터
인증이 필요한 @cypher 필드에 인증 없이 접근하여 권한을 우회한 Cypher 쿼리 실행
🛡️ 대응 방법
@neo4j/graphql 버전을 7.6.4 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 버전이 7.6.3 이하인지 확인하여 취약 여부를 판단합니다.