Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Безопасность ASP.NET Core

Покупка
Новинка
Артикул: 855973.01.99
Доступ онлайн
1 849 ₽
В корзину
В книге рассматриваются методы защиты веб-приложений ASP.NET Core: безопасное взаимодействие с браузером, распознавание и предотвращение распространенных угроз, развертывание уникальных API безопасности этого фреймворка. Приводятся способы написания безопасного кода и примеры с аннотациями, а также полное описание встроенных инструментов безопасности ASP.NET Core. Обсуждаются реальные нарушения в системе безопасности, включая мошеннические расширения Firefox и кражу паролей в Adobe. В универсальных рекомендациях по обеспечению безопасности учтены уникальные потребности приложений ASP.NET Core. Книга адресована опытным разработчикам ASP.NET Core.
Венц, К. Безопасность ASP.NET Core : практическое руководство / К. Венц ; пер. с англ. Д. А. Беликова. – Москва : ДМК Пресс, 2023. - 388 с. – ISBN 978-5-93700-176-4. - Текст : электронный. - URL: https://znanium.ru/catalog/product/2204225 (дата обращения: 06.04.2025). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов
Кристиан Венц
Безопасность  
ASP.NET Core


ASP.NET Core 
Security
CHRISTIAN WENZ


Безопасность 
ASP.NET Core
КРИСТИАН ВЕНЦ
Москва, 2023


УДК 004.04
ББК 32.372
В29
Венц К.
В29 
Безопасность ASP.NET Core / пер. с англ. Д. А. Беликова. – М.: ДМК Пресс, 
2023. – 386 с.: ил. 
ISBN 978-5-93700-176-4
В книге рассматриваются методы защиты веб-приложений ASP.NET Core: безопасное взаимодействие с браузером, распознавание и предотвращение распространенных угроз, развертывание уникальных API безопасности этого фреймворка. 
Приводятся способы написания безопасного кода и примеры с аннотациями, а также 
полное описание встроенных инструментов безопасности ASP.NET Core. Обсуждаются 
реальные нарушения в системе безопасности, включая мошеннические расширения 
Firefox и кражу паролей в Adobe. В универсальных рекомендациях по обеспечению 
безопасности учтены уникальные потребности приложений ASP.NET Core.
Книга адресована опытным разработчикам ASP.NET Core.
УДК  004.04
ББК  32.372
Copyright © DMK Press 2023. Authorized translation of the English edition © 2022 Manning 
Publications. This translation is published and sold by permission of Manning Publications, the owner 
of all rights to publish and sell the same.
Все права защищены. Любая часть этой книги не может быть воспроизведена в какой 
бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав.
ISBN 978-1-6334-3998-6 (англ.) 
©  Manning Publications, 2022
ISBN 978-5-93700-176-4 (рус.) 
©  Перевод, оформление, издание, ДМК Пресс, 2023


Оглавление
Часть I	
ПЕРВЫЕ ШАГИ......................................................................................... 20
	1	   О безопасности веб-приложений.................................................................. 21
Часть II	
НЕЙТРАЛИЗАЦИЯ РАСПРОСТРАНЕННЫХ АТАК.................. 35
	2	   Межсайтовый скриптинг................................................................................. 36
	3	   Атака на управление сессиями...................................................................... 74
	4	   Межсайтовая подделка запросов.................................................................. 93
	5	   Данные, не прошедшие валидацию............................................................121
	6	   Внедрение SQL-кода (и другие виды внедрений)....................................142
Часть III	 БЕЗОПАСНОЕ ХРАНЕНИЕ ДАННЫХ............................................156
	7	   Хранение секретных данных........................................................................157
	8	   Работа с паролями............................................................................................185
Часть IV	 КОНФИГУРИРОВАНИЕ.......................................................................208
	9	   HTTP-заголовки................................................................................................209
	10	   Обработка ошибок...........................................................................................224
	11	   Журналирование и проверка работоспособности...................................236
Часть V	
АУТЕНТИФИКАЦИЯ И АВТОРИЗАЦИЯ.....................................256
	12	   Защита веб-приложений с помощью ASP.NET Core Identity.................257
	13	   Защита API и одностраничных приложений............................................291
Часть VI	 БЕЗОПАСНОСТЬ КАК ПРОЦЕСС....................................................338
	14	   Безопасные зависимости...............................................................................339
	15	   Инструменты аудита.......................................................................................350
	16	   OWASP Top 10....................................................................................................369


Содержание
Вступительное слово от сообщества..........................................................11
Введение............................................................................................................. 12
Об этой книге.................................................................................................... 14
Об авторе.......................................................................................................... 18
Об иллюстрации на обложке.......................................................................... 19
Часть I	
ПЕРВЫЕ ШАГИ....................................................................... 20
1	
О безопасности веб-приложений............................................ 21
1.1	
ASP.NET Core: история и фреймворки............................................ 22
1.1.1	
История версий ASP.NET Core.................................................. 23
1.1.2	
MVC.............................................................................................. 23
1.1.3	
Razor Pages.................................................................................. 26
1.1.4	
Веб-API........................................................................................ 27
1.1.5	
Blazor........................................................................................... 29
1.2	
Выявление и нейтрализация угроз.................................................. 30
1.2.1	
Компоненты веб-приложений................................................... 30
1.2.2	
Эшелонированная защита........................................................ 32
1.3	
API, предназначенные для выполнения функций  
	
безопасности......................................................................................... 33
1.4	
Безопасность важна............................................................................. 33
Резюме............................................................................................................... 34
Часть II	
НЕЙТРАЛИЗАЦИЯ  
РАСПРОСТРАНЕННЫХ АТАК................................. 35
2	
Межсайтовый скриптинг............................................................. 36
2.1	
Анатомия атаки с использованием межсайтового  
	
скриптинга............................................................................................. 37


Содержание
2.2	
Предотвращение межсайтового скриптинга................................ 44
2.2.1	
Правило ограничения домена.................................................... 44
2.2.2	
Экранирование HTML................................................................ 46
2.2.3	
Экранирование в другом контексте........................................ 50
2.3	
Политика безопасности контента.................................................... 53
2.3.1	
Пример приложения................................................................... 54
2.3.2	
Как работает CSP..................................................................... 55
2.3.3	
Рефакторинг приложений для CSP........................................... 57
2.3.4	
Рекомендации по CSP................................................................. 65
2.3.5	
Функциональные возможности CSP третьего уровня........... 68
2.4	
Дополнительные меры безопасности, предоставляемые  
	
браузерами............................................................................................ 70
Резюме............................................................................................................... 73
3	
Атака на управление сессиями................................................ 74
3.1	
Анатомия атаки.................................................................................... 75
3.1.1	
Кража сеансовых файлов cookie................................................ 77
3.1.2	
Файлы cookie и управление сессиями........................................ 78
3.2	
Файлы cookie и параметры сессий ASP.NET Core......................... 81
3.3	
Поддержка протокола HTTPS............................................................ 85
3.4	
Обнаружение перехвата сессий........................................................ 90
Резюме............................................................................................................... 91
4	
Межсайтовая подделка запросов........................................... 93
4.1	
Анатомия межсайтовой подделки запросов................................. 94
4.2	
Меры противодействия для защиты от межсайтовой  
	
подделки запросов..............................................................................102
4.2.1	
Делаем HTTP-запрос непредсказуемым..................................102
4.2.2	
Защита сеансового файла cookie.............................................106
4.3	
Кликджекинг........................................................................................108
4.4	
Совместное использование ресурсов между разными 
источниками....................................................................................................112
Резюме..............................................................................................................119
5	
Данные, не прошедшие валидацию.......................................121
5.1	
Взгляд на HTTP....................................................................................122
5.2	
Валидация в ASP.NET Core................................................................126
5.3	
Массовое переназначение параметров.........................................130
5.4	
Безопасная десериализация.............................................................137
Резюме..............................................................................................................141
6	
Внедрение SQL-кода (и другие виды внедрений)........142
6.1	
Анатомия атаки с использованием внедрения SQL-кода.........143
6.2	
Подготовленные инструкции...........................................................146
6.3	
Entity Framework Core.........................................................................149


Содержание
6.4	
Внешние сущности XML....................................................................151
6.5	
Другие виды внедрений....................................................................153
Резюме..............................................................................................................154
Часть III	
БЕЗОПАСНОЕ ХРАНЕНИЕ ДАННЫХ.............156
7	
Хранение секретных данных.....................................................157
7.1	
О шифровании.....................................................................................158
7.2	
Secret Manager......................................................................................161
7.3	
Файл appsettings.json.........................................................................164
7.4	
Хранение секретов в облаке.............................................................167
7.4.1	
Хранение секретов в Azure.......................................................168
7.4.2	
Хранение секретов в AWS.........................................................172
7.4.3	
Хранение секретов в Google Cloud...........................................174
7.5	
Использование API, обеспечивающего защиту данных............177
7.6	
Локальное хранение секретов с помощью Blazor.......................181
Резюме..............................................................................................................184
8	
Работа с паролями............................................................................185
8.1	
От утечки данных до кражи паролей.............................................186
8.2	
Реализация хеширования паролей.................................................190
8.2.1	
MD5 (и почему не стоит его использовать)...........................192
8.2.2	
PBKDF2.......................................................................................195
8.2.3	
Argon2.........................................................................................199
8.2.4	
scrypt...........................................................................................201
8.2.5	
bcrypt...........................................................................................202
8.3	
Анализ шаблонов ASP.NET Core.......................................................204
Резюме..............................................................................................................207
Часть IV	
КОНФИГУРИРОВАНИЕ................................................208
9	
HTTP-заголовки....................................................................................209
9.1	
Сокрытие информации о сервере...................................................211
9.2	
Заголовки безопасности браузера..................................................213
9.2.1	
Заголовок Referrer-Policy...........................................................214
9.2.2	
Заголовки Feature-Policy и Permissions-Policy.........................217
9.2.3	
Предотвращение сканирования содержимого файла............218
9.2.4	
Политики CORS.........................................................................220
9.2.5	
Дополнительные заголовки......................................................221
Резюме..............................................................................................................223
10	
Обработка ошибок............................................................................224
10.1	 Страницы ошибок для веб-приложений.......................................225
10.1.1	 Собственные страницы ошибок..............................................227


Содержание
10.1.2	 Страницы ошибок для заданных кодов состояния................230
10.2	 Обработка ошибок в API....................................................................232
Резюме..............................................................................................................235
11	
Журналирование и проверка  
	
работоспособности..........................................................................236
11.1	 Проверка работоспособности..........................................................237
11.1.1	 Настройка проверки работоспособности.............................237
11.1.2	 Расширенная проверка работоспособности..........................240
11.1.3	 Форматирование вывода.........................................................242
11.1.4	 Пользовательский интерфейс проверки  
	
работоспособности..................................................................243
11.2	 Журналирование.................................................................................247
11.2.1	 Создание записей журнала.......................................................248
11.2.2	 Уровни сообщения журнала......................................................250
11.2.3	 Области журналирования........................................................252
Резюме..............................................................................................................255
Часть V	
АУТЕНТИФИКАЦИЯ И АВТОРИЗАЦИЯ....256
12	
Защита веб-приложений с помощью  
	
ASP.NET Core Identity.......................................................................257
12.1	 Настройка ASP.NET Core Identity.....................................................258
12.2	 Основы ASP.NET Core Identity..........................................................262
12.3	 Расширенные возможности ASP.NET Core Identity.....................271
12.3.1	 Параметры пароля...................................................................272
12.3.2	 Параметры файлов cookie........................................................274
12.3.3	 Блокировка пользователей.......................................................275
12.3.4	 Работа с утверждениями.........................................................276
12.3.5	 Двухфакторная аутентификация..........................................279
12.3.6	 Аутентификация с внешними поставщиками......................284
Резюме..............................................................................................................289
13	
Защита API и одностраничных приложений.............291
13.1	 Защита API с помощью токенов......................................................292
13.2	 OAuth и OpenID Connect....................................................................303
13.2.1	 OAuth и OpenID Connect............................................................304
13.2.2	 Потоки OAuth............................................................................305
13.3	 Защита приложений...........................................................................308
13.3.1	 Сторонние инструменты........................................................308
13.3.2	 Учетные данные клиента........................................................310
13.3.3	 Код авторизации + PKCE..........................................................317
13.3.4	 Одностраничные приложения и паттерн  
	
Backend-for-Frontend.................................................................325
Резюме..............................................................................................................337


Содержание
Часть VI	
БЕЗОПАСНОСТЬ КАК ПРОЦЕСС........................338
14	
Безопасные зависимости..............................................................339
14.1	 Использование команды npm audit................................................340
14.2	 Поддержание зависимостей NuGet в актуальном  
	
состоянии..............................................................................................344
Резюме..............................................................................................................349
15	
Инструменты аудита....................................................................350
15.1	 Поиск уязвимостей.............................................................................351
15.2	 OWASP ZAP...........................................................................................353
15.3	 Security Code Scan................................................................................359
15.4	 GitHub Advanced Security...................................................................363
Резюме..............................................................................................................367
16	
OWASP Top 10.........................................................................................369
16.1	 OWASP Top 10.......................................................................................370
16.1.1	
Процесс создания списка OWASP Top 10..............................370
16.1.2	
№ 1: Нарушение контроля доступа....................................372
16.1.3	
№ 2: Криптографические ошибки........................................373
16.1.4	
№ 3: Внедрение.......................................................................373
16.1.5	
№ 4: Небезопасный дизайн....................................................374
16.1.6	
№ 5: Ошибки настроек безопасности.................................374
16.1.7	
№ 6: Уязвимые и устаревшие компоненты........................375
16.1.8	
№ 7: Ошибки идентификации и аутентификации............375
16.1.9	
№ 8: Ошибки программного обеспечения  
	
и целостности данных..........................................................375
16.1.10	 № 9: Ошибки журналирования и мониторинга..................376
16.1.11	 № 10: Подделка запросов со стороны сервера....................376
16.2	 OWASP API Top 10................................................................................378
16.3	 Другие списки......................................................................................379
Резюме..............................................................................................................381
Предметный указатель.................................................................................383


Похожие

Доступ онлайн
1 849 ₽
В корзину