نکات امنیتی برای SQL Server
نکات امنیتی برای SQL Server
نکات امنیتی برای SQL Server در سال ۱۹۸۹ مایکروسافت و Sybase ورژن ۱.۰ آن را منتشر کردند. اما همکاری این دو شرکت در دهه ۱۹۹۰ پایان یافت. بعد از دهه ۱۹۹۰ نسخه های بعدی SQL Server شامل ۲۰۰۰، ۲۰۰۵، ۲۰۰۸، ۲۰۱۲، ۲۰۱۴، ۲۰۱۶ و ۲۰۱۷ منتشر شده است.
Microsoft SQL Server یک سیستم مدیریت بانکهای اطلاعاتی (دیتابیس) معروف است، که توسط شرکت مایکروسافت توسعه داده شده. این سیستم بعنوان یک سرور دیتابیس، محصولی نرمافزاری است که کاربرد اصلی آن ذخیره و دریافت اطلاعات از دیگر منابع نرمافزاری میباشد؛ که ممکن است در همان کامپیوتر یا در دیگر کامپیوترها روی شبکه (شامل اینترنت) باشند.
مایکروسافت حداقل دوازده نسخه متفاوت Microsoft SQL Server را با هدف مخاطبان مختلف و برای تنوع میزان کار، از برنامههای کوچک برای اجرا روی یک ماشین تا برنامههای بزرگ اینترنتی است همراه با پشتیبانی از کاربران همزمان عرضه میکند.
مهمترین ویژگی هایی که برای SQL Server می توان نام برد عبارتند از:
۱- بانک اطلاعاتی آن از نوع رابطه ای یا relational است.
۲- از فایل های XML پشتیبانی می کند.
۳- ویژگی OLAP را دارد.
۴- می توان از trigger، view و stored procedure استفاده کرد.
۵- از لحاظ حجم و تعداد رکورد هیچ محدودیتی ندارد و از این لحاظ بسیار قدرتمند است.
۶- امکان استفاده از زبان طبیعی در جستجو ها وجود دارد.
۷- برای افزایش سرعت در بازیابی اطلاعات از Full Text Search می توان استفاده کرد.
انواع نسخه های SQL سرور عبارتند از: SQL Server Interprice ،SQL Server Standard ،SQL Server WEB، SQL Server Developer، SQL Server Express
۱۰ نکته برای امنیت SQL Server
- ده کلک هکرها برای اکسپلویت کردن سیستم سرورهای SQL
هکرهای سرور SQL معمولا مجهز به آمیختهای از کلکها و ابزار مختلف برای دسترسی به سیستمهای بانک اطلاعاتی شما هستند. باید تکنیک های آنان را آموخته و قبل از اینکه این تکنیکها روی سرور شما تست شوند، خودتان این کار را انجام داده و مواردی که موفق به دسترسی گرفتن میشوند را مسدود نمایید.
- ابزارهای کرک رمز عبور برای SQL Server
وقتی که تستهای نفوذ و بررسیهای امنیتی روی سرور اسکیوال خود انجام میدهید، یک مورد را نباید فراموش کنید: کرک کردن رمز عبور. با انجام این تست بانک اطلاعاتی خود را در برابر حملات کرکرها ایمن میسازید. یکی از کمککنندگان در این مبحث Kevin Beaver ابزاری را برای چک کردن ضعفهای امنیتی مربوط به رمز عبور طراحی نموده است، که میتوانید از آن نیز استفاده کنید.
- ده نکته در IIS برای مسدود کردن سرور SQL
شما میتوانید تعدادی تمهیدات امنیتی را از طریق IIS و خارج از SQL Server اعمال کنید، تا بانکهای اطلاعاتی از حملات مخرب در امان باشند. Kevin Beaver دارای مدرک CISSP نکاتی را در زمینه سرورهای ذخیره اطلاعات اینترنتی جهت مستحکم کردن امنیت SQL Server نیز ارائه کرده است که میتوانید به آن مراجعه نمایید.
- کار با اسکیما در SQL Server
اگر مدیریت تعداد زیادی بانک اطلاعاتی که دارای objectهای فراوان نیز هستند، را بر عهده دارید، شاید زمان آن باشد که از مزایای یک قابلیت ANSI SQL در SQL Server استفاده کنید: اسکیما. با استفاده از این قابلیت میتوانید سطوح دسترسی تعریف کرده و همچنین اشیا (objects) را نیز طبقهبندی نمایید.
- تنظیمات ابزار Surface Area Configuration درSQL Server
این ابزار یک رابط کاربری یکتا ارائه میکند جهت فعالسازی یا غیرفعالسازی پروتکلهای شبکه و سرویسهای سرور SQL که در ارتباطات از راه دور استفاده میشوند. غیر فعال کردن ارتباطات و سرویسهای بدون استفاده باعث میشود سرورتان با کاهش Surface Area امنتر شود.
- فایروال ویندوز را جهت اعطای دسترسی ارتباط با SQL Server تنظیم کنید
وقتی سرور SQL را روی کامپیوتری نصب میکنید که توسط دیوار آتش ویندوز محافظت میشود، برای دسترسی به این سرور باید ابزار امنیتی موجود در فایروال را طوری تنظیم کنید که درخواستهای اتصال از بیرون را مسدود نکند.
- ارتقا مربوط به کدگذاریها در SQL Server
کدگذاری در سرور SQL زمانی سنگین و ناقص بود، و باعث میشد اطلاعات از امنیت کافی برخوردار نباشند. اما اکنون در نسخههای بروز چنین مشکلی وجود نداشته و اطلاعات به خوبی Encrypt میشوند. این موضوع تاثیر بسزایی در جلوگیری از دسترسیهای غیرمجاز به محتوای بانکهای اطلاعاتی خواهد داشت.
- سرویسهای آسیبپذیر در سرور SQL را کشف و مسدود نمایید
در سرورهای SQL “عریان” مطمئن شوید که این کار را انجام میدهید چنین دیتابیس هایی همیشه از داخل و خارج در معرض حملات هکرها قرار دارند. سعی کنید تمام سرویسها را بررسی کرده و ایرادات آنها را پیش از هر گونه اتفاقی برطرف نموده یا مسدود نمایید.
- استفاده از ابزار مسدودسازی بعضی سرویسها در SQL Server
ابزارهایی همچون Surface Area Configuration در سرور SQL به شما این امکان را میدهند که بصورت دستی بتوانید تنها سرویسهایی را که لازم دارید فعال نگه دارید. این کار موجب میشود سطح حمله برای خرابکاران اینترنتی بشدت کاهش یابد.
- SQL Server را بعنوان یک حساب دامنه برای دسترسی شبکه اجرا کنید
آن دسته از مدیران سرور که تمایل به اجرای سرورهای SQL با حق دسترسیهای محدود دارند از این روش استفاده میکنند. البته باید حواستان باشد که در این کار زیادهروی نکنید، چراکه باعث خواهد شد سرور شما عملا غیرقابل استفاده باشد.
کاربرد sql server
- قابلیت کار با بانکهای اطلاعاتی حجیم (در حد ترابایت)
- قابلیت دسترسی هزاران کاربر بطور همزمان به بانک اطلاعاتی
- قابلیت خود سازگاری (Self Compatibility) با استفاده از این ویژگی، منابع مورد نیاز هر کاربر (نظیر حافظه ، فضای دیسک و …) به محض اتصال به سرور (Log in) به صورت اتوماتیک به وی تخصیص داده می شود و پس از Log off، منابع اختصاص یافته به منظور استفاده سایر کاربران آزاد می شوند
- قابلیت اعتماد و در دسترس بودن (Reliability): با استفاده از ویژگی، می توان بسیاری از فعالیت های مدیریتی را بدون توقف سرور انجام داد (نظیر BackUp) . برخورداری از سطوح امنیتی بالا . بدین منظور اعتبار سنجی کاربران توسط SQL با اعتبار سنجی ویندوز تجمیع می گردد. در چنین مواردی، ضرورتی به تعریف کاربر در MS SQL نخواهد بود و اعتبار سنجی وی توسط ویندوز انجام خواهد شد
- پشتیبانی از حجم بالایی از حافظه در سرور (در نسخه ۲۰۰۰ تا ۶۴ گیگابایت و در نسخه ۲۰۰۵ متناسب با حافظه ای که سیستم عامل از آن حمایت می نماید)
- استفاده از چندین پردازنده به صورت موازی (در نسخه ۲۰۰۰ تا ۳۲ پردازنده همزمان و در نسخه ۲۰۰۵ محدودیتی وجود ندارد)
- پشتیبانی از لایه ها و سوکت های امنیتی نظیر SSL، خصوصا جهت استفاده در وب: یکی دیگر از ویژگی های مهم سیستم های مدیریت بانک های اطلاعاتی، ایجاد تسهیلات لازم به منظور مدیریت بانک های اطلاعاتی است