Sommaire

Technique utilisée par les malwares sous iOS

1. Injection de librairies

L’une des techniques les plus fréquemment utilisées sur iOS consiste à utiliser une application légitime et y charger une librairie malveillante. Cette technique est appliquée légitimement par la communauté des créateurs de tweak où les développeurs ajoutent des fonctionnalités aux applications existantes. Par exemple, le support de plusieurs comptes dans l’application WhatsApp.

Pour réaliser cette technique, le développeur a besoin de l’application originale (déchiffrée si celle-ci est chiffrée) et du script iOS Dylib Patching disponible sur GitHub : https://github.com/depoon/iOSDylibInjectionDemo. La première étape consiste à créer une librairie dynamique dans XCode, le compilateur d’Apple. Voici un exemple de librairie qui va modifier la géolocalisation de l’utilisateur et placer le terminal au centre de la centrale nucléaire de Tchernobyl :

LocationSwizzler.swift 
 
import Foundation 
import CoreLocation 
 
public class LocationSwizzler: NSObject { 
   static var currentLocation = CLLocationCoordinate2DMake(51.3861, 
30.0993) //Géolocalisation de Chernobyl 
 
   static var originalMethod: Method? 
   static var swizzleMethod: Method? 
   static var originalDelegate: CLLocationManagerDelegate?  ...