
در این بخش از دوره آموزشی SEC542 از موسسه SANS به آشنایی با ابزارهای کاربردی wpscan و w3af می پردازیم.
Wpscan
امروزه از سیستم مدیریت محتوای وردپرس به صورت گسترده ای استفاده میگردد. به همین دلیل در صورتی که قصد تست نفوذ وب سایتهایی با سیستم مدیریت محتوای وردپرس را داشته باشید، استفاده از ابزار wpscan بسیار مفید خواهد بود. wpscan یک ابزار خودکار بوده و تمرکز آن بر روی شناسایی آسیبپذیریهای رایج وردپرس میباشد.

با توجه به اینکه آسیبپذیریهای وردپرس در بازههای زمانی مختلف کشف شده و وصلههای آن نیز منتشر میشوند، ابزار wpscan نیز بروزرسانی میگردد تا امکان کشف آسیبپذیریهای جدید را داشته باشد. بدین ترتیب یکی از مهمترین موارد در هنگام استفاده از این ابزار، اطمینان از بروز بودن آن است. برای بروزرسانی wpscan از دستور زیر استفاده میشود:
Wpscan.rb –update
جهت انجام اسکن توسط ابزار wpscan از دستور زیر استفاده نمایید:
Wpscan.rb –url http://site.com
این ابزار به صورت متن باز ارائه شده و در آدرس زیر قابل دانلود میباشد:
github.com/wpscanteam/wpscan
Web Application and Audit Framework (w3af)
ابزار W3af یک برنامه متن باز بوده که با پایتون نوشته شده است. در حال حاضر مدیر این پروژه Andres Riancho است ولی امکان توسعه و نوشتن پلاگین برای این ابزار توسط توسعه دهندگان و تست نفوذگران فراهم میباشد.
W3fa دارای یک کنسول مشابه متاسپلویت و یک محیط گرافیکی بوده و تقریبا در هر سیستم عاملی قابلیت اجرا دارد. استفاده از رابط گرافیکی آن ساده تر است ولی کنسول، کنترل بیشتری را در اسکن برای شما فراهم میکند. همچنین استفاده از ابزارهایی مانند BeEF و SQLMap نیز به همراه این ابزار امکان پذیر میباشد.
ابزار W3fa امکان انجام عملیات Spidering، شناسایی آسیبپذیریهای مبتنی بر سرور و اکسپلویت نمودن آنها را دارد.
The w3af GUI
رابط گرافیکی w3af به گونه ای طراحی شده است تا در عین سادگی، امکان انجام تمام آن چه را که نیاز دارید، برای شما فراهم نماید. W3af از مفهوم پروفایل برای کنترل آن چه در یک اسکن قرار دارد، استفاده میکند. ما معمولا چندین پروفایل ایجاد میکنیم که شامل افزونهها و تستهای مختلف میباشد و می توان آنها را برای استفادههای بعدی ذخیره نمود.
نقطه شروع آزمون، URL هدف میباشد. سپس افزونه مورد نظر را انتخاب نموده و در صورتی که این افزونه نیاز به پیکربندی داشته باشد، گزینههای آن در سمت راست قابل مشاهده و تنظیم میباشد.

The w3af Console
در تصویر زیر دستورات مربوط به محیط کنسول w3af را مشاهده مینمایید. این کنسول همانطور که پیشتر نیز بیان شد، مشابه کنسول متاسپلویت میباشد و به همان روش مورد استفاده قرار میگیرد.
W3af Scripting
رابط کاربری کنسول در ابزار w3af از قابلیت Scripting پشتیبانی مینماید. شما میتوانید تمام دستورات و گزینههای مورد نظر خود که قصد وارد نمودن آنها به کنسول را دارید، در یک فایل متنی وارد نمایید. سپس این فایل را با استفاده از گزینه -s در کنسول w3af بارگذاری نمایید. بدین ترتیب ابزار w3af هر سطر که شامل یک دستور میباشد را خوانده و سپس آن را پردازش میکند.
آشنایی با پایتون و دستورات کاربردی آن
به عنوان مثال شما میتوانید عبارت crawl serverHeader که یکی از دستورات در محیط کنسول w3af میباشد را در یک فایل قرار داده و با ساختار زیر آن را فراخوانی نمایید:
$ w3af_console -s filename
W3af Plugins
میتوان پلاگینها را به عنوان قلب تپنده w3af عنوان نمود. پلاگینها توسط پایتون نوشته شده و اصلی ترین روش برای تست نفوذگران وب، جهت انجام تستهای خود در ابزار w3af میباشند. استفاده و تنظیم مناسب این پلاگینها، احتمال موفقیت شما را افزایش خواهد داد.
W3af همچنین امکان ذخیره تنظیمات پلاگین جاری را به عنوان پروفایل اسکن برای شما فراهم میکند. با استفاده از این امکان، انجام تستهای تکرارپذیر با سهولت بیشتری صورت میپذیرد.
با توجه به اهمیت پلاگینها در ابزار w3af، حتما با انتشار یا بروزرسانی افزونههای جدید، از آنها استفاده نمایید.
W3af Crawl Plugins
ابزار w3af دارای دسته بندی مختلفی از پلاگینها میباشد که اولین پلاگین مربوط به Crawling است. این پلاگین اطلاعات مربوط به اپلیکیشن و سروری که اپلیکیشن بر روی آن در حال اجرا میباشد را جمع آوری مینماید. بدین صورت این پلاگین موارد مربوط به Recon و Mapping را در متدولوژی ما پوشش میدهد.
پلاگینهای Crawl، کارهای مختلفی مانند Spider نمودن وب سایت را انجام میدهند که این کار هم بوسیله ارسال درخواست به صفحات مختلف و همچنین با استفاده از موتور جست و جوی گوگل صورت میگیرد. این پلاگینها همچنین دارای ویژگیهای دیگری مانند خواندن فایلهای robots.txt و تشخیص Transparent Proxy ها نیز میباشند. در انتها نیز دادههای یافت شده توسط در این مرحله، توسط پلاگینهای دیگر مورد استفاده قرار میگیرد.
W3af Evasion Plugins
پلاگینهای Evasion در ترکیب با پلاگینهای دیگر مورد استفاده قرار میگیرند و درخواست ایجاد شده را تغییر میدهند. به عنوان مثال، یکی از افزونههای مربوط به Evasion، بخشهای مختلف درخواست را Encode مینماید. این روش به منظور عبور از زیرساختهای امنیتی مانند فایروال (Mod_Security) و سیستمهای تشخیص نفوذ یا اصطلاحا Bypass آنها مورد استفاده قرار میگیرد.
W3af Audit Plugins
پلاگینهای Audit در ابزار w3af در مرحله شناسایی از متدولوژی به ما کمک میکنند. این دسته بندی از پلاگینها سعی در شناسایی نقاط ضعف موجود در اپلیکیشن دارند که امکان اکسپلویت آنها وجود داشته و دسترسی بیشتری را برای ما فراهم میآورند. در ابزار w3af، پلاگینهایی وجود دارد که برای شناسایی آسیبپذیریهای XSS، SQLi و CSRF استفاده میشود. این پلاگینها در واقع دادههای مورد نیاز (feed) برای پلاگینهای Exploitation را فراهم میکنند.
برخی از پلاگینهای دیگر بخش Audit عبارتند از:
sslCertificate: این پلاگین سعی در شناسایی و کشف مشکلات مربوط به تنظیمات SSL دارد.
unSSL: این پلاگین به منظور شناسایی اینکه محتوای SSL از طریق پروتکل HTTP در دسترس میباشد یا خیر استفاده میگردد.
osCommanding: این پلاگین سعی در شناسایی آسیبپذیری تزریق دستور دارد.
W3af Grep Plugins
پلاگینهای Grep، برای جست و جوی آیتمهای جالب در پاسخهای برنامه وب مورد استفاده قرار میگیرد. نام این پلاگین برگفته از دستور grep در سیستم عاملهای یونیکسی میباشد. به عنوان مثال بوسیله این پلاگینها میتوانیم از w3af بخواهیم تا علائم یا مسیرهای افشا شده را پیدا کند. همچنین میتوانیم آدرسهای ایمیل و قطعه کدهای AJAX استفاده شده در اپلیکیشن را جمع آوری نماییم.
در ادامه کلیه این اطلاعات به دست آمده در دسترس سایر پلاگینها خواهد بود. به عنوان مثال پلاگین getMail اطلاعات مورد نیاز (feed) برای پلاگین Brute Force را مهیا میکند.
W3af Brute Force Plugins
پلاگینهای Brute Force تلاش میکند تا نام کاربری و کلمه عبور (Credentials) را به منظور احراز هویت، حدس بزنند. در حال حاضر دو دسته بندی Basic(HTTP Basic Authentication) و Forms(Forms-Base Authentication) برای این پلاگین وجود دارد. موارد موجود در این پلاگین، از دادههای جمع آوری شده از سایر پلاگینها مانند آدرس ایمیل (برای نام کاربری) و کلمات استفاده شده در سایت (برای کلمات عبور) برای حدس زدن کلمات عبور استفاده مینمایند.
Running w3af
برای شروع اسکن، تست نفوذگر باید ابتدا یک URL را وارد نماید. سپس میتوان پروفایلهای موجود را که پلاگینهای خاص در آن قرار دارد، انتخاب نموده یا پروفایل مورد نیاز را برای تست خود ایجاد نمود.

همچنین شما میتوانید در بخش Result از ابزار w3fa، نتایج اسکن انجام شده را مشاهده نموده و از بخش اکسپلویت نیز به منظور بهرهبرداری از موارد شناسایی شده استفاده نمایید.