Сборки llama.cpp с b1886 по b7445 содержат уязвимость целочисленного переполнения в оболочке JNI LLaMA-Android, где функция new_1batch() умножает sizeof(llama_seq_id) на контролируемый злоумышленником параметр n_seq_max без проверки переполнения, что приводит к переносу выделения буфера кучи и выделению недостаточного количества памяти. Злоумышленники могут воспользоваться этим, предоставив специально созданное значение n_seq_max через вредоносный файл модели или вызов JNI, чтобы вызвать повреждение кучи и добиться отказа в обслуживании или выполнения произвольного кода в приложениях Android с использованием привязки LLaMA-Android.
Показать оригинальное описание (EN)
llama.cpp builds b1886 through b7445 contain an integer overflow vulnerability in the LLaMA-Android JNI wrapper where the new_1batch() function multiplies sizeof(llama_seq_id) by an attacker-controlled n_seq_max parameter without overflow validation, causing heap buffer allocation to wrap and allocate insufficient memory. Attackers can exploit this by providing a crafted n_seq_max value through a malicious model file or JNI call to trigger heap corruption and achieve denial of service or arbitrary code execution on Android applications using the LLaMA-Android binding.
Характеристики атаки
Последствия
Строка CVSS v4.0