Дизайн UX і когнітивна психологія PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

UX дизайн і когнітивна психологія

Кібератаки та викрадення даних сьогодні стали настільки поширеними, особливо коли мова йде про мобільні додатки. Як наслідок, мобільні програми, які зазнають порушень безпеки, можуть зазнати фінансових втрат. Оскільки багато хакерів прагнуть викрасти дані клієнтів, захист цих програм став пріоритетом номер один для організацій і серйозним викликом для розробників. Згідно з останніми дослідженнями Gartner, Hype Cycle для безпеки програм, протягом наступних кількох років інвестиції в безпеку додатків зростуть більш ніж удвічі, з 6 мільярдів доларів цього року до 13.7 мільярдів доларів до 2026 року. Крім того, у звіті зазначено: «Безпека додатків тепер є головним питанням для розробників і безпеки. професіоналів, і тепер наголос зосереджений на програмах, розміщених у загальнодоступних хмарах. Ось 12 порад, як захистити свій мобільний додаток: 

1. Встановлюйте програми з надійних джерел:

Зазвичай додатки для Android повторно публікуються на інших ринках або їхні файли APK і IPA стають доступними для завантаження. Як APK, так і IPA можна завантажити та встановити з різних місць, зокрема з веб-сайтів, хмарних служб, дисків, соціальних медіа та соціальних мереж. Лише Play Store і App Store мають дозволити встановлювати надійні файли APK і IPA. Щоб запобігти використанню цих програм, у нас має бути виявлення перевірки джерела (Play Store або App Store) під час запуску програми.

Читайте також, https://andresand.medium.com/add-method-to-check-which-app-store-the-android-app-is-installed-from-or-if-its-sideloaded-c9f450a3d069

2. Виявлення кореня:

Android: зловмисник може запустити мобільну програму на рутованому пристрої та отримати доступ до локальної пам’яті або викликати певні дії чи наміри виконувати шкідливі дії в програмі. 

iOS: Програми на зламаному пристрої запускаються як root за межами пісочниці iOS. Це може дозволити програмам отримати доступ до конфіденційних даних, що зберігаються в інших програмах, або встановити зловмисне програмне забезпечення, що заперечує функції ізольованого програмного середовища. 

Більше про Root Detection- https://owasp.org/www-project-mobile-top-10/2016-risks/m8-code-tampering

3. Зберігання даних:

Розробники використовують спільні параметри та параметри користувача за замовчуванням для зберігання пар ключ-значення, як-от маркерів, номерів мобільних телефонів, електронної пошти, логічних значень тощо. Крім того, під час створення програм розробники віддають перевагу базам даних SQLite для структурованих даних. Рекомендується зберігати будь-які дані у форматі шифрування, щоб хакерам було важко витягти інформацію.

4. Захищені секретні ключі:

Ключі API, паролі та токени не повинні бути жорстко закодовані в коді. Рекомендується використовувати різні методи для зберігання цих значень, щоб хакери не могли швидко втекти, втрутившись у програму. 

Ось довідкове посилання: https://guides.codepath.com/android/Storing-Secret-Keys-in-Android

5. Обфускація коду

Зловмисник може декомпілювати файл APK і витягти вихідний код програми. Це може надати зловмиснику конфіденційну інформацію, що зберігається у вихідному коді програми, яку можна використати для виконання спеціальних атак. 

Краще замаскувати вихідний код, щоб уникнути всієї конфіденційної інформації, що міститься у вихідному коді.

6. Безпечний зв'язок:

Зловмисник може виконувати зловмисні дії, щоб посилити рівень атак, оскільки весь зв’язок відбувається через незашифровані канали. Тому завжди використовуйте URL-адреси HTTPS замість URL-адрес HTTP.

7. Закріплення SSL:

Закріплення сертифіката дозволяє мобільним програмам обмежувати зв’язок лише з серверами з дійсним сертифікатом, що відповідає очікуваному значенню (pin). Закріплення гарантує це жодні мережеві дані не порушуються, навіть якщо користувача обманом змусять встановити зловмисний кореневий сертифікат на своєму мобільному пристрої. Будь-яка програма, яка закріплює свої сертифікати, перешкоджатиме таким спробам фішингу, відмовляючись передавати дані через скомпрометоване з’єднання

Будь ласка, зверніться: 

https://owasp.org/www-community/controls/Certificate_and_Public_Key_Pinning

8. Безпечні дані запитів і відповідей API

Стандартною практикою є використання HTTPS для базового захисту викликів REST API. Інформація, надіслана на сервер або отримана з сервера, може бути додатково зашифрована за допомогою AES тощо. Наприклад, якщо є конфіденційний вміст, ви можете вибрати його для шифрування, щоб навіть якщо HTTPS якимось чином зламано або неправильно налаштовано, ви мати ще один рівень захисту від вашого шифрування.

9. Безпечна автентифікація мобільних додатків:

Якщо програма не призначає окремі та складні токени сеансу після входу користувачеві, зловмисник може здійснити фішинг, щоб спонукати жертву використати спеціально згенерований токен, наданий зловмисником, і легко обійти сторінку входу із захопленим сеансом. за допомогою атаки MiTM.

i) Призначайте окремий і складний маркер сеансу користувачеві кожного разу, коли він/вона успішно входить до програми. 

ii) Припиніть час існування сеансу відразу після виходу. 

iii) Не використовуйте один і той же маркер сеансу для двох або більше IP-адрес. 

iv) Обмежте час закінчення терміну дії для кожного маркера сеансу.

10. Дозволити резервне копіювання 

Заборонити користувачам створювати резервні копії програми, якщо вона містить конфіденційні дані. Маючи доступ до файлів резервних копій (тобто коли android:allowBackup=”true”), можна змінювати/читати вміст програми навіть на пристрої без руту. Тому рекомендується зробити дозвіл резервного копіювання помилковим. 

11. Обмежте доступ до екранів програм Android з інших програм

В ідеалі ваша діяльність не повинна передбачати відкриття з інших сервісів або програм. Зробіть це правдою лише тоді, коли у вас є конкретна вимога щодо доступу до ваших тріпотливих екранів з інших програм, інакше змініть на чоловіча:exported= ”false”

12. Обмежте встановлення пакетів із програми android

REQUEST_INSTALL_PACKAGES дозвіл дозволяє додаткам інсталювати нові пакети на пристрої користувача. Ми прагнемо запобігати зловживанням на платформі Android і захищати користувачів від додатків, які самостійно оновлюються будь-яким іншим способом, окрім механізму оновлення Google Play, або завантажують шкідливі файли .apk.

Висновок: 

Мобільні додатки стали більш персоналізованими, ніж будь-коли раніше, завдяки величезній кількості особистих даних клієнтів, які зберігаються в них щодня. Щоб створити довіру та лояльність серед користувачів і запобігти значним фінансовим втратам і втратам облікових даних для компаній, зараз вкрай важливо переконатися, що програма безпечна для користувача. Дотримання вищезазначених контрольних списків безпеки мобільних додатків точно допоможе запобігти хакерам від злому додатка.

Про автора:

Равітея Акеті є старшим інженером-програмістом Mantra Labs. Має великий досвід роботи з B2B проектами. Равітея любить досліджувати нові технології, дивитися фільми та проводити час із родиною та друзями.

Читайте наш останній блог: Впровадження чистої архітектури за допомогою Nest.JS

Знання, які варті того, щоб доставити у вашу поштову скриньку

Часова мітка:

Більше від Лабораторії Мантри