---
title: Praktika 3.2
---
<center><img src="https://i.imgur.com/ZerVsyP.png"><p></p>
</center>
--------
**Цель работы**: Формирование словарей паролей, пользователей и увлечений с помощью специальных утилит.
**Задачи**:
1. Установить Linux без GNU.
2. Установить следующие утилиты для составления словарей:
* pwdlogy.
* crunch.
3. Составить словари паролей, пользователей и увлечений.
4. Оформить отчёт в виде инструкции.
------------------------
# **Ход выполнения работы**:
Данная практическая работа выполняется на виртуальной машине с использованием операционной системы Ubuntu Server 22.04.
## **Установка**
Для начала установим **pwdlogy**. Для установки **pwdlogy** потребуется:
1) Установить git командой `sudo apt install git`. Процесс показан на рисунке 1.
<center><img src="https://i.imgur.com/CypZskd.jpg"><p></p>
Рисунок 1 – Успешная установка git</p></center>
2) Склонировать репозиторий с утилитой командой `git clone https://github.com/tch1001/pwdlogy`. Процесс показан на рисунке 2.
<center><img src="https://i.imgur.com/MEE6jhu.jpg"><p></p>
Рисунок 2 – Успешное склонирование репозитория</p></center>
3) Перейти в репозиторий командой `cd pwdlogy`.
4) Запустить утилиту командой `sudo python3 pwdlogy.py`.
Переход и успешный запуск утилиты показан на рисунке 3.
<center><img
src="https://i.imgur.com/IDJuLTS.jpg"><p></p>
Рисунок 3 – Успешное установка утилиты pwdlogy</p></center>
Далее установим **crunch**. Для установки **crunch** потребуется:
1) Установить утилиту командой `sudo apt install crunch`. Процесс установки утилиты показан на рисунке 4.
<center><img
src="https://i.imgur.com/XRx1U8M.jpg"><p></p>
Рисунок 4 – Установка утилиты crunch</p></center>
2) Проверить версию утилиты командой `crunch -version`. Проверка версии утилиты показана на рисунке 5.
<center><img src="https://i.imgur.com/c8KK7xN.jpg"><p></p>
Рисунок 5 – Проверка версии утилиты<p></p></center>
Далее для достижения целей нам понадобиться текстовый редактор. Установим, например, инструмент **nano**. Выполним команду`sudo apt install nano`. Процесс выполнения команды показан на рисунке 6.
<center><img src="https://i.imgur.com/wiLp7N6.jpg"><p></p>
Рисунок 6 – Установка инструмента nano<p></p></center>
---
## Составление словарей
**pwdlogy**
В директории **pwdlogy** есть несколько входных файлов:
* keywords.txt (для ключевых слов);
* commonPhrases.txt (для обычных фраз);
* birthday.txt (для дат).
Посмотрим файл с настройками командой `sudo nano settings_default.conf` . Файл с настройками показан на рисунке 7.
<center><img src="https://i.imgur.com/cq4y6kG.jpg"><p></p>
Рисунок 7 – Файл с настройками<p></p></center>
Из лекции нам известно то, что :
**Birthday.txt**: здесь мы можем указать дату рождения как самой цели, так и ближайших родственников, любимого человека, питомца или знакового события.
**Keywords.txt**: здесь мы указываем слова, которые могут оказаться каркасом пароля – имена, фамилии, отчества, хобби, никнеймы, клички.
Предположим, что наша цель - Антон, который любит машины и футбол, программирует на питоне, постоянно ест бургеры и шаурму. Мы знаем дни рождения его родственников и день, когда он сам родился.
Файл с **датами** показан на рисунке 8.
<center><img
src="https://i.imgur.com/mXt2aCF.jpg"><p></p>
Рисунок 8 – Файл с датами<p></p></center>
Файл со **словами** показан на рисунке 9.
<center><img
src="https://i.imgur.com/655d9W3.jpg"><p></p>
Рисунок 9 – Файл со словами<p></p></center>
Приступаем к генерации словаря.
Для этого запускаем утилиту командой `sudo python3 pwdlogy.py`.
Затем передаем утилите команду start. По окончанию генерации увидим строку =====DONE===== и утилита завершит свою работу.
Все сгенерированные варианты возможного пароля расположились в файле gen.txt.
Посмотрим сколько строк получилось в словаре командой `grep -c $ gen.txt`. В моем случае вышло 10 298 660 строк. Наглядно количество строк показано на рисунке 10.
<center><img
src="https://i.imgur.com/T4xEM1r.jpg"><p></p>
Рисунок 10 – Количество строк<p></p></center>
Можем посмотреть части содержимого словаря утилитами tail,sed,head.Части содержимого словаря показаны на рисунке 11.
<center><img
src="https://i.imgur.com/AsWT2yF.jpg"><p></p>
Рисунок 11 – Часть содержимого словаря<p></p></center>
---
**crunch**
Допустим,нам дали задание, что нам нужно подобрать номер телефона цели. Мы смогли узнали логин или почту жертвы и при попытке восстановления пароля от сервиса, нам говорят, что код подтверждения будет направлен в СМС по номеру телефона, где все цифры скрыты, кроме последних 4.
Давайте составим словарь возможных номеров телефона командой crunch 10 10 1234567890 -t +79@@@@@8759 > phone1.txt. Процесс показан на рисунке 12.
<center><img
src="https://i.imgur.com/GUCsFzk.jpg"><p></p>
Рисунок 12 – Файл phone1.txt<p></p></center>
---
**Вывод** : в ходе выполнения практической работы были изучены способы сбора метаданных, составления словарей для подстановки их в методы перебора паролей.