آموزش شناسایی حملات SQL Injection و روش های مقابله با آن

آموزش شناسایی حملات SQL Injection و روش های مقابله با آن

آنچه در این آموزش خواهید آموخت:

SQL Injection چیست؟

شناسایی حملات SQL در وردپرس ⇓

   SQL Injection کلاسیک

   Blind SQL Injection

عملکرد وردپرس در برابر حملات

روش های مقابله با حملات SQL

 

SQL Injection چیست؟

SQL Injection یکی از انواع حملات به صفحات وب سایت است که هکرها از این روش میتوانند به بانک اطلاعاتی سایت شما دست یابند. به این وسیله دستور های مخرب به پایگاه داده تزریق کرده و باعث بروز نقص های امنیتی شدید میشوند. با اجرای موفقیت آمیز دستورات مخرب , اطلاعات و داده های مهم سایت افشا خواهند شد.

 

شناسایی حملات SQL در وردپرس

جهت شناسایی حملات راه های متعددی وجود دارد که یکی از این راه ها بررسی فایل error_log موجود در فایل روت سایتتان که معمولا با public_html شناخته میشود است.

در این روش هکرها با استفاده از فرم تماس , فرم ارسال نظر , صفحه ورودی , بخش جستجو , صفحه پرداخت و …. اقدام به ارسال کد های مخرب میکند. در نتیجه کدها پس از ارسال توسط هکر به عنوان یک دستور در سایت اجرا میشوند.

پس از اجرای دستورات مخرب , هکر میتواند به اطلاعات مهمی از جمله نام های کاربری , رمز های عبور , شماره حساب های وارد شده در سایت و … دست یابد.

دو نوع SQL Injection وجود دارد که در ادامه به معرفی آنها میپردازیم:

SQL Injection کلاسیک

 در این نوع SQL Injection از فرم ها جهت جستجوی پایگاه داده استفاده میشود. این نوع کوئری ها قادر به آشکار کردن ساختار پایگاه داده بوده و پس از آسان سازی هک سایت , داده ها را به مرورگر هکر ارسال خواهد کرد.

 

Blind SQL Injection

Blind SQL Injection یا تلاش کور زمانی رخ میدهد که هیچ داده ای بازگردانده نشود اما هکر از این روش برای اجرای فعالیت هایی در پایگاه داده استفاده میکند. به این جهت باید ساختار امنی را برای فرم های سایتتان در نظر بگیرید.

 

عملکرد وردپرس در برابر حملات

وردپرس با استفاده از سیستم تایید و معتبر کردن داده ها تلاشی برای جلوگیری از حملات انجام میدهد اما باز هم مشکلاتی وجود خواهد داشت زیرا وردپرس در برابر SQL Injection بصورت صددرصدی امن نیست. امکان عدم آلوده شدن هسته وردپرس وجود دارد اما افزونه ها و قالب های وردپرس شما تحت این شرایط قرار خواهند گرفت. برای مثال یک اشتباه کوچک در در المان های فرم میتواند آسیب حمله را امکان پذیرتر کند. در نتیجه باید از روش های امنیتی خوبی برای سایتتان استفاده کنید.

 

روش های مقابله با حملات SQL

1. یکی از مهم ترین روش های مقابله با حملات SQL بررسی دائمی اطلاعات ورودی به سایت است. به دلیل ارسال کدهای مخرب از طریق فرم ها , باید امنیت فرم ها را به طوری افزایش داد که از ورود هرگونه Query های غیرمجاز جلوگیری شود.

 

2. برای ارسال اطلاعات به پایگاه داده از روش پرس و جو استفاده کنید تا اطلاعات بصورت جداگانه بررسی شده و امنیت , سرعت و کارایی سایت در زمان حملات SQL افزایش یابد.

 

3. دقت داشته باشید هنگامی که پیام و یا هشداری بر روی سایت قرار میدهید , این پیام یا هشدار شامل نکته هایی جهت کمک به هکرها برای شناسایی ضعف سایت نباشد.

 

4. همیشه پایگاه های داده خود و تمامی محتوای سایت خود را با توجه به آخرین نسخه های موجود , بروز نگه دارید. وردپرس در هر نسخه جدیدتر سعی بر این دارد که مشکلات SQL Injection را بر طرف کند.

 

5. بطور مکرر دسترسی کاربران به بانک های اطلاعاتی و دیتابیس را مورد بررسی قرار دهید تا درصورت افشا شدن اطلاعات یک کاربر دیگر امکان دسترسی به بانک اطلاعاتی سایت وجود نداشته باشد.

 

6. امنیت سایت و هاست خود را به حداکثر خود برسانید. همچنین میتوانید برای افزایش امنیت سایت و هاست خود از آموزش زیر بهره بگیرید.

 تنظیمات امنیتی سایت و هاست

 

7. از رمز های عبور قوی در بانک های اطلاعاتی خود استفاده کنید تا هکرها نتوانند به آسانی آنها را شناسایی کنند. و همچنین این رمزها را در امن ترین حالت قرار دهید.

 

8. گاهی ممکن است پایگاه داده پیام خطا را بر روی سایت ارسال کند که با مخفی کردن اینگونه پیام ها میتوانید از سایت خود در برابر حمله هکرها محافظت کنید.

 

9. با تغییر پیشوند پایگاه داده خود میتوانید هک را برای هکرها تقریبا غیرممکن سازید. زیرا هکرها معمولا از پیشوند پیشفرض wp- برای دسترسی به پایگاه داده استفاده میکنند. برای تغییر پیشوند میتوانید از آموزش زیر بهره بگیرید.

آموزش تغییر پیشوند جداول وردپرس

 

10. با استفاده از افزونه ها و قالب های  قابل اعتماد میتوانید امنیت بیشتری را برای سایت خود در برابر حملات ایجاد کنید.

 

11. جهت جلوگیری از ورود هکر ها به سایت خود از WAF فایروال اپلیکیشن وب استفاده کنید. 

 

امیدواریم آموزش شناسایی حملات SQL Injection و روش های مقابله با آن برای شما مفید واقع شده باشد.

 

آموزش های مرتبط:

آموزش بهینه سازی دیتابیس وردپرس

تغییر پسورد دیتابیس در سیپنل

آموزش رفع خطای دیتابیس

آموزش ساخت دیتابیس در cpanel

فایل error_log چیست؟

 

نوشتن دیدگاه


تصویر امنیتی
تصویر امنیتی جدید

آموزش های مرتبط