2025-11-10T02:36:02.492459

Hash chaining degrades security at Facebook

Rivasseau
Modern web and digital application password storage relies on password hashing for storage and security. Ad-hoc upgrade of password storage to keep up with hash algorithm norms may be used to save costs but can introduce unforeseen vulnerabilities. This is the case in the password storage scheme used by Meta Platforms which services several billion monthly users worldwide. In this paper we present the first example of an exploit which demonstrates the security weakness of Facebook's password storage scheme, and discuss its implications. Proper ethical disclosure guidelines and vendor notification were followed.
academic

Цепочка хеширования снижает безопасность в Facebook

Основная информация

  • ID статьи: 2510.12665
  • Название: Hash chaining degrades security at Facebook
  • Автор: Thomas Rivasseau (McGill University)
  • Классификация: cs.CR (Криптография и безопасность)
  • Дата публикации: Октябрь 2025
  • Ссылка на статью: https://arxiv.org/abs/2510.12665

Аннотация

Современное хранение паролей в веб-приложениях и цифровых сервисах полагается на хеширование паролей для обеспечения безопасности. Поспешное обновление алгоритмов хеширования для соответствия современным стандартам может быть использовано для снижения затрат, но может привести к непредвиденным уязвимостям. Это имеет место в схеме хранения паролей, используемой Meta Platforms, которая обслуживает несколько миллиардов активных пользователей ежемесячно по всему миру. В данной статье мы представляем первый пример эксплуатации, демонстрирующий слабость системы хранения паролей Facebook, и обсуждаем его последствия. Были соблюдены надлежащие принципы ответственного раскрытия информации и уведомления поставщика.

Исследовательский контекст и мотивация

Определение проблемы

Основная проблема, которую решает данное исследование: современные крупные интернет-платформы, применяя постепенное обновление алгоритмов хеширования для экономии затрат, могут внедрить серьёзные уязвимости безопасности.

Значимость проблемы

  1. Масштаб воздействия: платформа Meta имеет примерно 4 миллиарда активных пользователей в месяц, что означает огромный масштаб воздействия проблемы безопасности
  2. Репрезентативность для индустрии: Facebook как технологический лидер может служить образцом для других компаний
  3. Разрыв между теорией и практикой: демонстрирует, что теоретически безопасное хеширование цепочки может иметь фундаментальные недостатки при практическом применении

Ограничения существующих подходов

Традиционные схемы обновления хранения паролей требуют:

  • Поддержания двух таблиц хеширования (старый MD5 и новый SHA1)
  • Ожидания переаутентификации всех пользователей для завершения миграции
  • Обработки миграции данных долгоживущих неактивных пользователей
  • Несения высоких затрат на реструктуризацию системы

Мотивация исследования

Инженеры Facebook, стремясь избежать указанных выше затрат, творчески применили схему цепочки хеширования, однако это "умное" решение фактически внедрило серьёзные уязвимости безопасности, требующие глубокого анализа их влияния на безопасность.

Основные вклады

  1. Первое выявление фундаментального дефекта безопасности в системе хранения паролей Facebook: доказано, что схема цепочки хеширования имеет уровень безопасности, сниженный до уровня самого слабого звена — алгоритма MD5
  2. Предоставление работающего кода эксплуатации: демонстрация практической атаки на основе коллизии хеша, позволяющей входить в учётные записи Facebook с неправильным паролем
  3. Комплексный анализ влияния на безопасность: детальная оценка воздействия уязвимости на миллиарды пользователей и экосистему OAuth
  4. Соблюдение принципов ответственного раскрытия: уязвимость была сообщена Meta до публичного раскрытия и подтверждена компанией

Подробное описание методологии

Структура анализа уязвимости

Архитектура цепочки хеширования Facebook

Система хранения паролей Facebook использует следующую цепочку хеширования:

password = pw
md5(pw) = m
sha1(m, salt) = s1
sha256(s1, secret) = s2
scrypt(s2) = s3
sha256(s3) = value

Выявление дефектов безопасности

Основная проблема: безопасность всей цепочки хеширования ограничена прочностью первого этапа — алгоритма MD5.

Математическое доказательство: для двух различных кандидатов паролей a и b, если md5(a) = md5(b), то:

a ≠ b
md5(a) = m(a) = m(b)
sha1(m(a), salt(a)) = s1(a) = s1(b)
sha256(s1(a), secret) = s2(a) = s2(b)
scrypt(s2(a)) = s3(a) = s3(b)
sha256(s3(a)) = value(a) = value(b)

Методология эксплуатации уязвимости

Выбор коллизионной пары

Использование коллизионной пары MD5, опубликованной Marc Stevens в 2024 году:

a = TEXTCOLLBY fGiJUETHQ4hEcKSMd5zY pgqf1YRDhkmxHkhPWptrkoyz28wnI9V 0aHeAuaKnak
b = TEXTCOLLBY fGiJUETHQ4hAcKSMd5zY pgqf1YRDhkmxHkhPWptrkoyz28wnI9V 0aHeAuaKnak

Проверка: md5(a) = md5(b) = faad49866e9498fc1719f5289e7a0269

Процесс атаки

  1. Создание учётной записи Facebook с установкой пароля на строку a
  2. Выход из учётной записи и очистка данных браузера
  3. Попытка входа, используя строку b в качестве пароля
  4. Результат: вход выполнен успешно, что подтверждает наличие уязвимости

Экспериментальная установка

Окружение тестирования

  • Платформа: Facebook.com
  • Время тестирования: во время написания статьи (октябрь 2025)
  • Метод верификации: практическое создание учётной записи и тестирование входа

Этапы верификации

  1. Создание учётной записи: использование первой строки из коллизионной пары MD5 в качестве пароля
  2. Сброс окружения: смена устройства/сети для имитации различных пользовательских сценариев
  3. Верификация атаки: попытка входа со второй коллизионной строкой
  4. Подтверждение результатов: систематическая верификация успешности атаки

Результаты экспериментов

Основные выводы

  • Успешность атаки: 100% (систематический успех в период тестирования)
  • Подтверждение уязвимости: Facebook действительно продолжает использовать схему цепочки хеширования, опубликованную в 2014 году
  • Снижение безопасности: прочность пароля снижена с ожидаемых 256 бит до 123-128 бит

Оценка влияния на безопасность

Прямое воздействие

  1. Доступ к учётной записи: возможность входа в учётную запись Facebook с использованием не исходного пароля
  2. Сложность восстановления пароля: снижение с 2^256 до 2^123-2^128
  3. Соответствие стандартам: несоответствие стандартам безопасности NIST
  4. Ограничение энтропии пароля: максимальная эффективная энтропия пароля составляет всего 15-16 символов

Воздействие на экосистему

  • Сервисы OAuth: все сторонние сервисы, использующие вход через Facebook OAuth, подвергаются риску
  • Корпоративные пользователи: организации, использующие корпоративные сервисы Facebook, сталкиваются с рисками безопасности

Связанные работы

История развития хеширования паролей

  1. Ранние схемы: алгоритм MD5 (начало 2000-х годов)
  2. Выявление проблем безопасности: демонстрация атак на коллизии MD5 в 2005 году Lenstra и др.
  3. Официальное отказание: рекомендация Университета Карнеги-Меллона о прекращении использования MD5 в 2008 году
  4. Современные стандарты: рекомендация NIST использовать SHA-256 и выше

Стратегии постепенного обновления

  • Традиционные подходы: параллельные таблицы с постепенной миграцией
  • Подход Facebook: наложение цепочки хеширования
  • Компромисс безопасности: баланс между экономической эффективностью и безопасностью

Заключение и обсуждение

Основные выводы

  1. Фундаментальный дефект: схема цепочки хеширования Facebook имеет дефект на уровне проектирования
  2. Практическая эксплуатируемость: уязвимость может быть практически использована, влияя на миллиарды пользователей
  3. Нарушение стандартов: несоответствие текущим стандартам и лучшим практикам кибербезопасности
  4. Воздействие на экосистему: влияние на всю экосистему Facebook OAuth

Анализ ограничений

  1. Предусловия атаки: требуется возможность установки пароля учётной записи, что ограничивает практические сценарии угроз
  2. Защитные меры: дополнительные меры безопасности, такие как двухфакторная аутентификация, могут снизить риск
  3. Вычислительная сложность: поиск коллизий для случайных паролей остаётся сложной задачей
  4. Поведение пользователей: большинство пользовательских паролей имеют низкую энтропию, поэтому традиционные атаки могут быть более эффективны

Направления будущих исследований

  1. Стратегии крупномасштабной миграции: исследование методов обновления хранения паролей, которые одновременно безопасны и экономичны
  2. Анализ безопасности цепочки хеширования: разработка теоретической базы для анализа безопасности цепочек хеширования
  3. Оценка практических угроз: количественная оценка реальных рисков безопасности, связанных с такими уязвимостями

Глубокая оценка

Преимущества

  1. Значительное открытие: выявление реальной уязвимости безопасности, влияющей на миллиарды пользователей
  2. Строгая методология: полный процесс исследования от теоретического анализа до практической верификации
  3. Ответственное раскрытие: соблюдение надлежащих процедур раскрытия уязвимостей
  4. Практическая ценность: предоставление важного предупреждения о безопасности для индустрии

Недостатки

  1. Ограничения модели угроз: относительно ограниченные сценарии атак, реальная угроза может быть переоценена
  2. Недостаточная техническая глубина: анализ атак на предобразы MD5 недостаточно глубок
  3. Отсутствие решений: отсутствие конкретных рекомендаций по исправлению
  4. Отсутствие количественного анализа: недостаток количественного анализа фактических затрат и выгод от атак

Оценка влияния

  1. Академическая ценность: предоставление важного примера для исследований безопасности хранения паролей
  2. Влияние на индустрию: возможное побуждение крупных платформ переоценить свои стратегии хранения паролей
  3. Разработка стандартов: справочный материал для совершенствования соответствующих стандартов безопасности
  4. Образовательное значение: демонстрация рисков, которые могут возникнуть при принятии решений, ориентированных на затраты

Применимые сценарии

  1. Крупные интернет-платформы: предприятия, которым необходимо обновлять хранение паролей для большого количества пользователей
  2. Аудит безопасности: справочный материал для команд безопасности предприятий при оценке существующих систем
  3. Академические исследования: исследования, связанные с криптографией и кибербезопасностью
  4. Разработка политики: справочный материал для разработки политики регулирования кибербезопасности

Библиография

Статья ссылается на 30 связанных работ, охватывающих:

  • Исследования безопасности алгоритмов хеширования (стандарты NIST, анализ уязвимостей MD5)
  • Лучшие практики хранения паролей (руководства OWASP, рекомендации CISA)
  • Технические материалы Facebook (выступления на конференции по безопасности паролей 2014 года)
  • Связанные инциденты безопасности и случаи утечки данных

Значимость исследования: данное исследование не только выявляет реальную уязвимость безопасности, влияющую на миллиарды пользователей, но, что более важно, напоминает всей индустрии, что при стремлении к экономической эффективности нельзя пренебрегать фундаментальными принципами безопасности. Безопасность цепочки хеширования зависит от её самого слабого звена — это открытие имеет важное значение для руководства проектированием будущих систем хранения паролей.