iOS Pentesting Checklist

Reading time: 5 minutes

tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Підтримайте HackTricks

Підготовка

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

  • Plist файли можуть використовуватися для зберігання чутливої інформації.
  • Core Data (база даних SQLite) може зберігати чутливу інформацію.
  • YapDatabases (база даних SQLite) може зберігати чутливу інформацію.
  • Firebase неправильна конфігурація.
  • Realm бази даних можуть зберігати чутливу інформацію.
  • Couchbase Lite бази даних можуть зберігати чутливу інформацію.
  • Бінарні куки можуть зберігати чутливу інформацію
  • Кешовані дані можуть зберігати чутливу інформацію
  • Автоматичні знімки можуть зберігати візуальну чутливу інформацію
  • Keychain зазвичай використовується для зберігання чутливої інформації, яка може залишитися при перепродажу телефону.
  • Підсумовуючи, просто перевірте наявність чутливої інформації, збереженої додатком у файловій системі

Клавіатури

Логи

Резервні копії

  • Резервні копії можуть використовуватися для доступу до чутливої інформації, збереженої у файловій системі (перевірте початковий пункт цього контрольного списку)
  • Також, резервні копії можуть використовуватися для модифікації деяких конфігурацій додатка, а потім відновлення резервної копії на телефоні, і оскільки модифікована конфігурація завантажується, деяка (безпекова) функціональність може бути обійдена

Пам'ять додатків

Пошкоджена криптографія

Локальна аутентифікація

Витік чутливої функціональності через IPC

  • Користувацькі обробники URI / Глибокі посилання / Користувацькі схеми
  • Перевірте, чи додаток реєструє будь-який протокол/схему
  • Перевірте, чи додаток реєструється для використання будь-якого протоколу/схеми
  • Перевірте, чи додаток очікує отримати будь-яку чутливу інформацію з користувацької схеми, яка може бути перехоплена іншим додатком, що реєструє ту ж схему
  • Перевірте, чи додаток не перевіряє та не очищає введення користувачів через користувацьку схему, і чи може бути використана якась вразливість
  • Перевірте, чи додаток викриває будь-яку чутливу дію, яку можна викликати з будь-якого місця через користувацьку схему
  • Універсальні посилання
  • Перевірте, чи додаток реєструє будь-який універсальний протокол/схему
  • Перевірте файл apple-app-site-association
  • Перевірте, чи додаток не перевіряє та не очищає введення користувачів через користувацьку схему, і чи може бути використана якась вразливість
  • Перевірте, чи додаток викриває будь-яку чутливу дію, яку можна викликати з будь-якого місця через користувацьку схему
  • UIActivity Sharing
  • Перевірте, чи може додаток отримувати UIActivities і чи можливо експлуатувати будь-яку вразливість зі спеціально підготовленою активністю
  • UIPasteboard
  • Перевірте, чи додаток копіює щось у загальний буфер обміну
  • Перевірте, чи додаток використовує дані з загального буфера обміну для чогось
  • Моніторте буфер обміну, щоб перевірити, чи копіюється якась чутлива інформація
  • Розширення додатків
  • Чи використовує додаток будь-яке розширення?
  • WebViews
  • Перевірте, які види webviews використовуються
  • Перевірте статус javaScriptEnabled, JavaScriptCanOpenWindowsAutomatically, hasOnlySecureContent
  • Перевірте, чи може webview доступати до локальних файлів з протоколом file:// (allowFileAccessFromFileURLs, allowUniversalAccessFromFileURLs)
  • Перевірте, чи може Javascript отримати доступ до Native методів (JSContext, postMessage)

Мережева комунікація

Різне

tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Підтримайте HackTricks