Kali Linux се предлага предварително оборудван с всички инструменти, необходими за тестване на проникване. Един такъв инструмент е рамката Metasploit, която позволява на червените екипи да извършват разузнаване, сканиране, изброяване, и да използват уязвимости за всички видове приложения, мрежи, сървъри, операционни системи и платформи.

Въпреки че основната функционалност на Metasploit се фокусира върху задачи за пентестиране преди и след експлоатация, тя също е полезна при разработването на експлоатиране и изследването на уязвимостите.

Тази статия представя основните компоненти на рамката Metasploit. Той демонстрира как да използвате Metasploit модули за сканиране, изброяване и експлоатация на уязвима база данни MySQL, хоствана на машина, известна като Metasploitable 2.

Metasploit е най-често използваният инструмент за пентестиране, който се предлага предварително инсталиран в Kali Linux. Основните компоненти на Metasploit са msfconsole и модулите, които предлага.

Какво е msfconsole?

msfconsole

instagram viewer
е най-често използваният интерфейс „всичко в едно“, подобен на черупка, който ви позволява да получите достъп до всички функции на Metasploit. Той има подобна на Linux поддръжка на команден ред, тъй като предлага автоматично довършване на команди, табулиране и други преки пътища за bash.

Това е основният интерфейс, който ще ви позволи да работите с модули Metasploit за сканиране и стартиране на атака на целевата машина.

Metasploit има малки кодови фрагменти, които позволяват основната му функционалност. Въпреки това, преди да обясните модулите, трябва да сте наясно със следните повтарящи се концепции:

  • Уязвимост: Това е недостатък в дизайна или кода на целта, която я прави уязвима за експлоатация, водеща до разкриване на поверителна информация.
  • Експлоатирайте: Код, който използва откритата уязвимост.
  • Полезен товар: Това е код, който ви помага да постигнете целта за използване на уязвимост. Той работи вътре в целевата система за достъп до целевите данни, като поддържане на достъп чрез Meterpreter или обратна обвивка.

Сега преминаваме към петте основни модула на Metasploit:

  • спомагателни: Допълнителният модул съдържа набор от програми като fuzzers, скенери и инструменти за инжектиране на SQL за събиране на информация и за по-задълбочено разбиране на целевата система.
  • Кодери: Кодерите криптират полезните данни/експлойтите, за да ги защитят от антивирусни решения, базирани на подпис. Тъй като полезните натоварвания или експлойтите съдържат нулеви или лоши знаци, има големи шансове те да бъдат открити от антивирусно решение.
  • Експлоатирайте: Както беше обсъдено по-рано, експлойтът е код, който използва целевите уязвимости, за да осигури достъп до системата чрез полезни товари.
  • Полезен товар: Както споменахме по-горе, полезните товари ви помагат да постигнете желаната цел за атака на целевата система. Това означава, че те или ще ви помогнат да получите интерактивна обвивка, или ще ви помогнат да поддържате бекдор, да изпълните команда или да заредите зловреден софтуер и т.н. Metasploit предлага два вида полезни товари: безстепенни полезни товари и поетапни полезни товари.
  • Публикувай: Модулът след експлоатация ще ви помогне да съберете допълнителна информация за системата. Например, може да ви помогне да изхвърлите хешовете на паролите и да потърсите потребителски идентификационни данни за странично движение или ескалация на привилегиите.

Можете да използвате следните команди, за да видите всеки модул и неговите категории:

cd /usr/share/metasploit-framework/modules
ls
дърво -L 1 име-модул/

За да започнете да използвате интерфейса Metasploit, отворете терминала Kali Linux и напишете msfconsole.

По подразбиране msfconsole се отваря с банер; за да премахнете това и да стартирате интерфейса в тих режим, използвайте msfconsole команда с -q флаг.

Интерфейсът изглежда като обвивка от команден ред на Linux. Някои команди на Linux Bash, които поддържа, са ls, clear, grep, history, jobs, kill, cd, exit и т.н.

Тип помогне или въпросителен знак "?", за да видите списъка с всички налични команди, които можете да използвате в msfconsole. Някои от най-важните, които ще използваме в тази статия, са:

Команда Описание
Търсене Позволява ви да търсите от базата данни Metasploit въз основа на дадения протокол/приложение/параметър
използвайте Позволява ви да изберете конкретен модул и променя контекста на специфични за модула команди
информация Предоставя информация за избрания модул
шоу Показва информация за даденото име на модул и опции за текущия модул
проверете Проверява дали целевата система има уязвимост
комплект Това е контекстно-специфична променлива, която конфигурира опциите за текущия модул
ненастроено Премахва предварително зададените параметри
бягай Изпълнява текущия модул

Преди да започнете, настройте базата данни Metasploit от стартиране на PostgreSQL сървъра и инициализирайте базата данни msfconsole, както следва:

systemctl стартиране на postgresql
msfdb init

Сега проверете състоянието на базата данни, като инициализирате msfconsole и стартирате db_status команда.

За демонстрационни цели настройте уязвимата Linux машина с отворен код Metasploitable2.

MySQL Reconnaissance с msfconsole

Намери IP адрес на машината Metasploitable първо. След това използвайте db_nmap команда в msfconsole с Nmap флагове за сканиране на MySQL базата данни на адрес 3306 пристанище.

db_nmap -sV -sC -p 3306 

Можете да стартирате редовното nmap -p- команда, за да потвърдите номера на порта на базата данни на MySQL.

Свързани: Nmap за начинаещи: Придобийте практически опит със сканиране на портове

Използвай Търсене опция за търсене на спомагателен модул за сканиране и изброяване на MySQL базата данни.

тип търсене: спомагателен mysql

От горния списък можете да използвате помощен/скенер/mysql/mysql_version модул, като напишете името на модула или свързан номер, за да сканирате подробности за версията на MySQL.

използвайте 11

Или:

използвайте auxiliary/scanner/mysql/mysql_version

Сега използвайте показване на опции команда за показване на необходимите параметри, необходими за изпълнение на текущия модул:

Резултатът показва, че единствената необходима и ненастроена опция е RHOSTS, което е IP адресът на целевата машина. Използвай задайте rhosts команда за задаване на параметъра и стартиране на модула, както следва:

Резултатът показва подобни подробности за версията на MySQL като db_nmap функция.

Bruteforce MySQL Root акаунт с msfconsole

След сканиране можете също да използвате груба сила MySQL root акаунт чрез Metasploit's спомагателен (скенер/mysql/mysql_login) модул.

Ще трябва да настроите PASS_FILE параметър към пътя на списъка с думи, наличен вътре /usr/share/wordlists:

задайте PASS_FILE /usr/share/wordlistss/rockyou.txt

След това посочете IP адреса на целевата машина с командата RHOSTS.

задайте RHOSTS 

Комплект ПРАЗНИ_ПАРОЛИ на true в случай, че няма зададена парола за root акаунта.

задайте BLANK_PASSWORDS true

Накрая стартирайте модула, като напишете бягай в терминала.

Изброяване на MySQL с msfconsole

msfconsole също ви позволява да изброявате базата данни с помощта на спомагателен (admin/mysql/mysql_enum) модул. Той връща всички акаунти с подробности като свързани привилегии и хешове на пароли.

За да направите това, ще трябва да посочите парола, потребителско име и променлива rhosts.

задайте парола ""
задайте потребителско име root
задайте rhosts

Накрая стартирайте модула, като напишете:

бягай

Експлоатация на MySQL с msfconsole

От фазата на изброяване е ясно, че root акаунтът има файлови привилегии, които позволяват на нападателя да изпълни файл_зареждане() функция. Функцията ви позволява да използвате MySQL базата данни, като заредите всички данни от файла /etc/password чрез помощен(/admin/mysql/mysql_sql) модул:

Отново задайте потребителско име, парола и променлива rhosts. След това изпълнете заявка, която извиква функцията load_file() и зарежда /etc/passwd файл.

задайте sql изберете load_file(\"/etc/password\")

Модулите Metasploit помагат във всички фази на тестване за проникване. Metasploit също така позволява на потребителите да създават свои собствени модули.

Тази статия обобщава някои основни модули на рамката Metasploit и демонстрира как да сканирате, изброявате и експлоатирате MySQL база данни на машината Metasploitable 2.

Metasploit не е единственият инструмент за тестване на проникване, който ще използвате като специалист по киберсигурност. Има няколко други помощни програми, с които ще трябва да се запознаете, ако искате да станете експерт по сигурността.

Топ 10 инструмента за тестване на проникване за професионалисти по сигурността

Ако се чудите как професионалистите тестват за проникване, това ръководство ще ви помогне.

Прочетете Следващото

Дялтуителектронна поща
Свързани теми
  • Linux
  • Етично хакване
  • Хакване
  • Приложения за Linux
За автора
Румайса Ниази (публикувани 11 статии)

Румайса е писател на свободна практика в MUO. Тя е носила много шапки, от математик до ентусиаст по информационна сигурност, и сега работи като SOC анализатор. Нейните интереси включват четене и писане за нови технологии, Linux дистрибуции и всичко около информационната сигурност.

Още от Rumaisa Niazi

Абонирайте се за нашия бюлетин

Присъединете се към нашия бюлетин за технически съвети, ревюта, безплатни електронни книги и ексклузивни оферти!

Щракнете тук, за да се абонирате