Kedro — это набор инструментов для анализа данных, готовых к производству. До версии 1.3.0 Kedro позволял устанавливать путь к файлу конфигурации журналирования через переменную среды KEDRO_LOGGING_CONFIG и загружал его без проверки. Схема конфигурации журналирования поддерживает специальный ключ (), который позволяет создавать произвольные вызываемые экземпляры.
Злоумышленник может использовать это для выполнения произвольных системных команд во время запуска приложения. Это критическая уязвимость удаленного выполнения кода (RCE), вызванная небезопасным использованием logging.config.dictConfig() с вводом, управляемым пользователем. Эта уязвимость исправлена в версии 1.3.0.
Показать оригинальное описание (EN)
Kedro is a toolbox for production-ready data science. Prior to 1.3.0, Kedro allows the logging configuration file path to be set via the KEDRO_LOGGING_CONFIG environment variable and loads it without validation. The logging configuration schema supports the special () key, which enables arbitrary callable instantiation. An attacker can exploit this to execute arbitrary system commands during application startup. This is a critical remote code execution (RCE) vulnerability caused by unsafe use of logging.config.dictConfig() with user-controlled input. This vulnerability is fixed in 1.3.0.
Характеристики атаки
Последствия
Строка CVSS v3.1