Как написать безопасный код на С++, Java, Perl, PHP, ASP.NET

В наличии Цена за шт.

500

Количество
Купить

Акции и скидки Поделиться


  • Артикул:00-00006571
  • Автор: Ховард М., Лебланк Д., Виега Д.
  • ISBN: 978-5-94074-836-6
  • Обложка: Мягкая обложка
  • Издательство: ДМК-Пресс (все книги издательства)
  • Город: Москва
  • Страниц: 288
  • Год: 2014
  • Вес: 332 г
Развернуть ▼

Эта книга необходима всем разработчикам программного обеспечения, независимо от платформы, языка или вида приложений.
Рассмотрены уязвимости на языках C/C++, C# Java, Visual Basic, Visual Basic .NET, Perl, Python в операционных системах Windows, Unix, Linux, Mac OS, Novell Netware. Авторы издания, Майкл Ховард и Дэвид Лебланк, обучают программистов как писать безопасный код в компании Microsoft. На различных примерах продемонстрированы как сами ошибки, так и способы их исправления и защиты от них.
Если вы - программист, то вам просто необходимо прочесть эту книгу.
Содержание
Об авторах
О научных редакторах
Предисловие
Благодарности
Введение
Структура книги
Кому предназначена эта книга
Какие главы следует прочитать
Грех 1. Переполнение буфера
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Греховность C/C++
Родственные грехи
Где искать ошибку
Выявление ошибки на этапе анализа кода
Тестирование
Примеры из реальной жизни
CVE-1999-0042
CVE-2000-0389 - CVE-2000-0392
CVE-2002-0842, CVE-2003-0095, CAN-2003-0096
CAN-2003-0352
Искупление греха
Замена опасных функций работы со строками
Следите за выделениями памяти
Проверьте циклы и доступ к массивам
Пользуйтесь строками в стиле C++, а не С
Пользуйтесь STL-контейнерами вместо статических массивов
Пользуйтесь инструментами анализа
Дополнительные защитные меры
Защита стека
Запрет исполнения в стеке и куче
Другие ресурсы
Резюме
Грех 2. Ошибки, связанные с форматной строкой
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Греховность C/C++
Родственные грехи
Где искать ошибку
Выявление ошибки на этапе анализа кода
Тестирование
Примеры из реальной жизни
CVE-2000-0573
CVE-2000-0844
Искупление греха
Искупление греха в C/C++
Дополнительные защитные меры
Другие ресурсы
Резюме
Г рех 3. Переполнение целых чисел
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Г реховность С и C++
Поразрядные операции
Греховность C#
Г реховность Visual Basic и Visual Basic .NET
Греховность Java
Греховность Perl
Где искать ошибку
Выявление ошибки на этапе анализа кода
C/C++
C#
Java
Visual Basic и Visual Basic .NET
Perl
Тестирование
Примеры из реальной жизни
Ошибка в интерпретаторе Windows Script позволяет выполнить произвольный код
Переполнение целого в конструкторе объекта
SOAPParameter
Переполнение кучи в HTR-документе, передаваемом поблочно, может скомпрометировать Web-сервер
Искупление греха
Дополнительные защитные меры
Другие ресурсы
Резюме
Не рекомендуется
Грех 4. Внедрение SQL-команд
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Греховность C#
Греховность РНР
Греховность Perl/CGI
Греховность Java
Греховность SQL
Родственные грехи
Где искать ошибку
Выявление ошибки на этапе анализа кода
Тестирование
Примеры из реальной жизни
CAN-2004-0348
CAN-2002-0554
Искупление греха
Проверяйте все входные данные
Никогда не применяйте конкатенацию для построения
SQL-предложений
Дополнительные защитные меры
Другие ресурсы
Резюме
Грех 5. Внедрение команд
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Родственные грехи
Где искать ошибку
Выявление ошибки на этапе анализа кода
Тестирование
Примеры из реальной жизни
CAN-2001-1187
CAN-2002-0652
Искупление греха
Контроль данных
Если проверка не проходит
Дополнительные защитные меры
Другие ресурсы
Резюме
Грех 6. Пренебрежение обработкой ошибок
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Раскрытие излишней информации
Игнорирование ошибок
Неправильная интерпретация ошибок
Бесполезные возвращаемые значения
Обработка не тех исключений, что нужно
Обработка всех исключений
Греховность C/C++
Греховность C/C++ в Windows
Греховность C++
Греховность С#, VB.NET и Java
Родственные грехи
Где искать ошибку
Выявление ошибки на этапе анализа кода
Тестирование
Примеры из реальной жизни
CAN-2004-0077 dojmremap в ядре Linux
Искупление греха
Искупление греха в C/C++
Искупление греха в С#, VB.NET и Java
Другие ресурсы
Резюме
Грех 7. Кросс-сайтовые сценарии
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Греховное ISAPI-расширение или фильтр на C/C++
Греховность ASP
Греховность форм ASP.NET
Греховность JSP
Греховность РНР
Греховность Perl-модуля CGI.pm
Греховность mod-perl
Где искать ошибку
Выявление ошибки на этапе анализа кода
Тестирование
Примеры из реальной жизни
Уязвимость IBM Lotus Domino для атаки с кросс-сайтовым сценарием и внедрением HTML
Ошибка при контроле входных данных в сценарии isqlplus, входящем в состав Oracle HTTP Server, позволяет удаленному пользователю провести атаку с кросс-сайтовым сценарием
CVE-2002-0840
Искупление греха
Искупление греха в ISAPI-расширениях и фильтрах на C/C++
Искупление греха в ASP
Искупление греха в ASP.NET
Искупление греха в JSP
Искупление греха в РНР
Искупление греха в Perl/CGI
Искупление греха в mod-perl
Замечание по поводу HTML-кодирования
Дополнительные защитные меры
Другие ресурсы
Резюме
Грех 8. Пренебрежение защитой сетевого трафика
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Родственные грехи
Где искать ошибку
Выявление ошибки на этапе анализа кода
Тестирование
Примеры из реальной жизни
TCP/IP
Протоколы электронной почты
Протокол E*Trade
Искупление греха
Рекомендации низкого уровня
Дополнительные защитные меры
Другие ресурсы
Резюме
Грех 9. Применение загадочных URL и скрытых полей форм
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Загадочные URL
Скрытые поля формы
Родственные грехи
Где искать ошибку
Выявление ошибки на этапе анализа кода
Тестирование
Примеры из реальной жизни
CAN-2000-1001
Модификация скрытого поля формы в программе
MaxWebPortal
Искупление греха
Противник просматривает данные
Противник воспроизводит данные
Противник предсказывает данные
Противник изменяет данные
Дополнительные защитные меры
Другие ресурсы
Резюме
Грех 10. Неправильное применение SSL и TLS
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Родственные грехи
Где искать ошибку
Выявление ошибки на этапе анализа кода
Тестирование
Примеры из реальной жизни
Почтовые клиенты
Web-браузер Safari
SSL-прокси Stunnel
Искупление греха
Выбор версии протокола
Выбор семейства шифров
Проверка сертификата
Проверка имени хоста
Проверка отзыва сертификата
Дополнительные защитные меры
Другие ресурсы
Резюме
Грех 11. Использование слабых систем на основе паролей
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Родственные грехи
Где искать ошибку
Выявление ошибки на этапе анализа кода
Политика управления сложностью пароля ..
Смена и переустановка пароля
Протоколы проверки паролей
Ввод и хранение паролей
Тестирование
Примеры из реальной жизни
CVE-2005-1505
CVE-2005-0432
Ошибка в TENEX
Кража у Пэрис Хилтон
Искупление греха
Многофакторная аутентификация
Хранение и проверка паролей
Рекомендации по выбору протокола
Рекомендации по переустановке паролей
Рекомендации по выбору пароля
Прочие рекомендации
Дополнительные защитные меры
Другие ресурсы
Резюме
Не рекомендуется
Стоит подумать
Грех 12. Пренебрежение безопасным хранением и защитой данных
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Слабый контроль доступа к секретным данным
Греховность элементов управления доступом
Встраивание секретных данных в код
Родственные грехи
Где искать ошибку
Выявление ошибки на этапе анализа кода
Тестирование
Примеры из реальной жизни
CVE-2000-0100
CAN-2002-1590
CVE-1999-0886
CAN-2004-0311
CAN-2004-0391
Искупление греха
Использование технологий защиты, предоставляемых операционной системой
Искупление греха в C/C++ для Windows 2000 и последующих версий
Искупление греха в ASP.NET версии 1.1 и старше
Искупление греха в C# на платформе .NET Framework 2.0 Искупление греха в C/C++ для Mac OS X версии v10.2 и старше
Искупление греха без помощи операционной системы (или «храните секреты от греха подальше»)
Замечание по поводу Java и Java KeyStore
Дополнительные защитные меры
Другие ресурсы
Резюме
Грех 13. Утечка информации
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Побочные каналы
Слишком много информации!
Модель безопасности информационного потока
Греховность C# (и других языков)
Родственные грехи
Где искать ошибку
Выявление ошибки на этапе анализа кода
Тестирование
Имитация кражи ноутбука
Примеры из реальной жизни
Атака с хронометражем Дэна Бернстайна на шифр AES
CAN-2005-1411
CAN-2005-1133
Искупление греха
Искупление греха в C# (и других языках)
Учет локальности
Дополнительные защитные меры
Другие ресурсы
Резюме
Грех 14. Некорректный доступ к файлам
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Греховность C/C++ в Windows
Греховность C/C++
Греховность Perl
Греховность Python
Родственные грехи
Где искать ошибку
Выявление ошибки на этапе анализа кода
Тестирование
Примеры из реальной жизни
CAN-2005-0004
CAN-2005-0799
CAN-2004-0452 и CAN-2004-0448
CVE-2004-0115 Microsoft Virtual PC для Macintosh
Искупление греха
Искупление греха в Perl
Искупление греха в C/C++ для Unix
Искупление греха в C/C++ для Windows
Получение места нахождения временного каталога пользователя
Искупление греха в .NET
Дополнительные защитные меры
Другие ресурсы
Резюме
Грех 15. Излишнее доверие к системе разрешения сетевых имен
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Греховные приложения
Родственные грехи
Где искать ошибку
Выявление ошибки на этапе анализа кода
Тестирование
Примеры из реальной жизни
CVE-2002-0676
CVE-1999-0024
Искупление греха
Другие ресурсы
Резюме
Грех 16. Гонки
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Греховность кода
Родственные грехи
Где искать ошибку
Выявление ошибки на этапе анализа кода
Тестирование
Примеры из реальной жизни
CVE-2001 -1349
CAN-2003-1073
CVE-2004-0849
Искупление греха
Дополнительные защитные меры
Другие ресурсы
Резюме
Грех 17. Неаутентифицированный обмен ключами
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Родственные грехи
Где искать ошибку
Выявление ошибки на этапе анализа кода
Тестирование
Примеры из реальной жизни
Атака с «человеком посередине» на Novell Netware
CAN-2004-0155
Искупление греха
Дополнительные защитные меры
Другие ресурсы
Резюме
Грех 18. Случайные числа криптографического качества
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Греховность некриптографических генераторов
Греховность криптографических генераторов
Греховность генераторов истинно случайных чисел
Родственные грехи
Где искать ошибку
Выявление ошибки на этапе анализа кода
Когда следует использовать случайные числа
Выявление мест, где применяются PRNG-генераторы
Правильно ли затравлен CRNG-генератор
Тестирование
Примеры из реальной жизни
Браузер Netscape
Проблемы в OpenSSL
Искупление греха
Windows
Код для.NET
Unix
Java
Повторное воспроизведение потока случайных чисел
Дополнительные защитные меры
Другие ресурсы
Резюме
Стоит подумать
Грех 19. Неудобный интерфейс
В чем состоит грех
Подверженные греху языки
Как происходит грехопадение
Каков круг ваших пользователей?
Минное поле: показ пользователям информации о безопасности
Родственные грехи
Где искать ошибку
Выявление ошибки на этапе анализа кода
Тестирование
Примеры из реальной жизни
Аутентификация сертификата в протоколе SSL/TLS
Установка корневого сертификата в Internet Explorer 4.0
Искупление греха
Делайте интерфейс пользователя простым и понятным
Принимайте за пользователей решения, касающиеся безопасности
Упрощайте избирательное ослабление политики безопасности
Ясно описывайте последствия
Помогайте пользователю предпринять действия
Предусматривайте централизованное управление
Другие ресурсы
Резюме
Приложение А. Соответствие между 19 смертными грехами и «10 ошибками» OWASP
Приложение В. Сводка рекомендаций
Предметный указатель

Оставьте отзыв о товаре
×

Журналы и бланки

БухгалтерияОхрана труда и техника безопасностиМЧСКадровая работа: Журналы, бланки, формыЖурналы, бланки, формы документов для органов прокуратуры и суда, минюста, пенитенциарной системыЖурналы, бланки, формы документов МВД РФКонструкторская, научно-техническая документацияЛесное хозяйствоПромышленностьГостиницы, общежития, хостелыСвязьЖурналы и бланки по экологииЖурналы и бланки, используемые в торговле, бытовом обслуживанииЖурналы по санитарии, проверкам СЭСЛифтыКомплекты документов и журналовНефтебазыБассейныГазовое хозяйство, газораспределительные системы, ГАЗПРОМЖКХЭксплуатация зданий и сооруженийЖурналы и бланки для нотариусов, юристов, адвокатовЖурналы и бланки для организаций пищевого производства, общепита и пищевых блоковЖурналы и бланки для организаций, занимающихся охраной объектов и частных лицЖурналы и бланки для ФТС РФ (таможни)Журналы для образовательных учрежденийЖурналы и бланки для армии, вооруженных силБанкиГеодезия, геологияГрузоподъемные механизмыДокументы, относящиеся к нескольким отраслямНефтепромысел, нефтепроводыДелопроизводствоЖурналы для медицинских учрежденийАЗС и АЗГСЭлектроустановкиТепловые энергоустановки, котельныеЭнергетикаШахты, рудники, метрополитены, подземные сооруженияТуризмДрагметаллыУчреждения культуры, библиотеки, музеиПсихологияПроверки и контроль госорганами, контролирующими организациямиРаботы с повышенной опасностьюПожарная безопасностьОбложки для журналов и удостоверенийАптекиТранспортРегулирование алкогольного рынкаАвтодороги, дорожное хозяйствоСамокопирующиеся бланкиСельское хозяйство, ветеринарияСкладСнегоплавильные пунктыСтройка, строительствоМетрологияКанатные дороги, фуникулерыКладбищаАрхивыАттракционыЖурналы для парикмахерских, салонов красоты, маникюрных, педикюрных кабинетов

Охрана труда

Удостоверения, Свидетельства

Зачетные книжки, студенческие билетыУдостоверения рабочих различных строительных специальностей

Членские книжки

ГК, ГСК, членские книжки, пропуска и пр.Садоводческие книжки, членские книжки СНТ

Печати и штампы

Оснастки, самонаборные штампыШтампы по техническому контролю, учету и хранениюПечать фирмы (организации, компании, подразделения, отдела)Печати и штампы для бухгалтерии и делопроизводстваПечати и штампы для водителейМедицинские печати и штампы

Книги

Нормативные правовые актыОбщественные и гуманитарные наукиРелигия. Оккультизм. ЭзотерикаОхрана труда, обеспечение безопасностиСанПины, СП, МУ, МР, ГНПодарочные книгиПутешествия. Отдых. Хобби. СпортНаука. Техника. МедицинаКосмосРостехнадзорДругоеИскусство. Культура. ФилологияКниги издательства "Комсомольская правда"Книги в электронном видеКомпьютеры и интернетБукинистическая литератураСНиП, СП, СО,СТО, РД, НП, ПБ, МДК, МДС, ВСНГОСТы, ОСТыЭнциклопедии, справочники, словариДомашний кругДетская литератураУчебный годСборники рецептур блюд для предприятий общественного питанияЭкономическая литератураХудожественная литература

Знаки безопасности, таблички, стенды

Вспомогательные знаки, таблички-наклейкиЗапрещающие знакиЗнаки для инвалидовЗнаки пожарной безопасностиЗнаки электробезопасностиИнформационные знаки для строительных площадокМедицинские и санитарные знакиПредписывающие знакиПредупреждающие знакиСтендыЗнаки для уборки и сбора мусораУказательные знакиЭвакуационные знакиЮмористические знакиЗнаки на автомобильНаклейки

Диски

Плакаты

Металлические изделия (металлическая мебель, конструкции, навесы)

Металлическая мебельМеталлические изделия для дачи и дома

Подарки нашим покупателям

Портреты знаменитых людей

Сувениры

Кружки для термопереносаБрелокиГудки и Рожки охотничьиСувениры, подарки для мужчинПредметы интерьераЗажигалкиПодарочные наборы игрБизнес сувениры, корпоративные подаркиГимн России. Эксклюзивное графическое оформление в багетном обрамлении

Товары для дома и офиса

Каски, защитные очки, маскиПланы эвакуацииСамоспасателиИндикаторы стерилизацииГрамоты и благодарностиСредства дезинфекцииФитолампы и прожекторыОгнетушителиКанцелярские товарыКухонные принадлежностиХозяйственные товарыЭлектроудлинители, тройники, катушкиКартонные коробкиЭлектроустановочные изделия

Товары для развития, игрушки

Бумажные модели

Юнармия

Погоны министерств и ведомств

Товары для здоровья, БАДы

Аюрведические товарыСредства гигиены, косметика из минералов Мертвого моря
;