В пакете wpa_supplicant, используемом для организации подключения к беспроводной сети во многих дистрибутивах Linux, *BSD и Android, выявлена опасная уязвимость (CVE-2015-1863), которая потенциально может быть использована для выполнения кода злоумышленника при обработке специально оформленных данных в поле SSID при установке или обновлении информации о P2P-пирах.
Допустимый размер поля SSID составляет 32 байта, в то время как при передаче данный элемент передаётся в поле, длина которого ограничивается 8 битным счётчиком, т.е. в данном поле допустимо передать до 255 байт данных. Так как в wpa_supplicant отсутствует проверка размера данного поля, под данные размером до 255 байт отводится буфер в 32 байта, а лишние 223 байта перекроют структуры, следующие за полем SSID. В том числе может оказаться перезаписан находящийся в структуре p2p_device указатель, по которому в дальнейшем передаётся управление. Кроме того, около 150 байт перезаписывают область, находящуюся за пределами выделенног
...
Читать дальше »