Привет всем, на связи с вами опять @zaguzin. Сегодня я начинаю новую серию статей, посвящённых безопасности беспроводных сетей. Простыми словами, мы с вами будем заниматься обыкновенным взломом. Я не буду рассматривать вопрос о законности моих действий, этичность и моральную составляющую, так как взламывать мы будет собственную сеть.
Мотивация данной серии постов - это рассказать и показать на простых примерах, что безопасность ваших сетей очень важна даже для дома, не говоря уже и о бизнесе.
Wi-Fi прочно вошёл в нашу жизнь. Мы используем смартфоны, планшеты, ноутбуки, телевизоры, умные вещи и многое другое. Но также, думаю, нужно задуматься и о безопасности. Одно дело, когда юный кулхацкер ради интереса взломает вашу сеть для использования вашего интернета в личных целях, за неимением денег на своё подключение, а другое дело совсем, если на базе ваших устройств будет создана красивая ботнет сеть или ещё что похуже. А может кто-то майнить криптовалюту захочет или к вашему кошельку подбирается? Или украсть ваши данные для входа на Голос, чтобы спереть честно заработанные статьями денежки? Пугать не буду, сами должны понимать. Да и просто это интересный процесс, о чём я тут собираюсь писать.
Я часто встречал, когда паролем Wi-Fi выступает номер телефона, сочетание 12345678 или ещё что простейшее. Или наоборот. Также иногда провайдеры, предоставляющие вам услуги, дарят роутер. А паролем выступает номер договора. Замечал у ТТК. Например, в одном небольшом городке, когда туда пришёл ТТК, многие на него переходили. А первые цифры договора начинались одинаково. Методом простого подбора можно было очень просто пользоваться чужой сетью.
Итак, как вообще обеспечивается безопасность обычных точек доступа или роутеров?
1. Открытая домашняя сеть. Да-да, встречается и такое. Это если вы открыты со всех сторон и вам нечего скрывать. От слова совсем. Или живёте на тайге и расшарили сеть для лесных жителей. Взламывать не нужно естественно. Подключился и пользуйся.
Иногда есть и другие методы авторизации сверху (Radius, к примеру). Используемые, например, на вокзалах или кафе. То есть сеть открыта и вы к ней можете подключиться, а при попытке открыть страницу от вас потребуется авторизация.
2. WEP. Первый вариант защиты Wi-Fi сетей. Устаревший. Используется редко, но я встречал. Ломается просто. Подробнее писать о нём буду, когда мы будем ломать его.
3. WPS. Подключение с помощью пин-кода или аппаратно. Это не шифрование, а способ. Облегчение жизни для поключения новых устройств. Например, для ваших гостей. Рассмотрим позже. Я лично отключаю данную функцию в роутерах.
4. WPA/WPA2. Сейчас в основном оно и используется. Это развитие WPA с шифрованием AES (или TKIP в WPA). TKIP позволяет создавать ключ аутентификации размером до 128 бит, AES – до 256 бит. Естественно, степень защиты WPA2 выше. Но если вы используете пароль 12345678 - это не будет иметь значения.
Также в WPA есть два режима работы: PSK (обычно используется по умолчанию) - для домашних сетей, используя пароль. Enterprise - пароль генерируется автоматически с использованием Radius.
Более подробно напишу, когда будем ломать WPA2.
Что мы будем использовать?
1. Роутер D-Link DIR-300, который я принёс из гаража. Там же валяется DIR-620, который немного глючит, с прошивкой OpenWRT. Поэтому его я брать не стал. DIR-300 перепрошит на прошивку Zyxel Keenetic уже достаточно давно. Менять прошивку на стандартную не буду, так как лень. Я уже давно использую даже дома маршрутизаторы Mikrotik, а D-Link пылятся в коробке с железным (для ПК) хламом и не используются. Приберёг на крайний случай.
2. Старый ноутбук-ветеран DELL Inspiron N5010. Ноутбук используется часто, так что ОС менять на нём не будем.
3. Операционную систему Kali Linux 2016.2, которая является Linux дистрибутивом для проведения тестирования на проникновение и аудита безопасности.
4. Китайская флешка Apacer на 16 Гб. Можно взять и менее объёмную, например 8 ГБ. Потребуется для записи ОС, упомянутой выше.
5. Клиент для WiFi сети. Я просто взял один из смартфонов.
6. Что-нибудь ещё, что всплывёт в материале.
Комплект железа (кроме смартфона), готовый к издевательствам:
Kali Linux
Итак, мы скачали Kali Linux. Теперь у нас есть несколько вариантов действий.
1. Записать ОС на болванку или флешку и установить на ПК или ноутбук. Устанавливается она аналогично любой другой Linux. Можно установить по сети или ещё как хотите. Установка похожа на установку Debian, впрочем, Kali на нём и основана.
2. Kali Live USB - просто запустить ОС с флешки.
3. Kali Live USB Persistence - Добавляет возможность сохранения ваших данных в отдельном разделе на флешке. Этот вариант мы и будем использовать.
Для записи нам понадобится программы Rufus и MiniTool Partition Wizard. Последний вы можете взять тут (Русская версия 10.1).
Вставляем чистую флешку и запускаем программу Rufus. В выборе образа указываем путь к нашему скачанному образу Kali Linux (я взял i386), в настройках загрузачного диска - DD-образ. То есть как на скриншоте.
Нажимаем старт и ждём завершения записи. Закрываем Rufus. После этого передёргиваем флешку и запускаем программу MiniTool Partition Wizard. Выбираем нашу флешку. Нажимаем правой кнопкой мыши на нераспределенное место на флешке и выбираем создать.
В параметрах пишем метку раздела - persistence, файловую систему - Ext4, а раздел выбираем как основной (Primary) и нажимаем ОК.
После закрытия окна настройки раздела применяем изменения и ждём окночания процесса создания раздела.
После этого нам потребуется загрузиться с созданой флешки. У каждого ПК это по разному, у кого-то это может быть F8 при запуске системы, также можно просто в BIOS (или UEFI) настроить порядок загрузки. Смотрите в сети, как у вашего ПК это организовано. При запуске с флешки выбираем "Live USB Persistence".
После загрузки системы мы увидим на рабочем столе раздел persistence.
Он у нас пока ещё не работает. Открываем терминал и пишем команду fdisk -l
У нас отобразятся наши разделы. Находим наш раздел (Linux). Теперь в терминале пишем команды поочередно:
mkdir -p /mnt/USB
mount /dev/sdb3 /mnt/USB
echo "/ union" >> /mnt/USB/persistence.conf
umount /dev/sdb3
reboot
Система будет перезагружена. После перезагрузки выбираем опять "Live USB Persistence". Раздел persistence у нас с рабочего стола исчезнет. Теперь мы можем проверить сохранение наших файлов. Например, создать на рабочем столе папку или файл и опять перезагрузить компьютер. Всё должно остаться на месте. Также мы можем установить русский язык в систему, если вам этого хочется. Для этого нужно зайти в настройки.
Выбрать Region and Language.
В окне кликнуть пару раз по Language.
Выбрать Русский язык.
Теперь добавим русскую раскладку. В предыдущем окне, в Input Sourсes нажимаем плюс (+).
И также выбираем русский.
После этих действий нужно перезагрузить систему, чтобы получить русский интерфейс:
Можно также обновить программы до последней версии. В терминале пишем apt update, а после проверки - apt upgrade. То есть так-же, как и на Debian и Ubuntu. Терминал запросит подтвержение - соглашаемся, если желаем обновить ОС. Загрузка и установка обновлений может занять достаточно долгое время.
Кстати, не забывайте, что в Kali Linux пароль суперпользователя по умолчанию - toor (то есть root наоборот). Он может потребоваться, к примеру, если у вас отключился экран из за вашего бездействия. И система запросит пароль. Или для других операций. Будьте внимательнее!
Всем спасибо, на сегодня у меня всё. Завтра продолжим изучать данный вопрос уже на практике. Всем спасибо за внимание.
Привет!
Этот пост был выбран Академией Голоса и попал в список программы поддержки качественных образовательных постов.
Ссылка на твой пост будет опубликована в отчете Академии.
Спасибо за полезный контент (ノ◕ヮ◕)ノ*:・゚✧
Обязательно Kali Linux ставить? если это не так важно, то хочу предложить альтернативу.
Если у вас есть Linux то менять шило на мыло нет смысла. Если Windows 10 можно запустить Ubuntu которая интегрирована уже в систему. Выходит ставить Linux только для остальных случаев?
Kali Linux нужна будет из за набора софта, который в ней будет использоваться. Зачем искать пакеты, если они тут есть. Если хотите использовать ubuntu, тогда нужно будет искать и ставить софт самостоятельно. Я же не буду объяснять, как ставить и что. Мне проще Kali на флешке развернуть, чем про другие дистры рассказывать.
Тем более на 10-ке ubuntu кастрированная. И работает только на x64 Windows 10. Ядро для Android, к примеру, я на ней собрать пока не смог. А на Linux Mint - пожалуйста.
Не злись я только спросил можно или нет) Выходит я могу и на Ubuntu все поставить но это будут мои проблемы.
Ага. Можно будет конечно. Я не злюсь, просто не с той ноги встал наверное. Извиняюсь.