بررسی امنیت وب اپلیکیشن با استفاده از ابزار تست Selenium

ابزار تست Selenium

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

بررسی امنیت وب اپلیکیشن با استفاده از ابزار تست Selenium

بررسی امنیت وب اپلیکیشن با استفاده از ابزار تست Selenium

به صورت کلی برای تست عملکرد (functional test) دو روش جعبه سفید (whitebox) و جعبه سیاه (blackbox) وجود دارد. در حالت جعبه سفید، خود برنامه نویس یک روال تست را در قالب unit test برای تک تک کلاس ها و توابع برنامه می نویسد و کد را تست می کند ولی در حالت جعبه سیاه ما دیگر کاری با ساختار داخلی کد نداریم و فقط ورودی لازم را به سیستم می دهیم و انتظار داریم که سیستم خروجی درستی به ما بدهد.

روش های قدرتمند بسیاری برای پیدا کردن مشکلات امنیتی سایتها با false positives / مثبت کاذب کمتر، وجود دارد.

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

 

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

 بررسی امنیت وب اپلیکیشن با استفاده از ابزار تست Selenium

در یک بررسی تعداد زیادی از مشکلات امنیتی کاربردی(usability) وجود داشت که اغلب به عنوان مسائل با اولویت کم شناخته می شدند. این‌ها مشکلات بسیار ساده ای بودند که با جایگزینی تگ (خط افقی)<hr> در فیلد نام کاربر ایجاد می شد؛

بهترین دورکاری کسب و کار با مرواهاست

در‌واقع در نتیجه سایت به جای نام کاربری یک خط افقی را می بیند. از دیدگاه QA، نگرانی بزرگ نبود، و بنظر مشکل حادی نیست اما همین موردکوچک می‌تواند باعث هک شدن از طریق cross-site scripting (XSS) شود.

جهت این بررسی براحتی با عبارت جادویی <script> alert (1) </ script> می‌توان مشکلات امنیتی را تاحدودی پیدا نمود. در صورتی که با وارد نمودن این عبارت در کادرهای مربوط به فرم مانند نام و نام خانوادگی و… در فرم‌های نظرسنجی پنجره کوچک pop-up ظاهر شود، آنها اشکالات امنیتی هستند.

Gartner Magic روش های منحصر به فرد و دقیقی برای آزمایش های موجود برای اهداف هک پیدا کرده است. در ادامه نحوه انجام این کار توضیح داده می شود.

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

به عنوان مثال، فقط 10 سوئیچ، بیش از 210 ترکیب ممکن را برای تست ایجاد می کنند، که بدین معنی است که برای بررسی کامل، شما نیاز به 1024 تست دارید! خوشبختانه، اکثر مسئولین می دانند که تعدد تست ها ایده آل نیست.

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

SSL چیست و چرا استفاده از آن مهم است + معرفی انواع آن

مسئولین امنیت همچنین می‌توانند از الگوریتم های هوشمندانه ای مانند PairWise برای بررسی عمیق و گستردگی باورنکردنی یک برنامه استفاده کنند.

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

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

XSS یک مشکل امنیتی متداول برای برنامه های وب است و بصورت دائمی در ده مورد اول لیست OWASP (بزرگترین اجتماع آزاد آنلاین امنیت اپلیکیشن‌های حت وب)وجود دارد.

در اين حملات هدف اصلي هكرها، كاربراني هستند كه به سايت شما مراجعه كرده اند. در حقيقت هكرها در اين نوع از حمله اطلاعات كاربران يك سايت را بدون اينكه خودشان آگاهي داشته باشند، به سرقت مي برند.

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

هکرها می توانند از این طریق کوکی(cookies) های قربانیان را سرقت نموده و اطلاعات مفیدی نظیر پسورد ها و.. را پیدا کندو یا با انجام اقدامات دیگر در مرورگر قربانیان از اطلاعات آن‌ها سواستفاده شود.

با استفاده از Selenium شما می توانید متداول ترین رشته‌(String)های مورد استفاده در OWASP، را توسط تولیدکننده اتوماتیک رشته (string generato) به کد Selenium اضافه کنید که مقدار زیادی از رشته‌های مخرب payloads را ایجاد کند.

 

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

فروش ویژه گواهینامه SSL

بنابراین، به جای آن می توانید از console.error() برای ارسال یک شماره منحصر به فرد در قسمت logs مرورگر استفاده کنید. سپس قسمت لاگ مرورگر را از Selenium انتخاب کنید تا ببینید آیا شماره منحصر به فرد نشان داده شده است یا خیر، در صورت نمایش شماره موردنظر، نشان می دهد که آسیب پذیری XSS وجود دارد.

اگر علاقه مند به مطلب فوق هستید میتوانید ادامه این مقاله آموزشی را در بلاگ های زیر مطالعه نمایید :

معرفی بهترین تکنیک های سئو در سال۲۰۲۲ – قسمت دوم

 

معرفی بهترین تکنیک های سئو در سال ۲۰۲۲ – قسمت سوم

 

معرفی بهترین تکنیک های سئو در سال ۲۰۲۲ – قسمت چهارم

 

معرفی بهترین تکنیک های سئو در سال ۲۰۲۲– قسمت پنجم

فیس بوک
توییتر
لینکدین
تامبلر
پین ترست
رددیت
ایمیل

جدیدترین مطالب

عضویت در خبرنامه

اینستاگرام

فیسبوک

توییتر

27 فروردین 1404

در 06:20

در دنیای اینترنت، سرعت، امنیت و دسترسی پایدار به وب‌سایت‌ها اهمیت زیادی دارد. اما Cloudflare چیست و چه جایگاهی دارد؟ این سرویس یکی از محبوب‌ترین سرویس‌هایی ا...

25 فروردین 1404

در 23:19

بازاریابی عصبی (Neuromarketing) یکی از روش‌های پیشرفته و نوآورانه است که با ترکیب علم عصب‌شناسی و روانشناسی، به کسب‌وکارها کمک می‌کند تا تصمیم‌گیری‌های مشتری...

20 فروردین 1404

در 22:36

آیا می‌دانید که ثبت مکان در گوگل مپ مزایای مختلفی دارد و می‌تواند به شما کمک کند؟ جهان امروزی روز به روز به سمت مدرن شدن پیش رفته و با کمک گرفتن از بستر اینت...

29 بهمن 1403

در 20:35

کوبرنتیز چیست؟ پلتفرم کوبرنتیز که توسط گوگل معرفی شد، از ابزار‌های اصلی برای مدیریت برنامه‌های کانتینری و استقرار است. امروزه کانتینر‌ها به دلیل مزایای بسیار...

10 بهمن 1403

در 23:08

آیا تاکنون به فکر استفاده از کامنت مارکتینگ برای بهبود وضعیت برند خودتان افتاده‌اید؟ در دنیای امروز که به دنیای دیجیتالی معروف شده است، برای هر محصول و خدمتی...

12 دی 1403

در 23:59

سیستم عامل اوبونتو یک سیستم‌عامل منبع‌باز محبوب لینوکس است که نام خود را از کلمه‌ای آفریقایی گرفته است. این کلمه در زبان بانتو به معنای «من هستم، چون ما هستی...

1 دیدگاه دربارهٔ «بررسی امنیت وب اپلیکیشن با استفاده از ابزار تست Selenium»

دیدگاه‌ خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

This site uses Akismet to reduce spam. Learn how your comment data is processed.