- 635
- 733
- 15 Янв 2017
Половина пути по настройке Mac для нужд пентестера уже пройдена, и теперь, после ознакомления с основами Git, настало время научиться использовать менеджер пакетов.
Автор:Barrow
Половина пути по настройке Mac для нужд пентестера уже пройдена, и теперь, после ознакомления с основами Git, настало время научиться использовать менеджер пакетов.
Без помощи менеджера пакетов в среде Linux/Unix вы будете делать много дополнительной работы. То есть, если вы захотите опробовать новую утилиту, то придется выполнять компиляцию исходников. Конечно, можно воспользоваться Mac App Store, однако большинство нужных нам утилит с открытым исходным кодом, которыми пользуются хакеры и профессионалы по безопасности, там отсутствуют.
Чтобы приложение появилось в Mac App Store разработчик должен заплатить деньги, а код утилиты пройти проверку со стороны сотрудников Apple, что, как вы понимаете, вносит дополнительные сложности. В общем, нам нужен альтернативный менеджер пакетов для загрузки и установки свободного программного обеспечения такого как Для просмотра ссылки Войди
Почему без менеджера пакетов жизнь становится сложнее
Если бы я захотел скомпилировать Aircrack-ngиз исходных текстов на моей машине с macOS, то вначале мне нужно было бы удостовериться, что присутствуют в нужных местах и работают корректно все необходимые зависимости. Затем мне потребовалось бы загрузить и сконфигурировать Aircrack-ng, выполнить компиляцию и попутно решить все возникающие проблемы.
Через несколько месяцев мне потребовалось бы обновить скомпилированное приложение. То есть нужно было бы удалить ранее установленное приложение, проверить, все ли библиотеки последних версий и повторить процесс заново.
атем проверить, есть ли зависимости, которые больше не используются (пришлось бы отслеживать, что установлено ранее).
В случае с менеджером пакетов, все вышеупомянутые операции выполняются в автоматическом режиме.
Выбор подходящего менеджера пакетов
Существует несколько менеджеров пакетов для macOS (например, Для просмотра ссылки Войди
При скачивании исходных текстов и бинарных файлов этот менеджер пакетов попутно скачивает все необходимые зависимости. Далее Homebrew отслеживает все, что установлено, и в какой директории. Кроме того, отслеживается информация о конфигурации. Короче говоря, поддержка программного обеспечения сильно упрощается.
Вначале я буду искать нужный мне пакет в резпозитории Homebrew прежде чем клонировать с GitHub и компилировать исходные тексты. Если пакет не найден через Homebrew, можно попробовать создать новую формулу для отсутствующего пакета. Хотя в резпозитории Homebrew не особо много приложений, используемых пентестерами, однако много библиотек и других полезных утилит с открытым исходным кодом.
Шаг 1: Установка Homebrew
Первый шаг – скачать Homebrew с сайта Для просмотра ссылки Войди
Откройте iTerm и выполните следующую команду:
/usr/bin/ruby -e "$(curl -fsSL Для просмотра ссылки Войди
Появится запрос на ввод пароля.
Рисунок 1: Установка Homebrew
Шаг 2: Создание токена доступа
Если вы выполняете поиск в репозитории brew достаточно часто, вам понадобится токен доступа поскольку GitHub API имеет ограничение на количество запросов.
Рисунок 2: Ошибка при поиске в репозитории, связанная с ограничением количества запросов
Чтобы настроить токен, нужно перейти по ссылке из терминала, залогиниться на GitHub и удостовериться, что сняты все флажки, поскольку нам нужен только токен.
Рисунок 3: Настройка нового токена
В самом низу страницы нажмите на «Generate Token». Далее нужно добавить созданный токен в Homebrew.
Шаг 3: Добавление токена
Чтобы добавить созданный токен, нужно отредактировать файлы .bashrc и .bash_profile, которые находятся в вашей домашней директории. Файл .bash_profile представляет собой персональный файл для инициализации, используемый во время авторизации в шелле (через SSH или консоль), в то время как .bashrc используется при каждом открытии нового экземпляра шелла после авторизации.
Мы можем один раз связать .bash_profile с .bashrc и затем все настройки перенести в .bashrc. В этом случае, если, например, мы подключимся к системе через SSH, то будем иметь среду с теми же настройками, что и в локальном терминале.
Для редактирования файлов я буду использовать Vim, однако вы можете работать с любым привычным вам текстовым редактором, либо стандартным редактором, если в терминале введете команду open ~/filename.
Чтобы использовать Vim, откройте новое окно с iTerm или введите команду cd для перехода в домашнюю директорию, и запустите следующую команду (если .bashrc отсутствует, для создания этого файла введите команду touch .bashrc):
- vim .bashrc
- export HOMEBREW_GITHUB_API_TOKEN="YOUR_TOKEN_HERE"
Рисунок 4: Содержимое файла .bashrc
Далее нажмите Esc для переключения в обычный режим и введите :wq для сохранения файла. Двоеточие означает начало команды, символы wq – сохранить изменения и завершить работу.
Затем необходимо отредактировать файл .bash_profile. Вводим следующую команду (если .bash_profile отсутствует, для создания этого файла введите команду touch .bash_profile):
- vim .bash_profile
- source .bashrc
Рисунок 5: Содержимое файла .bash_profile
После завершения редактирования нажмите Esc и введите команду :wq для сохранения изменений и выхода из редактора.
Далее укажем Bash, что нужно выполнить команды из файла .bashrc, как если бы эти команды запускались из командной строки:
- source ~/.bashrc
Шаг 4: Использование Homebrew
Homebrew во многом схож с другими менеджерами пакетов, используемыми в Linux. Перед началом работы ознакомимся со справочной информацией при помощи следующей команды:
- brew help
Рисунок 6: Справочная информация о Homebrew
Очень простой менеджер пактов. Если вы знакомы с Для просмотра ссылки Войди
Теперь попробуем установить какой-нибудь пакет. Я выбрал популярную утилиту Hydra, которая предназначена для брутфорса паролей. Вначале проверяем, есть ли этот пакет в репозитории, при помощи следующей команды:
- brew search hydra
- brew info hydra
Рисунок 7: Поиск и получение информации о пакете Hydra
Затем при помощи следующей команды устанавливаем пакет (я выбрал установку с графическим интерфейсом):
- brew install hydra --with-gtk+
Рисунок 8: Графическая оболочка для приложения Hydra
Как вы могли убедиться, прочитав справку, обновление, удаление и другие операции с утилитами интуитивно понятны.
Заключение
Установка и поддержка пакетов при помощи Homebrew не составляет труда, особенно если у вас есть опыт работы с Linux. Перед установкой приложения с открытым исходным кодом я практически всегда вначале ищу в репозитории для Homebrew. Если пакет отсутствует, я скачиваю исходный текст с GitHub. Большинство нужд, связанных с приложениями, можно решить при помощи этих двух методов.