New Issue Checklist
Issue Description
A security feature that rejects requests containing sensitive keywords was introduced in #7843. The detection algorithm has a bug that may produce false positives in certain cases, blocking valid, non-malicious requests and sending a 4xx HTTP error code.
The bug does not produce false negatives, which means the security protection is still intact.
Steps to reproduce
- Configure Parse Server with option
requestKeywordDenylist: [{ key: 'abc' }].
- Run this:
const obj = new TestObject({ a: { b: { c: 0 } } });
await obj.save();
obj.increment('a.b.c');
await obj.save();
Actual Outcome
The second obj.save() will be rejected.
Expected Outcome
The second obj.save() should be resolved.
Environment
Server
New Issue Checklist
Issue Description
A security feature that rejects requests containing sensitive keywords was introduced in #7843. The detection algorithm has a bug that may produce false positives in certain cases, blocking valid, non-malicious requests and sending a 4xx HTTP error code.
The bug does not produce false negatives, which means the security protection is still intact.
Steps to reproduce
requestKeywordDenylist: [{ key: 'abc' }].Actual Outcome
The second
obj.save()will be rejected.Expected Outcome
The second
obj.save()should be resolved.Environment
Server