۷ راه مرسوم برای به خطر انداختن وبسایت
بلند شدن از خواب و ناپدید شدن وبسایتتان به نظر کمی زشت میآید، حتی فکر کردن در رابطه با آن جالب نیست. بلند شدن از خواب و دیدن اینکه اطلاعات کاربران و اطلاعات مربوط به کارتهای اعتباریشان توسط شخصی دیگر دزدیده شده است یک کابوس به حساب می آید و بسیار وحشتناک است.
برای دارندگان وبسایت و افراد دیگری که در چنین مواقعی واقعا نمیدانند چه کاری انجام دهند این مسئله بسیار سختتر و دشوارتر است. اما خبر خوب اینجاست که اگر شما یک وبسایت ایستا دارید و روی یک هاست خوب میزبانی میشود، پس خیالتان تخت باشد به این دلیل که در این شرایط تا حدی در امنیت قرار دارید.
اما وقتی سیستم شما پیچیدهتر میشود و مواردی که نیاز دارید بیشتر میشوند، مشکلات و مسائل امنیتی بیشتری در وبسایت شکل میگیرد. این بدان معناست که باید هوشیارتر از همیشه باشید و بیشتر برای امن کردن آن کار کنید تا آن را ایمن نگه دارید. با این وجود بسیاری از اوقات پیشبینی اینکه قرار است مورد حمله قرار گیریم مشکل است، اما در هر حال باید همواره آماده بود و وبسایت را ایمن نگه داشت. تعدادی اشتباهات و خطاهای احتمالی در وبسایتها وجود دارند که ممکن است در آینده به تهدیدات بسیار بزرگی تبدیل شوند، برای آنکه آنها را فراموش نکنیم، نیاز است که به خوبی آنها را بشناسیم. در این مطلب قصد داریم تا ۷ راه مرسوم برای به خطر انداختن وبسایت را به شما بگوییم.
۱. مهندسی اجتماعی
از هر مهندس و متخصص امنیتی در هر زمینهای سوال بپرسید میگوید که بسیاری از اوقات دلیل اصلی شکستها نرم افزاری یا سختافزاری نیستند، بلکه میل و تمایل شدید کاربران برای انجام کارهای غیر عادی در وبسایت است. کارهای غیر عادی و نادرستی مانند آنکه رمزعبور و اطلاعات وارد شدن به وبسایت را در یک جا فیزیکی بنویسد و یا اینکه آن را در کافینت وارد کند و بعدا حذف کردن آن از خاطرش برود.
اینکه هکرها قبل از انجام هرگونه عملیاتی شروع به جمعآوری اطلاعات از سادهترین راههای ممکن میکنند موضوع بسیار واضحی است، اگر هکرها از طریق چند تماس تلفنی یا چند کار ساده به اطلاعات دسترسی پیدا کنند دیگر نیازی نخواهند داشت که ساعتها و روزها برای پیدا کردن آنها پشت سیستم بمانند و کارها را انجام دهند. پس قبل از اینکه مطمئن شوید که وضعیت سرور و… امن است از این مطمئن شوید، افرادی که استخدام کردهاید با امنیت کامل در وبسایت حاضر میشوند و پروسه امنیت شرکت را دنبال میکنند.
۲. گم کردن پچهای امنیتی
خواه باور کنید یا نه این موضوع هنوز یکی از موارد بسیار بزرگ در محیطهای شرکتی به حساب میآید. بروزرسانی کردن تعداد زیادی از کامپیوترها در یک زمان موضوع بزرگ و مهمی است. برخی اوقات ممکن است بروزرسانیهای نرم افزاری توسط مدیر سیستم به تعویق انداخته شود، البته این موضوع نیز میتواند دلایل مختلفی داشته باشد.
برخی اوقات دلایل بسیار متنوعی پیش میآید که باعث میشود در واحد IT یک سازمان، پچها و آپدیتها به درستی نصب نشوند و سیستمها آسیبپذیر بمانند. برای وبسایت ها این موضوع البته بسیار در حد کوچکتری اتفاق میافتد. برای مثال در یک وبسایت وردپرسی تنها چیزی که نیاز دارید بروزرسانی نسخه وردپرس و افزونهها است و لاغیر.
۳. از کدهای شخصثالث مطمئن شوید
(منظور از کدهای شخصثالث، کدهایی است که از بیرون پروژه اصلی به پروژه آورده میشود). برنامهنویسان نسل درخشانی هستند اما در همین جامعه نیز افرادی پیدا میشوند که نسبت به دیگر افراد حرفهای تر هستند. البته باید این موضوع را هم دانست که حتی بهترین افراد و بهترین توسعهدهندگان نیز دچار مشکل میشوند و کدهایشان ممکن است حاوی باگ باشد. بسیاری از برنامهنویسان پروژههایشان را با ایجاد پلاگین و افزونه برای نرم افزارهای دیگر ایجاد میکنند، برای مثال پلاگین نویسی در سیستمهای مدیریت محتوا مختلف.
در ابتدای این بحث گفتم که هرچقدر یک سیستم پیشرفتهتر و پیچیدهتر باشد ممکن است مشکلات امنیتی بیشتری نیز داشته باشد. خب در یک سیستم مدیریت محتوا نیز افزونه بیشتر یعنی پیچیدهگی بیشتر. همواره مطمئن شوید، موارد اضافی که به یک سیستم یا پلتفرم اضافه میکنید معتبر و بدون مشکل امنیتی باشند همراه با آن، همواره بروزرسانیها را دنبال کنید و نسخههای جدید را پیادهسازی کنید.
۴. سیاستهای امنیتی با کاربران بد
در این مثال منظور از سیاستهای امنیتی این است که کاربران چگونه به صورتی امن به حسابشان مراجعه میکنند. سیاستهای یک وبسایت برای ورود مواردی مانند داشتن پرسشنامه برای ورود، استفاده از یک رمزعبور قدرتمند، احرازهویت دوگانه و یا حتی موارد امنیتی فیزیکی و کدهایی که روی فلش قرار میگیرد، است. تایید از طریق ایمیل یکی از راههای معمول و مرسوم در این حوضه است و به سادگی میتواند این سیاستهای امنیتی را مدیریت کند.
اگر هیچ اقدام شناسایی در وبسایت نداشته باشید مطمئن در آینده وبسایت تان با فجایع بسیار بزرگی روبرو میشود.
۵. حملات تزریق یا INJECTION
این مورد با عنوان SQLi یا حملات SQL Injection نیز شناخته میشود. به صورت کلی معمولا افرادی که وارد وبسایت شما میشوند دنبال فرمها میگردند، فرم ثبتنام، فرم تماس باما، فرم نظرات و موارد بسیار دیگر، بعد از ارسال این فرمها، اطلاعات ورودی به صورت مستقیم در پایگاههای داده SQL قرار میگیرد.
هکرها در این تکنیک در قسمتهای مربوط به ورودی وبسایت شما، برخی دستورات کلی از SQL را به این امید که از طریق آن اطلاعاتی را از بانک اطلاعاتی استخراج کنند، قرار میدهند. در صورتی که ورودیهای شما درست و اصولی نباشد، این کار به خوبی انجام میشود.
۶. فاش شدن دادهها
بسته به اینکه چگونه موردی برنامهنویسی شده است، دادهها ممکن است در آن دزدیده یا فاش شوند. URLها میتوانند قسمت مهمی باشند و اطلاعات مهمی از کاربر را در خود ذخیره کنند. برای مثال کاربری از طریق گوگل وبسایت شما را جستجو میکند، اگر پوشهای از فایل شما که حاوی اطلاعات مهمی باشد را به درستی روی سرور قرار ندهید، گوگل آنها را به عنوان اطلاعات عمومی ایندکس میکند و یا اینکه کاربران میتوانند به سادگی با یک منطق بسیار ساده دایرکتوریها، به آن اطلاعات دسترسی پیدا کنند. اگر فردی بتواند به اطلاعات پیکربندی وبسایت شما دسترسی پیدا کند، اینگونه فرض کنید که وی وارد وبسایت شما نیز شده است.
البته این موضوع همیشه مربوط به برنامهنویسی ضعیف نیست. برخی اوقات ممکن است تنها به این دلیل که مجوزهای درست را روی پوشهها قرار ندادهاید این اتفاقات بیافتد.
۷. کلیک دزدی
کلیک دزدی از دو طریق اتفاق میافتد: فردی یک وبسایت را همراه با محتوایی که بیگناه و سالم به نظر میرسند درست میکند. اما وقتی در بخشی از وبسایت کلیک میکنید کار ناخواستهای که به شما هیچ ربطی ندارد اتفاق میافتد، برای مثال لینکی در فیسبوک باز میشود و یا اینکه شما را به جایی میبرد که هیچ الزامی به رفتن نیست.
راه دومی این است که یک فرد به وبسایت شما کدهایی را تزریق میکند که باعث میشود کلیکهای وبسایت شما دزدیده شوند و همان نتیجه راه اولی تکرار شود. این موضوع میتواند بسیار وضع بدتری نیز پیدا کند. با این حالت که وقتی کلیک انجام میشود به وبسایت کاملا مشابه وبسایت شما انتقال مییابد و کاربر در آنجا اطلاعات مهم خود را وارد میکند، اینها مثالهای بسیار مرسومی در بین کلیک دزدها است.
در پایان
حالتهای مختلفی بوجود می آید که در آنها ما به دلایل مختلف (نداشتن زمان یا تخصص) نمیتوانیم آنها را به درستی درک کنیم. برای این موارد یک برنامهریزی داشته باشید و با آنها شروع خوبی را تجربه کنید، البته به یاد بسپارید که این تنها یک شروع است.
میخواهید شروع کنید و بیشتر اطلاعات کسب کنید؟ وبسایتتان را ایجاد کنید و شروع به جستجو کردن کنید.
- ۹۷/۰۱/۱۴
باشه XD