Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Безопасность мобильных приложений. Что тестировать?

7,352 views

Published on

Доклад Игоря Бондаренко на конференции SQA Days-17,
29-30 мая 2015 г., Минск
www.sqadays.com

Published in: Education
  • Login to see the comments

Безопасность мобильных приложений. Что тестировать?

  1. 1. Мобильная безопасность. Что тестировать? Igor Bondarenko. Neklo LLC
  2. 2. OWASP TOP 10 1/18
  3. 3. В этом докладе 2/18 Небезопасное хранение данных Недостаточная защита каналов передачи данных Слабая авторизация и аутентификация Небезопасное управление сессиями
  4. 4. Insecure Data Storage 3/18 Четыре основные проблемы: – Hardcoded and forgotten – Incorrect files permissions – SD Storage – Logs
  5. 5. Hardcoded and forgotten 4/18 - Default/test credentials - Test servers/ locals Ips
  6. 6. Incorrect files permissions 5/18 One app – One UID – 0660 mask for new files (-rw-rw----) – 0666 mask for new files (-rw-rw-rw)
  7. 7. SD Storage 6/18 Данные на SD карте доступны всем приложениям.
  8. 8. Логирование 7/18 android.permission.READ_LOGS
  9. 9. Защита от уязвимостей 8/18 • Не хранить данные на SD карте • Выключить логирование • Настраивайте права доступа с учетом того, что пользователь может пользоваться телефоном с Root правами или с джйлбрейком • Просмотрите конфигурационные файлы вашего приложения на предмет забытых данных.
  10. 10. Insufficient Transport Layer Protection 9/18 Основные проблемы: – Не используется шифрование. – Самоподписанные сертификаты
  11. 11. Шифрование 10/18 – Проверка трафика мобильного приложения – Использовать сертификаты, подписанные доверенными центрами. – При использовании контент-провайдеров проверять и прописывать права доступа
  12. 12. Контент-провайдеры 11/18 Контент провайдеры предоставляют доступ к файлам или базам данных для других приложений. android:protectionLevel=“signature
  13. 13. Weak Authorization 12/18 • Анонимная работа с приложением • Использование пользователей с низким уровнем привилегий для получения данных доступных всем пользователям • Слабые пароли
  14. 14. Защита от уязвимости 13/18 • Аутентификация в мобильном приложении должна соответствовать таковой в web версии • Локальная аутентификация должна работать через куки после того как пользователь был авторизован через сервер • Запрет анонимной работы • Введение проверки прав пользователя • Сложные пароли
  15. 15. Improper Session Handling 14/18 Механизм переключения состояний: • Смена анонимного пользователя на зарегистрированного • Переключение между зарегистрированными пользователями • Переключение между пользователями с разными правами доступа Токен должен уничтожаться на сервере. Куки должны быть невалидны.
  16. 16. Время жизни сессии 15/18 Долгое время жизни сессии • 15 минут для приложений с высоким уровнем безопасности • 30 минут для приложений среднего уровня безопасности • 1 час для остальных
  17. 17. Предсказуемые токены 16/18 UserID+Current_DateTime Autoincrement
  18. 18. Заключение 17/18 1. Проверки не занимают много времени 2. Проверки не требуют специальных знаний 3. Все проще чем кажется
  19. 19. Дополнительные материалы 18/18 1. OWASP Page 2. Android Security Webinar 3. Уязвимости SSL в мобильных приложениях
  20. 20. Вопросы Email: bondarenko.ihar@yandex.ru Skype: igor.bondarenko1

×