امنیت در فروشگاه اینترنتی

مهدی شاد
1397-06-06 22:00:24
1393

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

امنیت در فروشگاه اینترنتی

اولین مساله ای که در زمینه امنیت اطلاعات باید بدانید این است که "امنیت 100 درصد" وجود ندارد. شاید نا امید کننده باشد ولی کاملا صحیح است. بزرگترین شرکتهای امنیتی در دنیا، بارها مورد حمله قرار گرفته اند و اطلاعات زیادی را از دست داده اند. به عنوان مثال نورتون متعلق به شرکت سیمانتک، که یکی از بزرگترین غولهای امنیتی در دنیاست، در سال 2001 هک شده است. سایت ارتش آمریکا، شرکت سونی، سامسونگ و بسیاری از وبسایتهای عظیم و معتبر دنیا که هزینه های هنگفتی هم برای تامین امنیت خود میکنند، هک شده اند و مورد نفوذ قرار گرفته اند. پس اگر هر سایت، شخص یا شرکتی ادعای امنیت 100درصد برای سایت شما را کرد، در همان لحظه اول بدانید که نباید با آن کار کنید.

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

گام اول : سرور مناسب

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

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

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

گام دوم : رمزنگاری

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

گام سوم : فروشگاه ساز (سایت ساز)

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


الف) فروشگاه ساز اختصاصی که به طور خاص برای شما نوشته میشود:

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

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

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

ب) فروشگاه سازهای عمومی که شامل چند نوع زیر میشوند:

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

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

--راه سوم، استفاده از فروشگاه سازهای رایگان و کدباز است. پرستاشاپ، مجنتو و اپن کارت نمونه هایی از معروفترین این فروشگاه سازها هستند. این نوع از فروشگاه سازها، بهترین انتخاب برای راه اندازی فروشگاه اینترنتی برای کسانی است که قصد دارند با برنامه ریزی و به صورت دائمی کار کنند.

  • اپن سورس هستند: به دلیل باز بودن کدهای این سیستمها، هزاران نفر در کل دنیا، آنها را چک میکنند و مورد آزمایش قرار میدهند. هر مشکل یا باگ امنیتی ای در این سیستمها وجود داشته باشد، به سرعت گزارش شده و برطرف میشود. هر چند که معمولا این سیستمها تنها در نسخه های ابتدایی ممکن است مشکلات امنیتی جدی داشته باشند و نسخه های فعلی معتبر بین المللی را میتوان با خیال آسوده مورد استفاده قرار داد.
  • تیم توسعه دهنده بزرگی دارند: این سیستمها معمولا تیم توسعه دهنده ی بزرگی دارند و محدود به چند برنامه نویس نیستند. برای نمونه، پرستاشاپ بیشتر از 150 نفر پرسنل دارد که در فرانسه و آمریکا، مستقیما بر روی این اسکریپت کار میکنند و علاوه بر آن، چند هزار برنامه نویس در سطح دنیا، با آنها همکاری میکنند و باعث بهبود و گسترش سریع این سیستم میشوند. به عنوان مثال سیستم ترجمه پرستاشاپ توسط تیم ایرانی آی پرستا توسعه یافته و در حال حاضر یکی از بهترین سیستمهای ترجمه در دنیاست. همچنین سیستم راستچین سازی خودکار در نسخه 1.7 پرستاشاپ نیز، توسط آی پرستا برنامه نویسی شده است. افراد زیادی از سراسر دنیا برای توسعه این سیستم تلاش میکنند.
  • به هیچ تیمی وابسته نیستید: مزیت بزرگ دنیای کدباز، این است که شما به هیچ تیم خاصی وابسته نخواهید بود. چنانچه مشکلی برای فروشگاه شما پیش آید، به جز تیم اصلی پرستاشاپ، صدها شخص و تیم و وبسایت هستند که میتوانند به شما کمک کنند تا فروشگاه خود را آپدیت کنید یا امکانات آن را افزایش دهید.

گام چهارم : سطح دسترسی

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

نکته1: در برخی موارد، سایتهای سرویس دهنده، مانند سایت ما (آی پرستا)، برای حل مشکل فروشگاه شما یا نصب برخی امکانات، نیاز به اطلاعات ورود به هاست و مدیریت سایت شما را دارند. در اینگونه موارد، باید یک دسترسی موقت در مدیریت پرستاشاپ ایجاد کنید و پس از رفع مشکل، آنرا غیرفعال نمایید. همچنین اکثر پنلهای هاستینگ هم به شما امکان ساخت کارمند را میدهند. برای دسترسی به هاست خود نیز، بهتر است کارمند موقت ایجاد کنید تا از امنیت آتی سایت خود مطمئن باشید.

نکته2: هرگز به افراد و سایتهای غیرمطئن و تائید نشده، دسترسی (حتی موقت) به سایت خود را ندهید.

گام پنچم : از افزونه های رایگان بترسید

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

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

گام ششم : نمایش خطاها

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

گام هفتم : آدرس مدیریت

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

در نهایت امیدواریم با رعایت این نکات، امنیت بالایی را برای وب سایت و فروشگاه اینترنتی خود فرآهم کنید.

(5 رای)
4.8 5 1 5
  • mrok173
    1397-06-16

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

  • javad almasi
    1397-07-29

    بسیار خوب