در این مقاله، نصب و راه اندازی یک ماشین مجازی شامل OWASP Broken Web Applications Project یا به اختصار OWASPBWA را بررسی می کنیم. ابتدا دیسک مجازی با فرمت VMDK را به فرمت VHDX تبدیل می کنیم. سپس ماشین مجازی را ایجاد و در انتها آن را به یک شبکه NAT متصل می کنیم.
در مقالات قبلی، راه اندازی شبکه NAT و نصب و راه اندازی Metasploitable 2 بر روی Hyper-V را بررسی کردیم. اگر این مقالات را مطالعه نکردهاید، پیشنهاد می کنم به قسمت منابع و مطالعه بیشتر در انتهای این مقاله مراجعه کنید.
بخشی از تصاویر این پست به علت شباهت زیاد فرآیند به مقاله قبلی، تکراری هستند اما تاثیری در هدف این مقاله ندارند.
OWASP Broken Web Applications Project چیست
OWASPBWA یک ماشین مجازی، شامل تعدادی وب اپلیکیشن آسیب پذیر هست. معمولا افرادی که در حال یادگیری OWASP Top 10 هستند از اپلیکیشن های داخل این ماشین مجازی برای تمرین استفاده می کنند.
برای دانلود OWASP Broken Web Applications Project از OWASP Broken Web Applications Project download | SourceForge.net اقدام کنید. پس از دانلود و استخراج فایل فشرده، تعدادی فایل از نوع VMDK در اختیار شما قرار میگیرد. امکان استفاده از این نوع دیسک مجازی بر روی Hyper-V وجود ندارد. بنابراین، قبل از استفاده باید این فایل ها را تبدیل کنیم.
تبدیل دیسک مجازی با فرمت VMDK به فرمت VHDX
برای تبدیل دیسک VMDK به VHDX ابزار های فراوانی مانند Starwind, Winimage, disk2vhd و… وجود دارد. در این مقاله از V2V Converter / P2V Converter – Converting VM Formats (starwindsoftware.com) استفاده می کنیم. در لینک فوق امکان دانلود رایگان این ابزار وجود دارد.
پس از نصب طبق تصاویر زیر عمل کنید:
طبق تصویر زیر، پس از استخراج فایل فشرده OWASPBWA چندین فایل VMDK وجود دارد که کافی است اولین فایل را انتخاب کنید.
در عکس بالا، نوع دیسک VHDX انتخاب شده و همچنین سایز دیسک به صورت پویا و هنگام نیاز قابل افزایش است.
اکنون عملیات تغییر فرمت دیسک به پایان رسیده و دیسک جدید قابل استفاده در Hyper-V خواهد بود.
ساخت ماشین مجازی OWASPBWA
برای نصب OWASP Broken Web Applications Project روی Hyper-V باید یک ماشین مجازی ایجاد کنیم. برای این کار در برنامه Hyper-V Manager از منو New گزینه Virtual Machine رو انتخاب کنید و طبق مراحل زیر پیش برید:
در عکس بالا نام و محل ذخیره ماشین مجازی رو انتخاب کنید. (تصویر از مقاله قبلی هست، پس نام بهتری مثلا OWASPBWA وارد کنید.)
در این مرحله، Generation 1 رو انتخاب می کنیم تا در مراحل آینده به Legacy Network Adapter دسترسی داشته باشیم. چون OWASPBWA امکان استفاده از Network Adapter معمولی رو نداره و سیستم عامل بوت نخواهد شد. اگه نیاز به مطالعه بیشتر دارید، تفاوت های Legacy Network Adapter و Network Adapter در Hyper-V رو مطالعه کنید. همچنین در این نسل (نسل ۱) امکان استفاده از هر دو فرمت VHD و VHDX برای دیسک مجازی وجود دارد اما در نسل ۲ فقط فرمت VHDX قابل استفاده هست.
تو این مرحله Not Connected رو انتخاب می کنیم. اتصال ماشین مجازی به شبکه NAT در ادامه مقاله شرح داده میشه.
طبق عکس بالا فایل دیسک تبدیل شده به فرمت VHDX در مراحل قبل رو به VM متصل می کنیم.
در اینجا ماشین مجازی ایجاد و تقریبا آماده استفاده هست!
اتصال OWASPBWA به یک Virtual Switch از نوع Internal
هنگام استفاده از OWASPBWA پیشنهاد می کنم از شبکه Internal بدون دسترسی به اینترنت یا شبکه مبتنی بر NAT استفاده کنید. در این مقاله از NAT برای دسترسی به این پروژه استفاده می کنیم.
فرض بر این هست که یک Virtual Switch از نوع Internal ایجاد شده و آماده استفاده هست. این نوع Switch اتصال هاست و ماشین های مجازی رو از طریق NAT برقرار می کنه. برای یادگیری ساخت شبکه NAT در Hyper-V این لینک رو مطالعه کنید.
برای اتصال به این Switch در Hyper-V Manager روی ماشین مجازی کلیک راست کنید و Settings رو باز کنید. سپس طبق تصاویر زیر مراحل رو ادامه بدید:
در این مرحله یک Legacy Network Adapter به ماشین مجازی اضافه می کنیم. (به نام ماشین مجازی توجه نکنید! تصویر مربوط به مقاله قبلی هست. نامی که در مراحل قبل به VM مربوط به OWASPBWA دادید رو استفاده کنید.)
حالا اونو به Internal Switch از قبل ایجاد شده متصل می کنیم. و در آخر طبق عکس زیر، Network Adapter ساخته شده هنگام ایجاد ماشین مجازی رو حذف می کنیم!
در اینجا اتصال ماشین مجازی رو به شبکه NAT انجام دادیم ولی همچنان “تقریبا” آماده استفاده هست!
IP دهی به ماشین مجازی
در این مرحله باید ماشین مجازی رو روشن کنید و با نام کاربری و رمز عبور root/owaspbwa به اون متصل بشوید. با استفاده از دستور زیر فایل تنظیمات رو در ادیتور Nano باز کنید:
sudo nano /etc/network/interfaces
سپس مقادیر قبلی رو با مقادیر زیر جایگزین کنید (میتونید مقادیر قبلی رو با # کامنت کنید):
auto eth0 iface eth0 inet static address 192.168.5.10 netmask 255.255.255.0 network 192.168.5.0 broadcast 192.168.5.255 gateway 192.168.5.1 dns-nameservers 1.1.1.1
در این قسمت از مقاله فرض می کنیم مخاطب آشنایی کافی با مفاهیم و روش ایجاد شبکه و … رو داره. همچنین یک Virtual Switch از نوع Internal به همراه کانفیگ NAT موجود هست. مقادیر فوق را باید مطابق شبکه NAT ایجاد کرده باشید در غیر این صورت شبکه به شکل صحیح تنظیم نخواهد شد. در این مثال آی پی ما ۱۹۲.۱۶۸.۵.۱۰ هست و شبکه با رنج ۱۹۲.۱۶۸.۵.۰ تا ۱۹۲.۱۶۸.۵.۲۵۵ کانفیگ شده. همچنین Gateway دارای آی پی ۱۹۲.۱۶۸.۵.۱ هست. پس از ویرایش، از ادیتور خارج شوید و با دستور زیر سرویس شبکه رو Restart کنید:
sudo /etc/init.d/networking restart
حالا میتونید با دستور ifconfig چک کنید که آی پی را به درستی ست کردهاید یا خیر. برای دسترسی به اپلیکیشن ها، میتونید آی پی این ماشین مجازی رو در مرورگر وارد کنید! خروجی باید همانند تصویر زیر باشه:
منابع و مطالعه بیشتر
Web Application Security: OWASP TOP 10 – David Checa´s Blog (swat4net.com) (تصویر پست)
نصب و راه اندازی Metasploitable 2 بر روی Hyper-V
OWASP Broken Web Applications Project download | SourceForge.net