Ошибки в FreeBSD

Разговоры ни о чём

Модератор: vadim64

el_programmer
проходил мимо
Сообщения: 1
Зарегистрирован: 2017-04-06 11:06:06

Ошибки в FreeBSD

Непрочитанное сообщение el_programmer » 2017-04-06 12:03:26

Изображение

Разработчики статического анализатора PVS-Studio вновь решили проверить FreeBSD и продемонстрировать, что даже в таких серьезных и качественных проектах можно найти ошибки. О чем написали статью в своем блоге - https://www.viva64.com/ru/b/0496/. Хотя данный проект регулярно проверяется Coverity, в нем нашлось определенное количество потенциальных уязвимостей (CWE).

Как пишет автор статьи, на поиск потенциальных уязвимостей он потратил всего 2-3 часа, но оформлял статью около 3 недель. Причиной задержки послужило то, что PVS-Studio выдал огромное количество предупреждений общего назначения, с которыми надо было разбираться, проводя настройку анализатора. Большинство ложных предупреждений возникает из-за разных макросов в проверяемом проекте, которые легко убрать, используя механизмы, предусмотренные в PVS-Studio. Далее автор приводит примеры настройки инструмента с примерами.

Помимо стандартных ошибок Copy-Paste и опечаток также удалось обнаружить 56 потенциальных уязвимостей. Конечно, только немногие из найденных CWE ошибок могут превратиться в CVE (подробнее про различие CWE и CVE можно почитать тут https://www.viva64.com/ru/b/0486/). Однако, чем больше ошибок, попадающих под классификацию CWE, будет найдено с помощью статического анализа, тем лучше.

Безусловно польза статического анализатора будет лучше, если его использовать не от случая к случаю, а регулярно. Единичная проверка, подобная той, что описана в статье, может служить хорошей рекламой анализатора, но не принесёт проверенному проекту существенной пользы. Вся суть статического анализа сводится к тому, что многие ошибки можно исправить на самом раннем этапе. Дополнительно, так легче поддерживать вывод анализатора чистым и не искать ошибки среди сотен ложных срабатываний. Здесь полная аналогия с предупреждениями компилятора.

p.s. Это уже вторая проверка FreeBSD с помощью PVS-Studio. Отчет 2016 года можно посмотреть по ссылке - https://www.viva64.com/ru/b/0377/

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35454
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Ошибки в FreeBSD

Непрочитанное сообщение Alex Keda » 2017-04-07 15:56:13

И?
Убей их всех! Бог потом рассортирует...

snorlov
подполковник
Сообщения: 3927
Зарегистрирован: 2008-09-04 11:51:25
Откуда: Санкт-Петербург

Ошибки в FreeBSD

Непрочитанное сообщение snorlov » 2017-04-07 18:34:31

Я тут разговаривал с одним из программеров, на тему условия типа 1 > 1, что всегда верно и этот анализатор выдает как ошибку, не проще ли убить код, стоящий за этим условием, он мне ответил, а вдруг понадобится да и можно банально ошибиться при удалении, в результате больше времени потеряешь...

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35454
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Ошибки в FreeBSD

Непрочитанное сообщение Alex Keda » 2017-04-07 19:18:58

ну таки да...
у самого есть в проектах куча кода, закомментированного типа

Код: Выделить всё

if(FALSE){
..........
}
=)
Убей их всех! Бог потом рассортирует...