Безопасность веб-приложений на Python [Деннис Бирн] (pdf) читать постранично

Книга в формате pdf! Изображения и текст могут не отображаться!


 [Настройки текста]  [Cбросить фильтры]

Деннис Бирн

Безопасность веб-приложений
на Python

Full Stack
Python Security
C RY P TO G R A P H Y, T L S,
A N D AT TAC K R E S I S TA N C E

DENNIS BYRNE

Безопасность
веб-приложений
на Python
К Р И П ТО Г РАФ И Я, T L S
И УСТО Й Ч И В О СТ Ь К АТА КА М

ДЕННИС БИРН

Москва, 2023

УДК 004.041
ББК 32.372
Б64

Б64

Бирн Д.
Безопасность веб-приложений на Python / пер. с англ. C. C. Скобелева,
А. Н. Киселева. – М.: ДМК Пресс, 2023. – 334 с.: ил.
ISBN 978-5-97060-899-9
В этой книге подробно рассказывается о нюансах написания безопасного кода
на Python. В первой части излагаются основы криптографии: рассмотрены базовые
понятия, проверка подлинности данных, симметричное и асимметричное шифрование. Вторая часть содержит пошаговые инструкции для воплощения типичных
сценариев взаимодействия пользователя с приложением. В третьей части показано,
как противостоять атакам разного рода.
Все примеры кода воспроизводят реальные задачи, стоящие перед разработчиками.
Книга будет полезна как начинающим программистам, так и профессионалам, заинтересованным в повышении безопасности сервисов, которые они поддерживают.

УДК 004.041
ББК 32.372

Copyright © DMK Press 2023. Authorized translation of the English edition © 2023 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-6172-9882-0 (англ.)
ISBN 978-5-97060-899-9 (рус.)

© Manning Publications, 2021
© Перевод, оформление, издание, ДМК Пресс, 2023

Оглавление

1
Часть I
2
3
4
5
6
Часть II
7
8
9
10
11



О защите в деталях..................................................................................... 19

ОСНОВЫ КРИПТОГРАФИИ ................................................................ 32
Хеширование............................................................................................... 33
 Хеш-функции с ключом............................................................................ 48
 Симметричное шифрование.................................................................... 60
 Асимметричное шифрование.................................................................. 74
 Transport Layer Security. ............................................................................ 87


ПРОВЕРКА ЛИЧНОСТИ И ПРЕДОСТАВЛЕНИЕ ПРАВ . ........110
 Сеанс HTTP..................................................................................................111
 Проверка личности....................................................................................128
 Пользовательские пароли........................................................................147
 Авторизация. ..............................................................................................172
 OAuth 2. ........................................................................................................190

Часть III ПРОТИВОСТОЯНИЕ АТАКАМ . ........................................................214
12  Работа с операционной системой. ........................................................215
13  Никогда не доверяйте вводу...................................................................227
14  Атаки методом межсайтового скриптинга..........................................247
15  Политики защиты содержимого............................................................268
16  Подделка межсайтовых запросов..........................................................285
17  Совместное использование ресурсов между разными
источниками...............................................................................................299
18  Кликджекинг...............................................................................................314

Содержание

Оглавление........................................................................................................... 5
Предисловие....................................................................................................... 12
Об авторе.......................................................................................................... 17
Об иллюстрации на обложке. ........................................................................ 18

1

О защите в деталях.......................................................................... 19
1.1
1.2

1.3

Пространство для атаки..................................................................... 20
Глубокая оборона................................................................................. 22

1.2.1
1.2.2
1.2.3

Стандарты обеспечения защиты............................................ 23
Проверенные приемы................................................................. 24
Основные принципы безопасности........................................... 25

1.3.1

Меньше слов, больше дела.......................................................... 30

Инструменты. ....................................................................................... 27

Итоги.................................................................................................................. 31

Часть I

2

ОСНОВЫ КРИПТОГРАФИИ ...................................... 32

Хеширование............................................................................................ 33
2.1
2.2
2.3
2.4

Что такое хеш-функция?.................................................................... 33

2.1.1

Свойства криптографических хеш-функций. ......................... 36

2.4.1
2.4.2

Безопасные хеш-функции........................................................... 40
Небезопасные хеш-функции. ..................................................... 41

Архетипичные персонажи................................................................. 38
Целостность данных............................................................................ 39
Выбор криптографической хеш-функции..................................... 40

2.5 Криптографическое хеширование в Python. ................................ 43
2.6 Функции контрольного суммирования.......................................... 45
Итоги..................................................................................................................