Termix — это веб-платформа управления сервером с SSH-терминалом, туннелированием и возможностями редактирования файлов. До версии 2.3.2 терминал WebSocket принимал управляемый пользователем хостConfig.id, а src/backend/ssh/host-resolver.ts разрешал этот хост, не требуя владения или явного доступа. Если запрашивающей стороне не предоставлены никакие учетные данные,solveHostById выполняет резервный возврат учетных данных владельца, а src/backend/ssh/terminal.ts объединяет эти учетные данные с контролируемыми злоумышленником значениями IP, порта и имени пользователя.
Таким образом, аутентифицированный пользователь с низким уровнем привилегий может заставить Termix аутентифицироваться на SSH-сервере, контролируемом злоумышленником, и раскрыть сохраненный пароль SSH другого пользователя или материал закрытого ключа, в то время как ключ данных пользователя-жертвы разблокирован. Эта проблема исправлена в версии 2.3.2.
Показать оригинальное описание (EN)
Termix is a web-based server management platform with SSH terminal, tunneling, and file editing capabilities. Prior to 2.3.2, the terminal WebSocket accepts a user-controlled hostConfig.id and src/backend/ssh/host-resolver.ts resolves that host without requiring ownership or explicit access. When no credential is shared with the requester, resolveHostById performs an owner credential fallback, and src/backend/ssh/terminal.ts combines that credential with attacker-controlled ip, port, and username values. An authenticated low-privileged user can therefore make Termix authenticate to an attacker-controlled SSH server and disclose another user's stored SSH password or private-key material while the victim user's data key is unlocked. This issue is fixed in version 2.3.2.
Характеристики атаки
Последствия
Строка CVSS v3.1