LINUX.ORG.RU

Уязвимость в FFMpeg (целочисленное переполнение)

 ,


0

0

На secunia.com появилось сообщение об уязвимости в FFmpeg, которая может привести к компрометации использующего библиотеку приложения.

Уязвимость вызвана целочисленным переполнением и может позволить злоумышленнику провести атаку класса heap-based overflow. Успешная атака позволит выполнить произвольный код в системе.

Уязвимость обнаружена в версии 0.5, однако может присутствовать и в других версиях. Защититься можно, если не запускать воспроизведение потоков из непроверенных источников.

Коммит, устраняющий уязвимость в git-версии: http://git.ffmpeg.org/?p=ffmpeg;a=com...

>>> Сообщение на secunia.com

★★

Проверено: Shaman007 ()
Ответ на: комментарий от v0rbis

> в ffmpeg-9999 уязвимости нет?

committer reimar <reimar@9553f0bf-9b14-0410-a0b8-cfaf0461ba5b>
Mon, 14 Sep 2009 17:15:18 +0000 (17:15 +0000)
commit ebbccbaa5e925c2ddb212559f82c29ef526cc17e
-------------------------
Extend check for integer overflow for malloc argument to take into account
also the addition of "sound_buffers" not only the multiplication.

git-svn-id: file:///var/local/repositories/ffmpeg/trunk@19840 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b

Говорят, именно оно закрывает уязвимость. Если ffmpeg-9999 берётся оттуда, то всё ок.

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

>> Коммит, устраняющий уязвимость:

> фикс коммита, устраняющего уязвимость:

о, как мне это знакомо... Там ещё серия пенальти будет.

name_no ★★
() автор топика

Вообще, как страшно жить. Самая популярная библиотека и такие детские уязвимости. Ломай кто хочет.

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

Даа, я вот, допустим, расслабившись, порнуху буду глядеть, а порнофайл в самый неподходящий момент впихнет спайварь, которая мне рекламу "енлардж ёр пинус" покажет. Страсть. И моральная травма на всю оставшуюся жизнь.

Срочно латать.

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

> Кому не нужен, а кому нужен.

С такими дырками? дануивонах.

name_no ★★
() автор топика

> переполнение целочисленного

Ы? слово забыл? Или уже ...типа или уже целочисленное переполнение.

r ★★★★★
()

Учитывая, что почти у всех хомячков в вантузе avi файлы играются через ffdshow, который нихера не обновляют, можно устроить ботнет.

linux4ever
()

тогда стоит напомнить также о том , что mplayer использует библиотеки ffmpeg (avcodec, avutil, swscale...) (статические как правило) и закрытие уязвимости потребует и пересборки-обновления mplayer тоже (библиотеки ffmpeg берутся с svn ffmpeg)

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

>переполнением целочисленного

У меня переполнилось целочисленное и вот... целые числа высыпались... по всей кухне.

P.S. thx, fixed

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

>>закрытие уязвимости потребует и пересборки-обновления mplayer тоже (библиотеки ffmpeg берутся с svn ffmpeg)

Откуда дрова? В дебиане все обновилось без обновления самого мплеера.

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

--- a/libavformat/sierravmd.c
+++ b/libavformat/sierravmd.c
@@ -154,7 +154,7 @@ static int vmd_read_header(AVFormatContext *s,
vmd->frame_table = NULL;
sound_buffers = AV_RL16(&vmd->vmd_header[808]);
raw_frame_table_size = vmd->frame_count * 6;
- if(vmd->frame_count * vmd->frames_per_block >= UINT_MAX / sizeof(vmd_frame)){
+ if(vmd->frame_count * vmd->frames_per_block >= (UINT_MAX - sound_buffers) / sizeof(vmd_frame)){
av_log(s, AV_LOG_ERROR, "vmd->frame_count * vmd->frames_per_block too large\n");
return -1;
}

mplayer использует эту библиотеку

кстати не пропатчили они еще в svn (этот кусок из mplayer)

if(vmd->frame_count * vmd->frames_per_block >= UINT_MAX / sizeof(vmd_frame) - sound_buffers){
av_log(s, AV_LOG_ERROR, "vmd->frame_count * vmd->frames_per_block too large\n");
return -1;
}

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

>>mplayer использует эту библиотеку

Либа и приложение - отдельные бутерброды, не?

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