Компания Qualys нашла способ обойти защиту malloc и double-free для инициирования передачи управления коду, используя уязвимость в OpenSSH 9.1, риск создания рабочего эксплоита для которой был определён как маловероятный. При этом возможность создания работающего эксплоита пока остаётся под большим вопросом. Уязвимость вызвана двойным освобождением области памяти на стадии до прохождения аутентификации. Для создания условий проявления уязвимости достаточно изменить баннер SSH-клиента на "SSH-2.0-FuTTYSH_9.1p1" (или другой старый SSH-клиент) для того, чтобы добиться выставления флагов "SSH_BUG_CURVE25519PAD" и "SSH_OLD_DHGEX". После выставления данных флагов память под буфер "options.kex_algorithms" освобождается два раза. Исследователи из Qualys в ходе манипуляций с уязвимостью смогли добиться контроля над регистром процессора "%rip", содержащим указатель на следующую инструкцию для выполнения. Разработанная техника эксплуатации позволяет передать управление в любую точку адресного про