Статья Открытый код. Шифруем файлы. Объединяем задачи разработки в одном инструменте. Отслеживаем что происходит в Wi-Fi сети.

OpS1.jpg

Введение

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

Дисклеймер: Все данные, предоставленные в статье, взяты из открытых источников. Не призывают к действию и предоставлены только для ознакомления и изучения механизмов используемых технологий.

Age шифруем файлы

Что это?​

Age — это утилита для шифрования файлов и библиотека, написанная на языке Go. Установить Age можно через разные менеджеры пакетов на различных операционных системах. Этот инструмент уже предлагает готовые исполняемые файлы для Windows, Linux, macOS и FreeBSD. Age поддерживает шифрование для нескольких получателей и обеспечивает защиту с использованием паролей и SSH-ключей.

Установка и использование​

Устанавливаем инструмент через менеджер пакетов в Linux. В моём случае это:
Код:
apt install age
Рассмотрим варианты использования с ключом, парольной фразой, для нескольких разных получателей с другими ключами. Шифровать буду в трех картинках.

Использование ключа​

Сначала генерируем файл c закрытым и открытым ключом:

Код:
age-keygen -o key.txt
После через флаг -o обозначаем название конечного файла с расширением .age , через флаг -r вводим публичный ключ шифрования и в конце файл который хотим зашифровать:

Код:
age -o 1.png.age -r age129a6gr6c7m6xf34m3vxf3zkquahtg5n877kljpn5j5xheddkq5wqts3fwt 1.png
Как можем наблюдать из начала строки шифра, age использует свой метод шифрования:

  1. Симметричное шифрование: Для шифрования самих данных Age использует алгоритм XChaCha20, который является вариантом ChaCha20 и обеспечивает высокую скорость и безопасность.
  1. Асимметричное шифрование: Для шифрования ключа, используемого для симметричного шифрования, Age применяет алгоритм Curve25519. Это позволяет использовать публичные и приватные ключи для безопасного обмена.
  1. Хеширование: Age также использует алгоритм Argon2 для хеширования паролей, что добавляет дополнительный уровень защиты при использовании паролей для шифрования.
Дешифровка происходит при помощи файла с закрытым ключом:

Код:
age -d -i key.txt 1.png.age > 2.png
Флаг -d режим дешифровки и флаг -i обозначает файл с закрытым ключом, далее файл который нужно дешифровать конечный файл.
ag2.png
ag1.png

Использование парольной фразы​

Для парольной фразы нам достаточно использовать флаг -p и название начального и конечного файла:

Код:
age -p 3.png > 3.png.age
Для дешифровки флаг -d и название начального и конечного файла:

Код:
age -d 3.png.age > 4.png
ag3.png

Множественные получатели​

Шифруем файл двумя ключами и более:

Код:
age -o 5.png.age -r age1ystkthv2kgwa4lld9ppfkgdus4u3q8umxsy7k7nxcthxtmyegpsshh6z4a \
    -r age178hmmna698kz02kt02d3a6g4nn6hnwzljp5tjuk6gea4lsfpa30ssvxe4j 5.png
У нас есть два файла закрытых ключей, попробуем дешифровать с двух файлов:

Код:
age -d -i key.txt 5.png.age > 6.png
age -d -i key3.txt 5.png.age > 7.png

ag4.png

DevToys швейцарский нож для программистов

Что это?​

DevToys — это универсальный инструмент для разработчиков, который предлагает множество компактных утилит для решения повседневных задач в разработке. Теперь нет необходимости обращаться к множеству ненадежных веб-сайтов для простых операций, таких как расшифровка текста или сжатие изображений. Благодаря функции Smart Detection приложение автоматически определяет наилучший инструмент для данных в буфере обмена.

По умолчанию DevToys включает 30 инструментов:

  • Конвертеры: JSON <> YAML, даты, числовые системы и др.
  • Кодеры/декодеры: HTML, URL, Base64, GZip, JWT, QR-коды и т.д.
  • Форматеры: JSON, SQL, XML и др.
  • Генераторы: хеши и контрольные суммы, Lorem Ipsum, пароли и др.
  • Графические инструменты: симулятор цветовой слепоты, компрессор PNG/JPEG и др.
  • Тестеры: JSONPath, RegEx, XML и др.
  • Текстовые утилиты: предварительный просмотр Markdown, сравнение текста, анализаторы и другие полезные инструменты.

Установка и использование​

Переходим на официальный репозиторий в GitHub, на страницу . Скачиваем и запускаем установку в моём случае через dpkg:

Код:
wget https://github.com/DevToys-app/DevToys/releases/download/v2.0.5.0/devtoys_linux_x64.deb
dpkg -i devtoys_linux_x64.deb
Запускаем и смотрим на наш мультитул:
dv1.png
Видим что инструментов действительно множество, поэтому рассмотрю по инструменту из каждого раздела.

Конвертеры​

Например конвертация времени в различные форматы:

dv2.png

Энкодеры и декодеры​

Например работа с переводом текста в Base64:
dv3.png

Форматеры​

Например перевод в формат xml:
dv4.png

Генераторы​

Например генератор хеша:
dv5.png

Тестеры​

Например тестер регулярных выражений:
dv6.png

Работа с текстом​

Например различное преобразование текста:
dv7.png

NetAlertX мониторинг сети

Что это?​

NetAlertX — это открытая система для сканирования сети и получения уведомлений, разработанная для быстрого выявления злоумышленников в вашей Wi-Fi и LAN сетях. Она предоставляет пользователям возможность планировать сканирование устройств, отслеживать изменения в портах и получать уведомления при обнаружении незнакомых устройств или изменений. Платформа поддерживает различные методы сканирования, включая arp-scan, импорт баз данных Pi-hole и SNMP-сообщений от маршрутизаторов.

Установка и использование​

Для установки нам потребуется скачать репозиторий и запустить скрипт установки и запуска программы:

Код:
git clone https://github.com/jokob-sk/NetAlertX
cd NetAlertX/install
bash install.debian.sh
Далее скрипт сам всё запустит, и нам останется только перейти по адресу .
na1.png
Интерфейс у программы очень большой, поэтому пробежимся по самым основным. В пункте девайсов отображены все устройства которые подключены или были ранее подключены к сети. Как можем наблюдать есть даже график активности, на котором можно наглядно изучить то, какие устройства и с какой периодичностью подключались или отключались. На основании такой активности можно отслеживать и идентифицировать сетевые атаки.
na2.png
Если перейдём в уведомления(колокольчик), то нас ждёт подробнейшая отчётность по устройствам в сети.
na3.png
Топология сети с описанием всех устройств.
na4.png
na5.png
Описание каждого устройства и инструменты для сканирования портов.

В целом инструмент очень обширный, большая часть составляет отчётность по активности в сети, различные настройки по выбору сетевого адаптера для сканирования, сетевой маски и пр.
na6.png

Заключение

В рамках статьи я продемонстрировал очередной перечень ПО с открытым исходным кодом, которое может пригодится как сетевикам, программистам, так и просто для общего развития.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!