
Инструментированный анализ и материалы для воспроизведения утечки по времени в ECDSA в OpenSSL CVE-2024-13176
Этот репозиторий содержит исследовательский отчёт, веб-сайт, данные, исходные материалы и файлы для воспроизводимости результатов независимого исследования CVE-2024-13176.
Проект изучает, можно ли обнаружить связанное с nonce условие по времени, о котором сообщалось для подписи OpenSSL ECDSA, в контролируемой виртуализированной среде Linux на ARM64.
Подтверждающий эксперимент сравнивал OpenSSL 3.4.0 с OpenSSL 3.4.1 с использованием ECDSA P-521 и инструментирования на уровне исходного кода.
Финальный набор данных содержит 600 000 наблюдений операций подписи в рамках 30 парных блоков сбора данных.
В основной внутренней точке измерения времени:
p = 1.86265 × 10^-9Наиболее сильный результат локализован в последующем умножении Монтгомери, измеряемом через kinv_mul_ns. Более широкие измерения времени инверсии nonce и полной подписи не показали такого же стабильного разделения.
Исследование сосредоточено на обнаружимости в этой внутренней точке измерения. Оно не заявляет о практическом восстановлении закрытого ключа или удалённой видимости временного эффекта.
.
├── README.md
├── docs/
├── report/
└── reproducibility/
├── README.md
├── data/
├── derived/
├── figures/
├── plans/
├── records/
├── scripts/
└── source/
docs/Содержит версию исследовательского отчёта для GitHub Pages.
report/Содержит PDF-версию исследовательского отчёта.
reproducibility/Содержит публичные исследовательские материалы, включая необработанные подтверждающие данные, скрипты анализа, изменения исходного кода, производные результаты, рисунки, планы и вспомогательные записи.
См. reproducibility/README.md с инструкциями по повторному запуску анализа и пониманию структуры данных.
Необработанные подтверждающие CSV-файлы включены в репозиторий, поэтому для воспроизведения статистического анализа не требуется собирать новые измерения времени.
Начните с:
cd reproducibility
Затем следуйте инструкциям в
reproducibility/README.md.
Пакет публикации включает:
10.5281/zenodo.22036547)Измерения были собраны в одной виртуальной машине ARM64 Linux с использованием OpenSSL 3.4.0 и OpenSSL 3.4.1 с NIST P-521.
Результаты на другом процессоре, операционной системе, компиляторе или в другой среде виртуализации могут отличаться. Полезная репликация должна быть сосредоточена на том, можно ли классифицировать то же условие и показывают ли уязвимая и исправленная версии схожую разницу в поведении во времени.