Formations

Objectifs

  • Être capable d'auditer ou d'étudier une application iOS
  • Être capable de comprendre ou d'explorer les composants de l'espace utilisateur iOS

Synopsis

Cette formation fournira les connaissances nécessaires pour étudier une application iOS afin de réaliser un audit de sécurité ou bien sa rétro-ingénierie. L'accent sera mis sur les dernières versions d'iOS (à partir de la 10). La formation repose sur de nombreux cas pratiques.

Public Ciblé

  • Rétro-ingénieurs s'intéressant à iOS
  • Ingénieurs sécurité n'ayant pas d'expérience préalable sur iOS souhaitant auditer des Apps ou étudier le système.

Durée

3 jours

Prérequis

  • Connaissance basique de l'assembleur ARM
  • Connaissance basique des mécanismes d'un système d'exploitation
  • Connaissance basique de Python

Exercices

  • Rétro-ingénierie de binaires
  • Écriture de scripts

Modules

Module 1

  • Introduction
  • Mise en place de l'environnement de travail
  • Mach-O
    • Format et chargement d'un binaire Mach-O
  • Objective-C
    • Description de la syntaxe
    • Rétro-ingénierie statique (structures, environnement d'exécution)
  • Swift

Module 2

  • Applications
    • Hiérarchie, ressources
    • Cycle de vie d'une App
    • Analyse statique et dynamique
    • Contrôle de l'usage de l'API (cryptographie, stockage des clés...)

Module 3

  • Dyld shared cache
    • Suivre le code à travers les bibliothèques
  • XPC
    • Suivre et analyser les XPC iOS