Введение
Fluxion — популярный инструмент, используемый для аудита безопасности Wi-Fi. Как и любое сложное программное обеспечение, он иногда может сталкиваться с проблемами или сбоями во время работы. Когда это происходит, генерируемые им файлы журналов (log files) являются бесценным ресурсом для понимания того, что пошло не так.
В этой лабораторной работе вы изучите фундаментальный процесс анализа файлов журналов Fluxion для целей устранения неполадок. Вы будете использовать простые, но мощные инструменты командной строки Linux для навигации по файловой системе, проверки файлов журналов и поиска конкретных сообщений об ошибках. Этот навык является неотъемлемым для любого специалиста по безопасности или системного администратора.
Переход в подкаталог 'logs' в папке Fluxion
На этом шаге вы начнете с перехода в каталог, где Fluxion хранит свои файлы журналов. Для этой лабораторной работы мы смоделировали каталог fluxion внутри вашей папки ~/project. Журналы находятся в подкаталоге с именем logs.
Вы будете использовать команду cd (change directory) для перехода в нужную папку. Это первый шаг для доступа к любым файлам, которые вам нужно проверить.
Выполните следующую команду в вашем терминале:
cd fluxion/logs
После выполнения команды приглашение вашего терминала изменится, отражая ваше новое местоположение, которое теперь должно быть ~/project/fluxion/logs. Вы также можете использовать команду pwd (print working directory) для подтверждения вашего текущего местоположения.
pwd
Вы должны увидеть следующий вывод:
/home/labex/project/fluxion/logs
Вывод списка файлов журналов для поиска самого последнего
На этом шаге вы выведете список файлов в каталоге logs. При устранении неполадок вас часто интересует самый последний файл журнала, поскольку он соответствует вашей последней попытке.
Команда ls используется для вывода списка файлов и каталогов. Чтобы упростить поиск самого нового файла, вы можете использовать флаги -lt.
lпредоставляет формат длинного списка с такими деталями, как права доступа, владелец, размер и дата последнего изменения.tсортирует файлы по времени последнего изменения, причем самые новые файлы отображаются первыми.
Теперь выполните команду ls -lt, чтобы увидеть файлы журналов:
ls -lt
Вы увидите вывод, похожий на этот, с самым последним файлом журнала вверху:
total 8
-rw-r--r-- 1 labex labex 298 Oct 27 14:00 fluxion_20231027_140000.log
-rw-r--r-- 1 labex labex 234 Oct 26 10:30 fluxion_20231026_103000.log
Из этого вывода вы можете легко определить fluxion_20231027_140000.log как самый последний журнал.
Использование 'cat' или 'less' для просмотра содержимого файла журнала
На этом шаге вы просмотрите содержимое самого последнего файла журнала, который вы определили. Существует несколько команд для отображения содержимого файла, но cat и less являются двумя наиболее распространенными.
cat(concatenate) читает файл и выводит его полное содержимое в терминал. Лучше всего подходит для небольших файлов.less— это пейджер, который позволяет прокручивать файл. Он идеально подходит для больших файлов.
Поскольку наши файлы журналов небольшие, cat — хороший выбор. Давайте посмотрим содержимое самого последнего файла журнала, fluxion_20231027_140000.log.
Выполните следующую команду:
cat fluxion_20231027_140000.log
Терминал отобразит полное содержимое файла журнала:
[2023-10-27 14:00:01] INFO: Starting Fluxion v3.1
[2023-10-27 14:00:05] INFO: Scanning for wireless networks...
[2023-10-27 14:01:15] INFO: Target selected: OfficeNet
[2023-10-27 14:02:00] WARNING: Deauthentication attack failed. Target may be out of range.
[2023-10-27 14:02:05] INFO: Retrying attack...
[2023-10-27 14:03:45] ERROR: Handshake capture timed out.
[2023-10-27 14:03:50] INFO: Shutting down.
Теперь вы можете увидеть каждое событие, которое Fluxion записал во время своей работы.
Поиск сообщений об ошибках или предупреждений
На этом шаге вы научитесь быстро находить проблемы, выполняя поиск по определенным ключевым словам, таким как "ERROR" или "WARNING". Ручное чтение длинных файлов журналов неэффективно. Команда grep — это мощный инструмент для фильтрации текста и поиска строк, соответствующих определенному шаблону.
Базовый синтаксис: grep "pattern" filename. Давайте используем grep для поиска строк, содержащих слово "ERROR", в нашем файле журнала.
Выполните следующую команду:
grep "ERROR" fluxion_20231027_140000.log
Вывод покажет только строки, соответствующие шаблону:
[2023-10-27 14:03:45] ERROR: Handshake capture timed out.
Это немедленно укажет вам на критический сбой. Вы можете сделать то же самое для "WARNING", чтобы найти потенциальные, некритические проблемы. grep также поддерживает поиск без учета регистра с помощью флага -i (например, grep -i "error"), что полезно, если вы не уверены в регистре.
Сопоставление временных меток с ошибками атаки
На этом шаге вы примените полученные результаты для понимания контекста сбоя. Обнаружение сообщения об ошибке — это лишь часть процесса. Чтобы полностью понять, почему произошла ошибка, вам нужно изучить события, произошедшие непосредственно перед ней.
Снова взгляните на строку ошибки, которую вы нашли на предыдущем шаге:
[2023-10-27 14:03:45] ERROR: Handshake capture timed out.
Временная метка 14:03:45 является ключевой. Теперь повторно изучите полное содержимое журнала (вы можете снова использовать cat fluxion_20231027_140000.log) и посмотрите на записи, непосредственно предшествующие этой временной метке.
...
[2023-10-27 14:02:00] WARNING: Deauthentication attack failed. Target may be out of range.
[2023-10-27 14:02:05] INFO: Retrying attack...
[2023-10-27 14:03:45] ERROR: Handshake capture timed out.
...
Сопоставляя временные метки, вы можете построить хронологию событий:
- В
14:02:00атака деаутентификации не удалась. - В
14:02:05Fluxion повторил атаку. - Примерно через полторы минуты, в
14:03:45, истек срок захвата рукопожатия (handshake capture), что привело к окончательной ошибке.
Этот анализ предполагает, что проблема связана с атакой деаутентификации или отзывчивостью цели, а не с ошибкой программного обеспечения в самом Fluxion. Это суть эффективного устранения неполадок на основе журналов: использование временных меток для связи событий и диагностики первопричины.
Итоги
Поздравляем с завершением этой лабораторной работы! Вы освоили основные навыки анализа файлов журналов в среде Linux, что является критически важной задачей для устранения неполадок в приложениях, таких как Fluxion.
В этой лабораторной работе вы практиковались в:
- Навигации по файловой системе с помощью
cd. - Выводе и сортировке файлов для поиска самого последнего с помощью
ls -lt. - Просмотре содержимого файлов с помощью
cat. - Поиске конкретных ключевых слов, таких как "ERROR", с помощью
grep. - Сопоставлении временных меток для понимания последовательности событий, приведших к сбою.
Эти фундаментальные навыки работы с командной строкой применимы и будут полезны вам во многих областях системного администрирования, разработки и анализа безопасности.
