Безопасное программирование на C и C++

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Узнайте об основных причинах уязвимостей программного обеспечения и научитесь их избегать! Распространенные уязвимости программного обеспечения обычно вызываются дефектами программирования, которых можно было бы избежать. Проанализировав десятки тысяч сообщений об уязвимостях, начиная с 1988 года, CERT выявила, что подавляющее количество уязвимостей вызывается относительно небольшим количеством первопричин. Во втором издании книги Безопасное программирование на C и C++ выявляются и поясняются эти первопричины и указываются шаги, которые могут быть предприняты для устранения уязвимостей в разрабатываемом программном обеспечении. Кроме того, книга призывает программистов принять на вооружение наилучшие методы обеспечения безопасности и выработать образ мышления, который может помочь защитить программное обеспечение не только от известных на сегодня, но и от будущих атак. Опираясь на доклады и выводы CERT, Роберт С. Сикорд систематически указывает программные ошибки, которые скорее всего приведут к нарушениям безопасности, показывает, как они могут быть использованы злоумышленниками, рассматривает потенциальные следствия такого использования и предоставляет безопасные альтернативы. В книге подробно рассмотрены следующие темы: Повышение безопасности и защищенности любого приложения на C/C++. Описание атак с использованием переполнения буфера и разрушения стека, использующих небезопасную логику работы со строками. Как избежать уязвимостей и дефектов безопасности при использовании функций управления динамической памятью. Как устранить проблемы целочисленной арифметики, вытекающие из переполнения знаковых целых чисел, циклического возврата беззнаковых целых чисел и ошибок усечения. Безопасный ввод-вывод и устранение уязвимостей, связанных с файловой системой. Корректное применение функций форматированного вывода без внесения уязвимостей форматных строк. Устранение конфликтов при доступе к ресурсам и прочих уязвимостей при разработке параллельно выполняемого кода.

Author(s): Сикорд Р.
Edition: 2
Publisher: Вильямс
Year: 2015

Language: Russian
Commentary: увеличил контрастность, подчистил мусор
Pages: 498

Введение 17
Предисловие 19
Об авторе 25

Глава 1. Бег с ножницами 27
Глaвa 2. Строки 51
Глaвa 3. Уловки с указателями 131
Глaвa 4. Управление динамической памятью 151
Глaвa 5. Целочисленная безопасность 221
Глaвa 6. Форматированный вывод 293
Глaвa 7. Параллельное выполнение 329
Глaвa 8. Файловый ввод-вывод 373
Глaвa 9. Рекомендованные практики 435

Список литературы 475
Аббревиатуры 488
Предметный указатель 494