BugTraq.Ru
Русский BugTraq
http://www.bugtraq.ru/rsn/archive/2002/11/05.html

Когда оптимизация вредна
dl // 06.11.02 02:22
Естественным желанием разработчика является очистка после использования участков памяти, хранящих критичную информацию - пароли, счета, явки...
[Не забывайте при копировании материала указывать полный адрес источника: http://www.bugtraq.ru/rsn/archive/2002/11/05.html]
Естественным способом такой очистки является вызов, например, функции memset, забивающей данный участок нулями. Проблема в том, что если очищаемый буфер является локальным и более не используется, многие современные C/C++ компиляторы в процессе оптимизации просто выкинут вызов, сведя на нет все благие намерения программиста.

Источник: MSDN / Code Secure    
предложить новость  |  обсудить  |  все отзывы (2) [4492]
назад «  » вперед

последние новости
Очередное исследование 19 миллиардов паролей показало, что с ними по-прежнему все плохо // 02.05.25 20:42
Оптимизация ввода-вывода как инструмент обхода антивирусов // 30.04.25 23:29
Зловреды выбирают Lisp и Delphi // 30.03.25 23:26
Уязвимости в Mongoose ставят под удар MongoDB // 20.02.25 18:23
По роутерам Juniper расползается бэкдор, активирующийся "волшебным пакетом" // 27.01.25 17:33
С наступающим // 31.12.24 23:59
Microsoft обещает радикально усилить безопасность Windows в следующем году // 19.11.24 17:09

Комментарии:

Когда оптимизация вредна 06.11.02 21:49  
Автор: Eugene Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> Когда оптимизация вредна
> MSDN / Code Secure
> http://msdn.microsoft.com/library/en-us/dncode/html/secure1
> 0102002.asp
>
>
> Естественным желанием разработчика является очистка после
> использования участков памяти, хранящих критичную
> информацию - пароли, счета, явки... Естественным способом
> такой очистки является вызов, например, функции memset,
> забивающей данный участок нулями. Проблема в том, что если
> очищаемый буфер является локальным и более не используется,
> многие современные C/C++ компиляторы в процессе оптимизации
> просто выкинут вызов, сведя на нет все благие намерения
> программиста.

Интересно сей баг есть только у MS или везде?
Когда оптимизация вредна 06.11.02 22:24  
Автор: dl <Dmitry Leonov>
<"чистая" ссылка>
> Интересно сей баг есть только у MS или везде?

Это не баг, а нормальная работа оптимизатора. В оригинале упоминаются компиляторы Borland и GNU.
<добавить комментарий>





  Copyright © 2001-2025 Dmitry Leonov Design: Vadim Derkach