Я использую mongo-java-драйвер для подключения к моей MongoDB.Поэтому мои вопросы касаются использования MongoDB с Java-клиентом:
- Насколько
com.mongodb.BasicDBObject.parse(userInput)
защищен от атак NoSQL-инъекцией? - Или я должен очистить строку userInput перед синтаксическим анализом?
- Если мне нужно очистить ввод: Существуют ли специальные методы для очистки, поставляемые с mongo-java-driver?
- Или я должен использовать
basicDBObject.put( "foo", "bar" )
вместо этого?
Документация MongoDB описывает строгий режим :
- это строгий режим санировать ввод?
- Как активировать строгий режим при разборе?
В руководстве OWASP описываются несколько MongoDBинъекционные атаки.И неясно, если BasicDBObject.parse()
санирует сам ввод.