
Python proof of concept для CVE-2025-41450: вычисляет код дня Danfoss AK-SM 800A на основе данных часов устройства и проверяет обход аутентификации getauth через /xml.cgi.
Доказательство концепции на Python, демонстрирующее предсказуемый механизм аутентификации по коду дня, доступный через XML-интерфейс системного менеджера Danfoss.
Уязвимость может позволить удалённому неаутентифицированному злоумышленнику вычислить ежедневный код аутентификации на основе информации, раскрываемой устройством, и отправить его через альтернативный путь аутентификации, обходя обычный процесс ввода имени пользователя и пароля.
| Поле | Детали |
|---|---|
| CVE | CVE-2025-41450 |
| Производитель | Danfoss |
| Продукт | Серия AK-SM 8xxA (включая AK-SM 800A) |
| Уязвимость | Ненадлежащая аутентификация / обход аутентификации |
| Затронутое ПО | Версии до 4.2, согласно Danfoss |
| Устранение | Обновление до соответствующего исправленного производителем выпуска; Danfoss указывает 4.2 как версию, устраняющую данную CVE |
| Интерфейс, используемый данным PoC | HTTP(S) POST /xml.cgi |
| Зависимости | Python 3, только стандартная библиотека |
PoC выполняет четыре шага:
read_date_time для получения года, месяца и дня контроллера.code_of_day(), для получения пятизначного кандидата в пароли.getauth с кодом-кандидатом и либо eds_only="1" (по умолчанию), либо quantum_only="1" (--quantum).write_value и load_file и анализирует возвращённые ошибки как свидетельство того, была ли пройдена проверка аутентификации.