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

Исходное сообщение
"OpenNews: Оптимизатор GCC 4.2 убирает проверки целочисленного переполнения для указателей"

Отправлено opennews , 09-Апр-08 11:11 
"gcc silently discards some wraparound checks (http://www.kb.cert.org/vuls/id/162289)" - оптимизатор GCC 4.2 убирает проверки целочисленного переполнения для указателей. Например, будет игнорирован (https://www.securecoding.cert.org/confluence/display/seccode...) код "char *buf; int len; if(buf+len < buf){". Для обхода проблемы нужно  писать "if((uintptr_t)buf+len < (uintptr_t)buf)".

URL: http://www.kb.cert.org/vuls/id/162289
Новость: http://www.opennet.me/opennews/art.shtml?num=15188


Содержание

Сообщения в этом обсуждении
"Оптимизатор GCC 4.2 убирает проверки целочисленного переполнения для указателей"
Отправлено Romik , 09-Апр-08 11:11 
Доп. инф-я.
http://abbra.livejournal.com/122621.html

"Оптимизатор GCC 4.2 убирает проверки целочисленного переполнения для указателей"
Отправлено Аноним , 09-Апр-08 17:14 
Что-то они опухли со своей оптимизацией генерировать битый код.

"Оптимизатор GCC 4.2 убирает проверки целочисленного переполн..."
Отправлено Аноним , 09-Апр-08 19:38 
>Что-то они опухли со своей оптимизацией генерировать битый код.

По ссылке написано:
Note: this issue does not strictly constitute a vulnerability in gcc itself. The behavior that gcc exhibits in this case is permitted by the ISO/IEC 9899:1999 C specification (§6.5.6p8).