SlideShare a Scribd company logo
1 of 26
Download to read offline
@Valzevul
Вадим Дробинин
Защищаем себя и
пользователей
(руководство по безопасности для iOS)
@ValzevulЗащищаем себя и пользователей
В двух словах
• Что мы будем защищать?
• Какие бывают атаки?
• Примеры атак
• Как проверить приложение?
• Способы защиты
• Что дальше?
2
@Valzevul
Мобильные устройства —
основной источник личных
данных пользователей
и мы не умеем их защищать
@ValzevulЗащищаем себя и пользователей
Что мы будем защищать?
4
Стэк
мобильной
безопасности
Уровень
инфраструктуры
• CDMA, GSM
• GPS
• SMS, MMS
Уровень «железа»
• Устройство
• Прошивка
Уровень ОС
• Версия OS
• Root-доступ
Уровень
приложений
• ???
@ValzevulЗащищаем себя и пользователей
Уровень приложений
Transport Layer Security
• NSURLConnection и
NSURLSession
требуют ATS
• ATS требует TLS 1.2 и
сертификаты
• Приложения должны
соответствовать *
5
Защита данных
• Всё шифруется с
помощью уникального
ключа в 256 бит
• Ключи «оборачиваются»
в ключи классов
• Класс = политика
безопасности
@ValzevulЗащищаем себя и пользователей
Уровень приложений
Transport Layer Security
6
Защита данных
С iOS9 сложно
налажать в
зашифрованной
передаче данных
Почти все файлы
надежно
зашифрованы на
диске
@ValzevulЗащищаем себя и пользователей
Какие бывают атаки?
7
TamperingRepudiation
Information
Disclosure
Denial of
Service
Elevation of
Privilege
Spoofing
@ValzevulЗащищаем себя и пользователей
Repudiation
Какие бывают атаки?
8
Repudiation

(атаки отказа)
«Toll Fraud»
Внедрение
на стороне
клиента
Утерянный
девайс
Вредоносная
программа
@ValzevulЗащищаем себя и пользователей
Какие бывают атаки?
9
Spoofing

(атаки
подмены)
Социальная
инженерия
Вредоносный
QR-код
Неправильная
обработка
сессий
Непроверенные
NFC-теги
Слабая
система
авторизации
Вредоносное
приложение
@ValzevulЗащищаем себя и пользователей
Какие бывают атаки?
10
Tampering

(атаки
искажения)
Взлом
мобильной
сети
Незащищенная
Wi-Fi сеть
Изменение
локальных
данных
@ValzevulЗащищаем себя и пользователей
Какие бывают атаки?
11
Information
Disclosure

(атаки
раскрытия)
Взлом
бэкенда
Reverse
Engineering
приложения
Утерянный
девайс
Вредоносная
программа
@ValzevulЗащищаем себя и пользователей
Какие бывают атаки?
12
Denial of
Service (атаки
обслуживания)
Спам
уведомлениями
DDoS
Падение
приложения
Излишнее
использование
API
@ValzevulЗащищаем себя и пользователей
Какие бывают атаки?
13
Elevation
of Privilege

(атаки уровня
доступа)
Скомпромен-
тированные
credentials (1)
Изъяны в
аутентификации
Выход из
Sandbox
Jailbreak /
Rootkits
Слабая
система
авторизации
Скомпромен-
тированные
credentials (2)
@ValzevulЗащищаем себя и пользователей
Примеры атак
• Information Disclosure (1):
• Бэкапы в iTunes не шифруются по-умолчанию
• Вирус BackStab
• Information Disclosure (2):
• Никто не шифрует данные под PIN
• Elcomsoft iOS Forensic Toolkit
14
@ValzevulЗащищаем себя и пользователей
Примеры атак
• Information Disclosure (3):
• UIPasteboard (1Password, токены, URLы)
• Кэш
• Elevation of Privilege:
• Ad-hoc → можно использовать Private APIs
• Вирусы для EnPublic (CVE-2014-1276)
15
@ValzevulЗащищаем себя и пользователей
Elevation of Privilege
16
github.com/valzevul/ElevationOfPrivilegeHack
@ValzevulЗащищаем себя и пользователей
Как проверить
приложение?
• White-box vs. Black-box;
• Личные данные (PII, personal or identifying
information);
• Penetration-тесты («пентесты»).
17
@ValzevulЗащищаем себя и пользователей
PII
• Логины, пароли, геолокация, адрес, связь с
социальными сетями;
• Имя девайса, имя сети, UDID;
• Данные приложения, логи и cookies.
18
@ValzevulЗащищаем себя и пользователей
Пентесты
19
Взаимодействие
с сетью
Проблемы с
приватностью
Reverse
Engineering
URL Schema
(iOS Masque
Attack)
Анализ Runtime
@ValzevulЗащищаем себя и пользователей
Пентесты
• Окружение:
• iDevice
• Сеть
• Jailbreak
• Утилиты:
• BigBoss Recommended Tools
• OpenSSH
• Clutch
• Class-Dump
• Cycript
• Keychain dumper
• …
20
@ValzevulЗащищаем себя и пользователей
Как защитить приложение?
• TLS и Certificate Pinning
• Secure Networking by Apple
• TrustKit
• Шифрование
• Шифруйте всё (атрибуты NSData и NSFileManager)
• Используйте Keychain
• Не используйте Preferences, Cookies, /Library и /Documents
21
@ValzevulЗащищаем себя и пользователей
Как защитить приложение?
• Запретите синхронизацию
• NSURLIsExcludedFromBackupKey
• Очищайте «скриншоты»
• applicationDidEnterBackground → hidden
• Не пишите в NSLog
• Избегайте кэша клавиатуры
• secureTextEntry
• UITextAutocorrectionTypeNo
22
@ValzevulЗащищаем себя и пользователей
Как защитить приложение?
• Jailbreak-detection:
• Проверьте наличие файлов MobileSubstrate.dylib, ssh,
…
• Попробуйте открыть Cydia.app
• Проверьте вызов fork()
• Проверьте родителя через sysctl (если не запущен
или это ядро, вас дебажат!)
• Обфусцируйте код
23
@ValzevulЗащищаем себя и пользователей
Что дальше?
24
@ValzevulЗащищаем себя и пользователей
Что дальше?
• https://www.slideshare.net/eightbit/owasp-melbourne-introduction-
to-ios-application-penetration-testing
• https://www.slideshare.net/OWASP_Poland/introduction-to-ios-
penetration-testing
• Apple Pay: Inspect, Set Up, Promote (Vadim Drobinin, https://vk.cc/
6iPXEe)
• Usability vs. Security (Josiah Renaudin, https://vk.cc/6j2i75)
• Demystifying Apple 'Pie' & TouchID (Sebas Guerrero, https://vk.cc/
6iPY3f)
• iOS Headers, http://developer.limneos.net/
25
vadim@drobinin.com
Вопросы и
хейт-мейлы
@Valzevul
Узнавайте в
кальянных и на
конференциях

More Related Content

What's hot

Лаборатория Касперского. Алексей Киселев. "Современные DDoS-атаки - в чем опа...
Лаборатория Касперского. Алексей Киселев. "Современные DDoS-атаки - в чем опа...Лаборатория Касперского. Алексей Киселев. "Современные DDoS-атаки - в чем опа...
Лаборатория Касперского. Алексей Киселев. "Современные DDoS-атаки - в чем опа...Expolink
 
CWS_20082014_Дарья_Коваленко
CWS_20082014_Дарья_КоваленкоCWS_20082014_Дарья_Коваленко
CWS_20082014_Дарья_КоваленкоDaria Kovalenko
 
Целенаправленные угрозы
Целенаправленные угрозыЦеленаправленные угрозы
Целенаправленные угрозыAleksey Lukatskiy
 
Комплексные решения С-Терра для безопасности ИС. Тенденции и перспективы (31....
Комплексные решения С-Терра для безопасности ИС.Тенденции и перспективы (31....Комплексные решения С-Терра для безопасности ИС.Тенденции и перспективы (31....
Комплексные решения С-Терра для безопасности ИС. Тенденции и перспективы (31....S-Terra CSP
 
FireEye - защита от APT и Zero Day атак
FireEye - защита от APT и Zero Day атакFireEye - защита от APT и Zero Day атак
FireEye - защита от APT и Zero Day атакArtem Tarashkevych
 
Доктор Веб. Дмитрий Иванов. "Как избавиться от шифровальщиков"
Доктор Веб. Дмитрий Иванов. "Как избавиться от шифровальщиков"Доктор Веб. Дмитрий Иванов. "Как избавиться от шифровальщиков"
Доктор Веб. Дмитрий Иванов. "Как избавиться от шифровальщиков"Expolink
 
Check Point. Сергей Чекрыгин. "На один шаг впереди"
Check Point. Сергей Чекрыгин. "На один шаг впереди"Check Point. Сергей Чекрыгин. "На один шаг впереди"
Check Point. Сергей Чекрыгин. "На один шаг впереди"Expolink
 
Защита удалённого доступа к внутренним ресурсам компании
Защита удалённого доступа к внутренним ресурсам компанииЗащита удалённого доступа к внутренним ресурсам компании
Защита удалённого доступа к внутренним ресурсам компанииAlexey Komarov
 
Взгляд Cisco на борьбу с целенаправленными угроами
Взгляд Cisco на борьбу с целенаправленными угроамиВзгляд Cisco на борьбу с целенаправленными угроами
Взгляд Cisco на борьбу с целенаправленными угроамиCisco Russia
 

What's hot (9)

Лаборатория Касперского. Алексей Киселев. "Современные DDoS-атаки - в чем опа...
Лаборатория Касперского. Алексей Киселев. "Современные DDoS-атаки - в чем опа...Лаборатория Касперского. Алексей Киселев. "Современные DDoS-атаки - в чем опа...
Лаборатория Касперского. Алексей Киселев. "Современные DDoS-атаки - в чем опа...
 
CWS_20082014_Дарья_Коваленко
CWS_20082014_Дарья_КоваленкоCWS_20082014_Дарья_Коваленко
CWS_20082014_Дарья_Коваленко
 
Целенаправленные угрозы
Целенаправленные угрозыЦеленаправленные угрозы
Целенаправленные угрозы
 
Комплексные решения С-Терра для безопасности ИС. Тенденции и перспективы (31....
Комплексные решения С-Терра для безопасности ИС.Тенденции и перспективы (31....Комплексные решения С-Терра для безопасности ИС.Тенденции и перспективы (31....
Комплексные решения С-Терра для безопасности ИС. Тенденции и перспективы (31....
 
FireEye - защита от APT и Zero Day атак
FireEye - защита от APT и Zero Day атакFireEye - защита от APT и Zero Day атак
FireEye - защита от APT и Zero Day атак
 
Доктор Веб. Дмитрий Иванов. "Как избавиться от шифровальщиков"
Доктор Веб. Дмитрий Иванов. "Как избавиться от шифровальщиков"Доктор Веб. Дмитрий Иванов. "Как избавиться от шифровальщиков"
Доктор Веб. Дмитрий Иванов. "Как избавиться от шифровальщиков"
 
Check Point. Сергей Чекрыгин. "На один шаг впереди"
Check Point. Сергей Чекрыгин. "На один шаг впереди"Check Point. Сергей Чекрыгин. "На один шаг впереди"
Check Point. Сергей Чекрыгин. "На один шаг впереди"
 
Защита удалённого доступа к внутренним ресурсам компании
Защита удалённого доступа к внутренним ресурсам компанииЗащита удалённого доступа к внутренним ресурсам компании
Защита удалённого доступа к внутренним ресурсам компании
 
Взгляд Cisco на борьбу с целенаправленными угроами
Взгляд Cisco на борьбу с целенаправленными угроамиВзгляд Cisco на борьбу с целенаправленными угроами
Взгляд Cisco на борьбу с целенаправленными угроами
 

Viewers also liked

Фриланс и мобильные приложения (Вадим Дробинин)
Фриланс и мобильные приложения (Вадим Дробинин)Фриланс и мобильные приложения (Вадим Дробинин)
Фриланс и мобильные приложения (Вадим Дробинин)Vadim Drobinin
 
Кортунов Никита. Как ускорить разработку приложений или есть ли жизнь после P...
Кортунов Никита. Как ускорить разработку приложений или есть ли жизнь после P...Кортунов Никита. Как ускорить разработку приложений или есть ли жизнь после P...
Кортунов Никита. Как ускорить разработку приложений или есть ли жизнь после P...AvitoTech
 
Андрей Юткин. Media Picker — to infinity and beyond
Андрей Юткин. Media Picker — to infinity and beyondАндрей Юткин. Media Picker — to infinity and beyond
Андрей Юткин. Media Picker — to infinity and beyondAvitoTech
 
Александр Зимин, Onboarding в мобильном приложении: первое впечатление — всё,...
Александр Зимин, Onboarding в мобильном приложении: первое впечатление — всё,...Александр Зимин, Onboarding в мобильном приложении: первое впечатление — всё,...
Александр Зимин, Onboarding в мобильном приложении: первое впечатление — всё,...Mail.ru Group
 
Вадим Дробинин, Фриланс в сфере мобильных приложений: с чего начинать
Вадим Дробинин, Фриланс в сфере мобильных приложений: с чего начинатьВадим Дробинин, Фриланс в сфере мобильных приложений: с чего начинать
Вадим Дробинин, Фриланс в сфере мобильных приложений: с чего начинатьMail.ru Group
 

Viewers also liked (7)

Фриланс и мобильные приложения (Вадим Дробинин)
Фриланс и мобильные приложения (Вадим Дробинин)Фриланс и мобильные приложения (Вадим Дробинин)
Фриланс и мобильные приложения (Вадим Дробинин)
 
Кортунов Никита. Как ускорить разработку приложений или есть ли жизнь после P...
Кортунов Никита. Как ускорить разработку приложений или есть ли жизнь после P...Кортунов Никита. Как ускорить разработку приложений или есть ли жизнь после P...
Кортунов Никита. Как ускорить разработку приложений или есть ли жизнь после P...
 
Андрей Юткин. Media Picker — to infinity and beyond
Андрей Юткин. Media Picker — to infinity and beyondАндрей Юткин. Media Picker — to infinity and beyond
Андрей Юткин. Media Picker — to infinity and beyond
 
Александр Зимин, Onboarding в мобильном приложении: первое впечатление — всё,...
Александр Зимин, Onboarding в мобильном приложении: первое впечатление — всё,...Александр Зимин, Onboarding в мобильном приложении: первое впечатление — всё,...
Александр Зимин, Onboarding в мобильном приложении: первое впечатление — всё,...
 
Вадим Дробинин, Фриланс в сфере мобильных приложений: с чего начинать
Вадим Дробинин, Фриланс в сфере мобильных приложений: с чего начинатьВадим Дробинин, Фриланс в сфере мобильных приложений: с чего начинать
Вадим Дробинин, Фриланс в сфере мобильных приложений: с чего начинать
 
The Dangers of Cucumber
The Dangers of CucumberThe Dangers of Cucumber
The Dangers of Cucumber
 
Intro to Product Design
Intro to Product DesignIntro to Product Design
Intro to Product Design
 

Similar to Защищаем себя и пользователей — Вадим Дробинин (iOS Security Guide by Vadim Drobinin)

Безопасные связи, Дмитрий Евдокимов
Безопасные связи, Дмитрий ЕвдокимовБезопасные связи, Дмитрий Евдокимов
Безопасные связи, Дмитрий ЕвдокимовYandex
 
Тенденции киберугроз. Что необходимо знать?
Тенденции киберугроз. Что необходимо знать?Тенденции киберугроз. Что необходимо знать?
Тенденции киберугроз. Что необходимо знать?Aleksey Lukatskiy
 
Cisco TALOS – интеллектуальная платформа для анализа угроз
Cisco TALOS – интеллектуальная платформа для анализа угрозCisco TALOS – интеллектуальная платформа для анализа угроз
Cisco TALOS – интеллектуальная платформа для анализа угрозCisco Russia
 
Доктор Веб. Вячслав Медведев: "Антивирусная безопасность. Типичные ошибки"
Доктор Веб. Вячслав Медведев: "Антивирусная безопасность. Типичные ошибки"Доктор Веб. Вячслав Медведев: "Антивирусная безопасность. Типичные ошибки"
Доктор Веб. Вячслав Медведев: "Антивирусная безопасность. Типичные ошибки"Expolink
 
Информационная безопасность и web-приложения
Информационная безопасность и web-приложенияИнформационная безопасность и web-приложения
Информационная безопасность и web-приложенияMaxim Krentovskiy
 
Безопасность каждого шага Вашего мобильного бизнеса
Безопасность каждого шага Вашего мобильного бизнесаБезопасность каждого шага Вашего мобильного бизнеса
Безопасность каждого шага Вашего мобильного бизнесаКРОК
 
Cisco AMP: платформа для борьбы с вредоносным кодом
Cisco AMP: платформа для борьбы с вредоносным кодомCisco AMP: платформа для борьбы с вредоносным кодом
Cisco AMP: платформа для борьбы с вредоносным кодомCisco Russia
 
Экспресс-анализ российского рынка ИБ в условиях курса на импортозамещение
Экспресс-анализ российского рынка ИБ в условиях курса на импортозамещениеЭкспресс-анализ российского рынка ИБ в условиях курса на импортозамещение
Экспресс-анализ российского рынка ИБ в условиях курса на импортозамещениеAleksey Lukatskiy
 
Как создать в России свою систему Threat intelligence?
Как создать в России свою систему Threat intelligence?Как создать в России свою систему Threat intelligence?
Как создать в России свою систему Threat intelligence?Aleksey Lukatskiy
 
От разрозненных фидов к целостной программе Threat intelligence
От разрозненных фидов к целостной программе Threat intelligenceОт разрозненных фидов к целостной программе Threat intelligence
От разрозненных фидов к целостной программе Threat intelligenceAleksey Lukatskiy
 
ВЕБИНАР: Риски утечки конфиденциальных данных клиентов. Какие мы ошибки допу...
 ВЕБИНАР: Риски утечки конфиденциальных данных клиентов. Какие мы ошибки допу... ВЕБИНАР: Риски утечки конфиденциальных данных клиентов. Какие мы ошибки допу...
ВЕБИНАР: Риски утечки конфиденциальных данных клиентов. Какие мы ошибки допу...sharbachou
 
Юрий Леонычев «Безопасность мобильных приложений для Android. Теория и практика»
Юрий Леонычев «Безопасность мобильных приложений для Android. Теория и практика»Юрий Леонычев «Безопасность мобильных приложений для Android. Теория и практика»
Юрий Леонычев «Безопасность мобильных приложений для Android. Теория и практика»Yandex
 
Доктор Веб - Почему в информационной безопасности ничего не меняется?
Доктор Веб - Почему в информационной безопасности ничего не меняется?Доктор Веб - Почему в информационной безопасности ничего не меняется?
Доктор Веб - Почему в информационной безопасности ничего не меняется?Expolink
 
Доктор Веб - Почему при наличии антивируса компании несут убытки от вирусных ...
Доктор Веб - Почему при наличии антивируса компании несут убытки от вирусных ...Доктор Веб - Почему при наличии антивируса компании несут убытки от вирусных ...
Доктор Веб - Почему при наличии антивируса компании несут убытки от вирусных ...Expolink
 
Доктор Веб - Почему при наличии антивируса компании несут убытки от вирусных ...
Доктор Веб - Почему при наличии антивируса компании несут убытки от вирусных ...Доктор Веб - Почему при наличии антивируса компании несут убытки от вирусных ...
Доктор Веб - Почему при наличии антивируса компании несут убытки от вирусных ...Expolink
 
Правила_кибер_гигиены.pdf
Правила_кибер_гигиены.pdfПравила_кибер_гигиены.pdf
Правила_кибер_гигиены.pdfMykhailo Antonishyn
 
Защита данных безнеса с помощью шифрования
Защита данных безнеса с помощью шифрованияЗащита данных безнеса с помощью шифрования
Защита данных безнеса с помощью шифрованияVladyslav Radetsky
 
Обеспечение безопасности активов современного бизнеса с помощью криптографии
Обеспечение безопасности активов современного бизнеса с помощью криптографии Обеспечение безопасности активов современного бизнеса с помощью криптографии
Обеспечение безопасности активов современного бизнеса с помощью криптографии BAKOTECH
 

Similar to Защищаем себя и пользователей — Вадим Дробинин (iOS Security Guide by Vadim Drobinin) (20)

Безопасные связи, Дмитрий Евдокимов
Безопасные связи, Дмитрий ЕвдокимовБезопасные связи, Дмитрий Евдокимов
Безопасные связи, Дмитрий Евдокимов
 
Тенденции киберугроз. Что необходимо знать?
Тенденции киберугроз. Что необходимо знать?Тенденции киберугроз. Что необходимо знать?
Тенденции киберугроз. Что необходимо знать?
 
Cisco TALOS – интеллектуальная платформа для анализа угроз
Cisco TALOS – интеллектуальная платформа для анализа угрозCisco TALOS – интеллектуальная платформа для анализа угроз
Cisco TALOS – интеллектуальная платформа для анализа угроз
 
Доктор Веб. Вячслав Медведев: "Антивирусная безопасность. Типичные ошибки"
Доктор Веб. Вячслав Медведев: "Антивирусная безопасность. Типичные ошибки"Доктор Веб. Вячслав Медведев: "Антивирусная безопасность. Типичные ошибки"
Доктор Веб. Вячслав Медведев: "Антивирусная безопасность. Типичные ошибки"
 
Информационная безопасность и web-приложения
Информационная безопасность и web-приложенияИнформационная безопасность и web-приложения
Информационная безопасность и web-приложения
 
Безопасность каждого шага Вашего мобильного бизнеса
Безопасность каждого шага Вашего мобильного бизнесаБезопасность каждого шага Вашего мобильного бизнеса
Безопасность каждого шага Вашего мобильного бизнеса
 
Cisco AMP: платформа для борьбы с вредоносным кодом
Cisco AMP: платформа для борьбы с вредоносным кодомCisco AMP: платформа для борьбы с вредоносным кодом
Cisco AMP: платформа для борьбы с вредоносным кодом
 
Экспресс-анализ российского рынка ИБ в условиях курса на импортозамещение
Экспресс-анализ российского рынка ИБ в условиях курса на импортозамещениеЭкспресс-анализ российского рынка ИБ в условиях курса на импортозамещение
Экспресс-анализ российского рынка ИБ в условиях курса на импортозамещение
 
Secure development
Secure developmentSecure development
Secure development
 
Как создать в России свою систему Threat intelligence?
Как создать в России свою систему Threat intelligence?Как создать в России свою систему Threat intelligence?
Как создать в России свою систему Threat intelligence?
 
От разрозненных фидов к целостной программе Threat intelligence
От разрозненных фидов к целостной программе Threat intelligenceОт разрозненных фидов к целостной программе Threat intelligence
От разрозненных фидов к целостной программе Threat intelligence
 
Bitdefender io t_pta_2017
Bitdefender io t_pta_2017Bitdefender io t_pta_2017
Bitdefender io t_pta_2017
 
ВЕБИНАР: Риски утечки конфиденциальных данных клиентов. Какие мы ошибки допу...
 ВЕБИНАР: Риски утечки конфиденциальных данных клиентов. Какие мы ошибки допу... ВЕБИНАР: Риски утечки конфиденциальных данных клиентов. Какие мы ошибки допу...
ВЕБИНАР: Риски утечки конфиденциальных данных клиентов. Какие мы ошибки допу...
 
Юрий Леонычев «Безопасность мобильных приложений для Android. Теория и практика»
Юрий Леонычев «Безопасность мобильных приложений для Android. Теория и практика»Юрий Леонычев «Безопасность мобильных приложений для Android. Теория и практика»
Юрий Леонычев «Безопасность мобильных приложений для Android. Теория и практика»
 
Доктор Веб - Почему в информационной безопасности ничего не меняется?
Доктор Веб - Почему в информационной безопасности ничего не меняется?Доктор Веб - Почему в информационной безопасности ничего не меняется?
Доктор Веб - Почему в информационной безопасности ничего не меняется?
 
Доктор Веб - Почему при наличии антивируса компании несут убытки от вирусных ...
Доктор Веб - Почему при наличии антивируса компании несут убытки от вирусных ...Доктор Веб - Почему при наличии антивируса компании несут убытки от вирусных ...
Доктор Веб - Почему при наличии антивируса компании несут убытки от вирусных ...
 
Доктор Веб - Почему при наличии антивируса компании несут убытки от вирусных ...
Доктор Веб - Почему при наличии антивируса компании несут убытки от вирусных ...Доктор Веб - Почему при наличии антивируса компании несут убытки от вирусных ...
Доктор Веб - Почему при наличии антивируса компании несут убытки от вирусных ...
 
Правила_кибер_гигиены.pdf
Правила_кибер_гигиены.pdfПравила_кибер_гигиены.pdf
Правила_кибер_гигиены.pdf
 
Защита данных безнеса с помощью шифрования
Защита данных безнеса с помощью шифрованияЗащита данных безнеса с помощью шифрования
Защита данных безнеса с помощью шифрования
 
Обеспечение безопасности активов современного бизнеса с помощью криптографии
Обеспечение безопасности активов современного бизнеса с помощью криптографии Обеспечение безопасности активов современного бизнеса с помощью криптографии
Обеспечение безопасности активов современного бизнеса с помощью криптографии
 

Защищаем себя и пользователей — Вадим Дробинин (iOS Security Guide by Vadim Drobinin)

  • 1. @Valzevul Вадим Дробинин Защищаем себя и пользователей (руководство по безопасности для iOS)
  • 2. @ValzevulЗащищаем себя и пользователей В двух словах • Что мы будем защищать? • Какие бывают атаки? • Примеры атак • Как проверить приложение? • Способы защиты • Что дальше? 2
  • 3. @Valzevul Мобильные устройства — основной источник личных данных пользователей и мы не умеем их защищать
  • 4. @ValzevulЗащищаем себя и пользователей Что мы будем защищать? 4 Стэк мобильной безопасности Уровень инфраструктуры • CDMA, GSM • GPS • SMS, MMS Уровень «железа» • Устройство • Прошивка Уровень ОС • Версия OS • Root-доступ Уровень приложений • ???
  • 5. @ValzevulЗащищаем себя и пользователей Уровень приложений Transport Layer Security • NSURLConnection и NSURLSession требуют ATS • ATS требует TLS 1.2 и сертификаты • Приложения должны соответствовать * 5 Защита данных • Всё шифруется с помощью уникального ключа в 256 бит • Ключи «оборачиваются» в ключи классов • Класс = политика безопасности
  • 6. @ValzevulЗащищаем себя и пользователей Уровень приложений Transport Layer Security 6 Защита данных С iOS9 сложно налажать в зашифрованной передаче данных Почти все файлы надежно зашифрованы на диске
  • 7. @ValzevulЗащищаем себя и пользователей Какие бывают атаки? 7 TamperingRepudiation Information Disclosure Denial of Service Elevation of Privilege Spoofing
  • 8. @ValzevulЗащищаем себя и пользователей Repudiation Какие бывают атаки? 8 Repudiation
 (атаки отказа) «Toll Fraud» Внедрение на стороне клиента Утерянный девайс Вредоносная программа
  • 9. @ValzevulЗащищаем себя и пользователей Какие бывают атаки? 9 Spoofing
 (атаки подмены) Социальная инженерия Вредоносный QR-код Неправильная обработка сессий Непроверенные NFC-теги Слабая система авторизации Вредоносное приложение
  • 10. @ValzevulЗащищаем себя и пользователей Какие бывают атаки? 10 Tampering
 (атаки искажения) Взлом мобильной сети Незащищенная Wi-Fi сеть Изменение локальных данных
  • 11. @ValzevulЗащищаем себя и пользователей Какие бывают атаки? 11 Information Disclosure
 (атаки раскрытия) Взлом бэкенда Reverse Engineering приложения Утерянный девайс Вредоносная программа
  • 12. @ValzevulЗащищаем себя и пользователей Какие бывают атаки? 12 Denial of Service (атаки обслуживания) Спам уведомлениями DDoS Падение приложения Излишнее использование API
  • 13. @ValzevulЗащищаем себя и пользователей Какие бывают атаки? 13 Elevation of Privilege
 (атаки уровня доступа) Скомпромен- тированные credentials (1) Изъяны в аутентификации Выход из Sandbox Jailbreak / Rootkits Слабая система авторизации Скомпромен- тированные credentials (2)
  • 14. @ValzevulЗащищаем себя и пользователей Примеры атак • Information Disclosure (1): • Бэкапы в iTunes не шифруются по-умолчанию • Вирус BackStab • Information Disclosure (2): • Никто не шифрует данные под PIN • Elcomsoft iOS Forensic Toolkit 14
  • 15. @ValzevulЗащищаем себя и пользователей Примеры атак • Information Disclosure (3): • UIPasteboard (1Password, токены, URLы) • Кэш • Elevation of Privilege: • Ad-hoc → можно использовать Private APIs • Вирусы для EnPublic (CVE-2014-1276) 15
  • 16. @ValzevulЗащищаем себя и пользователей Elevation of Privilege 16 github.com/valzevul/ElevationOfPrivilegeHack
  • 17. @ValzevulЗащищаем себя и пользователей Как проверить приложение? • White-box vs. Black-box; • Личные данные (PII, personal or identifying information); • Penetration-тесты («пентесты»). 17
  • 18. @ValzevulЗащищаем себя и пользователей PII • Логины, пароли, геолокация, адрес, связь с социальными сетями; • Имя девайса, имя сети, UDID; • Данные приложения, логи и cookies. 18
  • 19. @ValzevulЗащищаем себя и пользователей Пентесты 19 Взаимодействие с сетью Проблемы с приватностью Reverse Engineering URL Schema (iOS Masque Attack) Анализ Runtime
  • 20. @ValzevulЗащищаем себя и пользователей Пентесты • Окружение: • iDevice • Сеть • Jailbreak • Утилиты: • BigBoss Recommended Tools • OpenSSH • Clutch • Class-Dump • Cycript • Keychain dumper • … 20
  • 21. @ValzevulЗащищаем себя и пользователей Как защитить приложение? • TLS и Certificate Pinning • Secure Networking by Apple • TrustKit • Шифрование • Шифруйте всё (атрибуты NSData и NSFileManager) • Используйте Keychain • Не используйте Preferences, Cookies, /Library и /Documents 21
  • 22. @ValzevulЗащищаем себя и пользователей Как защитить приложение? • Запретите синхронизацию • NSURLIsExcludedFromBackupKey • Очищайте «скриншоты» • applicationDidEnterBackground → hidden • Не пишите в NSLog • Избегайте кэша клавиатуры • secureTextEntry • UITextAutocorrectionTypeNo 22
  • 23. @ValzevulЗащищаем себя и пользователей Как защитить приложение? • Jailbreak-detection: • Проверьте наличие файлов MobileSubstrate.dylib, ssh, … • Попробуйте открыть Cydia.app • Проверьте вызов fork() • Проверьте родителя через sysctl (если не запущен или это ядро, вас дебажат!) • Обфусцируйте код 23
  • 24. @ValzevulЗащищаем себя и пользователей Что дальше? 24
  • 25. @ValzevulЗащищаем себя и пользователей Что дальше? • https://www.slideshare.net/eightbit/owasp-melbourne-introduction- to-ios-application-penetration-testing • https://www.slideshare.net/OWASP_Poland/introduction-to-ios- penetration-testing • Apple Pay: Inspect, Set Up, Promote (Vadim Drobinin, https://vk.cc/ 6iPXEe) • Usability vs. Security (Josiah Renaudin, https://vk.cc/6j2i75) • Demystifying Apple 'Pie' & TouchID (Sebas Guerrero, https://vk.cc/ 6iPY3f) • iOS Headers, http://developer.limneos.net/ 25