# Tempora Новицкий Глеб Павлович Терехов Павел Сергеевич Система мониторинга утечек данных предназначена для выявления инцидентов, связанных с публикацией конфиденциальной информации в открытых источниках (форумы, даркнет, Telegram-каналы). Система осуществляет непрерывный сбор, анализ и визуализацию упоминаний, связанных с потенциальными утечками. Проект разработан в рамках учебной практики студентом направления «Информационная безопасность автоматизированных систем». ``` ├── Driver/ Основной компонент для работы с веб-ресурсами │ ├── chrome_proxy.py Работа с Chrome через undetected-chromedriver + прокси │ └── driver_creator.py Создание и настройка экземпляра драйвера ├── Tasks/ Модуль задач парсинга │ ├── forum_crawler.py Парсинг данных с форумов │ └── tg_crawler.py Парсинг Telegram-каналов ├── Utils/ Вспомогательные утилиты │ └── logg.py Логирование работы системы ├── Web/ Веб-интерфейс │ ├── Static/ CSS/JS/Изображения │ ├── Templates/ HTML-шаблоны │ └── app.py Flask приложение └── Основные файлы: ├── .env Конфигурации, секреты приложения ├── .gitignore Игнорируемые файлы для Git ├── celery_app.py Конфигурация Celery ├── celery_beat.py Планировщик задач Celery ├── initiator.py Точка входа ├── requirements.txt Зависимости Python └── README.md Описание проекта ``` ### Основные функции * Мониторинг 3 телеграм каналов, одного форума * Визуализация данных на веб-интерфейсе * Централизованное логирование и уведомления об ошибках ### Запуск проекта pip install -r requirements.txt В отдельных окнах python celery_beat.py python initiator.py ### Зависимости | Библиотека | Назначение | Область применения | | -------------------------- | --------------------------------------------------------------------- | -------------------------------------------- | | `requests` | HTTP-клиент для отправки запросов и получения ответов | Парсинг, работа с API | | `setuptools` | Инструмент для упаковки Python-проектов и управления зависимостями | Сборка, установка пакетов | | `python-dotenv` | Загрузка переменных окружения из файла `.env` | Конфигурация, безопасное хранение секретов | | `tls-client` | Кастомный HTTP-клиент с поддержкой TLS и антибот-защиты | Парсинг сайтов с защитой | | `undetected-chromedriver` | Модифицированный ChromeDriver, обходящий антибот-защиту | Веб-скрапинг с защитой (Cloudflare и др.) | | `selenium` | Управление браузером для автоматизации действий | Парсинг, тестирование веб-интерфейсов | | `grpc_interceptor_headers` | Расширение gRPC-перехватчиков с поддержкой заголовков | gRPC API, метаданные | | `telethon` | Асинхронная библиотека для работы с Telegram API через MTProto | Мониторинг Telegram-каналов | | `schedule` | Простое планирование задач в Python | Локальный запуск задач по расписанию | | `psycopg2-binary` | PostgreSQL-драйвер для Python | Работа с СУБД PostgreSQL | | `docker` | Python-интерфейс к Docker Engine API | Управление контейнерами программно | | `asyncio` | Базовая библиотека Python для асинхронного программирования | Асинхронные задачи, неблокирующий ввод/вывод | | `pytz` | Работа с часовыми поясами | Корректная работа с временем | | `flask` | Легковесный веб-фреймворк | Веб-интерфейсы, REST API | | `apscheduler` | Планировщик задач с расширенными возможностями (cron, interval, date) | Автоматизация периодических задач |