Mac на службе у хакера. Часть 7 – Установка RVM для работы со проектами на Ruby

Mac на службе у хакера. Часть 7 – Установка RVM для работы со проектами на Ruby

Настройка системы для пентестов практически завершена. После того как мы вооружились Git и Homebrew, настало время сделать еще один небольшой, но очень важный шаг, и познакомиться с Ruby.

Автор: Barrow

Настройка системы для пентестов практически завершена. После того как мы вооружились Git и Homebrew, настало время сделать еще один небольшой, но очень важный шаг, и познакомиться с Ruby.

Ruby представляет собой объектно-ориентированный скриптовой язык, используемый в таких популярных проектах как Metasploit и WPScan. Хотя Ruby установлен по умолчанию в macOS, средства управления средой, на базе этого языка (например, работа с gem файлами и версиями Ruby), по сути, отсутствуют.

Управление версиями Ruby нужно по нескольким причинам. Во-первых, версия Ruby, встроенная в macOS, вместе с сопутствующими библиотеками обычно устаревшая. Во-вторых, для корректной работы некоторых хакерских утилит требуются специфические версии Ruby, и нам нужно одновременно несколько рабочих версий.

Существует два средства управления версиями Ruby: rbenv и RVM (Ruby Version Manager). Rbenv - небольшого размера с поддержкой модулей. Больше заточен под философию Unix-среды «делай что-то одно и хорошо». Хотя лично я предпочитаю RVM, в котором собраны все средства, необходимые для управления средами, что позволяет удовлетворить практически все наши нужды. Кроме того, этот менеджер рекомендован для работы с Metasploit Framework.
В этой статье мы рассмотрим установку RVM в macOS и обновление Ruby до последней версии.

Шаг 1: Установка GPG

Текущая версия RVM подписывает и проверяет все релизы, в том числе установочный скрипт rvm-installer. В большинстве случаев все автоматизировано, и во время установки проверяется, подписаны ли файлы.

Для начала нам нужно установить GPG, утилиту с открытым исходным кодом, которая позволит нам шифровать и подписывать все данные, используемые во время коммуникаций. Если у вас уже установлен Homebrew, воспользуйтесь следующей командой:

  • brew install gpg


Рисунок 1: Установка GPG

Шаг 2: Установка RVM

Запускаем RVM-установщик при помощи следующей команды:

Эта команда указывает cURL, что нужно скачать скрипт и следовать любым изменениям, связанными с местонахождением файлов, о которых сообщает хост (флаг -L). Затем происходит связывание (|) с bash. Опция -s stable позволяет выбрать стабильную версию менеджера RVM, параметр --autolibs=enabled автоматически разрешает проблемы с зависимостями, --ruby инсталлирует последнюю версию Ruby. После завершения установки закрываем текущее окно терминала, и открываем новое.

Шаг 3: Проверка версии Ruby

Проверяем версию Ruby, используемую по умолчанию на нашей машине, при помощи следующей команды:

  • rvm list


Рисунок 2: Проверки версии Ruby при помощи RVM

Как видно из рисунка выше, в нашей системе используется самая новая версия Ruby.

Шаг 4: Установка более ранних версий Ruby

Используя RVM, установить более раннюю версию Ruby, которая может потребоваться для запуска некоторых утилит, не составит особого труда. Откройте iTerm и введите следующую команду:

  • rvm install 2.2.5

Замените версию «2.2.5» на ту, которая необходима.

Рисунок 3: Установка более ранней версии Ruby

Я выбрал версию 2.2.5, поскольку уже существует бинарный файл, и не нужно тратить время на компиляцию. При помощи следующей команды, вы можете получить список версий, которые легко скачать и установить:

  • rvm list known

Полученный список будет неполным, однако если вы изучите сайт RVM, то сможете найти более подробную информацию.

Шаг 5: Переключение между версиями

Посмотреть список всех установленных версий можно при помощи следующей команды:

  • rvm list

Для переключения на определенную версию используйте следующую команду:

  • rvm use 2.2.5

Версию 2.2.5 замените на ту, которая вам необходима.

Рисунок 4: Переключение на версию 2.2.5

Шаг 6: Удаление неиспользуемых версий

Если необходимые вам утилиты стали использовать последнюю версию Ruby, удалить ненужные версии можно при помощи следующей команды:

  • rvm remove 2.2.5

Как и в предыдущем шаге значение 2.2.5 можно заменить на то, которое вам необходимо.

Рисунок 5: Удаление версии 2.2.5

Если вы хотите удалить только Ruby, но оставить все остальное, имеющее отношение к этой версии, используйте следующую команду:

  • rvm uninstall 2.2.5

Как и в предыдущем случае, замените «2.2.5» на ту версию, которую нужно удалить.

Заключение

RVM – мощная и полезная утилита со множеством функций, которые могут пригодиться как разработчику, так и пентестеру. Вначале рекомендую ознакомиться со справочной документацией при помощи команды «man rvm». После установки этого менеджера версий мы сможем работать с проектами на Ruby, которые хранятся на GitHub. Теперь нам не нужно беспокоиться относительно конфликтов множества версий Ruby, установленных в системе.
В следующих статьях мы рассмотрим установку Kali Linux и Metasploit, упорядочивание утилит и основы редактора Vim.


Красная или синяя таблетка?

В Матрице безопасности выбор очевиден

Выберите реальность — подпишитесь