Details
-
Bug
-
Resolution: Works as Designed
-
Major - P3
-
None
-
None
-
None
-
ALL
-
Security 2022-11-14
Description
If the contention max, M, for a QE encrypted field is greater than 0, the query rewrite currently performs M + 1 binary search iterations, whereas it should only be running M iterations. See https://github.com/10gen/mongo/blob/082a22c0addd26f8065693ba81d3507b26e02311/src/mongo/crypto/fle_tags.cpp#L215. For a field with contention max M, the valid contention factor values are 0 through M-1, inclusive. The extra binary search iteration will lookup ESC entries for contention value M, but will always end up with 0 entries.