🇰🇷 한글 설명
MongoDB C# Driver의 LINQ-to-aggregation 쿼리 변환 계층에서 NoSQL/expression injection 취약점이 발견되었습니다. 애플리케이션이 제공한 값이 적절히 이스케이프되지 않아, 공격자가 입력한 특수 문자가 데이터가 아닌 쿼리 로직으로 해석될 수 있습니다. 이를 통해 공격자는 의도하지 않은 데이터를 조회하거나 쿼리 결과를 조작할 수 있습니다.
💡 쉬운 설명
사용자가 입력한 값이 데이터베이스 명령어로 잘못 인식되어 발생하는 보안 문제입니다. 이를 통해 해커가 데이터베이스의 내용을 몰래 훔쳐보거나 내용을 바꿀 수 있습니다.
🇺🇸 원문 (English)
A NoSQL/expression injection weakness exists in the LINQ-to-aggregation query translation layer of the MongoDB C# Driver, in both aggregation expression and query filter translation. When application-supplied values are embedded in certain query constructs, special elements contained within those values are not properly escaped before the resulting query is transmitted to the database, so portions of the value may be interpreted by the database as query logic rather than as data. A user able to supply values that an application incorporates into an affected query may thereby cause unintended data to be returned or query results to be altered.
📍 영향받는 시스템
MongoDB C# Driver (LINQ-to-aggregation 변환 기능을 사용하는 버전)
⚔️ 공격 벡터
애플리케이션의 쿼리 필터나 집계 표현식에 특수 문자가 포함된 사용자 입력값을 직접 삽입하여 공격
🛡️ 대응 방법
MongoDB C# Driver를 최신 보안 패치가 적용된 버전으로 업데이트하고, 사용자 입력값에 대한 검증을 강화하십시오.
🔧 검증 코드
출력된 MongoDB.Driver의 버전을 확인하여 취약점이 해결된 최신 버전인지 대조하십시오.
dotnet list package | grep MongoDB.Driver