URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 92867
[ Назад ]

Исходное сообщение
"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."

Отправлено opennews , 28-Ноя-13 12:35 
На состоявшемся заседании комитета FESCo (Fedora Engineering Steering Committee), отвечающего за техническую часть разработки дистрибутива Fedora Linux, было утверждено (https://lists.fedoraproject.org/pipermail/devel/2013-Novembe...) решение по включению по умолчанию флага "-Werror=format-security" при сборке всех пакетов дистрибутива. Использование данного флага приводит к выводу ошибки в случае выявление компилятором GCC проблем с форматированием строк, которые потенциально могут привести к появлению уязвимостей. В настоящее время подобные проблемы зафиксированы (https://fedoraproject.org/wiki/Changes/FormatSecurity) приблизительно в 400 пакетах из состава репозиториев Fedora Linux.

URL: https://lists.fedoraproject.org/pipermail/devel/2013-Novembe...
Новость: http://www.opennet.me/opennews/art.shtml?num=38544


Содержание

Сообщения в этом обсуждении
"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено A.Stahl , 28-Ноя-13 12:35 
Сначала я подумал, что они хотят бороться с невнимательными разработчиками бамблби (или кто там с помощью лишнего пробела в скрипте корень удалял?).
А потом совсем не понял...
printf(%i,&data); С таким бороться что ли будут? И как?
Кто в курсе произошедшей драмы?

"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено A.Stahl , 28-Ноя-13 12:36 
Эй, парсер! А ну отдал обратно кавычки! Бегом!
:)

"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Аноним , 28-Ноя-13 12:52 
printf(str);

В str может не оказаться null-терминального символа. А как бороться собрались ХЗ.


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено karapuz2 , 28-Ноя-13 13:10 
> А как бороться собрались ХЗ.

средствами GCC же. Что разумно.


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Аноним , 28-Ноя-13 19:13 
Ты удивишься, но

printf("%s", str);

в str тоже может не оказаться null-терминального символа.

Смысл уязвимостей форматной строки в другом - в printf(str) в str могут оказаться произвольные символы форматирования, благодаря чему можно читать память процесса.


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено dxd , 29-Ноя-13 03:35 
Видимо, будут добавлять printf_s и scanf_s а ля студия. И депрекейтить старые версии.

"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено dq0s4y71 , 29-Ноя-13 19:43 
>  А как бороться собрались ХЗ.

Главное не победа, а участие ;)


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено slowpoke , 28-Ноя-13 12:53 
кроме printf может быть scanf

"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Аноним , 28-Ноя-13 12:55 
Кроме scanf могут быть все функции, использующие форматные строки.

"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено kurokaze , 28-Ноя-13 13:17 
Что, man gcc набрать и поиск по / сделать религия запрещает?

-Wformat-security
           If -Wformat is specified, also warn about uses of format functions that represent
           possible security problems.  At present, this warns about calls to "printf" and
           "scanf" functions where the format string is not a string literal and there are no
           format arguments, as in "printf (foo);".  This may be a security hole if the format
           string came from untrusted input and contains %n.  (This is currently a subset of
           what -Wformat-nonliteral warns about, but in future warnings may be added to
           -Wformat-security that are not included in -Wformat-nonliteral.)


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено A.Stahl , 28-Ноя-13 13:48 
По-хорошему это должно быть в тексте новости.
А то так можно дойти и до пустых сообщений вместо новостей -- мол, тот, кому интересно, сам найдёт:)

"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено arisu , 28-Ноя-13 14:04 
> А то так можно дойти и до пустых сообщений вместо новостей —
> мол, тот, кому интересно, сам найдёт:)

это было бы идеально. потому что неуважаемые пиривотчики новостей здесь английский понимают примерно на уровне моих котов, и поэтому в большинстве случаев новости творчески сочиняют. в итоге хорошо, если получается хотя бы «не совсем то» — но часто получается и вовсе по смыслу противоположное оригиналу.


"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено Аноним , 28-Ноя-13 14:20 
Кстати, ты вручную в цитируемом тексте заменяешь двойной дефис на длинное тире?

"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено arisu , 28-Ноя-13 14:22 
> Кстати, ты вручную в цитируемом тексте заменяешь двойной дефис на длинное тире?

нет, конечно: у меня userjs, который все поля ввода обрабатывает. вписывать туда исключение для опеннетовских цитат мне лень, поэтому цитаты он тоже правит. может, когда-нибудь лень поборю и добавлю фичку.


"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено Аноним , 28-Ноя-13 15:48 
>> Кстати, ты вручную в цитируемом тексте заменяешь двойной дефис на длинное тире?
> нет, конечно: у меня userjs, который все поля ввода обрабатывает.

А замену ":)" и ":-)" на анимированные смайлики он поддерживает?


"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено arisu , 28-Ноя-13 16:08 
и канкан пляшет.

"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено Аноним , 28-Ноя-13 16:12 
О, чувак, выложи в паблик, плз! Очень нужно.

"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено arisu , 28-Ноя-13 16:19 
> О, чувак, выложи в паблик, плз! Очень нужно.

ну вот щаз. тогда у всех канкан будет — и чем я такой особенный стану?!


"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено Аноним , 29-Ноя-13 00:11 
Дык - толщиной! :)

"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено Аноним , 29-Ноя-13 02:01 
Его пипетка то?

"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено Аноним , 29-Ноя-13 14:13 
Не пипетка, а горизонтальный габарит. Недаром его уже останавливали инспектора гибдд и рекомендовали носить в руках по флажку, чтобы обозначить боковые габариты. Несмотря на то, что он пешеход.

"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено ip1981 , 28-Ноя-13 19:57 
man gcc не соответствует DFSG, и выпилен :-)

"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Аноним , 28-Ноя-13 21:22 
> man gcc не соответствует DFSG, и выпилен :-)

Что, даже из non-free не поставить?


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Аноним , 28-Ноя-13 14:32 
Не корень. Всего-то /usr

"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Аноним , 28-Ноя-13 15:47 
> Не корень. Всего-то /usr

Ну да, это сильно меняет дело. Потери /usr система даже не заметит.


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено slowpoke , 28-Ноя-13 12:52 
лучше бы просто -Werror добавили

"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено pavlinux , 29-Ноя-13 02:20 
-Werror -ansi -pedantic ибо нех..я выйопываться  

"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено dxd , 29-Ноя-13 03:36 
> -Werror -ansi -pedantic ибо нех..я выйопываться

-pedantic-erros забыл. И -ansi - не лучшее решение, лучше -std=c99


"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено arisu , 29-Ноя-13 03:51 
> -std=c99

-std=gnu99. больные на голову пуристы идут по грибы.


"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено dxd , 29-Ноя-13 14:33 
>> -std=c99
> -std=gnu99. больные на голову пуристы идут по грибы.

GNU вендорлок такой не вендорлок...


"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено arisu , 29-Ноя-13 14:46 
> GNU вендорлок такой не вендорлок…

если на твоей системе нет gcc — то это такая яростная маргинальщина, что проблемы её двух с половиной пользователей вообще никого не интересуют.


"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено Аноним , 29-Ноя-13 19:42 
>> GNU вендорлок такой не вендорлок…
> если на твоей системе нет gcc — то это такая яростная маргинальщина,

msvc - это не маргинальщина, а мейнстрим. И что важно - никаких вендор-локов, все открыто и свободно!


"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено arisu , 29-Ноя-13 20:24 
> msvc - это не маргинальщина, а мейнстрим.

на винде есть mingw. мимо кассы.


"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено dxd , 29-Ноя-13 22:23 
Стандарты de facto - это всегда плохо. Если gnu99(или gnu11) станет стандартом de jure, я буду только за. Но до того - спасибо, не надо.

"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено arisu , 29-Ноя-13 22:26 
> Стандарты de facto - это всегда плохо.

я как-то старый уже, и считаю, что суббота для человека, а не человек для субботы. расширения гну облегчают мне жизнь, и поэтому я их использую. а то, что их не внесли в официальный стандарт… да пофиу. gcc есть везде. а в стандарты вносят в основном бесполезный идиотизм.


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено karapuz2 , 28-Ноя-13 13:19 
Окей. Вся наша жизнь - борьба. Представляю батхерт у нечистоплотных авторов апстрима, когда к ним такие патчи придут. Компайл-тайм анализ - это хорошая штука на настоящий момент, достаточно проработанная и ненапряжная для конечных пользователей. В связи с конкуренцией компиляторов (clang, gcc) и такими вот административными мерами, массово улучшается код прикладных программ.

Пусть пока это и довольно формально, логические баги в ПО это не пофиксит, но заставляет программистов держаться в тонусе и меньше говнокодить.


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Pulfer , 28-Ноя-13 14:19 
В Mandriva/ROSA/Mageia уже много лет этот флаг по умолчанию используется, а Fedora что-то только сейчас "созрела"...

"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Stax , 28-Ноя-13 15:54 
Видимо только Mandriva/ROSA/Mageia не потрудились вернуть в апстрим исправления для приложений, позволяющие их собрать с этим флагом. В отличие от федоры, которая обычно это пробивает (тоже не всегда, но по моим наблюдениям чаще). Иначе чем можно объяснить 400 пакетов, которые отказались собираться в федоре после включения флага? Не тем же, что их вообще нет в мандриве (по моим наблюдениям, пакетная база у них точно не уступает федоре).

Так что даже если мандрива была первой, а федора созрела только сейчас, важнее, чтобы нашли ошибки и исправили их в апстриме. Флаг gcc - не самоцель, куда важнее отсутствие багов..


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Pulfer , 28-Ноя-13 18:59 
Да, есть такое - именно этот тип патчей в апстрим никогда не отправлял, хотя не один десяток написал за несколько лет... Из-за представления, что там это никому не надо, иначе бы сами уже давно поправили (это тривиально делается и быстро).

"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Аноним , 28-Ноя-13 21:21 
> Да, есть такое - именно этот тип патчей в апстрим никогда не отправлял

А этот тип случайно не думал пойти работать в каноникал? Там такое любят.


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено myhand , 28-Ноя-13 23:18 
> Да, есть такое - именно этот тип патчей в апстрим никогда не отправлял

Как будто "другой тип" - кто-то отправлял...  ROSA-же, какой еще тут "апстрим"?

В чем новость-то, собственно?  Эта опция включена официально в Debian Wheezy:
https://wiki.debian.org/ReleaseGoals/SecurityHardeningBuildF...

Вот статистика:
http://outflux.net/debian/hardening/
Учитывая комбинацию флагов по-умолчанию - получается что около ~40% библиотек собрано с данной опцией.  Конечно, в первую очередь, попадающие под описание данной release goal (пакеты приоритета important и выше, имеющие DSA в течение последних 5 лет и т.п.).  Репозитарии Федоры - капля в этом море.

И да, "этот тип патчей" - регулярно отправляют в апстрим, можете проверить по истории багов.

> Видимо только Mandriva/ROSA/Mageia не потрудились вернуть в апстрим исправления для приложений

Я что-то пропустил и Fedora уже успела потрудиться, толком даже не исправив своих FTBFS (подавляющая часть которых давно исправлена тем же Debian)?


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Pulfer , 29-Ноя-13 02:11 
> Как будто "другой тип" - кто-то отправлял...  ROSA-же, какой еще тут "апстрим"?

Регулярно отправляются патчи из Росы в апстрим.

https://bugs.kde.org/show_bug.cgi?id=327455
и т.д. и т.п.


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено myhand , 29-Ноя-13 13:09 
> https://bugs.kde.org/show_bug.cgi?id=327455
> и т.д. и т.п.

Я не вижу как этот баг вообще связан с росой.  И т.д. и т.п.

Для сравнения, пример бага:
http://trac.nginx.org/nginx/ticket/334


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Pulfer , 29-Ноя-13 13:31 
> Я не вижу как этот баг вообще связан с росой

Это уже похоже на троллинг. Если один из мейнтейнеров Росы заводит баг, появившийся в Phonon 4.7.0 по невнимательности разработчика из апстрима, чтобы отправить свой патч разработчику, то этот баг с Росой никак не связан? Нда уж...


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено myhand , 29-Ноя-13 18:00 
> Если один из мейнтейнеров Росы заводит баг

Я не вижу там мейнтейнера Росы.  Прикажете опознавать его по нику, известному какой-то приватной тусовке?



"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Pulfer , 29-Ноя-13 18:46 
Вообще-то там тот же ник, что и здесь. И почему-то выше в треде навыков опознания ников хватило, чтобы написать мне "ROSA-же, какой еще тут "апстрим"". Смешно же...


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Аноним , 29-Ноя-13 14:18 
> Учитывая комбинацию флагов по-умолчанию - получается что около ~40% библиотек собрано с
> данной опцией.  Конечно, в первую очередь, попадающие под описание данной
> release goal (пакеты приоритета important и выше, имеющие DSA в течение
> последних 5 лет и т.п.).  Репозитарии Федоры - капля в
> этом море.

40% библиотек дебиана - это сопоставимо с репами федоры. А остальные 60% просто dead/unmaintained.

> И да, "этот тип патчей" - регулярно отправляют в апстрим, можете проверить по истории багов.

Пруфы в студию!

> Я что-то пропустил и Fedora уже успела потрудиться, толком даже не исправив
> своих FTBFS (подавляющая часть которых давно исправлена тем же Debian)?

Попытка запуска apt-build world на почти любой реальной системе наглядно показывает, что FTBFS - это девиз проекта Debian.


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Аноним , 29-Ноя-13 14:19 
>> И да, "этот тип патчей" - регулярно отправляют в апстрим, можете проверить по истории багов.
> Пруфы в студию!

Желательно хотя бы по четверти из этих 40%, т.е. 10% библиотек дебиана.


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено myhand , 29-Ноя-13 18:42 
> Желательно хотя бы по четверти из этих 40%, т.е. 10% библиотек дебиана.

Щас брошу работу и буду убогим объяснять как пользоваться bts и учить читать.

Вот для примера баг:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=642591


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Аноним , 29-Ноя-13 19:35 
> Вот для примера баг:
> http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=642591

Один-единственный случай - это, конечно, сильный аргумент.


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено myhand , 29-Ноя-13 20:44 
> Один-единственный случай - это, конечно, сильный аргумент.

Повторяю, ради придурка, который не умеет читать самостоятельно предложенные материалы - мне не интересно тратить время на большее.  Интересно - читай предложенные ссылки, собирай подробную статистику.  Пакетов, содержащих только C/C++ код - что-то под 8k во Wheezy.  Удачи.


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено myhand , 29-Ноя-13 18:25 
> 40% библиотек дебиана - это сопоставимо с репами федоры.

Возможно.  Если судить по общему соотношению пакетов, f19 - вроде бы 14504.  Это ~40% от общего числа пакетов Debian Wheezy.

Вот только в Debian это уже было сделано два года назад...

> А остальные 60% просто dead/unmaintained.

Прям так валшебным образом попадают в релиз, минуя сборку buildd и проч.  Дети такие наивные...

>> И да, "этот тип патчей" - регулярно отправляют в апстрим, можете проверить по истории багов.
> Пруфы в студию!

Зачем тратить время на того, кто не смог изучить подсунутые под нос баги?

>> Я что-то пропустил и Fedora уже успела потрудиться, толком даже не исправив
>> своих FTBFS (подавляющая часть которых давно исправлена тем же Debian)?
> Попытка запуска apt-build world на почти любой реальной системе наглядно показывает, что
> FTBFS - это девиз проекта Debian.

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


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Аноним , 29-Ноя-13 19:39 
>> 40% библиотек дебиана - это сопоставимо с репами федоры.
> Возможно.  Если судить по общему соотношению пакетов, f19 - вроде бы
> 14504.  Это ~40% от общего числа пакетов Debian Wheezy.

Ага. Осталось еще сопоставить общее количество пакетов с количеством _библиотек_.

> Прям так валшебным образом попадают в релиз, минуя сборку buildd и проч.

Да. Это особая, дебиановская магия.

> Зачем тратить время на того, кто не смог изучить подсунутые под нос баги?

Раз так уж жалко времени - признайтесь, что случаи отправки патчей из дебиана в апстрим носят единичный характер.
В противном случае вам придется доказывать обратное.

> На "реальных системах" не используют заброшенные пакеты, а пользуются нормальными инструментами для установки/сборки.  И тем более, не превращают бинарный дистрибутив в недогенту.

apt-build использует какой-то особый, заброшенный gcc?


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено myhand , 29-Ноя-13 20:48 
>>> 40% библиотек дебиана - это сопоставимо с репами федоры.
>> Возможно.  Если судить по общему соотношению пакетов, f19 - вроде бы
>> 14504.  Это ~40% от общего числа пакетов Debian Wheezy.
> Ага. Осталось еще сопоставить общее количество пакетов с количеством _библиотек_.

Имбецил?  Да, я так прямо и написал - сравниваю соотношение общего количества пакетов, для оценки.  Если у тебя есть статистика по пакетам c бинарниками в федоре - озвучь ее, мне искать/собирать ее лень.   Для Debian я показал даже графики.  Картинки!  Читать не надо - и ты таки не осилил?

>> Прям так валшебным образом попадают в релиз, минуя сборку buildd и проч.
> Да. Это особая, дебиановская магия.

Да ты, наверно, еще и Деда Мороза веришь?

>> Зачем тратить время на того, кто не смог изучить подсунутые под нос баги?
> Раз так уж жалко времени - признайтесь, что случаи отправки патчей из
> дебиана в апстрим носят единичный характер.

Зачем мне врать?  Это норма, а не исключение.

> В противном случае вам придется доказывать обратное.

Зачем?

>> На "реальных системах" не используют заброшенные пакеты, а пользуются нормальными инструментами для установки/сборки.  И тем более, не превращают бинарный дистрибутив в недогенту.
> apt-build использует какой-то особый, заброшенный gcc?

apt-build не является штатным инструментом для сборки пакетов для Debian.  Это полурабочая утилита для пришедшей из всяких гент школоты.  Больше никому она не нужна, даже мейнтейнер уже давно наигрался...


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Igor , 28-Ноя-13 17:37 
Это гуд!
Попробовал:

1: #include <stdio.h>
2: int main()
3: {
4:  double d = 1.5;
5:  printf("%d\n", d);
6:  return 0;
7: }

Если компилить без "-Wformat -Wformat-security", то компиляция пройдет нормально.
С этими опциями будет предупреждение на строке 5.


"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено arisu , 28-Ноя-13 17:47 
молодец. а теперь приучись собирать проекты с -Wall.

"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено Igor , 28-Ноя-13 17:57 
Наше кредо - ВСЕГДА!

"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено arisu , 28-Ноя-13 18:09 
> Наше кредо - ВСЕГДА!

тогда я не понимаю, чему ты так удивлён.


"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено linux must __RIP__ , 29-Ноя-13 09:53 
-W -Wall -Werror -pedantic после чего долго офигевать от того насколько криво пишут софт :-)

hint - ядро Linux с этими флагами не соберется.


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Archer73 , 29-Ноя-13 10:06 
Интересно. В mingw с gcc 4.6.2 под форточками этот пример собирается без всяких ошибок

gcc --version
gcc.exe (GCC) 4.6.2
Copyright (C) 2011 Free Software Foundation, Inc.
Это свободно распространяемое программное обеспечение. Условия копирования
приведены в исходных текстах. Без гарантии каких-либо качеств, включая
коммерческую ценность и применимость для каких-либо целей.

cat test1.c
#include <stdio.h>

int main (int argc, char *argv[]){
  double d = 1.5;
  printf("%d\n", d);
  return 0;
}

make
cc -g -std=c99 -Wall -Werror -pedantic -pedantic-errors -Wformat -Wformat-security    test1.c   -o test1

test1.exe
0



"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено dq0s4y71 , 29-Ноя-13 19:52 
$ gcc --version
gcc.exe (GCC) 4.8.1
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$ cat test.c
int main (int argc, char *argv[]){
  double d = 1.5;
  printf("%d\n", d);
  return 0;
}

$ gcc -std=c99 -Wall -Werror -pedantic -pedantic-errors -Wformat -Wformat-security    test.c   -o test
test.c: In function 'main':
test.c:3:3: error: implicit declaration of function 'printf' [-Wimplicit-function-declaration]
   printf("%d\n", d);
   ^
test.c:3:3: error: incompatible implicit declaration of built-in function 'printf' [-Werror]
test.c:3:3: error: format '%d' expects argument of type 'int', but argument 2 has type 'double' [-Werror=format=]
cc1.exe: all warnings being treated as errors


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Ytch , 29-Ноя-13 23:25 
> -Wall -Werror -pedantic -pedantic-errors -Wformat -Wformat-security

-Wall вроде уже включает -Wformat?

Если есть -pedantic-errors, то зачем ещё и -pedantic? для драматизма?

-Wextra ещё можно добавить


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено pavlinux , 29-Ноя-13 02:34 
-Werror=format-security

Ща программеры начнут любыми способами убирать эти ошибки,
вплоть до тупейшего явного преобразования типов, лишь бы собралось

printf("%d", (int)1.0f):

Короча, ждём новых дыр в фидоре!  


"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено arisu , 29-Ноя-13 03:52 
> Ща программеры начнут любыми способами убирать эти ошибки,
> вплоть до тупейшего явного преобразования типов, лишь бы собралось

а ведь так и будет…


"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено linux must __RIP__ , 29-Ноя-13 09:55 
>> Ща программеры начнут любыми способами убирать эти ошибки,
>> вплоть до тупейшего явного преобразования типов, лишь бы собралось
> а ведь так и будет…

намек на OpenSSL & Debian? от которого теперь пол интернету икается :-)


"Пакеты в Fedora Linux будут собираться с защитой от..."
Отправлено Аноним , 29-Ноя-13 14:26 
> намек на OpenSSL & Debian? от которого теперь пол интернету икается :-)

Это же знаменитый проект Debian Security Hardening!
И еще хорошо, что конкретно этот патч они поленились в апстим пропихивать...


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено linux must __RIP__ , 29-Ноя-13 09:54 
> -Werror=format-security
> Ща программеры начнут любыми способами убирать эти ошибки,
> вплоть до тупейшего явного преобразования типов, лишь бы собралось
> printf("%d", (int)1.0f):
> Короча, ждём новых дыр в фидоре!

да лана.. разве могут православные GNU программисты так поступать? там же сплошь профессионалы котоые одним глазом все ошибки замечают :)


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено pavlinux , 01-Дек-13 03:32 
>> Короча, ждём новых дыр в фидоре!
> да лана.. разве могут православные GNU программисты так поступать? там же сплошь
> профессионалы котоые одним глазом все ошибки замечают :)

Хер бы с фидорой, но эти школьники тянут свои гадкие ручёнки почти ко всем проектам.
Суют корявые патчи в багтрекеры. Хорошо если майнтейнер проекта адекватный и есть время
для  проверки. А если ленивый? Увидит, что 25 фидорасов щастливы от этого патча и пустит
в мэйнстрим.    


"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено z , 29-Ноя-13 13:04 
Набежало петросянов...
По большей части самое опасное это:
1) прямой ввод-вывод форматных строк вида printf(s)
2) несоответствие размеров аргументов

"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Аноним , 29-Ноя-13 19:03 
да вы че, смеетесь, зачем это в новостях
федора компиляет с новым флагом(и отнюдь не самым-самым), о-ло-ло, сенсация, зачем только по ссылке ходил

"Пакеты в Fedora Linux будут собираться с защитой от уязвимос..."
Отправлено Аноним , 29-Ноя-13 19:41 
> федора компиляет с новым флагом(и отнюдь не самым-самым), о-ло-ло, сенсация, зачем только по ссылке ходил

Федора, пфф! Вот когда Убунта даже не компиляет, а только собирается запланировать возможно начать компилять - это сенсация мирового уровня!