Приветствие
Приветствую всех читателей Codeby!
Сегодня мы поговорим об установке замечательного инструмента Bettercap в среду linux, хотя на борту Kali уже и присутствует bettercap, но так уж повелось что после нескольких лагов того или иного инструмента, возникает мысль об переустановке (в основном с gitlab) "лагающего" инструмента. Просто на мой взгляд проще установить, чем ковырять и исправлять какие либо погрешности в уже установленном(Хотя парой всё происходит как раз наоборот, но не в этом случае!).
Предисловие
Честно говоря уже написал и хотел было опубликовать небольшую статью об установке G0lang в Kali linux, как в поиске сразу же отобразился подобный пост, но так как я уже потратил немного своего времени, а выкладывать на других ресурсах не хочется, решил немного изменить статью об установке bettercap просто дополнив её ещё и установкой языка программирования Go. Тем более расписывал установку go в kali как раз специально для последующего топика об установке Bettercap.
Итак начнём пожалуй.
Установка GO в Kali linux
GO - Он же Golang, это компилируемый, многопоточный, язык программирования от супер гиганта Google.
Помню когда только пошёл слух о скором выходе этого языка в свет, собирался его изучить и дальше использовать его как основной язык программирования в своих проектах(почему то мне так его расписали, практически убедили что это просто супер быстрый и очень простой язык программирования, при этом практически ни чем не уступающий таким языкам как C++/C#.), но жизнь так повернулась, что это направление ушло в стадию хобби и об серьёзном изучение каких либо языков программирования, пришлось просто забыть.
Для установки GO в систему Linux необходимо скачать архив с языком
Скачиваем архив куда угодно, открываем терминал, переходим в директорию с скаченным архивом и распаковываем в "/usr/local", так что бы в конечном результате GO оказался в "/usr/local/go".
К примеру скачиваем браузером этот архив в папку "Загрузки" (/root/Загрузки), открываем терминал и переходим в нужную директорию и распаковываем:
	
	
	
	
		
Конечно название архива может изменится и поэтому название архива меняем на "go*.tar.gz", если у вас в этой же директории не будет схожих по имени архивов, то проблем не возникнет.
Теперь необходимо определить среды в .bashrc (находится он /root/.bashrc), проще всего его открыть любым блокнотом и в конец файла добавить необходимые переменные, для скорости в уже открытом окне терминала набираем:
	
	
	
	
		
В самый конец файла добавляем:
	
	
	
	
		
Теперь необходимо указать новые определения в env var, всё в том же открытом окне терминала набираем:
	
	
	
	
		
Проверим установку:
	
	
	
	
		
Если всё сделано верно, то должна отобразится версия установленного GO.
		
		
	
	
		
 
	
Установка завершена!
Можно не много потестить сам язык, на официальном сайте предлагают попробовать скомпилировать небольшой сценарий:
	
	
	
	
		
Создайте где нибудь директорию с любым именем, что бы было ещё проще, создайте в корне директории root директорию с именем go-workspace,эта директория в дальнейшем вам пригодится для тестов с языком go, конечно если же он вас заинтересует.
В этой директории создайте текстовый файл с именем "hello.go" и добавьте код который вы видите выше, сохраните и откройте терминал в директории где располагается созданный файл (/root/go-workspace).
Далее пробуем скомпилировать и запустить:
	
	
	
	
		
Если всё сделано правильно, то должен получится следующий вывод:
		
 
	
Немного полезных источников по Go
Хочу не много долнить информацией полезных ресурсов для языка GO, вдруг кого нибудь заинтересует, или же возможно уже заинтересовал этот язык программирования.
И так:
Обновлённая Bettercap 2.x
		
 
	
Выпуск второго поколения Bettercap, полностью изменил отношение к этому мощному инструменту, который в свою очередь ранее использовался в основном для атак MITM.Теперь это совершенно иной инструмент с уже более расширенным функционалом и совершенно другим управлением.Раньше Bettercap запускался с определёнными опциями, теперь bettercap имеет интерактивный режим управление, что полностью изменило управление этим инструментом.Bettercap был полностью переписан с Ruby на Go, что должно по идеи отразилось на скорости и производительности программы.
Так же в связи с изменениеми управление более гибким.Теперь это не просто снифер с опциями arp спуфинга, bettercap в состояние управлять HTTP,HTTPS, и TCP трафиком, в реальном времени, есть возможность мониторинга WIFI сетей, так же прикручена возможность атаки на BLE, ну и т.д.
В общем инструмент новый, управление совершенно иное и просто необходима свежая информация по укрощению полезного инструмента.
Список возможностей:
У нас уже установлен Golang, так что установка bettercap не должна быть проблемной, но до начала всех действий нужно удалить уже установленный bettercap:
	
	
	
	
		
Далее как обычно в первую очередь необходимо установить зависимости:
	
	
	
	
		
Далее официальный источник предлагает скачать bettercap с gitlab используя golang, далее перейти в рабочую директорию, там скомпилировать и установить bettercap из исходников:
	
	
	
	
		
Для удобства рекомендую добавить жесткую ссылку в /usr/local:
	
	
	
	
		
Bettercap установлен, для просмотра доступных опций и модулей необходимо набрать help:
	
	
	
	
		
				
			Приветствую всех читателей Codeby!
Сегодня мы поговорим об установке замечательного инструмента Bettercap в среду linux, хотя на борту Kali уже и присутствует bettercap, но так уж повелось что после нескольких лагов того или иного инструмента, возникает мысль об переустановке (в основном с gitlab) "лагающего" инструмента. Просто на мой взгляд проще установить, чем ковырять и исправлять какие либо погрешности в уже установленном(Хотя парой всё происходит как раз наоборот, но не в этом случае!).
Предисловие
Честно говоря уже написал и хотел было опубликовать небольшую статью об установке G0lang в Kali linux, как в поиске сразу же отобразился подобный пост, но так как я уже потратил немного своего времени, а выкладывать на других ресурсах не хочется, решил немного изменить статью об установке bettercap просто дополнив её ещё и установкой языка программирования Go. Тем более расписывал установку go в kali как раз специально для последующего топика об установке Bettercap.
Итак начнём пожалуй.
Установка GO в Kali linux
GO - Он же Golang, это компилируемый, многопоточный, язык программирования от супер гиганта Google.
Помню когда только пошёл слух о скором выходе этого языка в свет, собирался его изучить и дальше использовать его как основной язык программирования в своих проектах(почему то мне так его расписали, практически убедили что это просто супер быстрый и очень простой язык программирования, при этом практически ни чем не уступающий таким языкам как C++/C#.), но жизнь так повернулась, что это направление ушло в стадию хобби и об серьёзном изучение каких либо языков программирования, пришлось просто забыть.
Для установки GO в систему Linux необходимо скачать архив с языком
	Ссылка скрыта от гостей
 на текущий момент актуальная стабильная версия 
	
	Ссылка скрыта от гостей
.Скачиваем архив куда угодно, открываем терминал, переходим в директорию с скаченным архивом и распаковываем в "/usr/local", так что бы в конечном результате GO оказался в "/usr/local/go".
К примеру скачиваем браузером этот архив в папку "Загрузки" (/root/Загрузки), открываем терминал и переходим в нужную директорию и распаковываем:
		Код:
	
	cd /root/Загрузки
tar -C /usr/local -xzf go*.tar.gzТеперь необходимо определить среды в .bashrc (находится он /root/.bashrc), проще всего его открыть любым блокнотом и в конец файла добавить необходимые переменные, для скорости в уже открытом окне терминала набираем:
		Код:
	
	leafpad /root/.bashrc
		Код:
	
	export GOROOT=/usr/local/go
export PATH=${GOROOT}/bin:${PATH}
export GOPATH=${HOME}/gopath
export PATH=${GOPATH}/bin:${PATH}
		Код:
	
	source ~/.bashrc
		Код:
	
	go versionУстановка завершена!
Можно не много потестить сам язык, на официальном сайте предлагают попробовать скомпилировать небольшой сценарий:
		Код:
	
	package main
import "fmt"
func main() {
fmt.Printf("hello, world\n")
}В этой директории создайте текстовый файл с именем "hello.go" и добавьте код который вы видите выше, сохраните и откройте терминал в директории где располагается созданный файл (/root/go-workspace).
Далее пробуем скомпилировать и запустить:
		Код:
	
	go run hello.go # Просто запустит сценарий без компиляции.
go build hello.go
./helloНемного полезных источников по Go
Хочу не много долнить информацией полезных ресурсов для языка GO, вдруг кого нибудь заинтересует, или же возможно уже заинтересовал этот язык программирования.
И так:
- Русский форум - 
	
Ссылка скрыта от гостей
- Введение в программирование на Go - 
	
Ссылка скрыта от гостей
- Первый русскоязычный сайт по Go - 
	
Ссылка скрыта от гостей
- Ветка на форуме Cyberforum - 
	
Ссылка скрыта от гостей
- Go в примерах на русском - 
	
Ссылка скрыта от гостей
- Очень подробно и доступно расписано - 
	
Ссылка скрыта от гостей
- Официальный сайт - 
	
Ссылка скрыта от гостей
- Примеры на Go - 
	
Ссылка скрыта от гостей
- Мануалы на Dot Net Perls - 
	
Ссылка скрыта от гостей
- Бесплатные видеоуроки GopherCasts - 
	
Ссылка скрыта от гостей
- Маны по database/sql 
	
Ссылка скрыта от гостей
- Серверное программирование на Go - golang/go
- Сетевое программирование на Go - 
	
Ссылка скрыта от гостей
- Большая коллекция готовых библиотек - 
	
Ссылка скрыта от гостей
Обновлённая Bettercap 2.x
Выпуск второго поколения Bettercap, полностью изменил отношение к этому мощному инструменту, который в свою очередь ранее использовался в основном для атак MITM.Теперь это совершенно иной инструмент с уже более расширенным функционалом и совершенно другим управлением.Раньше Bettercap запускался с определёнными опциями, теперь bettercap имеет интерактивный режим управление, что полностью изменило управление этим инструментом.Bettercap был полностью переписан с Ruby на Go, что должно по идеи отразилось на скорости и производительности программы.
Так же в связи с изменениеми управление более гибким.Теперь это не просто снифер с опциями arp спуфинга, bettercap в состояние управлять HTTP,HTTPS, и TCP трафиком, в реальном времени, есть возможность мониторинга WIFI сетей, так же прикручена возможность атаки на BLE, ну и т.д.
В общем инструмент новый, управление совершенно иное и просто необходима свежая информация по укрощению полезного инструмента.
Список возможностей:
- Полнодуплексный и полудуплексный спуфинг ARP
- Спуфинг ICMP/DNS/арифметического процессора
- Модульный HTTP и HTTPS прозрачный прокси с поддержкой пользовательских плагинов
- Снифинг учетных данных в реальном времени для протоколов, таких как HTTP (S) POSTed данные, Стандартная аутентификация и Дайджест-аутентификация, FTP, IRC, POP, IMAP, SMTP, NTLM (HTTP, SMB, LDAP, и т.д.)
- Полностью настраиваемый сниффер
- Модульный HTTP/HTTPS проксирует для обеспечения инъекции пользовательского HTML, JS, кода CSS или URL
- мониторинг WiFi и BLE
- мониторинг сети
- SSLStripping с обходом HSTS.
- Поддержка caplets — каплетов, скрипты позволяющие автоматизировать сложные атаки.
- MITM атаки с расширенными возможностями, такими как DNS спуфинг и обход HTTPS. и т.д.
У нас уже установлен Golang, так что установка bettercap не должна быть проблемной, но до начала всех действий нужно удалить уже установленный bettercap:
		Код:
	
	apt-get remove bettercap
		Код:
	
	apt-get install libpcap-dev libnetfilter-queue-dev
		Код:
	
	go get github.com/bettercap/bettercap
cd $GOPATH/src/github.com/bettercap/bettercap
make build && sudo make install
		Код:
	
	cd /usr/local/
ln -s /gopath/src/github.com/bettercap/bettercap/./bettercap
		Код:
	
	help MODULE : List available commands or show module specific help if no module name is provided.
  active : Show information about active modules.
  quit : Close the session and exit.
  sleep SECONDS : Sleep for the given amount of seconds.
get NAME : Get the value of variable NAME, use * alone for all, or NAME* as a wildcard.
  set NAME VALUE : Set the VALUE of variable NAME.
  read VARIABLE PROMPT : Show a PROMPT to ask the user for input that will be saved inside VARIABLE.
  clear : Clear the screen.
  include CAPLET : Load and run this caplet in the current session.
  ! COMMAND : Execute a shell command and print its output.
alias MAC NAME : Assign an alias to a given endpoint given its MAC address.- help MODULE : Модуль справки, перечислит доступные команды или покажет справку определенному модулю.
 
 Код:help net.sniff
 
- active: Выводит информацию об активных модулях.
- quit: Закройте сеанс и выход.
- sleep SECONDS: Сон на указанное количество секунд.
- get NAME: Получите значение имени переменной, используйте * один для всех или ИМЕНИ* как подстановочный знак.
 Код:get net.sniff*
 
- set NAME VALUE : Установить значение переменной.
 Код:set net.sniff.local true
- read VARIABLE PROMPT: Показать запрос для того что бы ввести данные которые будут сохранены внутри переменной.
 Код:read set net.sniff.local
- clear: Очистит экран.
- include CAPLET: Загрузит и выполнит этот caplet на текущей сессии.
 Код:include /example.cap
- ! COMMAND: Выполнит команду оболочки и распечатайте ее вывод.
 Код:!iwconfig
- alias MAC NAME : Присвоит псевдоним данной конечной точке, учитывая ее MAC-адрес.
 Код:alias 00:11:bc:22:fd:00 AccessName
 Установка Caplets Bettercap
 
 Caplets - Каплеты это что то вроде rc файлов для Metasploita,то есть это сценарий команд которые будут выполнятся при обращение к этому каплету.Каплеты просто необходимы для использования bettercap, конечно можно обойтись и без них, но с ними управление bettercap куда быстрее и удобней.
 Устанавливаются они так же с gitlab:
 Немного о capletsКод:git clone https://github.com/bettercap/caplets.git cd caplets sudo make install
 
 Каплеты очень удобны и при умном походе увеличат скорость работы в разы, согласитесь в некоторых случаях важны доли секунд, а тут есть возможность вместо пяти команд ввести всего одну.
 Давайте посмотрим какие каплеты у нас появили и в каких директориях они находятся, давайте получим справку какие операнды у нас есть над каплетами в bettercap, для этого в уже запущеном bettercap вводим:
 Код:help caplets- caplets.show : Покажет список всех установленных caplets.
- caplets.paths : Покажет список директорий где будет искать caplets.
- caplets.update : Установит\обновит каплеты.
 
- Теперь в запущенном Bettercap посмотрим в каких директориях bettercap ищет caplets:
 Код:caplets.paths
 
 
 Давайте создадим каплет к примеру "Прозрачного прокси", для этого нужно создать текстовый файл с любым удобным для вас именем и расширением .cap, далее в него впишем следующий сценарий:
 Код:set http.proxy.sslstrip true set net.sniff.verbose false set arp.spoof.targets $0 arp.spoof on http.proxy on net.sniff on- set http.proxy.sslstrip true - Включает снятие SSL.
- set net.sniff.verbose false - Отображать пакеты только пропарсиные на уровне приложений (http/email/ftp...).
- set arp.spoof.targets $0 - "$0" Будет изменено на указанный нами ip\mac адрес, можно указать список разделяя запятой или подсетку ip адресов.
- arp.spoof on - Запускает спуфинг.
- http.proxy on - Запускает прокси сервер.
- net.sniff on - Запускает снифинг.
 
- К примеру назовём его "transparent-proxy.cap", его необходимо поместить в одну из тех директорий которые показал нам bettercap, наверное будет удобней создать директорию caplets в корне директории root, то есть новые каплеты можно будет класть в "/root/caplets".
 $0 - Будет изменятся на то значение которые мы укажем в команде запуска, в следующих темах мы более подробно остановимся на уже предлагаемых каплетах и более подробно рассмотрим их создание.
 Теперь давайте создадим ещё один каплеты который будет выключать этот прокси, создаём ещё один текстовый файл, называем его "transparent-proxy-stop.cap", открываем и добавляем в него следующий сценарий:
 Код:set http.proxy.sslstrip false set net.sniff.verbose true arp.spoof off http.proxy off net.sniff off- set http.proxy.sslstrip false - Выключает снятие SSL, просто меняем на исходное значение.
- set net.sniff.verbose true - Отображать каждый пакет который только будет захвачен, просто меняем на исходное значение.
- arp.spoof off - Останавливает спуфинг.
- http.proxy off - Останавливает прокси сервер.
- net.sniff off - Останавливает снифинг.
 
- Первый каплет запускается с указанием MAC/ip адреса, или подсети.Можно указывать множество целей разделяя их запятой.
 В bettercap вводим:
 Код:transparent-proxy 192.168.0.13
 
 192.168.0.13 - IP адрес для которого будет использоваться прозрачный прокси.
 Прокси запущен, всё работает, теперь для его остановки используем второй созданный каплет:
 Код:transparent-proxy-stop
 
 Думаю общий смысл ясен, для того что бы запустить "Прозрачное прокси", необходимо было прописывать каждую команду, задавая каждый параметр к переменным модулей, в место этого мы уже прописали все необходимые параметры и команды в один сценарий (caplet), который запускается одной командой.
 
 Заключение
 
 Конечно тут нет и одной десятой из всего того что можно и нужно узнать о bettercap, теперь этот инструмент даёт более широкие возможности и стал ещё более гибким в управление.
 
 В следующих статьях мы поговорим о модулях и рассмотрим несколько примеров их использования, затронем тему с caplets, изучим часть из тех что нам предлагают и создадим несколько своих для того что бы более полное понятие их возможностей.
			
				Последнее редактирование модератором: 
			
		
	
							 
	 
	 
	 
	 
	
 
 
		 
 
		
 
 
		 
 
		 
 
		 
	