URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 74688
[ Назад ]
Исходное сообщение
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено opennews , 13-Фев-11 22:26
Несколько недель назад в интерпретаторе PHP была исправлена (http://www.opennet.me/opennews/art.shtml?num=29215) уязвимость, позволяющая (http://www.opennet.me/opennews/art.shtml?num=29203) вызвать зависание процесса при выполнении операций c некоторыми числами с плавающей запятой (например, 2.2250738585072011e-308). Уязвимость проявлялась только при использовании в процессе преобразования чисел x87 FPU-регистров. Как оказалось (http://www.exploringbinary.com/java-hangs-when-converting-2-.../), данной проблеме подвержен не только интерпретатор PHP, но и виртуальная машина Java.
Например, чтобы вызвать бесконечное зацикливание достаточно обеспечить выполнение примерно такого кода "double d = 2.2250738585072012e-308; System.out.println("Value: " + d);". В реальных условиях, эксплуатировать данную уязвимость можно без привлечения определенных Java-аплетов: достаточно отправить на большинство серверов приложений специальный HTTP-запрос, указав проблемное число в заго...
URL: http://www.exploringbinary.com/java-hangs-when-converting-2-.../
Новость: http://www.opennet.me/opennews/art.shtml?num=29586
Содержание
- В Java проявилась уязвимость при обработке чисел с плавающей...,Заоза, 22:26 , 13-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,Аноним, 22:31 , 13-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,Zenitur, 22:36 , 13-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,User294, 22:52 , 13-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,Аноним, 16:51 , 27-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,gegMOPO4, 22:59 , 13-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,Zenitur, 22:53 , 13-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,gegMOPO4, 23:01 , 13-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,klalafuda, 23:35 , 13-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,gegMOPO4, 23:40 , 13-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,User294, 21:50 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,gegMOPO4, 22:56 , 13-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,iZEN, 00:50 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,pavlinux, 23:05 , 13-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,User294, 21:57 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,iZEN, 00:46 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,ананим, 01:17 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,User249, 01:25 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,iZEN, 01:37 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,User294, 22:05 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,Tav, 02:09 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,ram_scan, 09:48 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,Андрей, 11:19 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,безимени, 13:35 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,ram_scan, 14:14 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,анон, 06:40 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,безимени, 08:46 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,bvf, 12:53 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,dd, 14:36 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,z, 13:39 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,Аноним, 13:55 , 14-Фев-11
- В Java проявилась уязвимость при обработке чисел с плавающей...,Babusha, 18:22 , 06-Мрт-11
Сообщения в этом обсуждении
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено Заоза , 13-Фев-11 22:26
Разве Oracle не схавала Sun.
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено Аноним , 13-Фев-11 22:31
В то время о котором ведется речь, еще был Sun, это его зона ответственности, а не Oracle.
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено Zenitur , 13-Фев-11 22:36
Случай интересный. Но в Java с каждым корректирующим релизом исправляют от полусотни до нескольких сотен ошибок, так что не для главной.
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено User294 , 13-Фев-11 22:52
В яве с каждым релизом чинят кучу критичных ошибок, вплоть до выхода из песочницы. Так было и видимо так и дальше будет. Особенно доставил комент изена на хабре про то что задачу, дескать, можно снять и курсор, дескать двигается :))).
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено Аноним , 27-Фев-11 16:51
Ты сам то понял, что написал?
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено gegMOPO4 , 13-Фев-11 22:59
Плохо то, что это сверхкритическая ошибка, легко можно завесить любое приложение, принимающее нецелые числа от пользователя. В том числе даже сам сервер приложений.
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено Zenitur , 13-Фев-11 22:53
Это действительно работает! Только что проверил. Еле отключил сервер.
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено gegMOPO4 , 13-Фев-11 23:01
А если бы эксплойт приводил не к зависанию, а к взрыву процессора?
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено klalafuda , 13-Фев-11 23:35
> А если бы эксплойт приводил не к зависанию, а к взрыву процессора?Искусство - оно сцуко такое. Требует жертв. И они всегда находятся..
PS: Самым эффективным способом распространения малваря на линуксе будет пост на исходники в соотв. ньюсах включая опеннет. Сработает на 100%. И, уверен, по нескольку раз.
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено gegMOPO4 , 13-Фев-11 23:40
Было уже. И не раз.
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено User294 , 14-Фев-11 21:50
> А если бы эксплойт приводил не к зависанию, а к взрыву процессора?А это вам уже к господам из фирмы Интел. Они работают над этой возможностью (ака удаленная блокировка процессора). Вы ведь этого хотели, правда? :)
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено gegMOPO4 , 13-Фев-11 22:56
Долго же эта новость ползла до опеннета.Для Томката уже вышла версия, прикрывающая дыру с уязвимостью в заголовках запроса.
Прямо сейчас обезопасить приложения можно, воспользоваться костылём, -- подсунуть через -Xbootclasspath/p: архив jar cо скомпилированным исправленным sun.misc.FloatingDecimal.
Вот то, что в Оракле так долго возятся с элементарным патчем, -- очень печально.
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено iZEN , 14-Фев-11 00:50
>Вот то, что в Оракле так долго возятся с элементарным патчем, -- очень печально.Неправда.
Порты JDK в коллекции портов FreeBSD были обновлены 9 февраля. Мне пришлось ждать перекомпиляции установленного OpenJDK6.
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено pavlinux , 13-Фев-11 23:05
> Выход официального обновления Java SE запланирован на 15 февраля, до этого момента можно использовать.Спасибо. :)
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено User294 , 14-Фев-11 21:57
>до этого момента можно использовать....дыры на серверах :))) //ваш Кэп :)
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено iZEN , 14-Фев-11 00:46
L.O.R. сегодня падал несколько раз. Подозреваю, что проблема в непропатченной Java и устаревшем Tomcat, который они любят использовать, вместо того, чтобы перейти на Jetty7.
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено ананим , 14-Фев-11 01:17
или на пыхпых
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено User249 , 14-Фев-11 01:25
Jetty7 тока вылупился - пусть усы отрастит как у кота сначало :)
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено iZEN , 14-Фев-11 01:37
http://opennet.ru/opennews/art.shtml?num=23778
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено User294 , 14-Фев-11 22:05
> Jetty7 тока вылупился - пусть усы отрастит как у кота сначало :) А у вас вообще ус отклеился с таким то ником :)
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено Tav , 14-Фев-11 02:09
Я так понимаю, причины ошибки в PHP были несколько иными.Для Fedora уже доступно обновление OpenJDK с исправлением уязвимости.
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено ram_scan , 14-Фев-11 09:48
Причины ошибки - бага в сопроцессоре.Заклинивать будет абсолютно любую программу которая пытается манипулировать с этими числами с помощью x87 арифметики если в ней нет воркэраунда.
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено Андрей , 14-Фев-11 11:19
Если это "бага в сопроцессоре" - то в чьей реализации? Intel? AMD? (не считаем остальных пока :) ) У обоих?
В пыхпых лечилось пересборкой с CFLAGS="... -mfpmath=sse ...". Тут бинарники распространяются...
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено безимени , 14-Фев-11 13:35
Как мне кажется (после беглого взгляда на патч), проблема в программистах, которые не учли что по стандарту IEEE 754 существуют денормализованные числа с плавающей точкой (80 битные). При записи в память или при использовании SSE такие числа обнуляются...
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено ram_scan , 14-Фев-11 14:14
Там есть неоднозначность представления чисел -0, 0 и +0. И грабли такие вылезают только при работе с x87. MMX-SSE - нормально.Теоретически грабли только в интелях на x86 архитектуре.
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено анон , 14-Фев-11 06:40
Случаем не этой уязвимостью недавно лор роняли?
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено безимени , 14-Фев-11 08:46
> такого кода "double d = 2.2250738585072012e-308; System.out.println("Value: " + d);". Хороший код... У меня старый NetBeans просто виснет если его вставить в текст программы.
Даже компилировать и запускать не надо - парсер тоже на непатченной яве работает.
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено bvf , 14-Фев-11 12:53
А в новости нет ошибки? Действительно об ошибка знали с 2000-го года? Это же (матерные выражения)! Хотя ошибка не так критична если о ней знать, в коде можно легко обезопасить себя от намеренных взломов. Но блин зачем же и так усложнять жизнь. Я люблю сложные квесты, но не настолько :)
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено dd , 14-Фев-11 14:36
>Хотя ошибка не так критична если о ней знать,
>в коде можно легко обезопасить себя от намеренных взломов. Каким образом? Если в программе предусмотрен ввод чисел (будь то GUI или HTTP request - не важно), то прежде чем начнет выполнятся Ваш безопасный код, "неправильное" число будет обработано небезопасным кодом (из стандартных бибилиотек или Tomcat'а).
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено z , 14-Фев-11 13:39
>Это жеэнтерпрайз!
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено Аноним , 14-Фев-11 13:55
Можно подумать, это единственная ошибка такого возраста. У одной ошибки возраст в аккурат с 95го года... ;)
"В Java проявилась уязвимость при обработке чисел с плавающей..."
Отправлено Babusha , 06-Мрт-11 18:22
("Value: " + d);".WTF? Исправьте.