جلسه 22: معرفی سرویس های وب در تست امنیت (Security Testing)

جلسه 22: معرفی سرویس های وب در تست امنیت (Security Testing)
نگهداری امن و محرمانه اطلاعات مشتریان از اولویت بالایی در تمامی سازمان ها و شرکت ها برخوردار است. متأسفانه، روزانه آسیب پذیری های جدیدی کشف شده و همگامی نگهداشت امن سازمان در برابر آن ها، تقریباً به امری محال تبدیل شده است. این آسیب پذیری ها در تار و پود زیرساخت IT قرار گرفته و گاهاً به مدت بسیار طولانی کشف نشده باقی می مانند. اگرچه راه های بسیاری برای امن سازی سیستم ها و اپلیکیشن ها در برابر آسیب پذیری ها وجود دارد، اما تنها راه کسب اطمینان واقعی از آن، تست امنیتی بستر IT سازمان به منظور یافتن این حفره های امنیتی است.
داده ها و اطلاعات کاربران و البته وبسایت ها ممکن است به سرقت برده شوند؛ مورد سوء استفاده گرفته و یا در فضای عمومی و بدون خواست صاحبان آن عرضه شوند. تست امنیت Security Testing امروزه مبحث داغ امنیت است تا آسودگی خیال افراد را در بستر اینترنت فراهم کند. راهکار “تست امنیتی” امکان تکرار حملات بر روی سیستم ها، دستگاه ها و اپلیکیشن ها را به منظور آشکارسازی زنجیره ای از مسیرهای باز و آسیب پذیر بر روی سیستم ها و داده های حساس و حیاتی سازمان، فراهم می آورد.
خلاصه جلسه قبل:
در جلسه گذشته به بررسی امنیت AJAX در تست امنیت پرداختیم؛ از آنجا که این یک فناوری جدید است، بسیاری از مسائل امنیتی مربوط به آن و رفع تقص های امنیتی آن هنوز تکمیل نشده اند و نیاز به بررسی و دقت دارند تا نقص های امنیتی شان برطرف شود. در این جلسه قرار است به بررسی سروریس های وب در تست امنیت بپردازیم.
بررسی سروریس های وب در تست امنیت
در برنامه های مدرن مبتنی بر وب، استفاده از خدمات وب اجتناب ناپذیر است اما بعضی از این برنامه ها در معرض حملات وب قرار می گیرند؛ از آنجا که سرویس های وب درخواست fetch از چندین وب سایت را دارند، برای جلوگیری از هرگونه نفوذ توسط هکرها، مجبور به انجام اقدامات اضافی هستند.
Hands ON
مرحله 1) به قسمت خدمات وب Webgoat و به WSDL Scanning بروید. اکنون باید جزئیات کارت اعتباری ای را از یک شماره حساب دیگر بدست آوریم. عکس زیر نشان دهنده این سناریو است.

مرحله 2) اگر نام اول را انتخاب کنیم ، فراخوانی تابع ‘getFirstName’ از طریق درخواست SOAP xml انجام می شود.

مرحله 3) با باز کردن WSDL، می بینیم که روشی برای بازیابی اطلاعات کارت اعتباری و همچنین “getCreditCard” وجود دارد. اکنون اجازه دهید ورودی ها را با استفاده از مجموعه Burp مطابق شکل زیر – دستکاری کنیم.

مرحله 4) بیایید حالا ورودی ها را با استفاده از مجموعه Burp مطابق شکل زیر اصلاح کنیم.

مرحله 5) می توان اطلاعات کارت اعتباری سایر کاربران را نیز بدست آورد.

مکانیسم های پیشگیرانه
- از آنجا که پیام های SOAP مبتنی بر XML هستند، تمام اعتبارنامه/credentials منتقل شده باید به قالب متن تبدیل شوند. از این رو باید در انتقال اطلاعات حساس که باید همیشه رمزگذاری شود مراقب بود.
- حفاظت از یکپارچگی پیام با اجرای سازوکارهایی مانند checksum که برای اطمینان از یکپارچگی بسته اعمال می شود.
- محافظت از محرمانه بودن پیام – رمزگذاری نامتقارن برای محافظت از کلیدهای جلسه متقارن اعمال می شود که در بسیاری از پیاده سازی ها فقط برای یک ارتباط معتبر هستند اما بعد از مدتی از آن دور می شوند.
سخن پایانی
در این جلسه به بررسی سروریس های وب در تست امنیت پرداختیم؛ در برنامه های مدرن مبتنی بر وب، استفاده از خدمات وب اجتناب ناپذیر است اما بعضی از این برنامه ها در معرض حملات وب قرار می گیرند؛ از آنجا که سرویس های وب درخواست fetch از چندین وب سایت را دارند، برای جلوگیری از هرگونه نفوذ توسط هکرها، مجبور به انجام اقدامات اضافی هستند.
در جلسه بعدی به Buffer Overflows خواهیم پرداخت. لطفا نظرات خود در رابطه با این مقاله را با ما به اشتراک بگذارید.
موفق و پیروز باشید.
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.