Обновлено 18.01.2015

Вступительная часть

Здравствуйте.

Наверняка многие что-то уже слышали про Kali Linux. Но если кто не знает, то это такой Debian-based дистрибутив, который содержит в себе огромное количество программ, связанных с тестированием безопасности различных сервисов/систем и т.п.

Проще говоря, Kali Linux часто используют когда нужно быстро проверить что-либо на уязвимость, не устанавливая при этом попутно кучу связанных с этим пакетов.

Несмотря на то, что этот дистрибутив вполне можно использовать в виртуальных машинах (к слову, на официальном сайте лежат даже уже собранные образы для VMWare), в некоторых случаях это может не подойти, так как часто Kali используют для перехвата и анализа Wi-Fi трафика, а проброс сетевой карты в виртуальную машину доступен лишь если она, например, USB'шная, а не встроенная. (Хотя вот тут я могу и ошибаться. Возможно, есть какие-то пути решения посредством Hyper-V, но я не вдавался в подробности). Да и не везде же с собой таскать виртуальную машину и USB-карту.

Так вот, в голову сразу напрашивается довольно оптимальный вариант: использовать Live версию этого дистрибутива. Его как раз можно записать хоть на диск, хоть на USB-флэшку. Вставил в любой компьютер, загрузился с внешнего устройства, да и взламывайпроводи тесты на безопасность.

В интернете можно найти много статей на эту тему. Тут тебе и установка с помощью Win32 Disk Imager, и с помощью YUMI. Но что делать, если флэшка одна и её потом еще хочется использовать обычным способом (хранение и перенос файлов, и т.п.)?

Какой-нибудь продвинутый читатель заметит, что можно с помощью GParted (или любой другой подобной программы) создать второй раздел на флэшке, форматнуть его в NTFS и использовать в своё удовольствие. Но нет, не всё так просто. Windows, по-умолчанию, видит только лишь первый раздел флэшки. На остальные ей наплевать. (Linux системы я не рассматриваю, в них этой проблемы нет).

Тогда в голову приходит другой вариант: можно сначала создать NTFS раздел для Windows, затем раздел под Kali Linux и записать туда образ с загрузчиком.

Так вот, попробуем это всё проделать.

Инструкция

Я буду проводить всё в условиях виртуальной машины с Linux Mint. По идее, можно использовать любой дистрибутив, где есть программа dd. На Windows, думаю, тоже можно что-то подобное сделать через CygWin.

Для начала, запускаем GParted (или любой другой редактор разделов), выбираем нашу флэшку и удаляем с неё все разделы:

View post on imgur.com

Также, запоминаем (или куда-нибудь записываем), какой «адрес» имеет флэшка. В моём случае, это /dev/sdb.

Теперь нам нужен образ с Kali Linux. Получить его можно, например, здесь.

Сохраняем его куда-нибудь, затем запускаем терминал и вводим:

dd if=путь_до_образа.iso of=/dev/sdb bs=512k, где /dev/sdb — это тот самый «адрес» флэшки. Не перепутайте его!

View post on imgur.com

После выполнения данной команды, dd запишет образ на флэшку, попутно создав нужные для работы загрузчика разделы.

Должно получиться что-то вроде этого:

View post on imgur.com

Снова удаляем все разделы и создаём три своих.

Первый будет использоваться для работы флэшки, как обычного USB-накопителя, то есть именно на него будут записываться все файлы и прочее. Чуть выше было замечено, что Windows будет показывать в проводнике именно его, поэтому желательно указать для него как можно больший размер, при этом оставив около 4 ГБ для Kali Linux и 2-3GB для Persistence раздела,

В качестве файловой системы можно либо сразу поставить NTFS, либо «Не отформатировано», если собираетесь произвести это потом средствами Windows.

Во второй раздел будет записан образ Kali Linux, и именно с него будет производиться загрузка операционной системы.

Третий же раздел используется для хранения всех созданных/измененных, в процессе работы Kali Linux, файлов. Он необязателен, если вы хотите, чтоб ваша система была всегда чистой при последующих загрузках.

В общем, должна получиться следующая таблица разделов:

View post on imgur.com

 

Применяем изменения и ждём. После завершения разбиения должно получиться что-то вроде этого:

View post on imgur.com

Теперь снова в терминале выполняем следующую команду:

dd if=путь_до_образа.iso of=/dev/sdb2 bs=512k

Только теперь, вместо /dev/sdb, указываем /dev/sdb2, то есть даём dd указание, что записать образ нужно непосредственно во второй раздел флэшки, не трогая остальные.

View post on imgur.com

Помните, что /dev/sdb2 — это путь до раздела, где будет храниться Kali Linux. У меня он именно такой (см. скриншот с GParted). Скорее всего, у вас он не будет отличаться, но перепроверьте всё несколько раз, чтоб не перезаписать что-нибудь важное. Также обратите внимание, что раздел для Windows должен быть первее (sdb1 > sdb2), чем раздел с Linux.

Наконец, жмём Enter и ждём завершения работы программы dd.

View post on imgur.com

Видим, что файлы успешно записались

View post on imgur.com

А также, что первый раздел флэшки успешно видится Windows:

View post on imgur.com

Теперь опять возвращаемся в GParted и устанавливаем разделу с Kali Linux флаг «Boot» («Загрузочный»)

View post on imgur.com

View post on imgur.com

Включение Persistence режима

Для того, чтобы наша Live версия умела сохранять куда-нибудь свои файлы, измененные в процессе работы, необходимо проделать еще некоторые действия.

Снова заходим в терминал и выполняем следующие команды:

mkdir /mnt/usb

mount /dev/sdb3 /mnt/usb

echo «/ union» >> /mnt/usb/persistence.conf

umount /mnt/usb

Проверяем, что файл создался.

View post on imgur.com

Загрузка

Теперь самый захватывающий процесс, загрузка с флэшки.

Тут всё, как обычно: заходим в BIOS, на первое место ставим загрузку с USB-FLASH и ждём.

Если вы всё сделали правильно, то вас должен приветствовать вот такой вот экран

View post on imgur.com

Выбираем пункт Live USB Persistence (либо Live (amd64), если не хотите сохранения) и взламываемнаслаждаемся новенькой Kali Linux прямо у вас на флэшке.

Всем спасибо за прочтение!

Видео-инструкция

Если вам лень читать, либо что-то осталось непонятным, то можете посмотреть данное видео.