نکات امنیتی وب

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

بر خلاف تصور عموم، هدف اکثر رخنه های امنیتی انجام شده نه سرقت اطلاعات شما و یا از دسترس خارج نمودن وب سایت بلکه سوء استفاده از وب سرور در جهت منافع هکر ها می باشد. در برخی از موارد هکر ها سعی دارند با استفاده از وب سرور شما یک سیستم Email Relay راه اندازی کرده و اقدام به ارسال ایمیل های انبوه تبلیغاتی نمایند و در برخی دیگر از مواقع نیز از سرور شما به عنوان یک منبع فایل سرور برای بارگذاری فایل های آلوده و غیر قانونی خود استفاده می کنند.

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

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

امنیت سرور

تمام موارد امنیتی لازم را برای محافظت از سرورها و همچنین وب سایت شما انجام رعایت می شود، برخی از این موارد عبارتند از:

  • دریافت نسخه پشتیبان سرور به صورت دوره ای.
  • استفاده از فایروال های قدرتمند و مسدود کردن تمامی پورت های غیر ضروری سرور.
  • استفاده از سرور مجزا برای نگهداری دیتابیس ها تا در صورت هک شدن سرور اصلی اطلاعات آسیب نبیند.

ایمن در مقابل SQL Injection

حملات SQL Injection زمانی رخ می دهند که افراد هکر از پارامترهای URL با فرم تحت وب برای دسترسی به دیتابیس شما استفاده کنند. زمانی که از قالب استاندارد Transact SQL استفاده شود، افزودن کدهای مخرب و سارق در بین کدها به سادگی توسط هکرها امکان پذیر خواهد بود.

این افراد با افزودن چنین کدهایی می توانند جداول شما را تغییر دهند، اطلاعات دیتابیس شما را دریافت کنند و یا برخی اطلاعات حیاتی شما را حذف نمایند. اما می توان از بروز چنین اتفاقاتی با استفاده از کوئری های پارامتردار جلوگیری کرد. در زبان های برنامه نوسی ای که توسط کارشناسان گروه پرتوبیتا مورد استفاده قرار می گیرد از این قابلیت پشتیبانی نموده و بانک های اطلاعاتی شما ایمن خواهند بود.

استفاده از SSL

SSL یک پروتکل امنیتی برای امن سازی فضای انتقال اطلاعات در اینترنت می باشد. بنابراین استفاده از این پروتکل در مواقعی که نیاز به انتقال اطلاعات شخصی و محرمانه کاربران بین وب سایت و وب سرور یا دیتابیس وجود دارد، می تواند موجب افزایش امنیت انتقال داده ها گردد. اهمیت استفاده از SSL از آنجاست که بسیاری از هکرها اطلاعات انتقال یافته بین سرور و وب سایت ها را ردیابی (Sniff) می کنند و در صورتیکه محیط این انتقال از امنیت کافی برخوردار نباشند، آنها می توانند به راحتی اطلاعات کاربری و شخصی هریک از کاربران را به سرقت ببرند.

اس اس ال

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

ایمن در مقابل XSS

عملیات Cross site scripting به زمانی گفته می شود که فرد حمله کننده سعی کند تا با اضافه نمودن کدهای اسکریپت JavaScript به فرم وب، کدهای مخرب خود را برای بازدیدکنندهای وب سایت شما اجرا نماید. در تیم پرتوبیتا هنگام طراحی و ساخت وب سایت های مشتریان، اطلاعات پیش از ارسال کدگذاری می شود تا چنین عملی ممکن نباشد.

اعتبار سنجی سمت سرور و اعتبار سنجی فرم ها (Server side/Form Validation)

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

البته چنین اعتبارسنجی هایی ممکن است کنار گذاشته شوند. ما در اینجا تمام مواردی از این دست را توسط مرورگر اعتبار سنجی کرده و تایید اعتبار موارد پیچیده تر مانند توقف عملیات به دلیل وجود کدهای مخرب، وارد شدن اسکریپت های اضافی به دیتابیس یا وجود احتمال بروز نتایج نامناسب در برنامه را بر عهده سرور قرار می دهیم.

استفاده از نرم افزارها و تکنولوژی های جدید!

این موضوع ممکن است به وضوح برای همگان آشکار باشد، اما تاکید آن نیز خالی از لطف نیست چرا که به روز نگهداری تمامی نرم افزارهای مورد استفاده برای حفظ امنیت وب سایت کاملا حیاتی می باشد. این موضوع هم برای سیستم عامل سرور میزبان و هم برای نرم افزارهای مورد استفاده در وب سایت مانند CMS ها یا Forum ها صادق است. زمانی که حفره های امنیتی هرچند کوچک در یک نرم افزار پدید آیند، هکر ها به سرعت با سوء استفاده از آن ها به سرور یا سایت شما رخنه می کنند. لذا تمامی سازنده های نرم افزار در دنیا سعی می کنند تا حفره های امنیتی موجود در محصولات خود را با ارایه بسته های بروز رسانی به کاربران برطرف سازند و به مرور زمان نرم افزار خود را در مقابل نفوذهای امنیتی مقاوم تر کنند.

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

کدگذاری پیشرفته در گذرواژه ها

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

ممکن است کاربران عادی شما از اعمال چنین قوانین سخت گیرانه ای چندان خشنود نشوند اما اعمال قوانینی مانند الزام به انتخاب پسوردهایی با حداقل هشت کاراکتر و تشکیل شده از حروف بزرگ و کوچک انگلیسی، اعداد و نشانه ها می تواند کمک بسزایی در افزایش ضریب امنیتی حساب های کاربران نماید.

در طراحی و پیاده سازی وب سایت ها توسط گروه پرتوبیتا پسوردهای انتخاب شده برای تمامی حساب ها با مقادیر کدگذاری شده در پایگاه های داده نگهداری شوند.

برای مثال پسوردها با الگوریتم hashing مانند SHA ذخیره می شوند. با استفاده از این الگوریتم، در هر بار که کاربر پسورد خود را برای ورود به سیستم وارد می کند، در واقع تنها مقادیر کدشده بین کاربر و سرور جابجا می شوند و ردیابی آن ها به سادگی امکان پذیر نخواهد بود.

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

استفاده از ابزارهای امنیتی

زمانی که تصور می شود تمامی راهکار های لازم و امکان پذیر را برای حفظ امنیت وب سایت به کار بسته شده است، آنگاه زمان آن فرا می رسد تا امنیت وب سایت یا سرور را امتحان کنیم. موثرترین روش انجام اینکار استفاده از ابزارهای امنیتی است که معمولا با نام آزمون نفود (Penetration Test) شناخته می شوند.

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

برخی از محصولات که برای این منظور مورد استفاده قرار می گیرند:

  • Netsparker: مناسب برای امتحان کردن روش های حمله SQL Injection و XSS
  • OpenVAS: این نرم افزار به عنوان یکی از پیشرفته ترین ابزارهای اسکنر امنیتی متن باز شناخته می شود. این ابزار مناسب برای اسکن بیش از 25000 نوع از آسیب پذیری های ممکن است.

متخصصین پرتوبیتا یک گام به فراتر برداشته و به صورت دستی نسبت به نفود به دیوار امنیتی خود با استفاده از تغییر مقادیر Post و Get می نمایند تا از امنیت کامل سرورها اطمینان حاصل کنند. ابزارهای Debugging proxy با فراهم کردن امکان جداسازی این مقادیر در یک درخواست HTTP که بین مرورگر و سرور در حال انتقال است، امکان بررسی این مسئله را می دهند. یکی از انواع چنین ابزارهای محبوبی Fiddler نام دارد.

گروه پرتو بیتا

گروه پرتو بیتا به عنوان یکی از بنگاه های فعال در حوزه فناوری اطلاعات در بازار ایران حضور دارد . بهره گیری از نخبگان حوزه نرم افزار و در نتیجه تفاوت در رویکرد تولید موجب تمایز این گروه از رقبا گردیده است. ارائه خدمات پشتیبانی ویژه وجه تمایز دیگر این گروه می باشد