Переполнение буфера обнаружено в Samba. Удаленный анонимный пользователь может получить root привилегии на целевом сервере.
Анонимный пользователь может получить root доступ, эксплуатируя переполнение буфера в функции StrnCpy() в smbd/trans2.c:
StrnCpy(fname,pname,namelen); /* Line 252 of smbd/trans2.c */
В функции call_trans2open в trans2.c, функция Samba StrnCpy копирует pname в fname, используя namelen. Переменной namelen назначено значение strlen(pname)+1, которое вызывает переполнение.
Переменная fname - pstring, размером 1024 байт. Если pname больше чем 1024, вы можете перезаписать все что угодно после 1024 байта, который соответствует sizeof(pname), или значению, возвращенному SVAL(inbuf,smbd_tpscnt) в функции reply_trans2(), которое равно приблизительно 2000 байтам.
Уязвимость обнаружена в < Samba 2.2.8a, <= Samba 2.0.10, < Samba-TNG 0.3.2.