Проблемы защиты баз данных контактов и сообщений на мобильных устройствах и их решение

Содержание

Слайд 2

Задачи

1. Изучить стандартные способы защиты платформы iOS, возможности разработки дополнительных средств защиты.

2.

Задачи 1. Изучить стандартные способы защиты платформы iOS, возможности разработки дополнительных средств
Разработать приложение для защиты БД контактов и сообщений для iOS.

3. Проанализировать работу, разработанного приложения

Разработать приложение для защиты базы данных контактов и сообщений на мобильных устройствах от фирмы Apple, которое будет служить дополнительной защитой клиентских БД

Цель

Слайд 3

Минусы защиты iOS

Минусы защиты iOS

Слайд 4

Моделирование ситуации кражи данных с мобильного аппарата

Средства исследования:
мобильный телефон на платформе

Моделирование ситуации кражи данных с мобильного аппарата Средства исследования: мобильный телефон на
iOS iPhone 3GS с четвертой версией прошивки
персональный компьютер на платформе Mac OS
утилита для чтения данных резервных копий данных iPhone MobileSyncBrowser.

Слайд 5

Моделирование ситуации кражи данных с мобильного аппарата

Рис.3.Просмотр файлов резервной копии с помощью

Моделирование ситуации кражи данных с мобильного аппарата Рис.3.Просмотр файлов резервной копии с помощью MobileSyncBrowser.
MobileSyncBrowser.

Слайд 6

Приложение

БД защищается путем ее шифрования блочным AES-алгоритмом с размером блока 128 бит
KBDiplomViewController

Приложение БД защищается путем ее шифрования блочным AES-алгоритмом с размером блока 128
– класс контроллера представления

Слайд 7

Приложение

Рис.4. Запрос пароля при
старте приложения.

Рис. 5. Интерфейс приложения

Приложение Рис.4. Запрос пароля при старте приложения. Рис. 5. Интерфейс приложения

Слайд 8

Приложение

Событие шифрования/расшифровывания БД контактов.

Событие: Crypt the all contacts - (void)crypteAllRecords

Инициализация объектов

Приложение Событие шифрования/расшифровывания БД контактов. Событие: Crypt the all contacts - (void)crypteAllRecords
класса KBRecordValue

Проверка на совпадение с уже зашифрованными контактами

Вызов метода шифрования/расшифровывания из класса SecKeyWrapper

Событие: Decrypt the all contacts -(void)decryptTheAll

Запись в адресную книгу на соответствующее место - сохранение

Считывание зашифрованных контактов из хранилища (ArrayAcaunts)

Слайд 9

Приложение

Рис. 6. Вид адресной книги после и до шифрования.

Приложение Рис. 6. Вид адресной книги после и до шифрования.

Слайд 10

Приложение

Событие: Crypt/decrypt single contact

Создается объект класса ABPeoplePickerNavigationController

(BOOL)peoplePickerNavigationController:shouldContinueAfterSelectingPerson:

Чтение данных выбранного контакта и инициализация

Приложение Событие: Crypt/decrypt single contact Создается объект класса ABPeoplePickerNavigationController (BOOL)peoplePickerNavigationController:shouldContinueAfterSelectingPerson: Чтение данных
объекта класса KBRecordValue (свойство isCipher)

Вызов метода шифрования/расшифровывания из класса SecKeyWrapper

Запись в адресную книгу на соответствующее место - сохранение

Событие шифрования/расшифровывания одиночного контакта

Слайд 11

Приложение

Событие: Add new contact
(addNewCryptContact)

создается объект класса ABNewPersonViewController

- (void)newPersonViewController:
didCompleteWithNewPerson:

Чтение данных созданного контакта и

Приложение Событие: Add new contact (addNewCryptContact) создается объект класса ABNewPersonViewController - (void)newPersonViewController:
инициализация объекта класса KBRecordValue (свойство isCipher)

Вызов метода шифрования/расшифровывания из класса SecKeyWrapper

Запись в адресную - сохранение

Событие добавления нового контакта в зашифрованном виде

Слайд 12

Приложение

Событие:Change password
(changePassword)

Рис. 7. Замена пароля.

Создается объект класса
UIAlertView

-(void)alertView:
clickedButtonAtIndex:

Замена пароля новым, генерация

Приложение Событие:Change password (changePassword) Рис. 7. Замена пароля. Создается объект класса UIAlertView
нового ключа шифрования

Событие замены пароля

Слайд 13

Приложение

Событие: Open AddressBook

1. postMessage (будет создан объект класса MFMessageComposeViewController)

2. makeCall

3. shareContact,

Приложение Событие: Open AddressBook 1. postMessage (будет создан объект класса MFMessageComposeViewController) 2.
- создастся объект класса MFMailComposeViewController

Слайд 14

Проблемы БД сообщений

Закрытость платформы iOS

Отсутствие API для работы с БД сообщений изнутри

Проблемы БД сообщений Закрытость платформы iOS Отсутствие API для работы с БД
стороннего приложения. Только отправка СМС

Отсутствие возможности шифровать БД сообщений

Если бы данная возможность имелась

Поля сообщения: наименования контакта либо номер телефона и текст сообщения, - представляют собой объекты типов UITextField и UITextView соответственно.

Они имеют свойство text, которое содержит их текущее значение типа NSString

Преобразование в NSData

Шифрование методом класса
SecKeyWrapper –
doCipher: key: context: padding:

Обратное преобразование в NSString и запись значений в соответствующие поля

Слайд 15

Заключение

1.Разработанное приложение успешно выполняет свои функции, предоставляя дополнительный уровень защиты БД контактов,

Заключение 1.Разработанное приложение успешно выполняет свои функции, предоставляя дополнительный уровень защиты БД
защищая их от злоумышленника.

2. Разработанное приложение раскрывает новые способности последних версий платформы iOS.

3. Из-за закрытости платформы iOS нет возможности шифровать БД сообщений. Поэтому пока Apple не предоставит возможности работать с базой сообщений, их неприкасаемость находиться под угрозой.

4. Функционал приложения может быть расширен за счет дополнений, которые позволяют хранить в зашифрованном виде не только одну базу контактов, но и базу паролей к электронной почте, социальным сетям, корпоративным сетям.

Имя файла: Проблемы-защиты-баз-данных-контактов-и-сообщений-на-мобильных-устройствах-и-их-решение.pptx
Количество просмотров: 103
Количество скачиваний: 0