Qinglong — это платформа управления задачами по времени, поддерживающая Python3, JavaScript, Shell и Typescript. До версии 2.20.1 промежуточное программное обеспечение init Guard в back/loaders/express.ts проверяет /api/user/init, но не /open/user/init, а rewrite('/open/*', '/api/$1') перезаписывает путь /open/* из белого списка после аутентификации JWT и прохождения защиты; злоумышленник, не прошедший проверку подлинности, может отправить PUT /open/user/init для сброса учетных данных администратора на инициализированном экземпляре. Эта проблема исправлена в версии 2.20.1.
Показать оригинальное описание (EN)
Qinglong is a timed task management platform supporting Python3, JavaScript, Shell, and Typescript. Prior to 2.20.1, the init guard middleware in back/loaders/express.ts checks /api/user/init but not /open/user/init, while rewrite('/open/*', '/api/$1') rewrites the whitelisted /open/* path after JWT authentication and the guard have passed; an unauthenticated attacker can send PUT /open/user/init to reset administrator credentials on an initialized instance. This issue is fixed in 2.20.1.
Характеристики атаки
Последствия
Строка CVSS v4.0