SQL Injection چیست و چگونه کار می کند؟

16
March
2022
SQL injection و راه های مقابله با آن
با درود به کاربران و بازدید کنندگان عزیز سایت تخصصی ناد مارکت

جهت خرید لایسنس اورجینال آنتی ویروس نود 32 بر روی لینک رو به رو کلیک کنید:خرید لایسنس نود 32
SQL injection نوعی حمله سایبری مخفی است که در آن یک هکر کد خود را در وب سایت وارد می کند تا اقدامات امنیتی آن را نقض کند و به داده های محافظت شده دسترسی پیدا کند. هنگامی که وارد می شوند، می توانند پایگاه داده وب سایت را کنترل کنند و اطلاعات را سرقت کنند. بیاموزید که حملات تزریق SQL چگونه کار می کنند، چگونه با حملات تزریق SQL مبارزه کنید، و چگونه یک ابزار آنتی ویروس قوی "خرید آنتی ویروس" می تواند از شما در برابر حملات سایبری محافظت بیشتری کند.
تزریق SQL چیست؟ و SQL چیست؟

قبل از اینکه وارد بخش تزریق شویم، اجازه دهید ابتدا دقیقاً مشخص کنیم که SQL چیست. SQL که در دهه 1970 توسعه یافت، مخفف عبارت "Structured Query Language" است و از آن زمان به زبان استاندارد برای مدیریت پایگاه داده تبدیل شده است. اگر یک وب سایت برای یافتن یا ویرایش اطلاعات نیاز به دسترسی به پایگاه داده روی سرور خود داشته باشد، از SQL برای رسیدگی به آن «پرس و جو» یا درخواست استفاده می کند.
SQL یک زبان گسترده و انعطاف پذیر است که به طراحان پایگاه داده امکانات زیادی می دهد. اکثر طراحان پایگاههای داده را با مجموعه منحصربفرد قوانین SQL ایجاد میکنند تا به بهترین نحو با نیازهای خاص خود مطابقت داشته باشند. شما نمی توانید به سادگی SQL یک پایگاه داده را بر روی دیگری کپی و جایگذاری کنید، زیرا این پایگاه داده ها ممکن است به دو روش کاملاً متفاوت ساخته شده باشند.
بنابراین تزریق SQL از کجا وارد سایت می شود؟
اگر یک توسعه دهنده وب مراقب نباشد، ممکن است سایت خود را به گونه ای بسازد که یک عامل مخرب بتواند اثرات ناخواسته ای را در پایگاه داده ایجاد کند. این روشی است که تزریق SQL (یا SQLI) اتفاق می افتد. هکر کد SQL مخرب را وارد یا تزریق می کند - نوعی بدافزار که به عنوان payload شناخته می شود - و موجب فریب آن می گردد تا آن کد را به عنوان یک جستجوی قانونی به پایگاه داده خود تحویل دهد.
حمله تزریق SQL چگونه اتفاق می افتد؟

اگر یک وب سایت به طور کامل ورودی ها را امن نکرده باشد، یک هکر می تواند کد SQL خود را تزریق کند. سپس وب سایت - کد هکر را - به سرور خود تحویل می دهد. هنگامی که بار هکر به پایگاه داده وب سایت بر روی سرور می رسد، وارد عمل می شود و پایگاه داده را برای تحقق اهداف هکر تحت تأثیر قرار می دهد.
1. تزریق SQL از طریق ورودی کاربر
تزریق SQL از طریق ورودی کاربر ساده ترین راه برای انجام حملات تزریق SQL است. هزاران وب سایت ورودی کاربران را جمع آوری کرده و به سرور ارسال می کنند. اگر چیزی آنلاین سفارش داده اید و آدرس خود را پر کرده اید، این مهم است. همین امر در مورد بخش نظرات یا نظرات کاربران نیز صدق می کند. بدون پاکسازی ورودی قوی، یک فرم قابل پر کردن یا جعبه نظر یک آسیب پذیری آشکار تزریق SQL است.
به جای پر کردن این فرم ها با پاسخ ها و محتوای استاندارد، هکرها با استفاده از تزریق SQL مسیر دیگری را انتخاب می کنند - آنها یک رشته کد SQL را وارد می کنند. به این ترتیب SQLI به هکرها اجازه می دهد تا داده های کاربر را بدزدند یا عملکرد یک وب سایت را مختل کنند.
به عنوان یک مثال واقعی = موقعیتی را در نظر بگیرید که در آن فرد برای شغلی درخواست می کند. نام متقاضی باب آلیس است، اما در درخواست خود مینویسد «باب آلیس را استخدام کنید». هنگامی که مدیر استخدام نام متقاضی را با صدای بلند می خواند، تیم منابع انسانی می شنود که آنها می گویند "باب آلیس را استخدام کن" و بنابراین یک پیشنهاد شغلی رسمی برای باب می فرستند. باب به جای ذکر نام واقعی خود، یک بار SQL ارسال کرد که وقتی توسط پایگاه داده - مدیر استخدام - اجرا می شود، باعث می شود باب این کار را پیدا کند.
2. تزریق SQL از طریق اصلاح کوکی
کوکی ها فایل های کوچکی هستند که در مرورگر شما وجود دارند و به وب سایت ها اطلاعاتی درباره شما می دهند. گاهی اوقات آنها مفید هستند، مانند زمانی که آنها به راحتی اعتبار ورود به سیستم و تنظیمات برگزیده شما را به خاطر می آورند. گاهی اوقات، آنها وحشتناک هستند - بسیاری از سایت ها از کوکی ها برای ردیابی رفتار شما در اینترنت و همچنین در صفحات خود استفاده می کنند. آنها از بینش های به دست آمده از طریق ردیابی برای تحقیقات بازار و اهداف تبلیغاتی استفاده می کنند. این نوع دوم کوکی یک ابزار متداول ردیابی وب است. مجرمان سایبری میتوانند کوکیها را دستکاری یا «مسموم» کنند تا وقتی اطلاعات را به سرور وبسایت ارسال میکنند، کد SQL را به پایگاه داده تحویل دهند.
3. تزریق SQL از طریق متغیرهای سرور
وقتی URL یک وب سایت را در مرورگر خود وارد می کنید، توالی سریعی از ارتباطات ایجاد می شود که آن سایت را به شما ارائه می دهد. به عنوان بخشی از این فرآیند، مرورگر شما لیستی از اطلاعاتی را درخواست می کند که به عنوان «متغیرهای سرور» شناخته می شوند که به آن کمک می کند تا سایت را به درستی ارائه کند. هکرهای باهوش می توانند کد SQL را در درخواست های مرورگر قرار دهند، که اگر به درستی پاکسازی نشود، سپس به پایگاه داده وب سایت روی سرور تزریق می شود.
4. حملات SQL مرتبه دوم
تزریق مرتبه دوم SQL این تکنیک را با رویکردی بسیار پیچیدهتر ارتقا میدهد. از آنجایی که بسیاری از وبسایتها در برابر ورودی مستقیم کاربر به خوبی امنیت میشوند، هکرها SQL را تزریق میکنند که برای اجرای تنها در بازدیدهای بعدی طراحی شده است. با اقدامات متقابل اولیه ورودی-عفونیسازی، وبسایت مورد نظر یک حمله معمولی SQLI را مسدود میکند - در غیر این صورت به عنوان یک حمله مرتبه اول شناخته میشود. اما حمله تزریق SQL مرتبه دوم یک بمب ساعتی است. این چیزی است که اتفاق می افتد:
▪ یک هکر مقداری کد را به پایگاه داده تزریق می کند که به تنهایی هیچ کاری انجام نمی دهد. اما این کد به گونه ای طراحی شده است که نحوه عملکرد پایگاه داده را هنگامی که آن کد را به عنوان ورودی پایگاه داده تفسیر می کند، تغییر دهد. بنابراین هنگامی که SQL پایگاه داده کد هکر را در توابع خود قرار می دهد، حمله آغاز می شود.
تاثیر حملات تزریق SQL
حملات تزریق SQL می تواند پیامدهای گسترده ای داشته باشد. یک حمله SQLI می تواند اثرات مخربی بر روی قربانیان فردی و همچنین کسب و کار یا شرکت مورد نظر داشته باشد.
بنابراین، چگونه می توانم از تزریق SQL اجتناب کنم؟
در حالی که نمیتوانید از وقوع حملات تزریق SQL جلوگیری کنید، میتوانید شانس خود را برای تحتتاثیر قرار گرفتن کاهش دهید و در صورت گرفتار شدن توسط یک حمله، اثرات آن را کاهش دهید. عادات مرور ایمن زیر را بخشی از روال اینترنت خود قرار دهید:
1. اطلاعات شخصی خود را در اختیار هر کسی قرار ندهید. مطمئن شوید که دادههای حساس را فقط در وبسایتهای قابل اعتمادی وارد میکنید که تدابیر امنیتی قوی دارند. حتی این تضمینی برای جلوگیری از گرفتار شدن با تزریق SQL نیست، اما این یک شروع است.
2. عادات رمز عبور خوب را تمرین کنید. شما می توانید با استفاده از رمزهای عبور منحصر به فرد برای هر حسابی که دارید، خطر خود را کاهش دهید. تا یک قدم جلوتر از هکرها بمانید.
3. از نرم افزار آنتی ویروس استفاده کنید. یک ابزار آنتی ویروس قابل اعتماد "خرید نود 32" می تواند از دستگاه شما در برابر طیف گسترده ای از تهدیدات از جمله وب سایت های مخرب محافظت کند.