Техническое задание: Разработка системы обнаружения фишинговых сайтов

Цель проекта

Разработать и обучить программную модель для автоматической классификации веб-страниц на фишинговые и легитимные. Основой для классификации должен служить комплексный анализ контента страниц, включая текстовые и визуальные компоненты.

Основные задачи

1. Аналитический этап

  • Изучить предметную область и существующие методы и подходы к обнаружению фишинговых ресурсов.
  • Сформулировать критерии для отбора и анализа данных.

2. Подготовка данных

  • Сформировать репрезентативный датасет, содержащий примеры как фишинговых, так и легитимных веб-страниц.
  • Провести необходимую предобработку данных (очистка, нормализация, разметка).

3. Инженерия признаков

  • Выделить и сформировать комплексный набор признаков для анализа, который должен включать:
    • Текстовые признаки (ключевые слова, стилистика, мета-теги).
    • Структурные признаки (особенности HTML-разметки, наличие форм ввода).
    • Визуальные признаки (анализ скриншотов или CSS-стилей).

4. Разработка и обучение модели

  • Выбрать и обосновать несколько подходящих алгоритмов машинного обучения для задачи классификации.
  • Обучить модели на подготовленном датасете.
  • Провести сравнительный анализ их эффективности (точность, полнота, F1-мера).
  • Выбрать и доработать наилучшую модель.

Требования к результату

  • Работоспособная программная модель с документацией по ее использованию.
  • Отчет, содержащий описание проведенного анализа, этапов работы, выбранных признаков и алгоритмов, а также результаты тестирования.
  • Исходный код проекта.