MongoDB از NoSQL injections در برنامه Node.js شما جلوگیری نخواهد کرد

MongoDB از NoSQL injections در برنامه Node.js شما جلوگیری نخواهد کرد

MongoDB از NoSQL injections در برنامه Node.js شما جلوگیری نخواهد کرد

استفاده از یک پایگاه داده NoSQL به معنای عدم امکان تزریق نیست. این مقاله نشان می دهد که چگونه یک برنامه Node.js مبتنی بر Express و استفاده از MongoDB (با Mongoose ORM) می تواند در برابر تزریق NoSQL آسیب پذیر باشد. MongoDB will not prevent NoSQL injections in your Node.js app

دوشنبه 1 اردیبهشت 1399
278

آیا NoSQL به معنی  Not-injectable  است ؟

ابتدا باید تعریف کنیم که تزریق در اینجا چیست:
تزریق MongoDB زمانی اتفاق می افتد که مشتری بتواند دستورات MongoDB را که توسط موتور پایگاه داده اجرا می شود ، تزریق کند.
به عبارت دیگر ، مهاجم سعی خواهد کرد یک custom object  را با دستورات MongoDB در داخل    object بتواند query تزریق کند. این امر به او اجازه می دهد تا به documents بیشتری از آنچه باید بدست آورد.

برای داشتن یک مثال قابل درک ، ما از یک پروژه بسیار ساده و naive project استفاده خواهیم کرد. می توانید کل کد را در Github پیدا کنید. این پروژه ها دارای یک نقطه پایان برای انجام نمایش queries هوشمند در داخل مجموعه Document است:
 
 
نظر بدهید