Коли говорять «Інструмент для тестування проникнення», перше, що спадає вам на думку -Metasploit - найбільший в світі проект Ruby, який має понад 700 000 рядків коду. І не дивно, що він став фактичним стандартом для тестування проникнення і розробки уразливості з більш ніж одним мільйоном унікальних скачувань в рік і найбільшою в світі базою даних якісно гарантованих експлойтів.
Metasploit Framework дотримується певних ключових кроків для експлойтіроанія системи. Це такі ключові кроки:
1. Вибрати і конфігурувати експлойт - в якості цільового об'єкта. Це код, який буде цільовим об'єктом по відношенню до системи з наміром володіння перевагою над дефектом в програмному забезпеченні.
2. Перевіряти достовірність того, що обрана система сприйнятлива до обраного експлойтів.
3. Вибрати і конфігурувати корисне навантаження, яка буде використовуватися. Ця корисне навантаження являє собою код, який буде приводити в дію систему після того, як буде виявлена лазівка в системі і задана точка входу.
4. Вибрати й конфігурувати схему кодування, яка буде використовуватися, щоб упевнитися, що корисне навантаження здатна з легкістю обійти Intrusion Detection System (Систему Виявлення Вторгнення).
5. Виконати експлойт.
У цій статті ми надамо детальний опис використання Metasploit Frameworkдля виконання експлойтів з графічними ілюстраціями і командами.
Робота сMetasploit:
Metasploit проста у використанні і була створена з наміром спростити завдання і допомогти тестерам подолання захисту.
У Metasploit Framework три конфігурації - інтерфейси msfconsole, msfcli і msfweb. Проте, основна і сама краща робоча зона - msfconsole. Це дієвий інтерфейс з командним рядком, який має свій власний набір команд і конфігураційну систему.
Перш ніж приступити до роботи, корисно зрозуміти, що собою представляють певні команди Metasploit. Нижче прописані деякі з команд, якими ви будете користуватися найчастіше. Графічне пояснення їх висновків будуть дані трохи пізніше в цій же статті, коли ми будемо їх використовувати під час експлойтірованія певних блоків.
(I) search. Введення команди «пошук» разом зі списками ключових слів з ряду різноманітних можливих експлойтів, які мають цю модель ключового слова.
(Ii) show exploits. Введення команди «показати дії» видає нам список доступних на даний момент експлойтів. Існують віддалені експлойти для різноманітних платформ і додатків, включаючи Windows, Linux, IIS, Apache і т.д. які допомагають тестувати гнучкість і розуміти роботу Metasploid.
(Iii) show payloads. За допомогою тієї ж команди «показати», ми можемо отримати список доступних корисних навантажень. Ми можемо використовувати команду «показати корисні навантаження», щоб отримати список корисних навантажень.
(Iv) show options. Введення команди «показати опції» покаже вам опції, які ви задали, а також можливо ті, які ви, можливо, забули поставити. Кожен експлойт і корисне навантаження супроводжуються своїми власними опціями, які ви можете задати.
(V) info. Якщо вам потрібна особлива інформація про експлойтів або корисне навантаження, ви можете використовувати команду «інформація». Наприклад, скажімо, ми хочемо отримати повну інформацію про корисне навантаження «winbind». Ми можемо використовувати «info payload winbind».
(Vi) use
(Vii) set RHOST
(Viii) set RPORT
(Ix) set PAYLOAD. Ця команда задає корисне навантаження, яка застосовується до групової корисного навантаження, яка забезпечить вам оболонку, коли сервіс експлойтіруется.
(X) set LPORT
(Xi) exploit. Власне експлойтірует сервіс. Ще одна версія експлойта, rexploit перезавантажує ваш код експлойта і потім виконує екплойт. Це дозволяє вам відчувати мінімальні зміни до вашого коду експлойта без перезавантаження консолі.
(Xii) help. Команда «допомогу» дасть вам базову інформацію про всі команди, які не перераховані тут.
Тепер, коли ви ознайомлені з усіма базовими командами, вам необхідно запустити ваш експлойт, давайте виберемо пару сценаріїв щодо заволодіння контролю над віддалено з'єднаної машиною.