
امنیت سایت
طراحی سایت و امنیت سایت
این یک. چیزی خودمونی بگم با ایرانی ها تا وقتی مشکلی برایمان پیش نیاد به دنبال آن نمی رویم تا وقتی دندان هایم درد نکند دکتر نمیرویم تا دندان ها را چک کند ولی در خارج کشور پیشگیری بهتر از درمان است ولی در ایران بر عکس
پس حداقل برای سایت خودمان امنیت را رعایت کنید امروز می خواهیم چند تکنیک را نام ببریم که می تواند امنیت سایت شما را بالا ببرد سعی کنید از طراحان سایتی که طراحی سایت ارزان انجام می دهند سرویس نگیرید
طراحی سایت و امنیت سایت
مراحل زیر را انجام دهید تا شما هم بتوانید امنیت سایت خود را بالا ببرید تا هکرها به سایت شما نفوذ نکنند
آپدیت کردن سایت
سعی کنید سایت خود را از لحاظ افزونه و امکاناتی که دارید آپدیت کنیم اگر از سیستم های مدیریت محتوا استفاده می کنید اگر نمی دانید سیستم های مدیریت محتوا چیست این مطلب را بخوانید سعی کنید همیشه آنها را به روز نگه دارید تا هکرها از آن باگ به سایت شما نفوذ نکنند
کنترل دسترسی برنامه ها
سعی کنید همه چیزهایی که برای شما از اول بوده است را عوض کنید مثل نام کاربری و پسوند پایگاه داده را عوض کنید محدود کردن ورود کاربران اگر کاربری سعی داشت به سایت شما وارد شود و چند بار این کار را کرد آن را بلاک کنید سایت روی اطلاعات اولیه را بارگذاری نکنید
به روز کردن نرم افزار طراحی سایت
سعی کنید با آخرین ورژن مدیریت محتوا کار کنید حتی اگر لازم باشد برای بروز رسانی پول پرداخت کنید چون اگر یک باگ و یک راه نفوذ در یک برنامه کشف شود همه هکرها از همین راه به سایت شما نفوذ می کنند پس سعی کنید با به روز رسانی برنامه امنیت طراحی سایت خود را بالا ببرید
امنیت شبکه سیستم خود
وقتی شما از سیستم خود در سایت خود لاگین می کنید اگر دسترسی شبکه به درستی تنظیم نشده باشد یک هکر می تواند از طریق شبکه به سیستم شما نفوذ کند پس سعی کنید هر چند وقت یکبار
رمز پنل مدیریتی خود را عوض کنید
یک نرم افزار اسکن فایل ها بر روی سیستم خود داشته باشید
نصب فایروال بر روی سایت
سعی کنید از ادمین سایت خود بخواهید بر روی سایت شما یک فایروال نصب کند تا از شر هکرها و اسپم ها و فایل های مخرب که باعث مشکلات امنیتی در سایت می شود راحت شوید تا امنیت شما در طراحی سایت بالاتر برود این کار انجام دهید حتی اگر بخواهید بابت نصب فایروال هزینه بدهید
نصب برنامه های امنیتی
در سایت خود از برنامه و افزونه های امنیتی استفاده کنید اگر از وردپرس یا جوملا استفاده می کنید حتما در وب به دنبال افزونه هایی برای امنیت سایت شما هست اگر چه بیشتر پولی هستن ولی ارزش دارن که امنیت سایت شما بالاتر برود اگر با وردپرس آشنایی کافی را ندارید حتما این مطلب را مطالعه کنید
مخفی کردن صفحه ادمین سایت
سعی کنید با تنظیمات و بستن دسترسی ها یا پسورد گذاشتن روی پوشه ادمین به راحتی هکر به قسمت ادمین سایت شما دسترسی پیدا نکند صفحه ادمین خود به آدرس دیگری انتقال دهید اگر مثلا wp-admin است که برای وردپرس هست آن را عوض کنید این آموزش می تواند به شما بیشتر کمک کند SEObook.com
آپلود کردن فایل ها
سعی کنید با تنظیمات و کدنویسی دسترسی کاربران به آپلود کردن فایل ها را بسته نگه دارید یا اینکه هر فایلی را مجاز نکنید تا در سایت شما آپلود شود یکی از این فایل های پسوند فایل های فشرده است .zip .rar
استفاده از SLL در طراحی سایت
استفاده از SLL در طراحی سایت
SLL یک پروتکل رمز نگاری هست برای کاربران سایت که با خیال راحت تر در سایت شما ثبت نام کنند برای همین بیشتر سایت ها از پروتکل SLL استفاده می کنند
امنیت فرم های طراحی سایت
سعی کنید در هنگام فرم پر کردن برای کاربر یک تکنیک استفاده کنید که سایت بفهمد یک آدم دارد سایت را پر می کند این مطلب را در مورد اصول طراحی فرم های سایت را مطالعه کنید نه یک ربات این گونه تکنیک ها زیاد هست کد کپچا گوگل ، من روبوت نیستم ،
گرفتن پک آپ از سایت
سعی کنید حداقل دو روزی یکبار از سایت خود یک پک آپ بگیرید تا در صورت لزوم از آن استفاده کنید و سایت خود را دوباره بازگردانید این مطلب را در مورد انتخاب هاست خوب را مطالعه کنید
کد نویسی سایت
سعی کنید در برنامه نویسی سایت خود امنیت را رعایت کنید و کدنویسی اصولی انجام دهید از قالب های وارز استفاده نکنید
راهکارهای موثر برای افزایش امنیت سایت وردپرس
و روزانه چندین هزار سایت وردپرسی راه اندازی میشوند. امنیت سایت وردپرس یکی از دغدغههای مالکان سایتها میباشد. درست است که وردپرس جوانب امنیتی را اعمال کرده است اما همچنان هکرها و رباتهایی هستند که بتوانند به سایت نفوذ کرده و در روند کاری آن اختلال ایجاد کنند. این مشکلات به دلیل نقطه ضعف سایت نیست بلکه به دلیل عدم مدیریت صحیح آن میباشد. طبق پیش بینیهای ارائه شده، در سال ۲۰۲۱ مردم دنیا بیش از ۶۸ بیلیون دلار برای امنیت سیستمها و کسب و کار خود هزینه خواهند کرد. در ادامه با راهکارهایی که به افزایش امنیت وردپرس کمک میکند و بیشتر آشنا میشویم.
چگونه امنیت وردپرس را بالا ببریم؟
اگر تا کنون سایت خود را نصب نکردهاید بهتر است از همین ابتدا جوانب امنیتی را اعمال کنید تا خیالتان راحت بماند. اگر هم سایتتان را تا کنون راه اندازی کردهاید، نگران نباشید، با راهکارهایی که در ادامه ارائه شده است میتوانید امنیت سایت وردپرس خود را تضمین کنید.
وردپرس خود را به صورت مداوم بروز رسانی کنید
بک آپ وردپرس
۱. وردپرس خود را به صورت مداوم بروز رسانی کنید
متأسفانه بعضی از سایتها به این موضوع توجه نمیکنند و با اینکه هر روز پیام بروز رسانی وردپرس را دریافت میکنند اما بی توجه از آن میگذرند. تیم وردپرس همواره در تلاش است که قابلیتهای جدید را اضافه و مشکلات قبلی را رفع کنند. زمانی که وردپرس آپدیت میشود، در اولین فرصت آن را بروز رسانی کنید تا باگهای امنیتی قبلی برطرف گردند.
۲. به صورت منظم از وردپرس بکآپ بگیرید
برای چندین میزبان این مشکل رخ داد که پلیس آلمان هاردهای سرورها را گرفته بود و همین امر منجر به محو شدن بسیاری از سایتها از صفحه اینترنت شد، سایتهایی که صاحبان آن در حال تلاش برای رشد کسب و کار خود بودند و در مقابل هیچ توضیحی هم برای مشتریان قابل توجیه نبود. یک سهل انگاری کوچک میتواند منجر به ضرر بزرگی شود. برای امنیت سایت وردپرس خود منتظر هیچ کس نباشید و جانب احتیاط را رعایت کنید، در فواصل منظم از سایت خود بکآپ بگیرید و خیال خود را از این مشکلات راحت کنید.
۳. رمز عبور خود را قویتر و سطح دسترسی تعریف کنید
اولین و سادهترین دیوار امنیت سایت وردپرس، رمز عبور آن است. به همان اندازه که رمز عبور سست برای شما راحت است، کشف و نفوذ آن برای هکران راحتتر است! در اخبار مربوط به اخبار فناوری، سالانه گزارشات زیادی مبنی بر هک شدن ایمیل کاربران ارائه میشود که دلیل آن رمز عبور سست و ساده بوده است. بنابراین هم رمز عبور ایمیل و سایت وردپرسی خود را قویتر کنید تا نفوذ هکرها به سایتتان بسته شود. با توجه به نقش کاربران در سایت، برای هر کدام سطح دسترسی تعریف کنید اینکه کدام مجاز به پاک کردن، ویرایش اطلاعات، رمز سایت و… هست یا نیست. رفتار کاربران خود را آنالیز کنید تا بدانید کدام یک فعالیت مشکوک دارند و از قبل از امنیت سایت وردپرس، محافظت کنید. یک نکته دیگر به امنیت سایت وردپرس کمک میکند و کمتر سایتی به آن توجه میکند این است که رمز عبور خود و کاربران را به صورت دورهای تغییر دهید. این موضوع برای سایتهای فروشگاهی ووکامرسی خیلی مفید است.
ابزار امنیت وردپرس
پلاگین امنیت وردپرس
ابزار امنیت وردپرس
اقدامات گفته شده در بالا، از سادهترین اقدامات برای تأمین امنیت سایت وردپرس است اما خودتان هم باید داخل سایت کارهایی انجام دهید:
۱. غیرفعال کردن دسترسی به Directory Browsing
Directory Browsing یکی از راههای نفوذ هکران به زیر ساخت سایت است و باید غیر فعال شود، امکان دارد هنگام راه اندازی سایت، این مورد غیر فعال نشده باشد. بدانید که اگر فردی به این قسمت دسترسی یابد میتواند فایلهای آن را سرقت کند و کل امنیت سایت وردپرس را به خطر اندازد. برای غیرفعال کردن این قسمت کارهای زیر را انجام دهید:
وارد هاست شوید.
در مسیر public_html فایل .htaccess را جستجو کنید.
در انتهای این فایل دستور Options-indexs را وارد و ذخیره کنید.
۲. غیرفعال کردن ویرایشگر پوسته و افزونه
وردپرس امکان ویرایش کردن قالب را فراهم نموده است و شما با مراجعه به ویرایشگر پوسته میتوانید تغییرات دلخواه را در قالب وارد نمایید. اما اگر شخصی به این قسمت راه یابد میتواند با جاسازی کدهای مخرب، سایت را به فنا بکشاند. برای پیشگیری از این اتفاق میتوانید ویرایشگر قالب و افزونهها را غیر فعال کنید:
در مسیر public_html فایل .wp-config.php را جستجو کنید.
در بخش define این فایل، کد زیر را وارد و ذخیره کنید.
// Disallow file edit
define( ‘DISALLOW_FILE_EDIT’, true );
برخی دایرکتوریها مانند قسمت رسانه که جای آپلود عکس، صوت و فیلم است، نیازی به اجرای کد php ندارند و بهتر است برای تامین امنیت سایت وردپرس، اجرای کد php را در آن غیر فعال کنید.
به مسیر public_html/wp-content/uploads بروید.
خودتان یک فایل با پسوند .htaccess و نام دلخواه، بسازید و کد زیر را در آن درج کنید:
۳. غیر فعال کردن فایل XML-PRC
یک امکان دیگر که ورد پرس فراهم نموده است، مدیریت از راه دور وردپرس است. با این قابلیت شما میتوانید از طریق ویندوز، اندروید یا سرویسهایی مانند iftt، از راه دور سایت خود را مدیریت کنید. اما هکرها معمولاً با استفاده از تابع system.multicall، میتوانند به صورت همزمان ۲۰ درخواست به سایت شما ارسال کنند و رمز عبور را پیدا کنند. برای غیر فعال کردن این فعالیت باید فایل XML-PRC را غیر فعال کنید.
به مسیر public_html/wp-content/themes بروید.
فایل php را پیدا کرده و دستور زیر را در آن درج کنید.
۳- add_filter(‘xmlrpc_enabled’, ‘__return_false’); این راهکارها، اقدامات اولیه برای تأمین امنیت سایت وردپرس است، اما برای فراهم نمودن امنیت کامل و پیشرفتهتر بهتر است از افزونههای امنیتی برای وردپرس بهره ببرید.
افزونه های امنیتی برای وردپرس
۸ افزونه وجود دارد که به امنیت سایت وردپرسی شما کمک شایانی میکند:
Sucuri Security
این افزونه یکی از معروفترین افزونههای امنیتی وردپرس میباشد. دانلود و نصب آن نیز رایگان است و تا کنون ۶۰۰ هزار نفر آن را دانلود و نصب کردهاند. کارکرد افزونه Sucuri Security به این صورت است که ترافیک سایت را از cloudProxy عبور میدهد تا هم بار سرور کاهش یابد و هم با اسکن ترافیک، از سایت در برابر ترافیک مخرب محافظت کند. اگر میخواهید تعداد دفعات اسکن افزایش یابد، باید نسخه پریمیوم آن را نصب کنید.
Wordfence Security
همیشه نام Wordfence Security، در بین افزونههای امنیتی میدرخشد. این افزونه تاکنون ۳ میلیون نصب داشته است. این افزونه با Sucuri Security تفاوت دارد، بر خلاف Sucuri Security، در نسخه رایگان افزونه Wordfence Security، قابلیت فایروال فعال است. همچنین با استفاده از این افزونه میتوانید روند ترافیک، نحوه و تعداد هکها را چک کرده و از آنها جلوگیری کنید. این افزونه خاصیت ضد اسپم دارد و سایت را در برابر اسپمهای سئو، محافظت میکند. در نسخه پریمیوم این افزونه امکان مشاهده امضا بدافزار، بلاک کردن IPهای کشور و لیست سیاه IP بلادرنگ، وجود دارد. ممکن است برایتان سوال پیش آید که منظور از لیست سیاه IP بلادرنگ این است که ترافیکهایی که از سمت IPهایی که اخیراً فعالیت بدافزاری داشتند، شناسایی و بلاک شود.
iThemes Security
نام قدیمی این افزونه، Better WP Security است. هم نسخه رایگان و هم نسخه پریمیوم دارد. و تاکنون ۱ میلیون نصب فعال داشته است. در نسخه رایگان این افزونه به شما ۳۰ راه حل برای برطرف کردن مشکلات امنیتی ارائه میهد. در نسخه رایگان این افزونه شما میتوانید کمربند سایت خود را در برابر حملاتی مانند بروت فرس محکمتر کنید تا هیچ کاربری بدون رمز عبور نتواند وارد سایت شود همچنین میتوانید دسترسی به پیشخوان وردپرس را زمانبندی کنید. در نسخه پریمیوم این افزونه، امکانات و قابلیتهای پیشرفتهتری تعبیه شده است، مانند: احراز هویت به صورت دو مرحلهای، بکآپ گیری از پایگاه داده و همچنین شناسایی کاربرهای مشکوک، تولید رمز عبور قوی، اسکن روزانه بدافزارها. این افزونه یکی از بهترین افزونههای تامین امنیت سیات وردپرس است.
All In One WP Security & Firewall
این افزونه کاملاً رایگان است و نسخه پریمیوم ندارد و نزدیک به ۹۰۰ هزار نفر آن را نصب و فعال کردهاند. یکی از مشکلات امنیت وردپرس، عدم کنترل ثبت نام و نظرات کاربران است. با نصب این افزونه، کد امنیتی به بخش نظرات افزوده میشود تا از ورود رباتهای اسپم جلوگیری شود. یکی دیگر از ویژگیهای بارز این افزونه این است که با تغییر پیشوند جدولهای دیتابیس یعنی “_WP”، از دستکاری و نفوذ هکرها جلوگیری میکند.
SecuPress
این افزونه از سال ۲۰۱۶ عرضه شد و موفق شده که تا کنون ۲۰ هزار نصب فعال داشته باشد و دو نسخه رایگان و پولی دارد. از مکانات و قابلیتهای این افزونه میتوان موارد زیر را برشمرد: تغییر دادن آدرس ورود به پیشخوان، تنظیمان امنیت ورود به وردپرس، مدیریت کردن دادههای حساس، جلوگیری از انتخاب نام کاربری و پسورد آسان و ساده، شناسایی افزونهها و قالبهای مشکوک و خطرناک، بکآپ گیری از پایگاه داده، احراز هویت دو مرحلهای، مجبور کردن کاربر باری ساخت پسورد قوی.
MalCare Security & Firewall
این افزونه تا کنون ۱۰ هزار نصب فعال داشته و برندهای معتبری مانند intel, Dolby, True HD آن را نصب کردهاند. این افوزنه ضعفهای افزونههایی مانند iThemes Security و Wordfence را پوشش میدهد و بدافزارهایی که این افزونهها قادر به شناسایی نیستند را شناسایی میکند. متخصصان زیادی این افزونه را پیشنهاد میدهند. مهمترین ویژگی بارز این افزونه، امکان شناسایی پیچیدهترین بدافزارهاست و در کمر از ۶۰ ثانیه آنها را پاکسازی میکند.
بیشترین نقش در امنیت وردپرس
برقراری امنیت وردپرس همواره یکی از چالش برانگیزترین و نگران کنندهترین موضوعات برای صاحبان وب سایتها میباشد. لازم به ذکر است که تمامی راهکاری گفته شده برای تأمین امنیت وردپس الزامی میباشند، شاید نصب آسان افزونههای وردپرسی برای شما راحت باشد اما این به معنای امنیت ۱۰۰ درصد نیست و باید تمامی راهکارهای امنیتی را اعمال کنید. خود شما و مدیریت شما، نقش اصلی را در امنیت وردپرس تضمین میکند.
منبع
https://www.signwebdesign.ir
هک چیست؟
واژه هک برای اولین بار به دوره دهه 60 میلادی باز می گردد. هک به معنای دستیابی به آن چیزی است که نمی توانید در حالت عادی آن را داشته باشید، مانند دسترسی غیر مجاز به یک شبکه کامپیوتری در حالی که ورود به آن امکان پذیر نیست، یا دارای پسورد است! به طور کلی هر زمان که سخنی از هک می شود، اشاره ای به کارهای غیرقانونی نیز دارد.
عموماً هدف از هک کردن کسی یا چیزی، همانند دزدی است اما به روش مدرن! هدف هکرها دزدیدن اطلاعات یا در بسیاری از موارد آسیب رساندن به سیستم است. اگر قصد دارید از هک شدن سیستم جلوگیری کنید، بایستی چند اقدام امنیتی در این باره انجام دهید که در ادامه مطلب آموزش هک با پایتون به آن ها اشاره خواهیم کرد.
توصیه های امنیتی جهت جلوگیری از هک شدن
همیشه سعی کنید بر روی سیستمهای کامپیوتری یا حساب کاربریهای خود در انواع شبکههای اجتماعی از پسورد قوی استفاده کنید، این مسئله باعث میشود تا هکر به راحتی نتواند به رمز عبور شما دسترسی داشته باشد. اگر پسورد ترکیبی از حروف کوچک و بزرگ انگلیسی، اعداد و کاراکترها انتخاب کنید، میلیونها سال طول میکشد تا یک پسورد تازه آن هم به صورت رمزنگاری شده پیدا شود. مورد بعدی این است که همیشه سیستم عامل خود را آپدیت کنید تا موارد امنیتی که به سیستم عامل اضافه خواهند شد دریافت کنید. همچنین استفاده از نرم افزارهای اورجینال جهت جلوگیری از ایجاد باگ در سیستم و درنهایت جلوگیری از هک شدن پیشنهاد میشود.
آموزش هک با پایتون
اگر این امکان را دارید که آنتی ویروس و فایروال بر روی سیستم عامل خود نصب کنید و به این موضوع فکر کردهاید، پیشنهاد میشود حتماً این کار را انجام دهید زیرا برای افزایش امنیت سیستم و جلوگیری از ایجاد باگ جهت دسترسی هکر به دادهها بسیار مفید است. سعی کنید بر روی لینکهای ناشناخته به هیچ وجه کلیک نکنید زیرا ممکن است با هدفهایی مانند نفوذ به سیستم یا انتقال ویروس ایجاد شده باشند.
بسیاری از افراد با دیدن لینکهایی با عناوینی مانند آموزش هک با پایتون یا حتی آموزش هک در 10 روز و غیره وسوسه میشوند و بر روی آن کلیک میکنند، سعی کنید از هیچ جایی جز گوگل و لینکهایی که به آنها اطمینان دارید سایتی باز نکنید! همچنین از انداختن فلش دیگران بر روی سیستم بدون اسکن و ویروس کشی جداً خودداری نمایید. اگر احساس میکنید بیشتر از این نیاز دارید در مورد روشهای مقابله با هک و همچنین انواع هکها یاد بگیرید، پیشنهاد میکنیم آموزش مرتبط را از فرادرس دریافت نمایید. بر روی لینک زیر کلیک کنید.
آموزش شناخت انواع هک و روش های مقابله با آن — کلیک کنید
انواع هکرها
هکرها ممکن است بر اساس نوع رفتارشان به دستههای مختلفی تقسیم شوند. همانطور که در ابتدای مطلب گفتیم، برخی از هکرها ممکن است به قصد دزدی و آسیب رساندن به اطلاعات و سیستم فعالیت کنند، این افراد هکرهای کلاه سیاه نامیده میشوند که عموماً کارهای غیرقانونی انجام میدهند. در مقابل این هکرها افرادی را داریم که به قصد تست نفوذ و افزایش امنیت سیستم اقدام به هک میکنند. فعالیت این هکرها کاملاً قانونی است و به هکرهای کلاه سفید مشهور هستند. برخی از افراد نیز صرفاً به دلیل خفن بودن این شغل علاقهمند به یادگیری هک هستند و میخواهند به این دلیل هک را یاد بگیرند. این افراد عموماً میخواهند هک را بلد باشند و قصد انجام فعالیت جدی در زمینه هک را ندارند. به این افراد نیز هکرهای کلاه صورتی گفته میشود.
انواع هکرها
آموزش هک با پایتون
پس از آن که در مورد انواع هکرها صحبت کردیم، حال نوبت آن است که یک هک ساده و اخلاقی به شما آموزش دهیم. دانستیم که هک کردن اگر قانونی نباشد ممکن است شما را با مشکلات مختلف روبرو کند، پس ما نیز اجازه این را نداریم هک غیر قانونی را آموزش دهیم، اما میتوان با استفاده از کتابخانههای آماده پایتون هکهای ساده و اخلاقی انجام داد. یکی از هکهایی که قصد داریم در مطلب آموزش هک با پایتون به شما آموزش دهیم، رمزگشایی پسوردهایی است که به صورت رمزنگاری شده در پایگاه داده ذخیره میشوند. اصولاً به این پسوردها هش شده گفته میشود. از جمله الگوریتمهایی که برای هشینگ مورد استفاده قرار میگیرد، تابع md5 است.
رمزنگاری MD5 چیست؟
این رمزنگاری روشی برای درهم سازی یک رشته است که در نهایت خروجی آن با طول 128 بیت در اختیار کاربر قرار داده می شود. معمولاً از این روش رمزنگاری برای کد کردن پسوردها جهت ذخیره سازی در پایگاه داده استفاده می شود. این الگوریتم به دلیل داشتن سرعت بالا همواره مورد استفاده قرار گرفته و همچنان نیز استفاده می شود.
نکته قابل توجه اینجاست، هر رشته با طول متفاوت که توسط این الگوریتم هش می شود، خروجی با طول یکسان خواهد داشت. این خروجی در مبنای هگزادسیمال یا همان مبنای 16 نمایش داده می شود. تصور کنید اگر پسوردهای شما به همان صورتی که آن را وارد می کنید در پایگاه داده ذخیره می شد، در این صورت همه می توانستند به این داده ها دسترسی پیدا کنند، اما با استفاده از این الگوریتم به راحتی می توان این داده های مهم را هش کرد تا هر فردی با یک نگاه نتواند به رمز عبور واقعی دسترسی پیدا کند.
رمزنگاری MD5 چیست؟
زمانی که یک پسورد با این تابع هش می شود، محتوای پسورد به صورت کاراکترهایی از اعداد و حروف انگلیسی نمایش داده می شود. این نوع پسوردها برای انسان خوانا نیستند و برای اینکه بتوان آن را به متن ساده تبدیل نمود یا به عبارتی رمزگشایی کرد، نیازمند یکسری تابع ها و دستورات پیچیده هستیم. اما با استفاده از پایتون به راحتی می توان این پسوردها را پیدا کرد. در ادامه می خواهیم آموزش هک با پایتون را به شما توضیح دهیم.
شروع برنامه نویسی آموزش هک با پایتون
هدف از آموزش این پست، صرفاً نمایش متن ساده شدهای که خودتان وارد کردهاید نیست! ما میخواهیم یک پسورد لیست درست کنیم تا تمامی پسوردهایی که فکر میکنیم ممکن است مورد استفاده قرار بگیرند، به آن اضافه کنیم. سپس با دستوراتی که در ادامه خواهیم نوشت، پسوردهای موجود در این لیست چک خواهند شد و در صورتی که پسورد مدنظر در فایل پسورد لیست وجود داشته باشد، رمز عبور با متن ساده شده نمایش داده خواهد شد. در واقع میخواهیم یک ابزار Hash Cracker با پایتون بسازیم.
برای شروع کار بایستی نرم افزار پایتون را روی سیستم خود نصب نمایید. اگر هنوز پایتون را ندارید میتوانید از سایت خود Python یا سایتهای ایرانی به صورت رایگان آن را دانلود و نصب نمایید. اکنون نوبت آن است که دستورات خود را در پایتون بنویسیم. یک پروژه جدید در پایتون ایجاد کنید و اولین دستور زیر را در آن وارد کنید.
import hashlib
دستور بالا نشان دهنده این است که ما می خواهیم از کتابخانه آماده Hashlib استفاده کنیم. چنانچه این کتابخانه را به پروژه اضافه نکنید، با ارور مواجه خواهید شد. این کتابخانه نیازی به نصب از طریق CMD ندارد!
در ادامه خواهیم داشت:
print("***PASSWORD CRACKER***")
pass_found = 0
input_hash = input("Enter the hashed password: ")
pass_doc = input("\nEnter passwords filename including path(root/home): ")
در دستورات بالا یک متغیر به نام pass_found تعریف کردیم که مقدار 0 به آن داده ایم. قصد داریم از این متغیر برای ذخیره داده 0 یا 1 به عنوان اینکه آیا پسورد کرک شده یا نه استفاده کنیم. چنانچه مقدار مدنظر 0 باشد به معنای این است که هنوز پسورد کرک نشده است.
دو متغیر input_hash و pass_doc نیز به منظور ذخیره ورودی هایی است که توسط کاربر دریافت خواهد شد. در پیغام اول از کاربر پسورد هش ده و در پیغام دوم آدرس یا نام پسورد لیستی که قرار است در ادامه بسازیم دریافت می شود. در ادامه آموزش هک با پایتون داریم:
try:
pass_file = open(pass_doc, 'r')
except:
print("Error:")
print(pass_doc, "is not found.\nPlease give the path of file correctly.")
quit()
در دستورات بالا با استفاده از open تلاش کردیم تا فایل پسورد لیستی که در بالا آدرس آن توسط کاربر دریافت شده است باز کنیم. این فرآیند توسط try … except انجام شده است تا بتوانیم در صورتی که فایل یافت نشد یک پیغام ارور نمایش دهیم و سپس برنامه را به کمک quit به پایان برسانیم. حال اگر این فرآیند با موفقیت انجام شود در ادامه خواهیم داشت:
for word in pass_file:
enc_word = word.encode('utf-8')
hash_word = hashlib.md5(enc_word.strip())
digest = hash_word.hexdigest()
if digest == input_hash:
print("Password found.\nThe password is:", word)
pass_found = 1
break
در این بخش به کمک حلقه for می خواهیم ببینیم آیا پسوردی که به صورت هش شده در برنامه توسط کاربر وارد شده است، در پسورد لیست وجود دارد یا خیر؟ قبل از هر چیزی متن را به فرمت utf-8 تبدیل کرده ایم؛ سپس یکی از پسوردهای موجود در پسورد لیست را به کمک تابع md5 هش کرده ایم، در نهایت این رمز با رمزی که در ابتدای برنامه توسط کاربر دریافت شده است مقایسه می شود. چنانچه پسوردها با هم مطابقت داشته باشند پیغامی مبنی بر اینکه رمز پیدا شده است نمایش داده می شود. در ادامه نیز پسورد به صورت متن ساده را مشاهده خواهید کرد. همچنین متغیر pass_found مقدار 1 را دریافت می کند و برنامه با دستور break به پایان می رسد.
مجموعه آموزش امنیت شبکه (Network Security) — کلیک کنید
حال در ادامه آموزش هک با پایتون چنانچه پسورد در فایل پسورد لیست یافت نشود، برای نمایش پیغام مناسب بدین صورت عمل خواهیم کرد.
if not pass_found:
print("Password is not found in the", pass_doc, "file")
print('\n')
در نهایت نیز برای زیبایی برنامه یک پیغام تشکر می نویسیم که در هر دو حالت بالا یعنی پیدا شدن یا نشدن پسورد برای کاربر نمایش داده می شود.
و تمام! شاید باورتان نشود اما این کل دستوراتی است که می توانید به راحتی از آن برای کرک کردن پسورد هش شده با تابع md5 استفاده کنید. همچنین می توانید با کتابخانه Hashlib برای دیگر تایع های هشینگ نیز دستور بنویسید.
حال اگر بخواهیم دستورات بالا را اجرا کنیم، بایستی یک پسورد لیست درست کنیم، شرطِ یافتنِ رمز این است که شما پسورد هش شده را در دست داشته باشید، و قصد دارید آن را به متن ساده تبدیل کنید، در واقع آن را رمزگشایی کنید. در ادامه یک فایل نوت پد باز کنید و چند پسورد مانند زیر در آن وارد کنید.
دقت داشته باشید که تمامی این پسوردها بایستی به همین ترتیب و زیر هم قرار گیرند. فایل را در دسکتاپ یا در مسیری مشخص ذخیره کنید. حال فرض می کنیم که معادل هش شده یکی از پسوردهای بالا را در دست داریم، برنامه را اجرا کنید تا با صفحه زیر روبرو شوید. می توانید مقادیر را طبق تصویر زیر در برنامه وارد کنید.
آموزش یک هک ساده اما کاربردی!
حال اگر دکمه enter را بزنید و همینطور پسورد در فایل پسورد لیست موجود باشد با پیغام زیر مواجه خواهید شد! توجه کنید که اگر فایل پسورد لیست را در مسیری غیر از دسکتاپ قرار دهید بایستی آدرس آن را به صورت کامل وارد نمایید؛ مانند تصویر زیر.
hack with python 2
و حال اگر پسورد وجود نداشته باشد خروجی به صورت زیر خواهد بود.
آموزش یک هک ساده اما کاربردی!
اگر به طور کلی برنامه نتواند فایل txt حاوی پسورد لیست را پیدا کند، با ارور زیر مواجه خواهید شد.
آموزش یک هک ساده اما کاربردی!
بدین ترتیب موفق شدید به کمک زبان برنامه نویسی پایتون یک هک ساده اما کاربردی انجام دهید. شاید پیش خود فکر کنید اگر رمزگشایی پسورد به این آسانی است، پس چرا این همه در مورد امنیت پسورد و مسائل پیرامون آن صحبت میشود؟ توجه داشته باشید که در این برنامه ما بر فرض مثال به پسورد رمزنگاری شده و همینطور پسورد اصلی دسترسی داشتیم، اگر یک هکر بخواهد پسورد را به دست آورد، بایستی یک پسورد لیست خیلی قوی بسازد تا قادر باشد پسوردهای سخت و پیچیده را رمزگشایی کند.
در حال حاضر پایتون بیشترین طرفدار را در بین زبانهای برنامه نویسی برای هک و مسائل امنیتی دارد، هک کردن به کمک پایتون نسبت به دیگر زبانهای برنامه نویسی آسانتر است زیرا پایتون دارای فایلهای کتابخانهای آمادهای است که به برنامه نویس کمک میکند تا از نوشتن دستورات اضافی خودداری کند!
اگر مطلب آموزش هک با پایتون برایتان مفید بود و علاقهمند به یادگیری زبان برنامه نویسی پایتون شدید، پیشنهاد میکنیم از مجموعه آموزشهای پایتون فرادرس استفاده نمایید. این آموزشها را میتوانید از طریق کلیک بر روی لینک زیر مشاهده کرده و در صورت نیاز اقدام به دریافت آن نمایید.
مجموعه آموزش برنامه نویسی پایتون (Python) — کلیک کنید
سخن آخر درمورد آموزش هک با پایتون
همانطور که در ابتدای مطلب اشاره کردیم، هک با پایتون مبحث بسیار گستردهای است که آموزش آن تنها در یک پست نمیگنجد. علاوه بر آن، برای آموزش دادن چنین محتواهایی طبیعتاً با محدودیت روبرو هستیم، پس امیدواریم که در مورد این موضوع ما را درک کرده باشید. امیدواریم که این مطلب برای شما مفید واقع شده باشد.
منبع
https://programstore.ir/
چرا امنیت وب سایت مهم است؟
امنیت وردپرس موضوعی است که از اهمیت زیادی برای هر صاحب وب سایتی برخوردار است. در حالی که نرم افزار اصلی وردپرس بسیار ایمن می باشند و توسط صدها نفر از توسعه دهندگان به طور منظم کنترل می شود، اما کارهای زیادی را می توان برای ایمن نگه داشتن سایت شما انجام داد. امنیت تنها به معنای رفع خطر کردن نمی باشد و همچنین در مورد کاهش خطر است. به عنوان یک مالک وب سایت، موارد زیادی وجود دارد که می توانید برای بهبود امنیت وردپرس خود انجام دهید. نکات امنیتی وردپرس که از ژاکت برای شما نقل می کنیم یک سری اقدامات است که می توانید برای محافظت از وب سایت خود در برابر آسیب پذیری های امنیتی انجام دهید.
یک سایت هک شده وردپرس می تواند آسیب جدی به درآمد و اعتبار کسب و کار شما وارد کند. هکرها می توانند اطلاعات کاربران، رمزهای عبور، نرم افزارهای مخرب را سرقت کنند و حتی می توانند بدافزار را به دستگاه کاربران شما وارد کنند. بدتر از همه، ممکن است شما تنها در ازای پرداخت باج به هکرها قادر باشید که به وب سایت خود دسترسی پیدا کنید.
خود هسته وردپرس بسیار امن است. وردپرس همچنین دارای هزاران افزونه و قالب است که می توانید بر روی وب سایت خود آن را نصب کنید. این افزونه ها و قالب ها توسط توسعه دهندگان شخص ثالث که مرتباً نیز آن را به روزرسانی می کنند، نگهداری می شود. این به روزرسانی های وردپرس برای امنیت و ثبات سایت وردپرسی شما بسیار مهم است. شما باید اطمینان حاصل کنید که هسته وردپرس، افزونه ها و موضوع وردپرس شما به روز باشد. پس لازم است افزونه ها و قالب های خود را از مرجع معتبری مثل zhaket تهیه کرده باشید از از اولین گام امنیت یعنی مخرب نبودن کدها اطمینان داشته باشید. سایر گام هایی که در امنیت وردپرس مهم است را به نقل از ژاکت در ادامه ذکر می کنیم:
WordPress Security: 17 tips for keeping your website secure [2020]
گام های ضروری در امنیت وردپرس
سایت وردپرس خود را به SSL / HTTPS منتقل کنید.
SSL یک پروتکلی است که انتقال داده را بین وب سایت شما و مرورگر کاربران رمزگذاری می کند. این رمزگذاری باعث می شود که سرقت اطلاعات را دشوار شود. هنگامی که SSL را فعال کردید، وب سایت شما به جای HTTP از HTTPS استفاده می کند، همچنین علامت قفل کنار آدرس وب سایت خود را در مرورگر مشاهده خواهید کرد. بنابراین امروزه استفاده از SSL برای همه وب سایت های وردپرس خود از همیشه آسان تر است. اکنون بسیاری از شرکت های میزبان گواهی SSL رایگان برای وب سایت وردپرس شما را ارائه می دهند .
نام کاربری پیش فرض “مدیر” را تغییر دهید.
در زمان های قدیم، نام کاربری مدیر پیش فرض وردپرس “admin” بود. از آنجا که نام های کاربری نیمی از اطلاعات ورود به سیستم را تشکیل می دهند، این حملات را برای هکرها آسان تر می کند. خوشبختانه، وردپرس از آن زمان تاکنون این مورد را تغییر داده است و اکنون شما را ملزم به انتخاب نام کاربری سفارشی در زمان نصب وردپرس می کند .با این حال، برخی از نصب کنندگان وردپرس با یک کلیک، هنوز نام کاربری مدیر پیش فرض را روی “admin” تنظیم می کنند.
امکان ویرایشگر پرونده ها را غیرفعال کنید.
وردپرس دارای یک ویرایشگر کد داخلی است که به شما امکان می دهد قالب ها و پرونده های پلاگین خود را از قسمت مدیر وردپرس ویرایش کنید. این ویژگی می تواند یک خطر امنیتی باشد به همین دلیل توصیه می کنیم آن را خاموش کنید و از آن استفاده نکنید.
در برخی از دایرکتوری های وردپرس امکان اجرای فایل PHP را غیرفعال کنید.
روش دیگر برای سخت کردن امنیت وردپرس شما غیرفعال کردن اجرای فایل PHP در فهرست هایی است که نیازی به آن نیست مانند / wp-content / uploads /.. در این پوشه لزومی ندارد فایل های دستوری php قابلیت اجرا داشته باشند.
تلاش های ورود به سیستم را محدود کنید.
به طور پیش فرض، وردپرس به کاربران اجازه می دهد تا هر زمان که بخواهند وارد سیستم شوند. این باعث می شود سایت وردپرسی شما در برابر حملات brute force آسیب پذیر شود. هکرها با تلاش برای ورود به سیستم با ترکیبات مختلف سعی در استفاده از رمز عبور دارند. با محدود کردن تلاش های ناموفق برای ورود به سیستم، کاربر واقعی می تواند به راحتی وارد شود. اگر از فایروال برنامه وب که قبلاً ذکر شد استفاده می کنید، به طور خودکار از آن مراقبت می شود.
رعایت امنیت وردپرس ضامن کسب و کار آنلاین شماست.
WordPress Security Statistics 2020 - WP Manage Ninja
تأیید اعتبار دو عامل را اضافه کنید.
روش احراز هویت دو عاملی، کاربران را با حفظ امنیت مجبور به ورود می کند. اولین مورد نام کاربری و رمز عبور است و مرحله دوم نیاز به احراز هویت با استفاده از دستگاه یا برنامه جداگانه دارد. اکثر وب سایت های آنلاین برتر مانند Google ، Facebook ، Twitter به شما امکان می دهند آن را برای حساب های خود فعال کنید. همچنین می توانید همان عملکرد را به سایت وردپرس خود اضافه کنید.
پیشوند پایگاه داده وردپرس را تغییر دهید.
به طور پیش فرض، وردپرس از wp_ به عنوان پیشوند تمام جداول موجود در پایگاه داده وردپرس شما استفاده می کند. اگر سایت وردپرس شما از پیشوند پایگاه داده پیش فرض استفاده می کند، حدس زدن نام جدول شما برای هکرها آسان تر است. به همین دلیل است که توصیه می کنیم آن را تغییر دهید. توجه: اگر این کار در سایت شما به درستی انجام نشود، می تواند سایت شما را خراب کند. فقط در صورت احساس راحتی با مهارت رمزگذاری، اقدام کنید.
نقش میزبانی وردپرس و هاست در امنیت یک سایت
سرویس میزبانی وردپرس شما مهم ترین نقش را در امنیت سایت وردپرسی شما دارد. یک ارائه دهنده میزبانی معتبراقدامات اضافی را برای محافظت از سرورهای خود در برابر تهدیدات معمول انجام می دهد. در اینجا نحوه کار یک شرکت میزبان وب خوب در پس زمینه برای محافظت از وب سایت ها و داده های شما ارائه شده است.
آن ها به طور مداوم شبکه خود را از نظر فعالیت مشکوک کنترل می کنند.
همه شرکت های میزبان خوب ابزارهایی برای جلوگیری از حملات گسترده DDOS در اختیار دارند.
آن ها نرم افزار سرور، نسخه های php و سخت افزار خود را به روز نگه می دارند تا از سوءاستفاده آسیب پذیری های امنیتی در نسخه قدیمی توسط هکرها جلوگیری کنند.
آن ها آماده استفاده از نقشه های بازیابی حوادث هستند که به آن ها این امکان را می دهد که از داده های شما در صورت تصادف بزرگ محافظت کنند.
در یک برنامه میزبانی مشترک، شما منابع سرور را با بسیاری از مشتریان دیگر به اشتراک می گذارید. این در صورتی که هکر بتواند از یک سایت همسایه برای حمله به وب سایت شما استفاده کند خطر آلودگی بین سایت را باز می کند.
یک نسخه ی پشتیبان گیری از وردپرس نصب کنید.
پشتیبان گیری اولین دفاع شما در برابر هرگونه حمله وردپرس است. به یاد داشته باشید، هیچ چیز 100٪ امن نیست. اگر وب سایت های دولتی قابل هک باشند، وب سایت های شما نیز می توانند مورد حمله قرار بگیرند. در صورت بروز اتفاقات بد، پشتیبان گیری به شما امکان می دهد که سرعت سایت وردپرس خود را بازیابی کنید.
نمایه سازی فهرست را غیرفعال کنید.
هکرها می توانند از فهرست دایرکتوری استفاده کنند تا بفهمند آیا پرونده ای با آسیب پذیری های شناخته شده دارید یا خیر، بنابراین آن ها می توانند با استفاده از این پرونده ها به سایت شما دسترسی پیدا کنند. افراد دیگر می توانند از فهرست دایرکتوری برای جستجوی پرونده ها و فایل های شما، کپی کردن تصاویر، یافتن ساختار دایرکتوری و سایر اطلاعات استفاده کنند. به همین دلیل توصیه می شود فهرست بندی ها را خاموش کنید.
XML-RPC را در وردپرس غیرفعال کنید.
XML-RPC به طور پیش فرض در وردپرس 3.5 فعال شده است زیرا به شما کمک می کند سایت وردپرس خود را با وب و برنامه های تلفن همراه متصل کنید. به دلیل ماهیت قدرتمند خود، XML-RPC می تواند حملات brute-force را به میزان قابل توجهی تقویت کند. به عنوان مثال، به طور معمول اگر یک هکر بخواهد 500 گذرواژه مختلف را در وب سایت شما امتحان کند، مجبور است 500 تلاش ورود به سیستم جداگانه انجام دهد که توسط پلاگین logdown lockdown گیر و مسدود می شود.
اما با XML-RPC ، یک هکر می تواند با استفاده از تابع system.multicall هزاران رمز عبور را با 20 یا 50 درخواست درخواست کند. به همین دلیل است که اگر از XML-RPC استفاده نمی کنید، توصیه می کنیم آن را غیرفعال کنید.
سه روش مختلف برای غیرفعال کردن XML-RPC در وردپرس وجود دارد که بهترین روش htaccess است زیرا کمترین میزان مصرف منابع را دارد.
سوالات امنیتی را به صفحه ورود به وردپرس اضافه کنید.
افزودن سوالات امنیتی به صفحه ورود به وردپرس دسترسی غیر مجاز را برای افراد دشوارتر می کند. با نصب افزونه WP Security Questions می توانید سوالات امنیتی را اضافه کنید. پس از فعال سازی، برای پیکربندی تنظیمات افزونه باید به صفحه تنظیمات »سوالات امنیتی بروید.
اسکن وردپرس برای بدافزارها و آسیب پذیری ها
اگر یک افزونه امنیتی وردپرس نصب کرده باشید، آن پلاگین ها به طور منظم سایت را از نظر بدافزار و نشانه های نقض امنیت بررسی می کنند. با این حال، اگر یک افت ناگهانی در بازدید از وب سایت یا رتبه بندی جستجو مشاهده کردید، ممکن است بخواهید به صورت دستی سایت خود را اسکن کنید. می توانید از افزونه امنیتی وردپرس خود استفاده کنید.
منبع
https://www.hamyarit
حملات XSS چیست؟ یکی از تهدیدهای سایبری به وبسایتها یا اپلیکیشنها، حملات XSS میباشد. XSS خلاصه عبارت Cross-Site Scripting است به معنای اسکریپتنویسی متقابل.
در دنیای امروز برنامههای کاربردی تحت وب بسیار محبوب هستند. از آنجا که تقریبا تمامی کاربران به شبکه اینترنت متصل هستند و به وب دسترسی دارند، پیدا کردن مشتری و کاربر برای اپلیکیشنها در وب، بسیار آسانتر است.
طبق آمار منتشر شده در BroadbandSearch در سال 2021 تقریبا 4.93 میلیارد نفر در سراسر جهان به اینترنت متصل هستند که این عدد 63.2% از جمعیت کل را تشکیل میدهد. آمار فوق مهر تایید محکمی بر اهمیت توسعه برنامههای تحت وب در صنعت فناوری اطلاعات و ارتباطات میباشد.
از سوی دیگر این تکنولوژی محبوب، توجه عناصر مخرب فراوانی را نیز به خود جلب میکند. حملات امنیتی برنامههای تحت وب مکرراٌ تکرار میشوند. حملات تحت وب بالغ بر 128 گروه اصلی میباشند، که هر گروه به چندین زیرگروه دستهبندی میگردند.
جالب است بدانید که این عناصر مخرب از دو طریق موجب اخلال در روند سرویسدهی و خدمترسانی میگردند؛ در شیوه اول با آسیب رساندن به وب سایت پذیرنده، موجبات اختلال را فراهم میآورند و در شیوه دوم کاربرانِ برنامههای تحت وب را مورد هدف قرار میدهند.
در این مقاله به جزییات حملات XSS که از طریق تزریق کد (code injection) عمل میکند، میپردازیم و به سوالات زیر پاسخ میدهیم:
هدف از XSS Attacks چیست؟
انواع مختلف XSS Attacks کدام است؟
چگونه میتوان از سایتها و اپلیکیشنها در مقابل XSS Attacks جلوگیری کرد؟
حمله XSS چیست؟
حمله اسکریپتنویسی متقابل (XSS) یک نوع رایج از حمله تزریق کد (code injection) است که برنامههای تحت وب را با تشخیص آسیبپذیری آنها و تزریق کد مخرب، هدف قرار میدهد.
در این حمله، برنامههای تحت وب تحت تأثیر مستقیم قرار نمیگیرند و در عوض، کاربرانی که با چنین سایتها یا برنامههایی ارتباط برقرار میکنند، هدف بالقوه هستند.
حملات XSS زمانی رخ میدهد که یک هکر با استفاده از سبکِ اسکریپت سمت مرورگر، یک کد مخرب را از طریق یک برنامه تحت وب برای قربانی ارسال میکند. مهاجمان از آسیب پذیری برنامههای تحت وب، که باعث ایجاد حمله موفق میشوند، استفاده میکنند.
در اینجا توجه شما را به یک مثال جلب مینمایم؛
تصور کنید فردی پشت کامپیوتر نشسته است. صفحه نمایش یک File manager ، Text editor ، Spreadsheet و Music player را در گوشه سمت راست پایین نشان میدهد.
تا اینجا همه چیز عادی و آشنا است. اما چیزی هست که در این تصویر دیده نمیشود، یک مرورگر اینترنت با دهها Tab که به طور همزمان باز شدهاند!!!
این Tabها پر از عناوین جالب، فیلمهای خنده دار، تبلیغات کالاهای ورزشی، فروشگاههای آنلاین و یک سایت پرداخت با رسید پرداخت شده برای یک بلیط سریع هستند. همه این سایتها یک ویژگی مشترک دارند: بدون جاوا اسکریپت به سختی امکان پذیر خواهند بود.
سپس یک کلیک ساده روی بنر تبلیغاتی صفحه دیگری را فعال میکند. این صفحه حاوی اسکریپتی است که به یک سایت بانکی آنلاین متصل میشود و بی سر و صدا پول را از حساب کاربر به کارت مهاجم منتقل میکند.
خوشبختانه امروزه مرورگرها به لطف SOP (Same-Origin Policy) این امکان را حذف میکنند. SOP تضمین میکند که اسکریپتهای اجرا شده در یک صفحه وب به دادههای اشتباه دسترسی ندارند.
اگر اسکریپتها از دامنه دیگری بارگیری شده باشند، مرورگر نمیتواند آنها را اجرا کند. اما آیا داستان همینجا به پایان میرسد؟!
اگر چنین بود که دیگر این مقاله وجود نداشت. مجرمان سایبری از روشهای مختلفی برای دور زدن SOP و سوء استفاده از آسیب پذیریهای برنامه استفاده میکنند و در صورت موفقیت، باعث میشوند مرورگر کاربر، یک اسکریپت دلخواه را در یک صفحه مشخص اجرا کند.
پایه ریزی یک حمله برای آلوده کردن یک وبسایت به چه طریق انجام میشود؟
قرار است SOP به اسکریپتها تنها زمانی اجازه دهد، که بارگیری اسکریپت از همان دامنه صفحه ای که کاربر در حال مشاهده آن است باشد و در حقیقت، مهاجمان دسترسی مستقیم به سرورِ مسئول صفحه ی نمایش داده شده توسط مرورگر، ندارند.
مهاجمان چگونه این کار را انجام میدهند؟ آسیب پذیریهای برنامه میتواند با استفاده از درج قطعات و کدهای مخرب در محتوای صفحه به مهاجمان کمک کند.
به عنوان مثال ، یک موتور جستجوی معمولی هنگام نمایش نتایج جستجو، درخواست کاربر را تکرار میکند. اگر کاربر سعی کند رشته “
” را پیدا کند، آیا محتویات صفحه نتایج جستجو منجر به اجرای این اسکریپت میشود و آیا کادر محاورهای با پیام “1” ظاهر میشود؟
این بستگی به این دارد که توسعه دهندگان برنامه وب چگونه ورودی کاربر را تأیید کرده و آن را به یک قالب امن تبدیل کنند.
مشکل اصلی در این است که کاربران طیف گستردهای از نسخههای مرورگر را اجرا میکنند، از آخرین پیش آلفا تا نسخههایی که دیگر پشتیبانی نمیشوند. هر مرورگر صفحات وب را به شیوه ای متفاوت مدیریت میکند.
در برخی موارد، حملات XSS میتواند زمانی موفقیت آمیز باشد که ورودیها به اندازه کافی فیلتر نشده باشند. بنابراین اولین قدم در حمله اسکریپتنویسی متقابل (XSS) تعیین نحوه جاسازی دادههای کاربر در یک صفحه وب است.
حملات اسکریپت نویسی متقابل (XSS) - ستاک فناوری ویرا
پایه ریزی یک حمله XSS برای آلوده کردن یک وبسایت
انواع حمله XSS
حملات اسکریپتنویسی متقابل (XSS) بر سه نوع هستند:
1-XSS ذخیره شده
XSS ذخیره شده مخربترین آسیب پذیری است. این حمله زمانی رخ میدهد که بار اطلاعات مخرب ارائه شده توسط مهاجم در سرور ذخیره شود. این محموله دائماً در معرض صفحه وب قرار میگیرد و هنگامی که کاربر عملیات مرور معمولی را انجام میدهد فعال میشود.
2- XSS منعکس شده
این آسیب پذیری متداول اسکریپت نویسی زمانی ایجاد میشود که دادههای ارائه شده توسط کاربران، معمولاً از طریق پارامترهای درخواست HTTP (به عنوان مثال؛ ارسال فرم) در صفحه بدون فیلتر یا ذخیره مناسب، نمایش داده شود.
3- XSS بر اساس DOM (Document Object Model)
حملات XSS بر اساس DOM یک نوع آسیبپذیری اسکریپتنویسی بین سایتها است که هنگامی رخ میدهد که جاوا اسکریپت دادهها را از منبع کنترل شده مهاجم دریافت کرده و برای اصلاح محیط DOM ارسال میکند. این باعث میشود مرورگر قربانی به طور غیر منتظره اجرا شود.
پیشگیری از حملات XSS
برنامههای کاربردی از نظر پیچیدگی اسکریپتنویسی متقابل میتوانند چالش برانگیز باشند. بنابراین، ایمنسازی آنها در برابر حملات اسکریپتنویسی متقابل (XSS) دشوار است. اما با اقدامات پیشگیرانه مناسب، میتوانید برنامه وب خود را از این حملات محافظت کنید.
– باید ورودی دریافت شده از سمت کاربر را فیلتر کنید.
– در خروجی، دادههای خروجی را کدگذاری کنید تا با پیادهسازی ترکیبی از کدگذاری HTML ، URL ، جاوا اسکریپت و CSS ، آنها را از فعالیت بازدارید.
– با استفاده از ابزارهای اسکنر آسیب پذیری وب، میتوانید برنامه وب خود را برای آسیبپذیریهای احتمالی XSS اسکن کنید.
– پیادهسازی header مناسب و مسدود کردن XSS در پاسخهای HTTP که انتظار نمیرود شامل HTML یا JavaScript باشد و مطمئن شوید که مرورگرها پاسخ مورد نظر را اجرا میکنند.
– همچنین میتوانید سیاست امنیت محتوا (CSP: Content Security Policy) را برای مهار تأثیر مخرب هر گونه آسیبپذیری دیگر XSS پیادهسازی کنید.
منبع
https://www.setakit.com/
این روز ها با افزایش وب سایت ها و کاربران اینترنت ، امنیت وب سایت روز به روز احمیت بیشتر می گیرد و برای اینکه این مقوله امنیت وب سایت از خاطر طراحان وب سایت فراموش نشود شاید هر روز ده ها مقاله مختلف نوشته و منتشر میابد اما واقع مشکل کجاست
شاید بشه از مهم ترین مقوله های امنیت به مورد زیر اشاره کرد
- استفاده از سیستم تشخیص هویت
- تنظیم CustomErrors
- Debug در سیستم های تحت توسعه دات نت
- لاگ رویداد ها و مدیریت خطاها
- تنظیمات دیتا بیس
- SQL Injection
- xss
- FileUpload
- اعتبار سنجی ViewState
- رمز نگاری اطلاعات (Encryption)
- هش کردن اطلاعات مهم (Hashing)
- رمزکردن متن های اتصال
- انتی ربات ها
و شاید صدها موارد ریز و درشت دیگر که می توانه شرایط هک شدن سایت را برای
نفوذ گر فراهم بیاره اما در این میان با برسی بیشتر سایت های هک شده شاید
یک مورد دیگر هم جلب توجه می کنه و ان هم بیشتر سایت ها از cms های اماده
استفاده می کنند و متاسفانه از نسخه های قدیمی بله درسته جوملا ، وردپرس و
... از جمله این سامانه های مدیریت محتوا هستند که به دلیل سورس باز بودن
این سامانه ها همه نفوذگر ها با برسی این سورس ها شاید صدها به خصوص در
نسخه های قدیمی راه برای نفوذ بی دردسر و با هزینه کم پیدا می کنند حالا
این سوال پیش میاد که ایا رایگان بودن این مدیریت محتوا می ارزند به اندازه
امنیت پایدار وب سایت های طراحی اختصاصی ان ؟!؟!
وحال هک شدن بیش از 500 سایت ایرانی در یک روز توسط تیم TeaM System Dz
با یک مرورکوچک می توان پی برد که این سایتها همگی ازمدیریت محتوای CMS اماده استفاده میکنند و بدون توجه به باگهای مدیریت محتوا همچون جوملا و وردپرس و عدم بروزرسانی به هنگام این سامانه های مدیریت محتوا خودرا اماه هک شدن توسط نفوذگر ها قرار میدهند