LINUX.ORG.RU

GNU screen - переполнение буфера


0

0

Возможен подъем привелегий для локального пользователя.

Потенциально возможна удаленная атака и захват контроля над

терминалом другого пользователя.

Версии 4.0.1, 3.9.15 и более старые - уязвимы.

>>> Подробности



Проверено: maxcom

>Buffer overflow in GNU screen allows privilege escalation for local users. Usually screen is installed either setgid-utmp or setuid-root.

[timur@backup timur]$ls -l `which screen`

-rwxr-xr-x 1 root root 358823 Aug 14 2002 /usr/bin/screen

RedHat 8

Интересно, в каких это дистрибутивах screen setuidный и для чего ?

anonymous
()

фигня какая-то

ansi.c:

case '0': case '1': case '2': case '3': case '4':
case '5': case '6': case '7': case '8': case '9':
if (curr->w_NumArgs < MAXARGS)
{
if (curr->w_args[curr->w_NumArgs] < 100000000)
curr->w_args[curr->w_NumArgs] =
10 * curr->w_args[curr->w_NumArgs] + (c - '0');
}
break;
case ';':
case ':':
curr->w_NumArgs++;
break;


> w_NumArgs is signed integer, so after you've sent 2GB of ';' characters in
> escape sequence it wraps to negative and the < MAXARGS protection fails.

Гораздо раньше будет либо превышен лимит какой-нибудь ( as, rss, stack ),
либо израсходована вся доступная память...

Dselect ★★★
()

chmod 755 /usr/bin/screen

решение проблемы

anonymous
()
Ответ на: комментарий от anonymous

>Интересно, в каких это дистрибутивах screen setuidный и для чего ?

в freebsd из портов на screen setuid по умолчанию ставиться. хотя, при этом freebsd'шный инсталлер честно предуплеждает об этом! ;)

anonymous
()

Саныч, х. с ним, со скрином. Поставь себе спеллчекер - невозможно
тебя читать.

P.S. цИтата, прИвИлегия.

jackill ★★★★★
()
Ответ на: комментарий от jackill

Дык, спеллчекеры, видимо, рушат секюрность БЗДи - поэтому Саныч ни в жизнь не поставит это ходячее скопление дырок 8)

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.