Опубликовано

Представляем 5-е издание книги “PHP глазами хакера”

PHP глазами хакера. 5-е издание

В книге рассмотрены вопросы безопасности и оптимизации сценариев на языке PHP. Большое внимание уделено описанию типичных ошибок программистов, благодаря которым, хакеры проникают на сервер, а также представлены методы и приведены практические рекомендации противостояния внешним атакам. Показаны реальные примеры взлома Web-сайтов и рекомендации, которые помогут создавать более защищенные сайты. В 5-м издании переписаны примеры с учетом современных возможностей PHP 8 и добавлена глава по безопасности во фреймворках Laravel и Symfony.

Для Web-программистов, администраторов и специалистов по безопасности

Создание безопасных Web-приложений на PHP

Язык PHP уже давно является самым популярным языком программирования Web-приложений. В настоящее время на этом языке создается большинство сайтов, и их количество ежедневно растет. С другой стороны, хакерское движение также набирает обороты, и количество взломов и попыток взлома Web-сайтов также увеличивается. Открытость информации приводит к тому, что приходится больше внимания уделять безопасности сайта. Сценарии для серверов пишут люди, а им свойственно ошибаться, и хакеры пользуются этим.

В данной книге описываются основные методы хакеров, используемые для взлома Web-сценариев, основные ошибки программистов и методы решения проблем безопасности. Надеемся, что эта книга и многочисленные примеры позволят вам взглянуть на программирование Web-сайтов глазами взломщика и помогут создавать безопасные сценарии на языке PHP. Кроме того, рассмотрены вопросы оптимизации Web-сценариев. Чем быстрее сервер выполнит сценарий, тем быстрее пользователь увидит ответ, а сервер сможет обработать больше запросов.

В 5-м издании переписаны примеры с учетом современных возможностей PHP 8 и добавлена глава по безопасности во фреймворках Laravel и Symfony.

Книгу “PHP глазами хакера. 5-е издание” можно купить со скидкой в интернет-магазине издательства “БХВ“.

Предисловие к пятому изданию……………………………………………………………….. 7

Предисловие…………………………………………………………………………………………….. 8

Об авторе……………………………………………………………………………………………………………………………………. 10

Благодарности…………………………………………………………………………………………………………………………… 10

Глава 1. Введение в PHP………………………………………………………………………… 11

1.1. Что такое PHP?……………………………………………………………………………………………………………………. 11

1.2. Создание сайта для Apache……………………………………………………………………………………………….. 12

1.3. Как работает PHP?……………………………………………………………………………………………………………… 15

1.4. Чего ждать дальше?……………………………………………………………………………………………………………. 17

Глава 2. Основы PHP…………………………………………………………………………….. 18

2.1. PHP-инструкции………………………………………………………………………………………………………………….. 18

2.2. Подключение файлов………………………………………………………………………………………………………….. 23

2.3. Вывод данных……………………………………………………………………………………………………………………… 27

2.4. Правила кодирования…………………………………………………………………………………………………………. 28

2.4.1. Комментарии…………………………………………………………………………………………………………………. 29

2.4.2. Чувствительность………………………………………………………………………………………………………….. 30

2.4.3. Переменные……………………………………………………………………………………………………………………. 32

2.4.4. Основные операции………………………………………………………………………………………………………. 35

2.4.5. Область видимости……………………………………………………………………………………………………….. 36

2.4.6. Константы……………………………………………………………………………………………………………………… 38

2.5. Управление выполнением программы………………………………………………………………………………. 39

2.6. Циклы…………………………………………………………………………………………………………………………………… 49

2.6.1. Цикл for………………………………………………………………………………………………………………………….. 50

2.6.2. Цикл while………………………………………………………………………………………………………………………. 52

2.6.3. Бесконечные циклы………………………………………………………………………………………………………. 52

2.6.4. Управление циклами…………………………………………………………………………………………………….. 53

2.7. Прерывание работы программы……………………………………………………………………………………….. 55

2.8. Функции……………………………………………………………………………………………………………………………….. 56

2.9. Классы…………………………………………………………………………………………………………………………………. 63

2.10. Массивы…………………………………………………………………………………………………………………………….. 66

2.11. Обработка ошибок……………………………………………………………………………………………………………. 69

2.12. Передача данных……………………………………………………………………………………………………………… 70

2.12.1. Переменные окружения………………………………………………………………………………………………. 71

2.12.2. Передача параметров…………………………………………………………………………………………………. 72

2.12.3. Метод GET…………………………………………………………………………………………………………………… 76

2.12.4. Метод POST…………………………………………………………………………………………………………………. 78

2.12.5. Скрытые параметры…………………………………………………………………………………………………… 80

2.13. Хранение параметров посетителя…………………………………………………………………………………… 81

2.13.1. Сеансы…………………………………………………………………………………………………………………………. 83

2.13.2. Cookies…………………………………………………………………………………………………………………………. 87

2.13.3. Безопасность cookie……………………………………………………………………………………………………. 91

2.14. Файлы………………………………………………………………………………………………………………………………… 93

2.14.1. Открытие файла………………………………………………………………………………………………………….. 94

2.14.2. Закрытие файла…………………………………………………………………………………………………………… 95

2.14.3. Чтение данных…………………………………………………………………………………………………………….. 95

2.14.4. Дополнительные функции чтения……………………………………………………………………………… 98

2.14.5. Запись данных…………………………………………………………………………………………………………….. 98

2.14.6. Позиционирование в файле………………………………………………………………………………………… 99

2.14.7. Свойства файлов……………………………………………………………………………………………………….. 100

Глава 3. Безопасность………………………………………………………………………….. 102

3.1. Комплексная защита………………………………………………………………………………………………………… 103

3.2. Права доступа…………………………………………………………………………………………………………………… 105

3.3. Как взламывают сценарии?……………………………………………………………………………………………… 105

3.4. Основы защиты сценариев……………………………………………………………………………………………….. 107

3.4.1. Реальный пример ошибки…………………………………………………………………………………………… 108

3.4.2. Рекомендации по защите……………………………………………………………………………………………. 111

3.4.3. Тюнинг PHP…………………………………………………………………………………………………………………. 112

3.5. Проверка корректности данных………………………………………………………………………………………. 113

3.6. Регулярные выражения…………………………………………………………………………………………………….. 118

3.6.1. Функции регулярных выражений PHP………………………………………………………………………. 119

Функция ereg()…………………………………………………………………………………………………………….. 119

Функция eregi()……………………………………………………………………………………………………………. 119

Функция ereg_replace()………………………………………………………………………………………………. 119

Функция eregi_replace()……………………………………………………………………………………………… 120

Функция split()…………………………………………………………………………………………………………….. 120

Функция spliti()……………………………………………………………………………………………………………. 120

3.6.2. Использование регулярных выражений PHP……………………………………………………………. 120

3.6.3. Использование регулярных выражений Perl…………………………………………………………….. 125

3.6.4. Функции регулярных выражений Perl……………………………………………………………………….. 127

Функция preg_match()………………………………………………………………………………………………… 127

Функция preg_match_all()………………………………………………………………………………………….. 128

Функция preg_split()…………………………………………………………………………………………………… 129

3.6.5. Проверка e-mail…………………………………………………………………………………………………………… 129

3.6.6. Советы по использованию регулярных выражений………………………………………………… 129

3.7. Что и как фильтровать?…………………………………………………………………………………………………….. 130

3.8. Базы данных……………………………………………………………………………………………………………………… 134

3.8.1. Основы баз данных…………………………………………………………………………………………………….. 134

3.8.2. Атака SQL Injection…………………………………………………………………………………………………….. 136

3.8.3. Реальное экранирование……………………………………………………………………………………………. 145

3.8.4. Параметризированные запросы………………………………………………………………………………… 146

3.8.5. Работа с файлами……………………………………………………………………………………………………….. 151

3.8.6. Практика работы с базами данных…………………………………………………………………………… 151

3.8.7. Проверка URL……………………………………………………………………………………………………………… 152

3.9. Работа с файлами……………………………………………………………………………………………………………… 153

3.10. Криптография………………………………………………………………………………………………………………….. 154

3.10.1. Симметричное шифрование…………………………………………………………………………………….. 154

3.10.2. Асимметричное шифрование…………………………………………………………………………………… 155

3.10.3. Необратимое шифрование……………………………………………………………………………………….. 156

3.10.4. Практика использования шифрования……………………………………………………………………. 158

3.11. Атака Cross-Site Scripting………………………………………………………………………………………………… 164

3.12. Флуд…………………………………………………………………………………………………………………………………. 169

3.12.1. Защита от флуда сообщениями……………………………………………………………………………….. 169

3.12.2. Защита от накрутки голосований……………………………………………………………………………. 170

3.13. Изменения формы и атака CSRF……………………………………………………………………………………. 172

3.14. Сопровождение журнала……………………………………………………………………………………………….. 175

3.15. Защита от неправомерных изменений………………………………………………………………………….. 176

3.16. Панель администратора………………………………………………………………………………………………… 178

3.17. Опасная переменная $REQUEST_URI…………………………………………………………………………… 179

3.18. CAPTCHA………………………………………………………………………………………………………………………… 180

3.19. Сериализация………………………………………………………………………………………………………………….. 185

Глава 4. Оптимизация………………………………………………………………………….. 188

4.1. Алгоритм……………………………………………………………………………………………………………………………. 188

4.2. Слабые места…………………………………………………………………………………………………………………….. 190

4.3. Базы данных……………………………………………………………………………………………………………………… 191

4.3.1. Оптимизация запросов……………………………………………………………………………………………….. 192

4.3.2. Оптимизация СУБД…………………………………………………………………………………………………….. 196

4.3.3. Выборка необходимых данных…………………………………………………………………………………. 198

4.3.4. Изучайте систему………………………………………………………………………………………………………… 200

4.4. Оптимизация PHP……………………………………………………………………………………………………………… 202

4.4.1. Кеширование вывода………………………………………………………………………………………………….. 202

4.4.2. Кеширование страниц………………………………………………………………………………………………… 203

4.5. Оптимизация или безопасность?……………………………………………………………………………………… 205

4.6. Переход на PHP 8……………………………………………………………………………………………………………… 207

Глава 5. Примеры работы с PHP………………………………………………………….. 208

5.1. Загрузка файлов на сервер………………………………………………………………………………………………. 208

5.2. Проверка корректности файла………………………………………………………………………………………… 213

5.3. Запретная зона………………………………………………………………………………………………………………….. 216

5.3.1. Аутентификация………………………………………………………………………………………………………….. 216

5.3.2. Защита сценариев правами доступа сервера Apache……………………………………………… 223

5.4. Работа с сетью…………………………………………………………………………………………………………………… 224

5.4.1. Работа с DNS……………………………………………………………………………………………………………….. 225

5.4.2. Протоколы…………………………………………………………………………………………………………………… 225

5.4.3. Сокеты………………………………………………………………………………………………………………………….. 226

Инициализация…………………………………………………………………………………………………………… 227

Серверные функции……………………………………………………………………………………………………. 227

Клиентские функции…………………………………………………………………………………………………… 228

Обмен данными…………………………………………………………………………………………………………… 229

Управление сокетами…………………………………………………………………………………………………. 230

5.5. Сканер портов…………………………………………………………………………………………………………………… 231

5.6. FTP-клиент низкого уровня………………………………………………………………………………………………. 234

5.7. Работа с электронной почтой………………………………………………………………………………………….. 237

5.7.1. Протокол SMTP…………………………………………………………………………………………………………… 237

5.7.2. Функция mail()……………………………………………………………………………………………………………… 239

5.7.3. Соединение с SMTP-сервером……………………………………………………………………………………. 241

5.7.4. Безопасность электронной почтовой службы………………………………………………………….. 242

5.7.5. Производительность отправки почты……………………………………………………………………….. 242

5.8. Защита ссылок………………………………………………………………………………………………………………….. 244

5.9. PHP в руках хакера…………………………………………………………………………………………………………… 245

5.10. Уловки……………………………………………………………………………………………………………………………… 247

5.10.1. Переадресация………………………………………………………………………………………………………….. 247

5.10.2. Всплывающие окна…………………………………………………………………………………………………… 249

5.10.3. Тег <iframe>………………………………………………………………………………………………………………. 250

5.10.4. Стой, не уходи!………………………………………………………………………………………………………….. 251

5.11. Как убрать теги?……………………………………………………………………………………………………………… 252

Глава 6. Фреймворки PHP……………………………………………………………………. 254

6.1. Знакомство с Laravel………………………………………………………………………………………………………… 254

6.2. Быстрый старт…………………………………………………………………………………………………………………… 256

6.3. Уязвимость CSRF………………………………………………………………………………………………………………. 259

6.4. Базы данных……………………………………………………………………………………………………………………… 261

6.4.1. Добавление данных……………………………………………………………………………………………………. 263

6.4.2. Чтение данных…………………………………………………………………………………………………………….. 264

6.4.3. Флуд при добавлении данных…………………………………………………………………………………… 266

6.4.4. Работа с базами данных в Symfony………………………………………………………………………….. 266

6.5. Фреймворки и защита от XSS…………………………………………………………………………………………… 267

6.5.1. XSS в Symfony…………………………………………………………………………………………………………….. 269

Литература…………………………………………………………………………………………… 270

Описание файлового архива, сопровождающего книгу……………………….. 270

Предметный указатель…………………………………………………………………………. 271

Фленов Михаил

Флёнов Михаил, профессиональный программист. Работал в журнале «Хакер», в котором несколько лет вел рубрики «Hack-FAQ» и «Кодинг» для программистов, печатался в журналах «Игромания» и «Chip-Россия». Автор бестселлеров «Библия Delphi», «Программирование в Delphi глазами хакера», «Программирование на C++ глазами хакера», «Компьютер глазами хакера» и др. Некоторые книги переведены на иностранные языки и изданы в США, Канаде, Польше и других странах.

Опубликовано

Вышел новый сборник: “iOS и iPhone глазами хакера”

iOS и iPhone глазами хакера

В про­дажу пос­тупил новый сбор­ник пос­тоян­ных авто­ров легендарного журнала “Хакер” — «iOS и iPhone гла­зами хакера».

Эта книга — сборник лучших, тщательно отобранных статей из легендарного журнала «Хакер». Рассмотрена система безопасности iOS 16, методы сбора и передачи информации устройствами Apple при выключенном питании. Рассказано о методах взлома файловой системы (джейлбрейк), об уязвимости эксплоита checkm8, об установке твиков и сторонних приложений на iPhone. Раскрыты методы установки стороннего ПО на мобильные устройства с iOS без джейлбрейка. Приведены альтернативы менеджеру пакетов Cydia, рассказано об использовании виртуальных машин в iOS. Представлены способы настройки VPN и автоматизации iOS при помощи инструмента «Команды». Приведен обзор возможностей Pyto — среды программирования на Python для мобильных устройств Apple.

Мобильные устройства от Apple уже давно перестали быть «просто телефоном» и «просто планшетом». Сейчас iPhone и iPad — это полноценные, мощные компьютеры, позволяющие решать широчайший круг задач. Но еще более эффективно их можно использовать, если ты знаешь все многочисленные тонкости, хитрости и трюки, которые скрывает в себе iOS. Раскрытию таких секретов и посвящена эта книга. Если ты хочешь быть не просто рядовым пользователем, а мечтаешь почувствовать себя настоящим хакером и выжать из своего айфона максимум — это издание для тебя!

Валентин Холмогоров, Ведущий редактор журнала «Хакер»

Вы узнаете:

  • Средства безопасности и новые возможности в iOS 16
  • Особенности распространения троянов для iOS
  • Шпионаж за пользователем при помощи выключенного iPhone
  • Эксплоит checkm8 и его использование
  • Джейлбрейк — как сделать и зачем он нужен?
  • Неофициальные твики и приложения для iOS с джейлбрейком
  • Альтернативы для Cydia
  • Установка сторонних приложений на iPhone без джейлбрейка
  • Настройка VPN на iPhone
  • Автоматизация iOS с помощью инструмента «Команды»
  • Установка альтернативных ОС на iPhone с помощью виртуальных машин
  • Написание программ на Python в среде разработки Pyto

Авторы

Авторы

Андрей Письменный, Валентин Холмогоров, Ася Холмогорова, Олег Афонин, Олег Сивченко

«Хакер» — легендарный журнал об информационной безопасности, издающийся с 1999 года. На протяжении 20 лет на страницах «Хакера» публикуются интересные статьи об операционных системах, программах, сетях, гаджетах и компьютерном «железе». На сайте «Хакера» ежедневно появляются знаковые новости из мира компьютерных технологий, мануалы по кодингу и взлому, гайды по новым эксплойтам, подборки хакерского софта и обзоры веб-сервисов. Среди авторов журнала —  авторитетные эксперты по кибербезопасности и IT-специалисты.

Книгу “iOS и iPhone гла­зами хакера” можно купить со скидкой в интернет-магазине издательства “БХВ“.

Предисловие…………………………………………………………………………………………….. 7

От редакции…………………………………………………………………………………………… 11

  1. Самая небезопасная ОС. Как популярность iOS ставит ее пользователей под угрозу (Олег Афонин) 13

Физическая безопасность устройств iOS…………………………………………………………………………………. 13

Облачная безопасность iOS………………………………………………………………………………………………………. 16

Анализ модели безопасности Apple на примере категории «Сообщения»…………………………… 18

iOS и зловредное программное обеспечение…………………………………………………………………………… 20

Защита от атак MITM (man in the middle)………………………………………………………………………………. 21

Выводы……………………………………………………………………………………………………………………………………….. 21

  1. Вредонос для iOS. Как распространяются трояны для самой закрытой мобильной платформы (Валентин Холмогоров)……………………………………………………………………………. 23

Немного теории………………………………………………………………………………………………………………………….. 23

Шпионские игры………………………………………………………………………………………………………………………… 24

Технология MDM………………………………………………………………………………………………………………………. 26

Технология DRM……………………………………………………………………………………………………………………….. 28

Выводы……………………………………………………………………………………………………………………………………….. 30

  1. Атака на Apple. Как вайтхеты внедрились в сеть Apple
    и добрались доисходников iOS (Валентин Холмогоров)………………………….. 31

Рекогносцировка………………………………………………………………………………………………………………………… 32

Компрометация учетных записей преподавателей Apple……………………………………………………… 33

Кража данных iCloud с использованием сетевого червя……………………………………………………….. 35

Доступ к репозиторию с исходниками…………………………………………………………………………………….. 39

Итоги…………………………………………………………………………………………………………………………………………… 42

  1. Неспящий iPhone. Как выключенный iPhone может шпионить
    за своим владельцем (Олег Сивченко)………………………………………………………. 43

Как это работает?……………………………………………………………………………………………………………………… 44

Экспресс-карты и Find My………………………………………………………………………………………………………… 45

«Автомобильные» ключи DCK 3.0……………………………………………………………………………………………. 48

Недостатки Find My Phone……………………………………………………………………………………………………….. 49

Вмешательство в прошивку………………………………………………………………………………………………………. 50

Заключение………………………………………………………………………………………………………………………………… 51

  1. Шах и мат! Как устроен нашумевший эксплойт checkm8
    и как им воспользоваться (Валентин Холмогоров)…………………………………… 53

Коррозия железа………………………………………………………………………………………………………………………… 53

История с географией………………………………………………………………………………………………………………… 54

Раз, два, три, четыре, пять, начинаем загружать…………………………………………………………………….. 55

Протокол DFU…………………………………………………………………………………………………………………………….. 56

Уязвимость………………………………………………………………………………………………………………………………….. 57

Checkmate…………………………………………………………………………………………………………………………………… 58

Как использовать checkm8……………………………………………………………………………………………………….. 59

Подготовка………………………………………………………………………………………………………………………….. 60

Джейлбрейк………………………………………………………………………………………………………………………… 62

Выводы……………………………………………………………………………………………………………………………………….. 67

  1. Украшаем iOS с джейлбрейком при помощи неофициальных твиков (Ася Холмогорова) 69

Джейлбрейк………………………………………………………………………………………………………………………………… 69

Как пользоваться Cydia?…………………………………………………………………………………………………………… 71

RecordPause………………………………………………………………………………………………………………………………… 73

ColorMyBattery…………………………………………………………………………………………………………………………… 73

Carrierizer…………………………………………………………………………………………………………………………………….. 73

HideYourApps……………………………………………………………………………………………………………………………… 74

DeleteForever……………………………………………………………………………………………………………………………….. 75

HomeGesture……………………………………………………………………………………………………………………………….. 76

Activator………………………………………………………………………………………………………………………………………. 77

RealCC………………………………………………………………………………………………………………………………………… 79

ShortLook……………………………………………………………………………………………………………………………………. 79

ToldYouPreferences…………………………………………………………………………………………………………………….. 80

Выводы……………………………………………………………………………………………………………………………………….. 81

  1. Ставим самые интересные приложения для iOS с джейлбрейком (Валентин Холмогоров) 83

Filza                                                                                                                                                                   83

iCleaner………………………………………………………………………………………………………………………………………… 85

MTerminal…………………………………………………………………………………………………………………………………… 85

iWep Pro………………………………………………………………………………………………………………………………………. 86

SnapBack…………………………………………………………………………………………………………………………………….. 87

AirShou………………………………………………………………………………………………………………………………………… 88

iTransmission……………………………………………………………………………………………………………………………….. 89

Flex 3……………………………………………………………………………………………………………………………………………. 90

Succession……………………………………………………………………………………………………………………………………. 91

Выводы……………………………………………………………………………………………………………………………………….. 92

  1. Выбираем альтернативу для Cydia (Валентин Холмогоров)………………….. 95

Sileo                                                                                                                                                                   95

Zebra……………………………………………………………………………………………………………………………………………. 97

Installer 5……………………………………………………………………………………………………………………………………… 99

Saily…………………………………………………………………………………………………………………………………………… 101

Выводы……………………………………………………………………………………………………………………………………… 102

  1. Не App Store единым. Устанавливаем сторонние приложения в iOS безджейла (Олег Афонин)…………………………………………………………………………………………………………….. 103

Почему нельзя просто установить приложение……………………………………………………………………. 103

Официальный путь: аккаунт разработчика………………………………………………………………………….. 103

Полуофициальный путь: Cydia Impactor………………………………………………………………………………. 105

Идем в серую зону: подпись пакета обычным Apple ID………………………………………………………. 106

Nullximpactor…………………………………………………………………………………………………………………….. 106

iOS App Signer……………………………………………………………………………………………………………………. 107

AltDeploy и AltStore………………………………………………………………………………………………………………….. 107

Подпись в режиме онлайн……………………………………………………………………………………………………….. 109

Альтернативные магазины приложений……………………………………………………………………………….. 110

TestFlight……………………………………………………………………………………………………………………………………. 110

Заключение………………………………………………………………………………………………………………………………. 111

  1. Как мы создали софтверный метод вскрытия знаменитого iPhone 5c (Олег Афонин) 113

Альтернативы…………………………………………………………………………………………………………………………… 114

Как это работает……………………………………………………………………………………………………………………… 114

Шаг 1. Переводим телефон в режим DFU……………………………………………………………………….. 115

Шаг 2. Эксплойт DFU………………………………………………………………………………………………………. 116

Шаг 3. Отключаем проверки подписи……………………………………………………………………………. 117

Шаг 4. Патчим RAMDisk…………………………………………………………………………………………………. 117

Шаг 5. Патч ядра……………………………………………………………………………………………………………… 118

Шаг 6. Монтируем разделы…………………………………………………………………………………………….. 120

Взлом пароля……………………………………………………………………………………………………………………………. 121

Скорость работы: пароль из четырех или шести цифр………………………………………………………… 123

Буквенно-цифровые пароли……………………………………………………………………………………………………. 125

  1. Сильный лебедь. Делаем VPN на strongSwan и автоматизируем подключение в iOS (Андрей Письменный)………………………………………………………………………………………….. 127

Ставим и настраиваем strongSwan на сервере………………………………………………………………………. 127

Генерируем сертификаты………………………………………………………………………………………………… 128

Настраиваем strongSwan…………………………………………………………………………………………………. 129

Настраиваем сеть…………………………………………………………………………………………………………….. 130

Настраиваем подключение…………………………………………………………………………………………….. 131

Куем профиль для iOS……………………………………………………………………………………………………………… 133

Добавляем правила подключения………………………………………………………………………………………….. 136

Выводы……………………………………………………………………………………………………………………………………… 139

  1. Винда на айфоне. Используем виртуалку UTM для установки Windows на iOS (Валентин Холмогоров)………………………………………………………………………………………….. 141

Что такое UTM?……………………………………………………………………………………………………………………….. 141

Установка…………………………………………………………………………………………………………………………………. 142

На устройство с джейлбрейком……………………………………………………………………………………… 142

На устройство без джейлбрейка…………………………………………………………………………………….. 143

Создание виртуальной машины…………………………………………………………………………………………….. 143

Управление виртуальной машиной……………………………………………………………………………………….. 145

Использование готовых образов ВМ…………………………………………………………………………………….. 145

Установка ОС из дистрибутива……………………………………………………………………………………………… 147

Выводы……………………………………………………………………………………………………………………………………… 150

  1. Всех айфонов командир. Автоматизируем работу в iOS
    с помощью «Команд» (Валентин Холмогоров)……………………………………….. 153

Возможности……………………………………………………………………………………………………………………………. 153

Под капотом……………………………………………………………………………………………………………………………… 156

Лайфхак……………………………………………………………………………………………………………………………………. 159

Выводы……………………………………………………………………………………………………………………………………… 160

  1. Делаем веб-сервер на iOS и качаем видео с youtube-dl (Андрей Письменный) 161

Pythonista………………………………………………………………………………………………………………………………….. 161

Встречайте — Pyto!…………………………………………………………………………………………………………………. 161

Особенности Pyto…………………………………………………………………………………………………………………….. 163

Командная строка……………………………………………………………………………………………………………. 163

Использование файловой системы…………………………………………………………………………………. 164

Запуск фоновых задач…………………………………………………………………………………………………….. 164

Другие фичи и модули……………………………………………………………………………………………………… 164

Пишем веб-сервер…………………………………………………………………………………………………………………….. 166

Задача……………………………………………………………………………………………………………………………….. 166

Инструментарий………………………………………………………………………………………………………………. 166

Код…………………………………………………………………………………………………………………………………….. 166

Первый запуск………………………………………………………………………………………………………………….. 170

Выводы……………………………………………………………………………………………………………………………………… 171

  1. Новые способы защиты данных в iOS 16 (Олег Афонин)………………….. 173

Safety Check……………………………………………………………………………………………………………………………… 173

Новое разрешение: доступ к буферу обмена………………………………………………………………………… 174

Защита скрытых и удаленных фотографий………………………………………………………………………….. 176

Функции, относящиеся к безопасности………………………………………………………………………………….. 176

Lockdown Mode………………………………………………………………………………………………………………… 177

Passkeys…………………………………………………………………………………………………………………………….. 178

Rapid Security Response……………………………………………………………………………………………………. 180

Face ID в альбомной ориентации……………………………………………………………………………………. 180

iOS 14 и 15: что мы пропустили……………………………………………………………………………………………… 180

По горячим следам…………………………………………………………………………………………………………………… 182

Выводы……………………………………………………………………………………………………………………………………… 183

«Хакер»: безопасность, разработка, DevOps…………………………………………. 185

Предметный указатель…………………………………………………………………………. 188