Go to file
2025-05-16 08:56:02 +03:00
driver docs: up readme 2025-05-16 08:56:02 +03:00
tasks feat: celery 2025-05-03 08:25:15 +03:00
utils feat: celery 2025-05-03 08:25:15 +03:00
web feat: celery 2025-05-03 08:25:15 +03:00
.gitignore feat: celery 2025-05-03 08:25:15 +03:00
celery_app.py docs: up readme 2025-05-16 08:56:02 +03:00
celery_beat.py feat: celery 2025-05-03 08:25:15 +03:00
docker-compose.yaml fix: logging 2025-04-13 21:15:50 +03:00
Dockerfile feat: init tg nodes, init web view 2025-04-13 18:19:39 +03:00
initiator.py docs: up readme 2025-05-16 08:56:02 +03:00
README.md docs: up readme 2025-05-16 08:56:02 +03:00
requirements.txt feat: celery 2025-05-03 08:25:15 +03:00

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) Автоматизация периодических задач