{"id":164629,"date":"2025-11-07T03:00:18","date_gmt":"2025-11-07T11:00:18","guid":{"rendered":"https:\/\/unit42.paloaltonetworks.com\/?p=164629"},"modified":"2025-11-06T14:56:42","modified_gmt":"2025-11-06T22:56:42","slug":"landfall-is-new-commercial-grade-android-spyware","status":"publish","type":"post","link":"https:\/\/unit42.paloaltonetworks.com\/fr\/landfall-is-new-commercial-grade-android-spyware\/","title":{"rendered":"LANDFALL : Nouveau logiciel espion commercial pour Android dans une cha\u00eene d'exploitation ciblant les appareils Samsung"},"content":{"rendered":"<h2>R\u00e9sum\u00e9 ex\u00e9cutif<\/h2>\n<p>Les chercheurs de Unit 42 ont d\u00e9couvert une famille de logiciels espions Android jusqu'alors inconnue, que nous avons baptis\u00e9e LANDFALL. Pour diffuser ce spyware, les attaquants ont exploit\u00e9 une vuln\u00e9rabilit\u00e9 zero-day (CVE-2025-21042) dans la biblioth\u00e8que de traitement d'images Android de Samsung. La faille sp\u00e9cifique exploit\u00e9e par LANDFALL, CVE-2025-21042, n'est pas un cas isol\u00e9 mais s'inscrit plut\u00f4t dans un sch\u00e9ma plus large de probl\u00e8mes similaires constat\u00e9s sur de multiples plateformes mobiles.<\/p>\n<p>Cette vuln\u00e9rabilit\u00e9 a \u00e9t\u00e9 activement exploit\u00e9e \"in the wild\" (dans la nature) avant que Samsung ne la corrige en avril 2025, suite \u00e0 des signalements d'attaques en cours. Cependant, l'exploit lui-m\u00eame \u2014 ainsi que le logiciel espion de qualit\u00e9 commerciale utilis\u00e9 avec \u2014 n'ont pas encore \u00e9t\u00e9 publiquement rapport\u00e9s et analys\u00e9s.<\/p>\n<p>LANDFALL \u00e9tait int\u00e9gr\u00e9 dans des fichiers image malveillants (format de fichier DNG) qui semblent avoir \u00e9t\u00e9 envoy\u00e9s via WhatsApp, ouvrant potentiellement la voie \u00e0 une cha\u00eene d'infection \"zero-click\" (ne n\u00e9cessitant aucune interaction de l'utilisateur). Cette m\u00e9thode ressemble \u00e9troitement \u00e0 une cha\u00eene d'exploitation impliquant Apple et WhatsApp qui a attir\u00e9 l'attention en ao\u00fbt 2025. Elle ressemble \u00e9galement \u00e0 une cha\u00eene d'exploitation qui s'est probablement produite en utilisant une vuln\u00e9rabilit\u00e9 zero-day similaire (CVE-2025-21043) divulgu\u00e9e en septembre. Nos recherches n'ont identifi\u00e9 aucune vuln\u00e9rabilit\u00e9 inconnue dans WhatsApp.<\/p>\n<p>Fait important, notre d\u00e9couverte est ant\u00e9rieure \u00e0 ces divulgations : la campagne LANDFALL op\u00e9rait d\u00e9j\u00e0 \u00e0 la mi-2024, utilisant la vuln\u00e9rabilit\u00e9 zero-day Android\/Samsung (CVE-2025-21042) des mois avant qu'elle ne soit corrig\u00e9e.<\/p>\n<p>La vuln\u00e9rabilit\u00e9 est corrig\u00e9e depuis avril 2025, il n'y a donc aucun risque actuel pour les utilisateurs de Samsung. En septembre, Samsung a \u00e9galement corrig\u00e9 une autre vuln\u00e9rabilit\u00e9 zero-day (CVE-2025-21043) dans la m\u00eame biblioth\u00e8que de traitement d'images, renfor\u00e7ant ainsi la protection contre ce type d'attaque. Nos recherches n'ont identifi\u00e9 aucune vuln\u00e9rabilit\u00e9 dans WhatsApp et tout indique que l'application n'a \u00e9t\u00e9 utilis\u00e9e que comme vecteur de livraison, probablement en raison de son utilisation pr\u00e9valente par les cibles de cette activit\u00e9.<\/p>\n<p>Notre recherche se penche sur l'exploitation historique qui a eu lieu avant le correctif, offrant une visibilit\u00e9 rare sur une op\u00e9ration de logiciel espion avanc\u00e9e qui n'avait pas \u00e9t\u00e9 publiquement signal\u00e9e.<\/p>\n<p>Principales conclusions :<\/p>\n<ul>\n<li>LANDFALL est un logiciel espion Android sp\u00e9cifiquement con\u00e7u contre les appareils Samsung Galaxy, utilis\u00e9 dans des activit\u00e9s d'intrusion cibl\u00e9es au Moyen-Orient.<\/li>\n<li>LANDFALL permettait une surveillance compl\u00e8te, incluant l'enregistrement du microphone, le suivi de la localisation et la collecte de photos, de contacts et de journaux d'appels.<\/li>\n<li>Le logiciel espion est livr\u00e9 via des fichiers image DNG malform\u00e9s exploitant la CVE-2025-21042 \u2014 une vuln\u00e9rabilit\u00e9 zero-day critique dans la biblioth\u00e8que de traitement d'images de Samsung, qui a \u00e9t\u00e9 exploit\u00e9e \"in the wild\".<\/li>\n<li>La cha\u00eene d'exploitation impliquait possiblement une livraison \"zero-click\" via WhatsApp, utilisant des images sp\u00e9cifiquement con\u00e7ues, \u00e0 l'instar de cha\u00eenes d'exploitation r\u00e9centes observ\u00e9es sur iOS et Samsung Galaxy.<\/li>\n<li>La campagne partage des infrastructures et des modes op\u00e9ratoires (tradecraft) avec des op\u00e9rations de logiciels espions commerciaux au Moyen-Orient, indiquant des liens possibles avec des acteurs offensifs du secteur priv\u00e9 (PSOA - private-sector offensive actors).<\/li>\n<li>LANDFALL est rest\u00e9 actif et non d\u00e9tect\u00e9 pendant des mois.<\/li>\n<\/ul>\n<p>Les clients de Palo Alto Networks sont mieux prot\u00e9g\u00e9s gr\u00e2ce aux produits et services suivants :<\/p>\n<ul>\n<li><a href=\"https:\/\/docs.paloaltonetworks.com\/wildfire\" target=\"_blank\" rel=\"noopener\">Advanced WildFire<\/a><\/li>\n<li><a href=\"https:\/\/docs.paloaltonetworks.com\/advanced-url-filtering\/administration\" target=\"_blank\" rel=\"noopener\">Advanced URL Filtering<\/a><\/li>\n<li><a href=\"https:\/\/docs.paloaltonetworks.com\/dns-security\" target=\"_blank\" rel=\"noopener\">Advanced DNS Security<\/a><\/li>\n<li><a href=\"https:\/\/docs.paloaltonetworks.com\/advanced-threat-prevention\/administration\" target=\"_blank\" rel=\"noopener\">Advanced Threat Prevention<\/a><\/li>\n<\/ul>\n<p>Si vous pensez avoir \u00e9t\u00e9 compromis ou si vous avez une urgence, contactez l'<a href=\"https:\/\/start.paloaltonetworks.com\/contact-unit42.html\" target=\"_blank\" rel=\"noopener\">\u00e9quipe d'Intervention sur Incident de Unit 42<\/a>.<\/p>\n<table style=\"width: 96.8858%;\">\n<thead>\n<tr>\n<td style=\"width: 35%;\"><strong>Sujets Unit 42 connexes<\/strong><\/td>\n<td style=\"width: 222.569%;\"><a href=\"https:\/\/unit42.paloaltonetworks.com\/fr\/tag\/samsung-fr\/\" target=\"_blank\" rel=\"noopener\"><b>Samsung<\/b><\/a>, <a href=\"https:\/\/unit42.paloaltonetworks.com\/fr\/category\/vulnerabilities-fr\/\" target=\"_blank\" rel=\"noopener\"><strong>Vuln\u00e9rabilit\u00e9s<\/strong><\/a><\/td>\n<\/tr>\n<\/thead>\n<\/table>\n<h2><a id=\"post-164629-_gmrye9738rcr\"><\/a><strong>D\u00e9couverte du<\/strong> logiciel<strong> espion LANDFALL<\/strong><\/h2>\n<p>Mi-2025, apr\u00e8s la divulgation publique d'une cha\u00eene d'exploitation ciblant les appareils iOS, nous avons recherch\u00e9 des \u00e9chantillons de l'exploit iOS. C'est ce qui nous a conduits \u00e0 la d\u00e9couverte du logiciel espion Android que nous avons appel\u00e9 LANDFALL.<\/p>\n<p>Plus pr\u00e9cis\u00e9ment, Unit 42 a d\u00e9couvert plusieurs \u00e9chantillons de fichiers image DNG contenant un logiciel espion Android utilis\u00e9 dans une cha\u00eene d'exploitation ciblant les appareils Samsung Galaxy. Notre analyse a confirm\u00e9 que ces \u00e9chantillons exploitent la<a href=\"https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2025-21042\" target=\"_blank\" rel=\"noopener\"> CVE-2025-21042<\/a> pour livrer LANDFALL, possiblement via des exploits \"zero-click\" sur des applications de messagerie.<\/p>\n<h3><a id=\"post-164629-_ssk5k78q7vir\"><\/a><strong>D\u00e9but de<\/strong> la<strong> traque : La cha\u00eene d'exploitation iOS et comment elle nous a interpell\u00e9s<\/strong><\/h3>\n<p>En ao\u00fbt 2025, Apple a publi\u00e9 des mises \u00e0 jour de s\u00e9curit\u00e9 pour ses diff\u00e9rents produits afin de corriger la<a href=\"https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2025-43300\" target=\"_blank\" rel=\"noopener\"> CVE-2025-43300<\/a>, une vuln\u00e9rabilit\u00e9 zero-day affectant l'analyse (parsing) des images DNG, que les attaquants auraient exploit\u00e9e \"in the wild\".<\/p>\n<p>Le m\u00eame mois,<a href=\"https:\/\/www.whatsapp.com\/security\/advisories\/2025\/\" target=\"_blank\" rel=\"noopener\"> WhatsApp a signal\u00e9 une vuln\u00e9rabilit\u00e9 zero-day<\/a> pour la<a href=\"https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2025-55177\" target=\"_blank\" rel=\"noopener\"> CVE-2025-55177<\/a> qui \u00e9tait encha\u00een\u00e9e avec la vuln\u00e9rabilit\u00e9 de traitement d'images pour les plateformes Apple dans des attaques sophistiqu\u00e9es ciblant les appareils iOS. La vuln\u00e9rabilit\u00e9 WhatsApp permettait aux attaquants de forcer les appareils \u00e0 traiter du contenu provenant d'URL arbitraires.<\/p>\n<p>Lorsque les deux vuln\u00e9rabilit\u00e9s \u00e9taient combin\u00e9es dans une cha\u00eene d'exploitation, cela permettait une ex\u00e9cution de code \u00e0 distance \"zero-click\" par le biais d'images malveillantes envoy\u00e9es via des messages WhatsApp.<\/p>\n<p>Compte tenu de la divulgation de cette cha\u00eene d'exploitation \"in the wild\" et de l'absence d'\u00e9chantillons d'exploit publiquement disponibles, nous avons lanc\u00e9 une traque (hunt) de cette activit\u00e9. Nos recherches ont conduit \u00e0 la d\u00e9couverte de plusieurs fichiers image DNG non d\u00e9tect\u00e9s jusqu'alors, contenant un logiciel espion Android int\u00e9gr\u00e9, qui ont \u00e9t\u00e9 t\u00e9l\u00e9vers\u00e9s sur VirusTotal tout au long de 2024 et d\u00e9but 2025.<\/p>\n<p>\u00c0 en juger par leurs noms de fichiers (par ex., <span style=\"font-family: 'courier new', courier, monospace;\">WhatsApp Image 2025-02-10 at 4.54.17 PM.jpeg<\/span> et <span style=\"font-family: 'courier new', courier, monospace;\">IMG-20240723-WA0000.jpg<\/span>), les attaquants ont probablement livr\u00e9 ces \u00e9chantillons via WhatsApp. Notre analyse du logiciel espion int\u00e9gr\u00e9 indique qu'il est con\u00e7u pour les appareils Samsung Galaxy.<\/p>\n<h3><a id=\"post-164629-_9w75eirg38kt\"><\/a><strong>Fichiers image DNG malform\u00e9s : Une nouvelle tendance de vecteur d'attaque<\/strong><\/h3>\n<p>Notre analyse du logiciel espion LANDFALL a commenc\u00e9 par la d\u00e9couverte de<a href=\"https:\/\/www.adobe.com\/creativecloud\/file-types\/image\/raw\/dng-file.html\" target=\"_blank\" rel=\"noopener\"> fichiers image DNG<\/a> malform\u00e9s. DNG signifie Digital Negative (N\u00e9gatif Num\u00e9rique), et c'est un format de fichier d'image brute (raw) bas\u00e9 sur le format d'image TIFF. Les fichiers image DNG malform\u00e9s que nous avons d\u00e9couverts ont une archive ZIP int\u00e9gr\u00e9e ajout\u00e9e \u00e0 la fin du fichier. La Figure 1 montre un de ces \u00e9chantillons dans un \u00e9diteur hexad\u00e9cimal, indiquant o\u00f9 le contenu de l'archive ZIP commence pr\u00e8s de la fin du fichier.<\/p>\n<figure id=\"attachment_164630\" aria-describedby=\"caption-attachment-164630\" style=\"width: 800px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-164630 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-10389-164629-1.png\" alt=\"Capture d'\u00e9cran d'un \u00e9diteur hexad\u00e9cimal montrant le contenu d'un fichier image WhatsApp nomm\u00e9 \u00ab WhatsApp Image 2025-02-10 at 4.54.17 PM.jpeg \u00bb, indiquant le d\u00e9but d'une archive ZIP int\u00e9gr\u00e9e au sein des donn\u00e9es du fichier.\" width=\"800\" height=\"560\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-10389-164629-1.png 1790w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-10389-164629-1-629x440.png 629w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-10389-164629-1-1001x700.png 1001w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-10389-164629-1-768x537.png 768w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-10389-164629-1-1536x1074.png 1536w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption id=\"caption-attachment-164630\" class=\"wp-caption-text\">Figure 1. Exemple d'une image DNG malform\u00e9e avec une archive ZIP int\u00e9gr\u00e9e.<\/figcaption><\/figure>\n<p>Notre analyse indique que ces fichiers DNG exploitent la CVE-2025-21042, une vuln\u00e9rabilit\u00e9 dans la biblioth\u00e8que de traitement d'images de Samsung <span style=\"font-family: 'courier new', courier, monospace;\">libimagecodec.quram.so<\/span> que<a href=\"https:\/\/security.samsungmobile.com\/securityUpdate.smsb?year=2025\" target=\"_blank\" rel=\"noopener\"> Samsung a corrig\u00e9e en avril 2025<\/a>. L'exploit extrait des fichiers de biblioth\u00e8que d'objets partag\u00e9s (<span style=\"font-family: 'courier new', courier, monospace;\">.so<\/span>) de l'archive ZIP int\u00e9gr\u00e9e pour ex\u00e9cuter le logiciel espion LANDFALL. La Figure 2 ci-dessous montre un organigramme pour ce logiciel espion.<\/p>\n<figure id=\"attachment_164696\" aria-describedby=\"caption-attachment-164696\" style=\"width: 1000px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-164696 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/FR-2-Samsung-560x440.png\" alt=\"Organigramme d\u00e9crivant le spyware Android LANDFALL. Le processus d\u00e9bute par un fichier image .dng malform\u00e9 contenant une archive .zip int\u00e9gr\u00e9e, laquelle inclut un composant chargeur et un fichier compress\u00e9 XZ. Ceci m\u00e8ne \u00e0 l'extraction de composants suppl\u00e9mentaires et \u00e0 un fichier d\u00e9compress\u00e9 destin\u00e9 \u00e0 manipuler la strat\u00e9gie SELinux.\" width=\"1000\" height=\"786\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/FR-2-Samsung-560x440.png 560w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/FR-2-Samsung-890x700.png 890w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/FR-2-Samsung-768x604.png 768w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/FR-2-Samsung.png 1119w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption id=\"caption-attachment-164696\" class=\"wp-caption-text\">Figure 2. Organigramme du logiciel espion LANDFALL.<\/figcaption><\/figure>\n<p>Le Tableau 1 montre les \u00e9chantillons d'images DNG que nous avons d\u00e9couverts.<\/p>\n<table style=\"width: 100%; height: 225px;\">\n<tbody>\n<tr style=\"height: 24px;\">\n<td style=\"text-align: center; width: 36.754%; height: 24px;\"><b>Hash SHA256<\/b><\/td>\n<td style=\"text-align: center; width: 38.0996%; height: 24px;\"><b>Nom de fichier<\/b><\/td>\n<td style=\"text-align: center; width: 25.0227%; height: 24px;\"><b>Premi\u00e8re apparition<\/b><\/td>\n<\/tr>\n<tr style=\"height: 50px;\">\n<td style=\"width: 36.754%; height: 50px;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">9297888746158e38d320b05b27b0032b2cc29231be8990d87bc46f1e06456f93<\/span><\/td>\n<td style=\"width: 38.0996%; height: 50px;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">WhatsApp Image 2025-02-10 at 4.54.17 PM.jpeg<\/span><\/td>\n<td style=\"width: 25.0227%; height: 50px;\"><span style=\"font-weight: 400;\">Feb. 10, 2025<\/span><\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 36.754%; height: 25px;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">b06dec10e8ad0005ebb9da24204c96cb2e297bd8d418bc1c8983d066c0997756<\/span><\/td>\n<td style=\"width: 38.0996%; height: 25px;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">IMG-20250120-WA0005.jpg<\/span><\/td>\n<td style=\"width: 25.0227%; height: 25px;\"><span style=\"font-weight: 400;\">Jan. 20, 2025<\/span><\/td>\n<\/tr>\n<tr style=\"height: 50px;\">\n<td style=\"width: 36.754%; height: 50px;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">c0f30c2a2d6f95b57128e78dc0b7180e69315057e62809de1926b75f86516b2e<\/span><\/td>\n<td style=\"width: 38.0996%; height: 50px;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">WhatsApp Image 2024-08-27 at 11.48.40 AM.jpeg<\/span><\/td>\n<td style=\"width: 25.0227%; height: 50px;\"><span style=\"font-weight: 400;\">Aug. 27, 2024<\/span><\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 36.754%; height: 26px;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">b975b499baa3119ac5c2b3379306d4e50b9610e9bba3e56de7dfd3927a96032d<\/span><\/td>\n<td style=\"width: 38.0996%; height: 26px;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">PHOTO-2024-08-27-11-48-41.jpg<\/span><\/td>\n<td style=\"width: 25.0227%; height: 26px;\"><span style=\"font-weight: 400;\">Aug. 27, 2024<\/span><\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 36.754%; height: 25px;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">29882a3c426273a7302e852aa77662e168b6d44dcebfca53757e29a9cdf02483<\/span><\/td>\n<td style=\"width: 38.0996%; height: 25px;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">IMG-20240723-WA0001.jpg<\/span><\/td>\n<td style=\"width: 25.0227%; height: 25px;\"><span style=\"font-weight: 400;\">July 23, 2024<\/span><\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 36.754%; height: 25px;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">b45817ffb0355badcc89f2d7d48eecf00ebdf2b966ac986514f9d971f6c57d18<\/span><\/td>\n<td style=\"width: 38.0996%; height: 25px;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">IMG-20240723-WA0000.jpg<\/span><\/td>\n<td style=\"width: 25.0227%; height: 25px;\"><span style=\"font-weight: 400;\">July 23, 2024<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-size: 10pt;\">Tableau 1. Fichiers DNG avec logiciel malveillant int\u00e9gr\u00e9.<\/span><\/p>\n<p>Des noms de fichiers contenant des cha\u00eenes comme <span style=\"font-family: 'courier new', courier, monospace;\">WhatsApp Image<\/span> et <span style=\"font-family: 'courier new', courier, monospace;\">WA000<\/span> impliquent que les attaquants pourraient avoir tent\u00e9 de livrer le logiciel espion Android int\u00e9gr\u00e9 via WhatsApp. Cela correspond aux<a href=\"https:\/\/thehackernews.com\/2025\/08\/whatsapp-issues-emergency-update-for.html\" target=\"_blank\" rel=\"noopener\"> rapports publics ant\u00e9rieurs<\/a> d'exploitation similaire bas\u00e9e sur des images DNG via WhatsApp ciblant les appareils Apple. De plus, les chercheurs de WhatsApp ont identifi\u00e9 et signal\u00e9 une vuln\u00e9rabilit\u00e9 DNG similaire,<a href=\"https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2025-21043\" target=\"_blank\" rel=\"noopener\"> CVE-2025-21043<\/a>,<a href=\"https:\/\/security.samsungmobile.com\/securityUpdate.smsb\" target=\"_blank\" rel=\"noopener\"> \u00e0 Samsung<\/a>.<\/p>\n<h3>Distribution du spyware LANDFALL : Cha\u00eenes d'exploitation des malwares sur appareils mobiles<\/h3>\n<p>Typiquement, les malwares sur appareils mobiles distribu\u00e9s via des exploits n\u00e9cessitent une cha\u00eene d'exploits exploitant diff\u00e9rentes vuln\u00e9rabilit\u00e9s pour r\u00e9ussir l'infection. Diverses \u00e9tudes ont document\u00e9 des cas <a href=\"https:\/\/blog.google\/threat-analysis-group\/spyware-vendors-use-0-days-and-n-days-against-popular-platforms\/\" target=\"_blank\" rel=\"noopener\">impliquant au moins deux vuln\u00e9rabilit\u00e9s<\/a> lors de la distribution de logiciels espions, mais les cha\u00eenes d'exploitation modernes d\u00e9di\u00e9es aux spywares <a href=\"https:\/\/storage.googleapis.com\/gweb-uniblog-publish-prod\/documents\/Buying_Spying_-_Insights_into_Commercial_Surveillance_Vendors_-_TAG_report.pdf#page=22\" target=\"_blank\" rel=\"noopener\">sont bien plus complexes<\/a>, encha\u00eenant de multiples vuln\u00e9rabilit\u00e9s pour compromettre les appareils mobiles et obtenir des privil\u00e8ges.<\/p>\n<p>Nous n'avons pas encore d\u00e9couvert d'autres exploits associ\u00e9s \u00e0 cette activit\u00e9.<\/p>\n<p>Veuillez consulter la section ult\u00e9rieure, \u00ab Comment LANDFALL s'int\u00e8gre dans un contexte plus large \u00bb, pour une description plus compl\u00e8te des vuln\u00e9rabilit\u00e9s connues impliqu\u00e9es dans cette cha\u00eene d'exploitation et dans des cha\u00eenes similaires.<\/p>\n<h2><a id=\"post-164629-_d4bk8frk83oh\"><\/a>Analyse du logiciel espion LANDFALL<\/h2>\n<p>LANDFALL est un logiciel espion Android sp\u00e9cifiquement con\u00e7u pour les appareils Samsung Galaxy, probablement utilis\u00e9 dans des activit\u00e9s d'intrusion cibl\u00e9es au Moyen-Orient. Ce logiciel espion modulaire est con\u00e7u pour l'espionnage et l'exfiltration de donn\u00e9es.<\/p>\n<p>La cha\u00eene d'infection de LANDFALL implique un exploit pour la CVE-2025-21042, une vuln\u00e9rabilit\u00e9 dans la biblioth\u00e8que de traitement d'images de Samsung suivie par le vendeur sous le d\u00e9signateur SVE (Samsung Vulnerabilities and Exposures) SVE-2024-1969. Nous pensons qu'une cha\u00eene d'attaque compl\u00e8te suivrait un sch\u00e9ma potentiel d'ex\u00e9cution de code \u00e0 distance \"zero-click\", commen\u00e7ant par la livraison des images DNG malform\u00e9es.<\/p>\n<p>Deux composants du logiciel espion LANDFALL sont int\u00e9gr\u00e9s dans les images DNG malform\u00e9es et seraient extraits et ex\u00e9cut\u00e9s, apr\u00e8s un exploit r\u00e9ussi :<\/p>\n<ul>\n<li>Chargeur (Loader - <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span>) : Un objet partag\u00e9 ELF ARM64 (106 Ko, \"stripped\" et li\u00e9 dynamiquement) qui sert de backdoor principale.<\/li>\n<li>Manipulateur de politique SELinux (<span style=\"font-family: 'courier new', courier, monospace;\">l.so<\/span>) : Extrait d'un binaire ELF compress\u00e9 XZ, ce composant est con\u00e7u pour manipuler la politique SELinux de l'appareil afin d'accorder \u00e0 LANDFALL des permissions \u00e9lev\u00e9es et de faciliter la persistance. (Annexe A - Manipulation de la politique SELinux)<\/li>\n<\/ul>\n<p>Le Tableau 2 montre les fichiers des composants LANDFALL int\u00e9gr\u00e9s dans les \u00e9chantillons DNG malveillants.<\/p>\n<table style=\"width: 100%;\">\n<tbody>\n<tr>\n<td style=\"width: 58.5091%;\"><b>Hash SHA256<\/b><\/td>\n<td style=\"width: 28.9126%;\"><b>Composant LANDFALL<\/b><\/td>\n<td style=\"width: 11.4685%;\"><b>Premi\u00e8re apparition<\/b><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 58.5091%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">ffeeb0356abb56c5084756a5ab0a39002832403bca5290bb6d794d14b642ffe2<\/span><\/td>\n<td style=\"width: 28.9126%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">b.so<\/span><span style=\"font-weight: 400;\"> component<\/span><\/td>\n<td style=\"width: 11.4685%;\"><span style=\"font-weight: 400;\">July 23, 2024<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 58.5091%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">d2fafc7100f33a11089e98b660a85bd479eab761b137cca83b1f6d19629dd3b0<\/span><\/td>\n<td style=\"width: 28.9126%;\"><span style=\"font-weight: 400;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">b.so<\/span><\/span><span style=\"font-weight: 400;\">\u00a0component<\/span><\/td>\n<td style=\"width: 11.4685%;\"><span style=\"font-weight: 400;\">Aug. 27, 2024<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 58.5091%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">a62a2400bf93ed84ebadf22b441924f904d3fcda7d1507ba309a4b1801d44495<\/span><\/td>\n<td style=\"width: 28.9126%;\"><span style=\"font-weight: 400;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">b.so<\/span><\/span><span style=\"font-weight: 400;\">\u00a0component<\/span><\/td>\n<td style=\"width: 11.4685%;\"><span style=\"font-weight: 400;\">Jan. 23, 2025<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 58.5091%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">384f073d3d51e0f2e1586b6050af62de886ff448735d963dfc026580096d81bd<\/span><\/td>\n<td style=\"width: 28.9126%;\"><span style=\"font-weight: 400;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">b.so<\/span><\/span><span style=\"font-weight: 400;\">\u00a0component<\/span><\/td>\n<td style=\"width: 11.4685%;\"><span style=\"font-weight: 400;\">Feb. 10, 2025<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 58.5091%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">211311468f3673f005031d5f77d4d716e80cbf3c1f0bb1f148f2200920513261<\/span><\/td>\n<td style=\"width: 28.9126%;\"><span style=\"font-weight: 400;\">XZ compressed file (<\/span><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">l<\/span><span style=\"font-weight: 400;\">) for the SELinux policy manipulator<\/span><\/td>\n<td style=\"width: 11.4685%;\"><span style=\"font-weight: 400;\">July 23, 2024<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 58.5091%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">69cf56ac6f3888efa7a1306977f431fd1edb369a5fd4591ce37b72b7e01955ee<\/span><\/td>\n<td style=\"width: 28.9126%;\"><span style=\"font-weight: 400;\">SELinux policy manipulator (<\/span><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">l.so<\/span><span style=\"font-weight: 400;\">) extracted from XZ compressed file<\/span><\/td>\n<td style=\"width: 11.4685%;\"><span style=\"font-weight: 400;\">July 23, 2024<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-size: 10pt;\">Tableau 2. Composants LANDFALL int\u00e9gr\u00e9s dans les fichiers image DNG.<\/span><\/p>\n<p>Notre analyse indique que LANDFALL est un logiciel espion Android multi-composants con\u00e7u pour la surveillance et l'exfiltration de donn\u00e9es.<\/p>\n<p>Notre analyse se concentre sur le composant <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span>, qui sert de chargeur initial pour un framework LANDFALL plus large. Dans ses propres artefacts de d\u00e9bogage, le composant se d\u00e9signe lui-m\u00eame sous le nom de \"Bridge Head\". Cela sera int\u00e9ressant plus tard lorsque nous discuterons des relations possibles entre LANDFALL et des groupes de logiciels espions connus.<\/p>\n<h3><a id=\"post-164629-_ik7kl9i8fhqf\"><\/a>Capacit\u00e9s potentielles de LANDFALL<\/h3>\n<p>Le composant <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span> de LANDFALL contient de nombreuses cha\u00eenes de d\u00e9bogage et de statut, mais il ne contient pas la logique qui r\u00e9f\u00e9rence r\u00e9ellement la plupart de ces cha\u00eenes. Cela sugg\u00e8re que <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span> t\u00e9l\u00e9chargerait des composants suppl\u00e9mentaires pour ces capacit\u00e9s. Notre analyse des cha\u00eenes de commande int\u00e9gr\u00e9es et des chemins d'ex\u00e9cution dans le fichier <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span> donne un aper\u00e7u des capacit\u00e9s potentielles plus larges de LANDFALL.<\/p>\n<h4><a id=\"post-164629-_lh9ycwf1xf39\"><\/a><strong>Prise<\/strong> d'empreinte<strong> de l'appareil (Fingerprinting)<\/strong><\/h4>\n<ul>\n<li>Version de l'OS<\/li>\n<li>ID mat\u00e9riel (IMEI)<\/li>\n<li>ID SIM\/Abonn\u00e9 (IMSI)<\/li>\n<li>Num\u00e9ro de s\u00e9rie de la carte SIM<\/li>\n<li>Compte utilisateur<\/li>\n<li>Num\u00e9ro de messagerie vocale<\/li>\n<li>Configuration r\u00e9seau<\/li>\n<li>Inventaire des applications install\u00e9es<\/li>\n<li>Acc\u00e8s aux services de localisation<\/li>\n<li>Statut du VPN<\/li>\n<li>Statut du d\u00e9bogage USB<\/li>\n<li>Bluetooth<\/li>\n<\/ul>\n<h4><a id=\"post-164629-_ikchpsvcf65l\"><\/a><strong>Exfiltration de donn\u00e9es<\/strong><\/h4>\n<ul>\n<li>Enregistrement du microphone<\/li>\n<li>Enregistrement des appels<\/li>\n<li>Historique des appels<\/li>\n<li>Base de donn\u00e9es des contacts<\/li>\n<li>Donn\u00e9es SMS\/messagerie<\/li>\n<li>Photos de l'appareil photo<\/li>\n<li>Fichiers arbitraires<\/li>\n<li>Bases de donn\u00e9es sur l'appareil (historique de navigation, etc.)<\/li>\n<\/ul>\n<h4><a id=\"post-164629-_y1o5mzhgpxtc\"><\/a><strong>Ex\u00e9cution,<\/strong> chargement<strong> et persistance<\/strong><\/h4>\n<ul>\n<li>Chargement de modules d'objets partag\u00e9s natifs (<span style=\"font-family: 'courier new', courier, monospace;\">.so<\/span>)<\/li>\n<li>Chargement et ex\u00e9cution de fichiers DEX depuis la m\u00e9moire et le disque<\/li>\n<li>Injection de processus<\/li>\n<li>Ex\u00e9cution via <span style=\"font-family: 'courier new', courier, monospace;\">LD_PRELOAD<\/span><\/li>\n<li>Ex\u00e9cution de commandes arbitraires<\/li>\n<li>Manipulation de SELinux<\/li>\n<li>Persistance<\/li>\n<li>Modification de la politique SELinux via un binaire compress\u00e9<\/li>\n<li>Surveillance du r\u00e9pertoire WhatsApp Media pour des charges utiles suppl\u00e9mentaires<\/li>\n<li>Enregistrement du client web WhatsApp<\/li>\n<li>Manipulation du syst\u00e8me de fichiers dans les r\u00e9pertoires d'applications Android<\/li>\n<li>Manipulation du syst\u00e8me de fichiers<\/li>\n<\/ul>\n<h4><a id=\"post-164629-_somq79mcnqhx\"><\/a><strong>\u00c9vasion et<\/strong> contournement<strong> des d\u00e9fenses<\/strong><\/h4>\n<ul>\n<li>D\u00e9tection du d\u00e9bogueur TracerPid<\/li>\n<li>D\u00e9tection du framework d'instrumentation Frida<\/li>\n<li>D\u00e9tection du framework Xposed<\/li>\n<li>Chargement dynamique de biblioth\u00e8que avec manipulation de l'espace de noms (namespace)<\/li>\n<li>\u00c9pinglage de certificat (Certificate pinning) pour les communications C2<\/li>\n<li>Nettoyage de la charge utile des images WhatsApp<\/li>\n<\/ul>\n<h4><a id=\"post-164629-_yipwx09u3uir\"><\/a><strong>Mod\u00e8les d'appareils<\/strong> cibl\u00e9s<\/h4>\n<ul>\n<li>Galaxy S23 Series (S91[168]BXX.*)<\/li>\n<li>Galaxy S24 Series (S921BXXU1AWM9, S92[168]BXX.*)<\/li>\n<li>Galaxy Z Fold4 (F936BXXS4DWJ1)<\/li>\n<li>Galaxy S22 (S901EXXS4CWD1)<\/li>\n<li>Galaxy Z Flip4 (F721BXXU1CWAC)<\/li>\n<\/ul>\n<p>La Figure 3 montre un exemple des cha\u00eenes de mod\u00e8les d'appareils cibl\u00e9s dans un \u00e9chantillon <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span> de LANDFALL.<\/p>\n<figure id=\"attachment_164652\" aria-describedby=\"caption-attachment-164652\" style=\"width: 800px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-164652 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-17237-164629-3.png\" alt=\"Capture d'\u00e9cran d'un logiciel d'\u00e9dition hexad\u00e9cimale affichant des valeurs hexad\u00e9cimales et les caract\u00e8res ASCII correspondants. Une s\u00e9lection est surlign\u00e9e dans un cadre rouge.\" width=\"800\" height=\"319\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-17237-164629-3.png 1534w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-17237-164629-3-786x314.png 786w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-17237-164629-3-768x306.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption id=\"caption-attachment-164652\" class=\"wp-caption-text\">Figure 3. \u00c9chantillon <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span> de LANDFALL dans un \u00e9diteur hexad\u00e9cimal montrant les num\u00e9ros de mod\u00e8les d'appareils cibl\u00e9s.<\/figcaption><\/figure>\n<h3><a id=\"post-164629-_coqxbymywz92\"><\/a>Communication<strong> C2<\/strong><\/h3>\n<p>Le composant <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span> de LANDFALL communique avec son serveur C2 (Commande et Contr\u00f4le) en HTTPS en utilisant un port TCP \u00e9ph\u00e9m\u00e8re non standard. Avant le trafic HTTPS, il peut initier un trafic de \"ping\" comme d\u00e9taill\u00e9 dans la section Communication avec le serveur C2 de l'Annexe B. Pour le trafic HTTPS, <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span> initie le contact avec une requ\u00eate POST contenant des informations d\u00e9taill\u00e9es sur l'appareil et le logiciel espion, telles que :<\/p>\n<ul>\n<li>ID de l'agent<\/li>\n<li>Chemin de l'appareil<\/li>\n<li>ID utilisateur<\/li>\n<\/ul>\n<p>La Figure 4 montre une interpr\u00e9tation de cette requ\u00eate POST initiale, o\u00f9 nous utilisons <span style=\"font-family: 'courier new', courier, monospace;\">curl<\/span> pour montrer comment cette requ\u00eate serait structur\u00e9e. Il est \u00e0 noter que LANDFALL n'utilise pas <span style=\"font-family: 'courier new', courier, monospace;\">curl<\/span> pour g\u00e9n\u00e9rer ce trafic.<\/p>\n<figure id=\"attachment_164663\" aria-describedby=\"caption-attachment-164663\" style=\"width: 800px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-164663 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-19704-164629-4.png\" alt=\"Capture d'\u00e9cran d'une fen\u00eatre de terminal affichant une commande curl, utilis\u00e9e pour acc\u00e9der \u00e0 une API, avec divers en-t\u00eates (headers) sp\u00e9cifi\u00e9s, tels que user-agent et content-type.\" width=\"800\" height=\"244\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-19704-164629-4.png 1788w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-19704-164629-4-786x240.png 786w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-19704-164629-4-768x235.png 768w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-19704-164629-4-1536x469.png 1536w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption id=\"caption-attachment-164663\" class=\"wp-caption-text\">Figure 4. Structure de la requ\u00eate HTTP POST lorsque b.so contacte initialement le serveur C2.<\/figcaption><\/figure>\n<p>Le trafic de balise (beacon) initial est une requ\u00eate HTTP POST vers le serveur C2 avec les param\u00e8tres suivants :<\/p>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">protocol<\/span> : La version du protocole (par ex., <span style=\"font-family: 'courier new', courier, monospace;\">A1.5.0<\/span>)<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">protocol_ver<\/span> : La version du protocole (par ex., \"\")<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">type<\/span> : Le type de message (par ex., <span style=\"font-family: 'courier new', courier, monospace;\">MSG_TYPE_GET_AGENT<\/span>)<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">agent_id<\/span> : L'identifiant unique de l'agent<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">upload_id<\/span> : Un identifiant de t\u00e9l\u00e9versement<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">command_id<\/span> : Un identifiant de commande<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">source<\/span> : La source de la requ\u00eate (par ex., <span style=\"font-family: 'courier new', courier, monospace;\">bridge_head<\/span>)<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">incremental_build<\/span> : La version de build incr\u00e9mentale (par ex., <span style=\"font-family: 'courier new', courier, monospace;\">v1.5.0<\/span>)<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">euid<\/span> : L'ID utilisateur effectif (effective user ID) du processus<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">bh_path<\/span> : Le chemin vers le binaire <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span> sur l'appareil<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">runner<\/span> : Le mode d'ex\u00e9cution (runner) (par ex., <span style=\"font-family: 'courier new', courier, monospace;\">I<\/span>)<\/li>\n<\/ul>\n<h3><a id=\"post-164629-_tjdfx2s4k7dr\"><\/a>Configuration<strong> du fichier b.so<\/strong><\/h3>\n<p>La configuration du fichier <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span> est g\u00e9r\u00e9e par une combinaison de valeurs par d\u00e9faut cod\u00e9es en dur et d'un objet JSON chiffr\u00e9 int\u00e9gr\u00e9 en lui-m\u00eame. Cette configuration inclut les d\u00e9tails C2, les cl\u00e9s cryptographiques et les identifiants uniques pour l'agent et les commandes.<\/p>\n<p>La Figure 5 montre un exemple de cette configuration.<\/p>\n<figure id=\"attachment_164674\" aria-describedby=\"caption-attachment-164674\" style=\"width: 800px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-164674 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-22299-164629-5.png\" alt=\"Capture d'\u00e9cran d'un extrait de code (code snippet) montrant diverses cl\u00e9s et valeurs, y compris des adresses IP, des identifiants (IDs) et des chemins d'acc\u00e8s, mentionnant des sp\u00e9cificit\u00e9s li\u00e9es aux appareils Samsung.\" width=\"800\" height=\"353\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-22299-164629-5.png 1718w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-22299-164629-5-786x347.png 786w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-22299-164629-5-1587x700.png 1587w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-22299-164629-5-768x339.png 768w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/word-image-22299-164629-5-1536x678.png 1536w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption id=\"caption-attachment-164674\" class=\"wp-caption-text\">Figure 5. Exemple de la configuration de LANDFALL.<\/figcaption><\/figure>\n<p>Ce composant <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span> de LANDFALL contient \u00e9galement un certain nombre de valeurs de configuration cod\u00e9es en dur. Celles-ci sont utilis\u00e9es comme valeurs par d\u00e9faut si elles ne sont pas fournies dans l'objet JSON chiffr\u00e9. Nous ne comprenons pas encore pleinement le but de certaines de ces valeurs. Le Tableau 3 montre ces valeurs de configuration par d\u00e9faut cod\u00e9es en dur.<\/p>\n<table style=\"width: 90.7659%;\">\n<thead>\n<tr>\n<th style=\"text-align: center; width: 66.1458%;\"><b>Nom du champ<\/b><\/th>\n<th style=\"text-align: center; width: 229.427%;\"><b>Valeur par d\u00e9faut<\/b><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"width: 66.1458%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">allow_wifi<\/span><\/td>\n<td style=\"width: 229.427%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">true<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 66.1458%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">allow_mobile<\/span><\/td>\n<td style=\"width: 229.427%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">true<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 66.1458%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">allow_roaming<\/span><\/td>\n<td style=\"width: 229.427%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">false<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 66.1458%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">socket_timeout<\/span><\/td>\n<td style=\"width: 229.427%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">5<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 66.1458%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">sleep_time<\/span><\/td>\n<td style=\"width: 229.427%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">60 (0x3c)<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 66.1458%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">sleep_time_between_retries<\/span><\/td>\n<td style=\"width: 229.427%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">35 (0x23)<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 66.1458%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">suicide_time<\/span><\/td>\n<td style=\"width: 229.427%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">7200 (0x1c20)<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 66.1458%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">live_mode_expiration<\/span><\/td>\n<td style=\"width: 229.427%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">0<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 66.1458%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">allow_min_battery<\/span><\/td>\n<td style=\"width: 229.427%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">0<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 66.1458%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">is_persistent<\/span><\/td>\n<td style=\"width: 229.427%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">false<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-size: 10pt;\">Tableau 3. Valeurs de configuration par d\u00e9faut cod\u00e9es en dur pour le logiciel malveillant LANDFALL.<\/span><\/p>\n<h2><a id=\"post-164629-_wxi67qy7y9k9\"><\/a><strong>Infrastructure C2 du logiciel<\/strong> espion<strong> LANDFALL<\/strong><\/h2>\n<p>Sur la base de notre analyse de ces \u00e9chantillons, nous avons identifi\u00e9 six serveurs C2 pour LANDFALL, pr\u00e9sent\u00e9s ci-dessous dans le Tableau 4.<\/p>\n<table style=\"width: 97.7547%;\">\n<tbody>\n<tr>\n<td style=\"text-align: center; width: 25%;\"><b>Adresse IP<\/b><\/td>\n<td style=\"text-align: center; width: 32.2828%;\"><b>Domaine<\/b><\/td>\n<td style=\"text-align: center; width: 24.3627%;\"><b>Premi\u00e8re apparition<\/b><\/td>\n<td style=\"text-align: center; width: 108.228%;\"><b>Derni\u00e8re apparition<\/b><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 25%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">194.76.224[.]127<\/span><\/td>\n<td style=\"width: 32.2828%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">brightvideodesigns[.]com<\/span><\/td>\n<td style=\"width: 24.3627%;\"><span style=\"font-weight: 400;\">Feb. 7, 2025<\/span><\/td>\n<td style=\"width: 108.228%;\"><span style=\"font-weight: 400;\">Sept. 19, 2025<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 25%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">91.132.92[.]35<\/span><\/td>\n<td style=\"width: 32.2828%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">hotelsitereview[.]com<\/span><\/td>\n<td style=\"width: 24.3627%;\"><span style=\"font-weight: 400;\">Feb. 3, 2025<\/span><\/td>\n<td style=\"width: 108.228%;\"><span style=\"font-weight: 400;\">Sept. 16, 2025<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 25%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">92.243.65[.]240<\/span><\/td>\n<td style=\"width: 32.2828%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">healthyeatingontherun[.]com<\/span><\/td>\n<td style=\"width: 24.3627%;\"><span style=\"font-weight: 400;\">Oct. 11, 2024<\/span><\/td>\n<td style=\"width: 108.228%;\"><span style=\"font-weight: 400;\">Sept. 2, 2025<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 25%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">192.36.57[.]56<\/span><\/td>\n<td style=\"width: 32.2828%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">projectmanagerskills[.]com<\/span><\/td>\n<td style=\"width: 24.3627%;\"><span style=\"font-weight: 400;\">Feb. 3, 2025<\/span><\/td>\n<td style=\"width: 108.228%;\"><span style=\"font-weight: 400;\">Aug. 26, 2025<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 25%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">46.246.28[.]75<\/span><\/td>\n<td style=\"width: 32.2828%;\"><span style=\"font-weight: 400;\">Inconnu<\/span><\/td>\n<td style=\"width: 24.3627%;\"><span style=\"font-weight: 400;\">Inconnu<\/span><\/td>\n<td style=\"width: 108.228%;\"><span style=\"font-weight: 400;\">Inconnu<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 25%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">45.155.250[.]158<\/span><\/td>\n<td style=\"width: 32.2828%;\"><span style=\"font-weight: 400;\">Inconnu<\/span><\/td>\n<td style=\"width: 24.3627%;\"><span style=\"font-weight: 400;\">Inconnu<\/span><\/td>\n<td style=\"width: 108.228%;\"><span style=\"font-weight: 400;\">Inconnu<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Tableau 4. Serveurs C2 de LANDFALL.<\/p>\n<h2><a id=\"post-164629-_uoqxjvlyrl0j\"><\/a><strong>Comment LANDFALL<\/strong> s'inscrit<strong> dans le tableau d'ensemble des menaces<\/strong><\/h2>\n<p>LANDFALL est un exemple d'un sch\u00e9ma plus large de cha\u00eenes d'exploitation affectant les appareils mobiles, li\u00e9 aux vuln\u00e9rabilit\u00e9s de traitement d'images DNG.<\/p>\n<p>L'utilisation par la campagne LANDFALL d'un fichier DNG malform\u00e9 met en \u00e9vidence un vecteur d'attaque significatif et r\u00e9current : le ciblage des vuln\u00e9rabilit\u00e9s au sein des biblioth\u00e8ques de traitement d'images DNG. La faille sp\u00e9cifique exploit\u00e9e par LANDFALL, CVE-2025-21042, n'est pas un cas isol\u00e9 mais s'inscrit plut\u00f4t dans un sch\u00e9ma plus large de probl\u00e8mes similaires constat\u00e9s sur de multiples plateformes mobiles. En fait, plus t\u00f4t en 2025, Samsung a identifi\u00e9 une autre faille DNG dans la m\u00eame biblioth\u00e8que Samsung, CVE-2025-21043, et la cha\u00eene d'exploitation parall\u00e8le sur iOS a \u00e9t\u00e9 identifi\u00e9e, exploitant la CVE-2025-43300 dans Apple iOS et la CVE-2025-55177 dans WhatsApp.<\/p>\n<h3><a id=\"post-164629-_yhdqmv31likn\"><\/a><strong>Relation avec la<\/strong> CVE-2025-21043<strong> (SVE-2025-1702)<\/strong><\/h3>\n<p>Notre analyse a r\u00e9v\u00e9l\u00e9 un lien possible avec une vuln\u00e9rabilit\u00e9 distincte dans la m\u00eame biblioth\u00e8que, la <a href=\"https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2025-21043\" target=\"_blank\" rel=\"noopener\">CVE-2025-21043<\/a> (SVE-2025-1702), que Samsung a corrig\u00e9e dans sa mise \u00e0 jour de s\u00e9curit\u00e9 de septembre 2025. Bien qu'elle n'ait pas \u00e9t\u00e9 exploit\u00e9e dans les \u00e9chantillons LANDFALL que nous avons d\u00e9couverts, les similitudes entre l'exploit pour LANDFALL (CVE-2025-21042) et cette vuln\u00e9rabilit\u00e9 (CVE-2025-21043) sont frappantes. Les deux vuln\u00e9rabilit\u00e9s ont \u00e9t\u00e9 divulgu\u00e9es publiquement \u00e0 peu pr\u00e8s au m\u00eame moment et sont toutes deux li\u00e9es au traitement de fichiers image DNG livr\u00e9s via des applications de communication mobile.<\/p>\n<h3><a id=\"post-164629-_hu0czlcbvdh5\"><\/a>CVE-2025-43300<strong> d'Apple<\/strong><\/h3>\n<p>En ao\u00fbt 2025, Apple a corrig\u00e9 la CVE-2025-43300, une vuln\u00e9rabilit\u00e9 zero-day impactant l'analyse des images DNG, qui \u00e9tait activement exploit\u00e9e \"in the wild\", pour permettre une ex\u00e9cution de code \u00e0 distance \"zero-click\" par le biais d'images malveillantes envoy\u00e9es via des applications de communication mobile.<\/p>\n<p>Nous ne pouvons pas confirmer si cette cha\u00eene a \u00e9t\u00e9 utilis\u00e9e pour livrer un \u00e9quivalent de LANDFALL sur iOS, ou s'il s'agit du m\u00eame agent de menace derri\u00e8re les deux. Cependant, ce d\u00e9veloppement parall\u00e8le dans l'\u00e9cosyst\u00e8me iOS, combin\u00e9 \u00e0 la divulgation des vuln\u00e9rabilit\u00e9s Samsung et Apple \u00e0 quelques semaines d'intervalle seulement, met en \u00e9vidence un sch\u00e9ma plus large de vuln\u00e9rabilit\u00e9s de traitement d'images DNG exploit\u00e9es dans des attaques de logiciels espions mobiles sophistiqu\u00e9es.<\/p>\n<figure id=\"attachment_164711\" aria-describedby=\"caption-attachment-164711\" style=\"width: 1000px\" class=\"wp-caption alignnone\"><img  class=\"wp-image-164711 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/FR-6-Samsung-440x440.png\" alt=\"Graphique chronologique (Timeline) montrant les \u00e9v\u00e9nements majeurs de cybers\u00e9curit\u00e9 de 2024 \u00e0 2025 impliquant des entit\u00e9s telles que VirusTotal, Samsung, Apple et WhatsApp. Les \u00e9v\u00e9nements cl\u00e9s incluent la d\u00e9couverte d'un fichier DNG malveillant sur VirusTotal en juillet 2024, ainsi que diverses mises \u00e0 jour et correctifs (patches) publi\u00e9s par Samsung et Apple en r\u00e9ponse \u00e0 diff\u00e9rentes vuln\u00e9rabilit\u00e9s. La chronologie va de juillet 2024 \u00e0 septembre 2025.\" width=\"1000\" height=\"1000\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/FR-6-Samsung-440x440.png 440w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/FR-6-Samsung-700x700.png 700w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/FR-6-Samsung-300x300.png 300w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/FR-6-Samsung-768x768.png 768w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/FR-6-Samsung.png 1122w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><figcaption id=\"caption-attachment-164711\" class=\"wp-caption-text\">Figure 6. Chronologie des fichiers image DNG malveillants r\u00e9cents et de l'activit\u00e9 d'exploitation associ\u00e9e.<\/figcaption><\/figure>\n<ul>\n<li>Juillet 2024 \u2013 F\u00e9vrier 2025 : Les premiers \u00e9chantillons de fichiers image DNG malveillants porteurs de LANDFALL sont soumis pour la premi\u00e8re fois sur VirusTotal en juillet 2024, avec des \u00e9chantillons suppl\u00e9mentaires apparaissant p\u00e9riodiquement au cours des mois suivants.\n<ul>\n<li>Les fichiers DNG exploitent une vuln\u00e9rabilit\u00e9 dans la biblioth\u00e8que de traitement d'images Android de Samsung (SVE-2024-1969, CVE-2025-21042)<\/li>\n<\/ul>\n<\/li>\n<li>25 sept. 2024 : La vuln\u00e9rabilit\u00e9 qui deviendra la CVE-2025-21042 est<a href=\"https:\/\/security.samsungmobile.com\/securityUpdate.smsb\" target=\"_blank\" rel=\"noopener\"> signal\u00e9e en priv\u00e9 \u00e0 Samsung<\/a>.<\/li>\n<li>Avril 2025 : Samsung<a href=\"https:\/\/security.samsungmobile.com\/securityUpdate.smsb?year=2025\" target=\"_blank\" rel=\"noopener\"> publie une mise \u00e0 jour du firmware<\/a> pour corriger la vuln\u00e9rabilit\u00e9, SVE-2024-1969, connue plus tard sous le nom de CVE-2025-21042 lors de sa divulgation publique.<\/li>\n<li>Ao\u00fbt 2025 : Des d\u00e9veloppements parall\u00e8les surviennent.\n<ul>\n<li>Apple corrige une vuln\u00e9rabilit\u00e9 zero-day impactant l'analyse des images DNG, qui \u00e9tait activement exploit\u00e9e dans un exploit \"in the wild\" (CVE-2025-43300) et encha\u00een\u00e9e avec la vuln\u00e9rabilit\u00e9 WhatsApp (CVE-2025-5177)<\/li>\n<li>WhatsApp divulgue une vuln\u00e9rabilit\u00e9 (CVE-2025-55177) qui a \u00e9t\u00e9 encha\u00een\u00e9e avec la vuln\u00e9rabilit\u00e9 zero-day d'analyse d'images DNG d'Apple (CVE-2025-43300).<\/li>\n<li>Nous avons d\u00e9couvert des fichiers image DNG exploitant la CVE-2025-21042 pour livrer un logiciel espion Android que nous avons identifi\u00e9 comme \u00e9tant LANDFALL.<\/li>\n<li>Samsung publie la<a href=\"https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2025-21043\" target=\"_blank\" rel=\"noopener\"> CVE-2025-21043<\/a> \u2014 une autre vuln\u00e9rabilit\u00e9 zero-day li\u00e9e au DNG.<\/li>\n<\/ul>\n<\/li>\n<li>Septembre 2025 : Samsung publie des mises \u00e0 jour du firmware des appareils mobiles pour la CVE-2025-21043 (SVE-2025-1702). Simultan\u00e9ment, il attribue la CVE-2025-21042 (SVE-20254-1969) \u00e0 la vuln\u00e9rabilit\u00e9 ant\u00e9rieure qui n'avait pas de d\u00e9signateur CVE.<\/li>\n<\/ul>\n<h2><a id=\"post-164629-_nnhm64fnvy8c\"><\/a><strong>Victimes<\/strong> potentielles<\/h2>\n<p>L'analyse des donn\u00e9es de soumission VirusTotal pour les fichiers DNG malveillants indique des cibles potentielles en Irak, Iran, Turquie et Maroc.<\/p>\n<p>Le CERT national de Turquie (en turc, USOM) a signal\u00e9<a href=\"https:\/\/www.usom.gov.tr\/adres\/946134\" target=\"_blank\" rel=\"noopener\"> les adresses IP utilis\u00e9es par les serveurs C2 de LANDFALL<\/a> comme \u00e9tant malveillantes, li\u00e9es aux mobiles et aux APT, ce qui soutient \u00e9galement le ciblage possible de victimes en Turquie.<\/p>\n<h2><a id=\"post-164629-_3v88ktpm2nk9\"><\/a><strong>Relation avec<\/strong> des<strong> groupes de logiciels espions connus<\/strong><\/h2>\n<p>Bien que nous n'ayons pas pu r\u00e9cup\u00e9rer chaque composant du framework LANDFALL, il est clair que l'outil est de qualit\u00e9 commerciale. Il pourrait avoir utilis\u00e9 plusieurs exploits zero-day dans sa cha\u00eene d'infection.<\/p>\n<p>De tels outils sont souvent d\u00e9velopp\u00e9s et vendus comme des logiciels espions commerciaux et attribu\u00e9s \u00e0 des groupes connus sous le nom d'acteurs offensifs du secteur priv\u00e9 (PSOA - private sector offensive actors), qui sont souvent des entit\u00e9s juridiques l\u00e9gitimes. Selon les rapports, ces groupes fournissent des services \u00e0 des entit\u00e9s gouvernementales.<\/p>\n<p>Nous n'avons pas \u00e9t\u00e9 en mesure \u00e0 ce stade d'<a href=\"https:\/\/unit42.paloaltonetworks.com\/fr\/unit-42-attribution-framework\/\" target=\"_blank\" rel=\"noopener\">attribuer officiellement<\/a> l'activit\u00e9 LANDFALL \u00e0 un PSOA ou \u00e0 un agent de menace connu. Unit 42 suit l'activit\u00e9 li\u00e9e \u00e0 la CVE-2025-21042 et \u00e0 LANDFALL sous le nom de CL-UNK-1054.<\/p>\n<p>Deux aspects sont notables et m\u00e9ritent d'\u00eatre soulign\u00e9s.<\/p>\n<p>Premi\u00e8rement, l'infrastructure C2 de LANDFALL et les sch\u00e9mas d'enregistrement de domaine partagent des similitudes avec l'infrastructure associ\u00e9e \u00e0<a href=\"https:\/\/attack.mitre.org\/groups\/G0038\/\" target=\"_blank\" rel=\"noopener\"> Stealth Falcon<\/a>, tel qu'observ\u00e9 par Unit 42. Ces similitudes sont bas\u00e9es sur divers<a href=\"https:\/\/www.welivesecurity.com\/en\/eset-research\/stealth-falcon-preying-middle-eastern-skies-deadglyph\/\" target=\"_blank\" rel=\"noopener\"> rapports<\/a><a href=\"https:\/\/research.checkpoint.com\/2025\/stealth-falcon-zero-day\/\" target=\"_blank\" rel=\"noopener\"> publics<\/a>, ainsi que sur l'activit\u00e9 de Stealth Falcon que nous avons analys\u00e9e pour des cibles au Moyen-Orient.<\/p>\n<p>Deuxi\u00e8mement, dans ses propres artefacts de d\u00e9bogage, le composant logiciel espion que nous avons analys\u00e9 se d\u00e9signe lui-m\u00eame sous le nom de \"Bridge Head\". Il est \u00e0 noter que le terme \"Bridge Head\" (t\u00eate de pont) est un surnom courant utilis\u00e9 par certaines entreprises de cyber-offensive du secteur priv\u00e9 (dont<a href=\"https:\/\/www.amnesty.org\/en\/latest\/research\/2021\/07\/forensic-methodology-report-how-to-catch-nso-groups-pegasus\/\" target=\"_blank\" rel=\"noopener\"> NSO<\/a>,<a href=\"https:\/\/storage.googleapis.com\/gweb-uniblog-publish-prod\/documents\/Buying_Spying_-_Insights_into_Commercial_Surveillance_Vendors_-_TAG_report.pdf\" target=\"_blank\" rel=\"noopener\"> Variston<\/a>, Cytrox et Quadream) pour les chargeurs de premi\u00e8re \u00e9tape (first-stage loaders). Cependant, cette convention de nommage ne constitue pas \u00e0 elle seule un lien d'attribution direct.<\/p>\n<p>Bien qu'il s'agisse d'un nom couramment utilis\u00e9 dans les logiciels espions mobiles commerciaux pour d\u00e9crire les chargeurs, il pr\u00e9sente des similitudes avec le framework Heliconica. Ce framework contient \u00e9galement des r\u00e9f\u00e9rences \u00e0 \"BridgeHead\", comme<a href=\"https:\/\/storage.googleapis.com\/gweb-uniblog-publish-prod\/documents\/Buying_Spying_-_Insights_into_Commercial_Surveillance_Vendors_-_TAG_report.pdf?\" target=\"_blank\" rel=\"noopener\"> l'a signal\u00e9 Google TAG<\/a> \u00e0 propos du vendeur de logiciels espions Variston.<a href=\"https:\/\/blog.google\/threat-analysis-group\/new-details-on-commercial-spyware-vendor-variston\/\" target=\"_blank\" rel=\"noopener\"> Google a identifi\u00e9<\/a> Variston comme un PSOA bas\u00e9 \u00e0 Barcelone (fournisseur d'exploits). D'autres analyses de Google et<a href=\"https:\/\/techcrunch.com\/2024\/02\/15\/variston-spyware-losing-staff-some-say-closing\/\" target=\"_blank\" rel=\"noopener\"> d'autres rapports<\/a> ont indiqu\u00e9 que les outils de Variston \u00e9taient fournis \u00e0 des clients aux EAU (\u00c9mirats Arabes Unis) par l'interm\u00e9diaire d'un revendeur nomm\u00e9 Protect Electronic Systems (ou Protected AE).<\/p>\n<p>Ce lien potentiel fournisseur-client avec les EAU est \u00e0 noter, car<a href=\"https:\/\/learn.microsoft.com\/en-us\/unified-secops\/microsoft-threat-actor-naming\" target=\"_blank\" rel=\"noopener\"> Microsoft<\/a> et<a href=\"https:\/\/apt.etda.or.th\/cgi-bin\/showcard.cgi?g=Stealth%20Falcon,%20FruityArmor\" target=\"_blank\" rel=\"noopener\"> d'autres<\/a> ont signal\u00e9 que Stealth Falcon op\u00e9rait \u00e9galement massivement depuis ce pays. Variston<a href=\"https:\/\/techcrunch.com\/2025\/02\/13\/barcelona-based-spyware-startup-variston-reportedly-shuts-down\/\" target=\"_blank\" rel=\"noopener\"> aurait cess\u00e9 ses activit\u00e9s<\/a> d\u00e9but 2025 suite \u00e0 son exposition publique.<\/p>\n<p>En octobre 2025, \u00e0 l'exception de l'infrastructure, nous n'avons pas observ\u00e9 de chevauchements directs entre les campagnes mobiles de LANDFALL et l'activit\u00e9 bas\u00e9e sur les terminaux (endpoint) de Stealth Falcon, ni de liens forts directs avec Stealth Falcon. Cependant, les similitudes m\u00e9ritent d'\u00eatre discut\u00e9es.<\/p>\n<h2><a id=\"post-164629-_ysvgqmn7q1w\"><\/a>\u200b\u200bConclusion<\/h2>\n<p>La d\u00e9couverte du logiciel espion LANDFALL r\u00e9v\u00e8le une campagne ciblant les appareils Android Samsung. La cha\u00eene d'exploitation implique la CVE-2025-21042, une vuln\u00e9rabilit\u00e9 qui a \u00e9t\u00e9 corrig\u00e9e par Samsung en avril 2025. La pr\u00e9sence de ce logiciel espion dans des fichiers image DNG avec des conventions de nommage li\u00e9es \u00e0 WhatsApp indique probablement que les attaquants ont tent\u00e9 de livrer l'exploit via une application de messagerie.<\/p>\n<p>Depuis l'apparition initiale des \u00e9chantillons en juillet 2024, cette activit\u00e9 met en \u00e9vidence comment des exploits sophistiqu\u00e9s peuvent rester dans des d\u00e9p\u00f4ts publics pendant une p\u00e9riode prolong\u00e9e avant d'\u00eatre pleinement compris.<\/p>\n<p>L'analyse du chargeur r\u00e9v\u00e8le des preuves d'une activit\u00e9 de qualit\u00e9 commerciale. Les composants du logiciel espion LANDFALL sugg\u00e8rent des capacit\u00e9s avanc\u00e9es de furtivit\u00e9, de persistance et de collecte de donn\u00e9es compl\u00e8te \u00e0 partir des appareils Samsung modernes.<\/p>\n<p>Cependant, nous n'avons pas directement analys\u00e9 les composants de l'\u00e9tape suivante (next-stage) du logiciel espion. Des d\u00e9tails suppl\u00e9mentaires \u00e0 ce sujet ou sur la m\u00e9thode de livraison exacte fourniraient encore plus d'informations sur l'activit\u00e9 malveillante.<\/p>\n<p>Les clients de Palo Alto Networks sont mieux prot\u00e9g\u00e9s contre le logiciel espion Android LANDFALL gr\u00e2ce aux produits suivants :<\/p>\n<ul>\n<li>Les mod\u00e8les d'apprentissage automatique (machine-learning) et les techniques d'analyse d'<a href=\"https:\/\/docs.paloaltonetworks.com\/wildfire\" target=\"_blank\" rel=\"noopener\">Advanced WildFire<\/a> ont \u00e9t\u00e9 examin\u00e9s et mis \u00e0 jour \u00e0 la lumi\u00e8re des indicateurs partag\u00e9s dans cette recherche.<\/li>\n<li><a href=\"https:\/\/docs.paloaltonetworks.com\/advanced-url-filtering\/administration\" target=\"_blank\" rel=\"noopener\">Advanced URL Filtering<\/a> et<a href=\"https:\/\/docs.paloaltonetworks.com\/dns-security\" target=\"_blank\" rel=\"noopener\"> Advanced DNS Security<\/a> identifient les domaines et URL connus associ\u00e9s \u00e0 cette activit\u00e9 comme malveillants.<\/li>\n<li><a href=\"https:\/\/docs.paloaltonetworks.com\/advanced-threat-prevention\/administration\" target=\"_blank\" rel=\"noopener\">Advanced Threat Prevention<\/a> dispose d'une d\u00e9tection int\u00e9gr\u00e9e bas\u00e9e sur l'apprentissage automatique qui peut d\u00e9tecter les exploits en temps r\u00e9el.<\/li>\n<\/ul>\n<p>Si vous pensez avoir \u00e9t\u00e9 compromis ou si vous avez une urgence, contactez l'<a href=\"https:\/\/start.paloaltonetworks.com\/contact-unit42.html\" target=\"_blank\" rel=\"noopener\">\u00e9quipe d'Intervention sur Incident de Unit 42<\/a> ou appelez :<\/p>\n<ul>\n<li>Am\u00e9rique du Nord : Num\u00e9ro gratuit : +1 (866) 486-4842 (866.4.UNIT42)<\/li>\n<li>Royaume-Uni : +44.20.3743.3660<\/li>\n<li>Europe et Moyen-Orient : +31.20.299.3130<\/li>\n<li>Asie : +65.6983.8730<\/li>\n<li>Japon : +81.50.1790.0200<\/li>\n<li>Australie : +61.2.4062.7950<\/li>\n<li>Inde : 000 800 050 45107<\/li>\n<\/ul>\n<p>Palo Alto Networks a partag\u00e9 ces d\u00e9couvertes avec les autres membres de la Cyber Threat Alliance (CTA). Les membres de la CTA utilisent ces renseignements pour d\u00e9ployer rapidement des protections \u00e0 leurs clients et pour perturber syst\u00e9matiquement les cyberacteurs malveillants. En savoir plus sur la<a href=\"https:\/\/www.cyberthreatalliance.org\" target=\"_blank\" rel=\"noopener\"> Cyber Threat Alliance<\/a>.<\/p>\n<h2><a id=\"post-164629-_9ff6tgn3yw38\"><\/a><strong>Indicateurs de<\/strong> Compromission<strong> (IoC)<\/strong><\/h2>\n<h3><a id=\"post-164629-_1zpietpgnbi1\"><\/a><strong>\u00c9chantillon<\/strong>s<strong> de logiciels malveillants<\/strong><\/h3>\n<p>Une liste d'\u00e9chantillons de logiciels malveillants pour l'activit\u00e9 LANDFALL est r\u00e9pertori\u00e9e ci-dessous dans le Tableau 7.<\/p>\n<table style=\"width: 100%;\">\n<thead>\n<tr>\n<th style=\"text-align: center; width: 59.6743%;\"><b>Hash SHA256<\/b><\/th>\n<th style=\"text-align: center; width: 25.3862%;\"><b>Nom de fichier<\/b><\/th>\n<th style=\"text-align: center; width: 13.9405%;\"><b>Taille<\/b><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"width: 59.6743%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">b06dec10e8ad0005ebb9da24204c96cb2e297bd8d418bc1c8983d066c0997756<\/span><\/td>\n<td style=\"width: 25.3862%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">img-20250120-wa0005.jpg<\/span><\/td>\n<td style=\"width: 13.9405%; text-align: center;\"><span style=\"font-weight: 400;\">6.66 MB<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 59.6743%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">c0f30c2a2d6f95b57128e78dc0b7180e69315057e62809de1926b75f86516b2e<\/span><\/td>\n<td style=\"width: 25.3862%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">2.tiff<\/span><\/td>\n<td style=\"width: 13.9405%; text-align: center;\"><span style=\"font-weight: 400;\">6.58 MB<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 59.6743%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">9297888746158e38d320b05b27b0032b2cc29231be8990d87bc46f1e06456f93<\/span><\/td>\n<td style=\"width: 25.3862%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">whatsapp image 2025-02-10 at 4.54.17 pm.jpeg<\/span><\/td>\n<td style=\"width: 13.9405%; text-align: center;\"><span style=\"font-weight: 400;\">6.66 MB<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 59.6743%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">d2fafc7100f33a11089e98b660a85bd479eab761b137cca83b1f6d19629dd3b0<\/span><\/td>\n<td style=\"width: 25.3862%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">b.so<\/span><\/td>\n<td style=\"width: 13.9405%; text-align: center;\"><span style=\"font-weight: 400;\">103.31 KB<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 59.6743%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">384f073d3d51e0f2e1586b6050af62de886ff448735d963dfc026580096d81bd<\/span><\/td>\n<td style=\"width: 25.3862%;\"><\/td>\n<td style=\"width: 13.9405%; text-align: center;\"><span style=\"font-weight: 400;\">103.31 KB<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 59.6743%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">b975b499baa3119ac5c2b3379306d4e50b9610e9bba3e56de7dfd3927a96032d<\/span><\/td>\n<td style=\"width: 25.3862%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">1.jpeg<\/span><\/td>\n<td style=\"width: 13.9405%; text-align: center;\"><span style=\"font-weight: 400;\">5.66 MB<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 59.6743%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">a62a2400bf93ed84ebadf22b441924f904d3fcda7d1507ba309a4b1801d44495<\/span><\/td>\n<td style=\"width: 25.3862%;\"><\/td>\n<td style=\"width: 13.9405%; text-align: center;\"><span style=\"font-weight: 400;\">103.31 KB<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 59.6743%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">29882a3c426273a7302e852aa77662e168b6d44dcebfca53757e29a9cdf02483<\/span><\/td>\n<td style=\"width: 25.3862%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">img-20240723-wa0001.jpg<\/span><\/td>\n<td style=\"width: 13.9405%; text-align: center;\"><span style=\"font-weight: 400;\">6.58 MB<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 59.6743%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">2425f15eb542fca82892fd107ac19d63d4d112ddbfe698650f0c25acf6f8d78a<\/span><\/td>\n<td style=\"width: 25.3862%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">6357fc.zip<\/span><\/td>\n<td style=\"width: 13.9405%; text-align: center;\"><span style=\"font-weight: 400;\">380.71 KB<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 59.6743%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">b45817ffb0355badcc89f2d7d48eecf00ebdf2b966ac986514f9d971f6c57d18<\/span><\/td>\n<td style=\"width: 25.3862%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">img-20240723-wa0000.jpg<\/span><\/td>\n<td style=\"width: 13.9405%; text-align: center;\"><span style=\"font-weight: 400;\">5.65 MB<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 59.6743%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">69cf56ac6f3888efa7a1306977f431fd1edb369a5fd4591ce37b72b7e01955ee<\/span><\/td>\n<td style=\"width: 25.3862%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">localfile~<\/span><\/td>\n<td style=\"width: 13.9405%; text-align: center;\"><span style=\"font-weight: 400;\">1.42 MB<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 59.6743%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">211311468f3673f005031d5f77d4d716e80cbf3c1f0bb1f148f2200920513261<\/span><\/td>\n<td style=\"width: 25.3862%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">l<\/span><\/td>\n<td style=\"width: 13.9405%; text-align: center;\"><span style=\"font-weight: 400;\">332.88 KB<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"width: 59.6743%;\"><span style=\"font-weight: 400; font-family: 'courier new', courier, monospace;\">ffeeb0356abb56c5084756a5ab0a39002832403bca5290bb6d794d14b642ffe2<\/span><\/td>\n<td style=\"width: 25.3862%;\"><\/td>\n<td style=\"width: 13.9405%; text-align: center;\"><span style=\"font-weight: 400;\">103.31 KB<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-size: 10pt;\">Tableau 7. \u00c9chantillons de logiciels malveillants pour l'activit\u00e9 LANDFALL.<\/span><\/p>\n<h3><a id=\"post-164629-_vbtp6ujmf6eq\"><\/a>Adresses<strong> IP<\/strong><\/h3>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">45.155.250[.]158<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">46.246.28[.]75<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">91.132.92[.]35<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">92.243.65[.]240<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">192.36.57[.]56<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">194.76.224[.]127<\/span><\/li>\n<\/ul>\n<h3><a id=\"post-164629-_ljhk4chswoau\"><\/a><strong>Noms <\/strong>d<strong>e domaine<\/strong><\/h3>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">brightvideodesigns[.]com<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">healthyeatingontherun[.]com<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">hotelsitereview[.]com<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">projectmanagerskills[.]com<\/span><\/li>\n<\/ul>\n<h2><a id=\"post-164629-_pmyxmmpqlg6u\"><\/a><strong>Ressources suppl\u00e9mentaires<\/strong><\/h2>\n<ul>\n<li><a href=\"https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2025-21042\" target=\"_blank\" rel=\"noopener\">NVD - CVE-2025-21042<\/a> \u2013 NIST<\/li>\n<li><a href=\"https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2025-43300\" target=\"_blank\" rel=\"noopener\">NVD - CVE-2025-43300<\/a> \u2013 NIST<\/li>\n<li><a href=\"https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2025-55177\" target=\"_blank\" rel=\"noopener\">NVD - CVE-2025-55177<\/a> \u2013 NIST<\/li>\n<li><a href=\"https:\/\/security.samsungmobile.com\/securityUpdate.smsb\" target=\"_blank\" rel=\"noopener\">Samsung Mobile Security Updates<\/a> \u2013 Samsung<\/li>\n<li><a href=\"https:\/\/www.whatsapp.com\/security\/advisories\/2025?lang=en_US\" target=\"_blank\" rel=\"noopener\">WhatsApp Security Advisories 2025<\/a> \u2013 WhatsApp<\/li>\n<li><a href=\"https:\/\/research.checkpoint.com\/2025\/stealth-falcon-zero-day\/\" target=\"_blank\" rel=\"noopener\">Stealth Falcon's Exploit of Microsoft Zero Day Vulnerability<\/a> \u2013 Check Point Research<\/li>\n<li><a href=\"https:\/\/www.welivesecurity.com\/en\/eset-research\/stealth-falcon-preying-middle-eastern-skies-deadglyph\/\" target=\"_blank\" rel=\"noopener\">Stealth Falcon preying over Middle Eastern skies with Deadglyph<\/a> \u2013 ESET<\/li>\n<li><a href=\"https:\/\/storage.googleapis.com\/gweb-uniblog-publish-prod\/documents\/Buying_Spying_-_Insights_into_Commercial_Surveillance_Vendors_-_TAG_report.pdf?#page=22\" target=\"_blank\" rel=\"noopener\">Buying Spying [PDF]<\/a> \u2013 Google TAG<\/li>\n<li><a href=\"https:\/\/blog.google\/threat-analysis-group\/new-details-on-commercial-spyware-vendor-variston\/\" target=\"_blank\" rel=\"noopener\">New details on commercial spyware vendor Variston<\/a> \u2013 Google TAG<\/li>\n<li><a href=\"https:\/\/www.usom.gov.tr\/adres\/946134\" target=\"_blank\" rel=\"noopener\">IP address entry for 91.132.92[.]35<\/a> \u2013 Turkish National CERT (USOM)<\/li>\n<li><a href=\"https:\/\/www.msuiche.com\/posts\/cve-2025-21043-when-dng-opcodes-become-attack-vectors\/\" target=\"_blank\" rel=\"noopener\">CVE-2025-21043 Analysis: When DNG Opcodes Become Attack Vectors<\/a> \u2013 Blog, Matt Suiche<\/li>\n<li><a href=\"https:\/\/github.com\/msuiche\/elegant-bouncer\" target=\"_blank\" rel=\"noopener\">ELEGANT BOUNCER Detection Framework<\/a> \u2013 Matt Suiche, GitHub<\/li>\n<\/ul>\n<h2><a id=\"post-164629-_tmglafyx1x0l\"><\/a>Annexes<\/h2>\n<h3><a id=\"post-164629-_irknxzopbin4\"><\/a><strong>Annexe A :<\/strong> Manipulation<strong> de la politique SELinux<\/strong><\/h3>\n<p>Le composant de LANDFALL pour la manipulation de la politique SELinux est <span style=\"font-family: 'courier new', courier, monospace;\">l.so<\/span>. Ce fichier fournit une capacit\u00e9 pour contourner les contr\u00f4les de s\u00e9curit\u00e9 du syst\u00e8me. Il est d\u00e9compress\u00e9 de <span style=\"font-family: 'courier new', courier, monospace;\">\/data\/data\/com.samsung.ipservice\/files\/l<\/span> vers <span style=\"font-family: 'courier new', courier, monospace;\">\/data\/data\/com.samsung.ipservice\/files\/l.so<\/span> et ex\u00e9cut\u00e9.<\/p>\n<p>Plut\u00f4t que de contenir des r\u00e8gles cod\u00e9es en dur, <span style=\"font-family: 'courier new', courier, monospace;\">l.so<\/span> impl\u00e9mente un moteur g\u00e9n\u00e9rique qui peut dynamiquement analyser (parser) et charger de nouvelles d\u00e9clarations de politique SELinux depuis une source externe, modifiant la politique en cours d'ex\u00e9cution en m\u00e9moire.<\/p>\n<p>Fonctions export\u00e9es pertinentes et uniques :<\/p>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">sepolicy_from_data<\/span> : Charger la politique depuis des donn\u00e9es binaires<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">sepolicy_add_statement<\/span> : Ajouter des d\u00e9clarations de politique individuelles<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">sepolicy_to_buffer<\/span> : S\u00e9rialiser la politique modifi\u00e9e<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">sepolicy_delete<\/span> : Nettoyer les objets de politique<\/li>\n<\/ul>\n<h3><a id=\"post-164629-_trjlje6sb972\"><\/a><strong>Annexe B : D\u00e9tails<\/strong> suppl\u00e9mentaires<strong> sur l'analyse du logiciel espion LANDFALL<\/strong><\/h3>\n<p>Cette annexe d\u00e9taille les capacit\u00e9s observ\u00e9es du composant chargeur (loader) de LANDFALL, ainsi que celles que nous d\u00e9duisons exister dans d'autres modules du framework LANDFALL complet auxquels nous n'avons pas encore acc\u00e9d\u00e9.<\/p>\n<p>Le \"Bridge Head\" de LANDFALL, nomm\u00e9 sur le disque <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span>, est charg\u00e9 par un exploit sur l'appareil. Imm\u00e9diatement apr\u00e8s avoir \u00e9t\u00e9 charg\u00e9 post-exploit, LANDFALL analyse <span style=\"font-family: 'courier new', courier, monospace;\">LD_PRELOAD<\/span> depuis l'environnement pour \u00e9viter d'h\u00e9riter des \"preloads\" en amont. Il lit l'ID utilisateur effectif via <span style=\"font-family: 'courier new', courier, monospace;\">geteuid()<\/span> et le stocke globalement pour que les branches ult\u00e9rieures puissent ajuster le comportement pour le mode \"root\" versus \"non-root\". Ensuite, il appelle la routine principale.<\/p>\n<p>Il rassemble les informations de base du processus (<span style=\"font-family: 'courier new', courier, monospace;\">pid<\/span> parent, <span style=\"font-family: 'courier new', courier, monospace;\">euid<\/span>, cha\u00eene de build Android), lit un drapeau d'ex\u00e9cution (<span style=\"font-family: 'courier new', courier, monospace;\">runner<\/span> flag) depuis la variable d'environnement <span style=\"font-family: 'courier new', courier, monospace;\">R<\/span> et en prend une copie pour des actions ult\u00e9rieures. Cette valeur (typiquement I pour interactif ou P pour passif) sera signal\u00e9e au C2 et d\u00e9terminera comment il lance une charge utile ult\u00e9rieure. Il r\u00e9sout son propre chemin mapp\u00e9, s\u00e9lectionne la base priv\u00e9e de l'application \u00e0 <span style=\"font-family: 'courier new', courier, monospace;\">\/data\/data\/com.samsung.ipservice\/files\/<\/span> comme son r\u00e9pertoire de travail, puis y construit deux chemins enfants. Un chemin est pour le t\u00e9l\u00e9chargement interm\u00e9diaire (staged) et un est pour le <span style=\"font-family: 'courier new', courier, monospace;\">l.so<\/span> final utilis\u00e9 pour l'ex\u00e9cution.<\/p>\n<h4><a id=\"post-164629-_i7wjf8foiyn\"><\/a><strong>Config<\/strong>u<strong>ration<\/strong><\/h4>\n<p>LANDFALL lit et d\u00e9chiffre (XOR) une configuration JSON directement depuis son propre fichier. Le logiciel espion normalise la configuration en r\u00e9\u00e9crivant les valeurs par d\u00e9faut internes dans l'objet analys\u00e9 : les champs num\u00e9riques sont initialis\u00e9s par d\u00e9faut s'ils sont manquants ou nuls, et certains bool\u00e9ens sont forc\u00e9s \u00e0 des valeurs fixes quelle que soit la configuration fournie. Enfin, il v\u00e9rifie qu'une cl\u00e9 publique (X.509 DER) est pr\u00e9sente dans la configuration et quitte sinon.<\/p>\n<p>Le Tableau 9 r\u00e9sume la normalisation de la configuration effectu\u00e9e \u00e0 ce stade.<\/p>\n<table style=\"width: 99.6835%; height: 499px;\">\n<tbody>\n<tr style=\"height: 24px;\">\n<td style=\"width: 26.6078%; height: 24px;\"><strong>Nom de la cl\u00e9<\/strong><\/td>\n<td style=\"width: 18.0328%; height: 24px;\"><strong>Type de valeur<\/strong><\/td>\n<td style=\"width: 46.1538%; height: 24px;\"><strong>D\u00e9fau<\/strong><\/td>\n<td style=\"width: 62.5473%; height: 24px;\"><strong>Requis<\/strong><\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">allow_wifi<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">bool\u00e9en<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">Forc\u00e9 \u00e0 true (remplace false\/manquant par true)<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Non<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">allow_mobile<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">bool\u00e9en<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">Forc\u00e9 \u00e0 true (remplace false\/manquant par true)<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Non<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">allow_roaming<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">bool\u00e9en<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">D\u00e9faut false si manquant\/false ; true reste true<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Non<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">allow_min_battery<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">entier<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">0 si valeur est 0 ou manquante<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Non<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">sleep_time<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">entier (secondes)<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">60 si valeur est 0 ou manquante<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Non<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">sleep_time_between_retries<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">entier (secondes)<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">35 si valeur est 0 ou manquante<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Non<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">suicide_time<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">entier (secondes)<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">7200 si valeur est 0 ou manquante<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Non<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">live_mode_expiration<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">entier (secondes)<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">0 si valeur est 0 ou manquante<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Non<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">socket_timeout<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">entier (secondes)<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">5 si valeur est 0 ou manquante<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Non<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">is_persistent<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">bool\u00e9en<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">D\u00e9faut false si manquant\/false ; true reste true<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Non<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">bridge_head_version_major<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">entier<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">Fix\u00e9 \u00e0 2 (toujours)<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Non<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">bridge_head_version_minor<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">entier<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">Fix\u00e9 \u00e0 1 (toujours)<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Non<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">cnc_hostname<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">cha\u00eene<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">Aucun ; doit \u00eatre pr\u00e9sent<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Oui<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">cnc_port<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">entier<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">Aucun ; doit \u00eatre non nul<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Oui<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">cnc_base_url<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">cha\u00eene<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">Aucun ; doit \u00eatre pr\u00e9sent<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Oui<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">agent_id<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">cha\u00eene (UUID)<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">Aucun ; doit \u00eatre pr\u00e9sent<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Oui<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">command_id<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">cha\u00eene (UUID)<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">Aucun ; doit \u00eatre pr\u00e9sent<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Oui<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">commands<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">tableau<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">Doit exister ; lu et lib\u00e9r\u00e9 (structure non retenue ici)<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Oui<\/td>\n<\/tr>\n<tr style=\"height: 25px;\">\n<td style=\"width: 26.6078%; height: 25px;\"><span style=\"font-family: 'courier new', courier, monospace;\">public_key<\/span><\/td>\n<td style=\"width: 18.0328%; height: 25px;\">X.509 DER (octets)<\/td>\n<td style=\"width: 46.1538%; height: 25px;\">Aucun ; doit \u00eatre pr\u00e9sent et valide<\/td>\n<td style=\"width: 62.5473%; height: 25px;\">Oui<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-size: 10pt;\">Tableau 9. Cl\u00e9s et valeurs pour le logiciel malveillant LANDFALL.<\/span><\/p>\n<h4><a id=\"post-164629-_17itux4s89gh\"><\/a><strong>Communication avec le<\/strong> serveur<strong> C2<\/strong><\/h4>\n<p>Une fois la configuration termin\u00e9e, <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span> charge les fonctions r\u00e9seau et de chiffrement n\u00e9cessaires, configure son environnement SSL et pr\u00e9pare un contexte client s\u00e9curis\u00e9 pour la communication HTTPS future. Si une partie de cette configuration \u00e9choue, il quitte proprement plut\u00f4t que de risquer une configuration partielle.<\/p>\n<p>Avant d'entrer dans la boucle de balise (beaconing) C2, il \u00e9met optionnellement de la t\u00e9l\u00e9m\u00e9trie. S'il s'ex\u00e9cute en tant que \"root\", il formate une ligne concise \"started\" (d\u00e9marr\u00e9) qui inclut :<\/p>\n<ul>\n<li>Un marqueur de version fixe (par ex., <span style=\"font-family: 'courier new', courier, monospace;\">v1.5.0<\/span>)<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">pid<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">euid<\/span><\/li>\n<li>Mode d'ex\u00e9cution (runner)<\/li>\n<\/ul>\n<p>Il envoie ensuite cela via une requ\u00eate POST au serveur C2, comme montr\u00e9 ci-dessous.<\/p>\n<p><img  class=\"alignnone wp-image-164480 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image9-1.png\" alt=\"Requ\u00eate POST vers le serveur C2\" width=\"800\" height=\"115\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image9-1.png 1826w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image9-1-786x113.png 786w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image9-1-768x110.png 768w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image9-1-1536x220.png 1536w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/p>\n<p>Si le mode d'ex\u00e9cution est I, il pr\u00e9pare d'abord l'assistant SELinux : il localise l'assistant de politique compress\u00e9 (<span style=\"font-family: 'courier new', courier, monospace;\">\/data\/data\/com.samsung.ipservice\/files\/l<\/span>), le d\u00e9compresse via un d\u00e9codeur XZ interne dans un nouveau tampon, et \u00e9crit le r\u00e9sultat dans data<span style=\"font-family: 'courier new', courier, monospace;\">\/data\/com.samsung.ipservice\/files\/l.so<\/span>. Ensuite, il envoie une balise au serveur C2 en envoyant un \"ping\" utilisant l'<span style=\"font-family: 'courier new', courier, monospace;\">agent_id<\/span> sans tirets comme charge utile. Le r\u00e9sultat ne bloque pas le reste du flux, et il sert de t\u00e9l\u00e9m\u00e9trie pour l'op\u00e9rateur.<\/p>\n<p>Un exemple de code pour un <span style=\"font-family: 'courier new', courier, monospace;\">ping<\/span> en mode <span style=\"font-family: 'courier new', courier, monospace;\">I<\/span> suit.<\/p>\n<p><img  class=\"alignnone wp-image-164469 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image4.png\" alt=\"Exemple de code pour I-ping vers le serveur h\u00f4te.\" width=\"800\" height=\"198\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image4.png 1852w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image4-786x194.png 786w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image4-768x190.png 768w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image4-1536x380.png 1536w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/p>\n<p>Ce n'est qu'alors que la boucle de balise C2 principale commence. Il enregistre le temps z\u00e9ro et applique un budget temporel (\"wall-clock\") strict d'environ 7 200 secondes (<span style=\"font-family: 'courier new', courier, monospace;\">suicide_time<\/span>) pour toute la session.<\/p>\n<p>Il remet \u00e0 z\u00e9ro deux grands tampons de chemin r\u00e9utilisables : un pour le \"blob\" brut qui peut arriver du serveur, et un jumeau pour l'objet partag\u00e9 d\u00e9compress\u00e9. Les deux chemins vivent sous le r\u00e9pertoire de travail priv\u00e9 de l'application (par ex., <span style=\"font-family: 'courier new', courier, monospace;\">\/data\/data\/com.samsung.ipservice\/files\/<\/span>). Avec les chemins pr\u00eats, il contacte le serveur de commande et de contr\u00f4le en construisant un corps compact de style \"URL-encoded\" de paires <span style=\"font-family: 'courier new', courier, monospace;\">key=value<\/span> :<\/p>\n<ul>\n<li>Un tag de protocole\/variante ; le type de message de la balise<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">L'agent_id<\/span>, le <span style=\"font-family: 'courier new', courier, monospace;\">command_id<\/span> et un nouvel <span style=\"font-family: 'courier new', courier, monospace;\">upload_id<\/span> (UUIDv4) pour la corr\u00e9lation<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">source=bridge_head<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">Euid<\/span><\/li>\n<li>Le drapeau d'ex\u00e9cution (runner) et son chemin d'installation sur le disque<\/li>\n<\/ul>\n<p>Le cas \u00e9ch\u00e9ant, il calcule un SHA-1 sur une partie du message et l'ajoute. Il utilise la cha\u00eene User-Agent de Chrome suivante :<\/p>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">Mozilla\/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/44.0.2403.89 Safari\/537.36.<\/span><\/li>\n<\/ul>\n<p>Les requ\u00eates sont dirig\u00e9es vers le chemin de base configur\u00e9 (par ex., <span style=\"font-family: 'courier new', courier, monospace;\">POST \/is\/ HTTP\/1.0<\/span>). Avant que toute donn\u00e9e applicative ne soit envoy\u00e9e, il \u00e9pingle la connexion TLS.<\/p>\n<p>En lisant la r\u00e9ponse du serveur C2, LANDFALL v\u00e9rifie le code de statut de la r\u00e9ponse et parcourt les en-t\u00eates pour d\u00e9terminer la longueur et le type du message. Certains codes de statut \u2014 en particulier les timeouts et un ensemble masqu\u00e9 de <span style=\"font-family: 'courier new', courier, monospace;\">4xx\/5xx<\/span> (par ex., <span style=\"font-family: 'courier new', courier, monospace;\">408, 504<\/span>) \u2014 sont trait\u00e9s comme transitoires et d\u00e9clenchent une pause <span style=\"font-family: 'courier new', courier, monospace;\">sleep<\/span> (<span style=\"font-family: 'courier new', courier, monospace;\">sleep_time_between_retrie<\/span>s), d\u00e9faut 35 secondes) avant de r\u00e9essayer avec une nouvelle connexion. Une r\u00e9ponse \"non trouv\u00e9\" (par ex. <span style=\"font-family: 'courier new', courier, monospace;\">404<\/span>) est consid\u00e9r\u00e9e comme terminale pour cette ex\u00e9cution et sort de la boucle. Si le statut indique le succ\u00e8s et qu'un corps est pr\u00e9sent, LANDFALL proc\u00e8de \u00e0 la mise en place (staging).<\/p>\n<h4><a id=\"post-164629-_h1hlc9j4edam\"><\/a><strong>Charges utiles de<\/strong> l'\u00e9tape<strong> suivante<\/strong><\/h4>\n<p>La mise en place commence par nettoyer l'\u00e9tat du syst\u00e8me de fichiers. Si un ancien \"blob\" brut existe au chemin temporaire, il le supprime. Il \u00e9crit les octets bruts dans un fichier de mise en place nomm\u00e9 <span style=\"font-family: 'courier new', courier, monospace;\">aa.so<\/span> sous le r\u00e9pertoire de travail, puis tente de les d\u00e9compresser en utilisant un d\u00e9codeur XZ\/LZMA int\u00e9gr\u00e9 qui se d\u00e9compresse dans un tampon pr\u00e9-allou\u00e9 d'environ 5 Mo.<\/p>\n<p>En cas de succ\u00e8s, il \u00e9crit les octets d\u00e9compress\u00e9s dans <span style=\"font-family: 'courier new', courier, monospace;\">dec_a.so<\/span> (le chemin .so final) sous le r\u00e9pertoire de travail, efface le aa.so temporaire et d\u00e9finit le mode du fichier <span style=\"font-family: 'courier new', courier, monospace;\">dec_a.so<\/span> \u00e0 <span style=\"font-family: 'courier new', courier, monospace;\">777<\/span> pour s'assurer qu'il est chargeable dans divers contextes.<\/p>\n<p>Exemple de d\u00e9compresseur XZ (tronqu\u00e9) :<\/p>\n<p><img  class=\"alignnone wp-image-164447 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image6.png\" alt=\"Inflater qui d\u00e9compresse (inflates) jusqu'\u00e0 une taille pr\u00e9d\u00e9termin\u00e9e.\" width=\"700\" height=\"233\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image6.png 1842w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image6-786x262.png 786w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image6-768x256.png 768w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image6-1536x512.png 1536w\" sizes=\"(max-width: 700px) 100vw, 700px\" \/><\/p>\n<p>Avec l'objet partag\u00e9 en place (<span style=\"font-family: 'courier new', courier, monospace;\">dec_a.so<\/span>), il choisit une strat\u00e9gie d'ex\u00e9cution bas\u00e9e sur le drapeau d'ex\u00e9cution (runner). Pour les configurations interactives (I), il exporte deux variables d'environnement et lance un outil syst\u00e8me b\u00e9nin de mani\u00e8re synchrone :<\/p>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">LD_PRELOAD=&lt;final.so&gt; PRELOAD_PATH=\/data\/data\/com.samsung.ipservice\/files\/l.so \/system\/bin\/id (o\u00f9 &lt;final.so&gt; est dec_a.so).<\/span><\/li>\n<\/ul>\n<p>Le <span style=\"font-family: 'courier new', courier, monospace;\">PRELOAD_PATH<\/span> pointe vers le chemin de l'appareil o\u00f9 le contenu de la politique SELinux est attendu, permettant au code pr\u00e9charg\u00e9 de trouver et d'appliquer la politique au d\u00e9marrage. Notez que ce P<span style=\"font-family: 'courier new', courier, monospace;\">RELOAD_PATH<\/span> n'est utilis\u00e9 qu'en mode interactif, le chemin d'ex\u00e9cution passif l'omet.<\/p>\n<p>Pour les ex\u00e9cutions passives (P), il lance le m\u00eame outil en arri\u00e8re-plan :<\/p>\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">LD_PRELOAD=&lt;final.so&gt; \/system\/bin\/id (avec &lt;final.so&gt; \u00e9tant dec_a.so)<\/span><\/li>\n<\/ul>\n<p>Ceci est fait pour que le contr\u00f4le revienne rapidement pendant que l'assistant s'initialise dans un autre processus. En interne, les deux sont distribu\u00e9s via un wrapper shell (<span style=\"font-family: 'courier new', courier, monospace;\">\/system\/bin\/sh -c &lt;cmd&gt;<\/span>). Dans les deux cas, il n'accepte que des r\u00e9sultats de succ\u00e8s \u00e9troits :<\/p>\n<ul>\n<li>code de sortie 0 ou un<span style=\"font-family: 'courier new', courier, monospace;\"> 0x15<\/span> sp\u00e9cifique ; tout le reste est trait\u00e9 comme un \u00e9chec et sort de la boucle<\/li>\n<\/ul>\n<p>En cas de chargement r\u00e9ussi, il formate et envoie une ligne \"ended\" (termin\u00e9) refl\u00e9tant le message d'ouverture incluant :<\/p>\n<ul>\n<li>Marqueur de version<\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">pid<\/span><\/li>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">incremental_build<\/span><\/li>\n<li>runner<\/li>\n<\/ul>\n<p><img  class=\"alignnone wp-image-164458 lozad\"  data-src=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image9.png\" alt=\"Extrait de code\" width=\"700\" height=\"100\" srcset=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image9.png 1826w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image9-786x113.png 786w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image9-768x110.png 768w, https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/image9-1536x220.png 1536w\" sizes=\"(max-width: 700px) 100vw, 700px\" \/><\/p>\n<p>Il lib\u00e8re ensuite les cha\u00eenes et tampons transitoires. Si aucune charge utile n'\u00e9tait disponible, ou si une erreur transitoire s'est produite, il v\u00e9rifie le temps \u00e9coul\u00e9 par rapport \u00e0 son budget d'environ 7 200 secondes. S'il reste du temps, il se met en pause pour l'intervalle configur\u00e9 et r\u00e9essaie.<\/p>\n<p>Finalement, lorsque la boucle se termine, soit apr\u00e8s un chargement r\u00e9ussi de l'\u00e9tape suivante, soit en raison du budget temps ou d'erreurs non r\u00e9cup\u00e9rables, il se termine proprement. S'il s'ex\u00e9cute en tant que \"root\", il pr\u00e9f\u00e8re un chemin <span style=\"font-family: 'courier new', courier, monospace;\">direct _exit(status)<\/span> au lieu d'un retour normal pour minimiser les effets de bord dans le runtime. Dans tous les cas, il vise \u00e0 ne laisser derri\u00e8re lui que les artefacts minimaux n\u00e9cessaires pour que le code de l'\u00e9tape suivante puisse continuer.<\/p>\n<h4><a id=\"post-164629-_axtazppnbv4\"><\/a><strong>Capacit\u00e9s non<\/strong> r\u00e9f\u00e9renc\u00e9es<\/h4>\n<p>Pendant la r\u00e9tro-ing\u00e9nierie, nous avons identifi\u00e9 plusieurs routines compil\u00e9es dans le composant <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span> qui ne sont pas invoqu\u00e9es par son flux de contr\u00f4le observ\u00e9. Ces fonctionnalit\u00e9s latentes semblent con\u00e7ues pour \u00eatre utilis\u00e9es par les modules suivants charg\u00e9s.<\/p>\n<p>Il est \u00e9galement tr\u00e8s probable que certaines de ces fonctions soient des restes d'anciennes versions de LANDFALL. Elles r\u00e9v\u00e8lent des comportements concrets orient\u00e9s autour des chemins m\u00e9dias de WhatsApp, de la d\u00e9couverte DCIM, de la mise en place (staging) sur le syst\u00e8me de fichiers et de l'hygi\u00e8ne des processus sur Android :<\/p>\n<ul>\n<li>Une routine pr\u00e9pare une ligne de t\u00e9l\u00e9m\u00e9trie \"started\" puis interagit avec le sous-syst\u00e8me multim\u00e9dia de l'appareil. Elle formate la ligne :\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">BH v1.5.0 started - pid: , euid=, incremental_build: v1.5.0, runner:<\/span><\/li>\n<\/ul>\n<\/li>\n<li>Si ses v\u00e9rifications internes passent, elle ex\u00e9cute une diffusion (broadcast) pour forcer une nouvelle analyse de la galerie en utilisant le shell exact :\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">am broadcast -a android.intent.action.MEDIA_SCANNER_SCAN_FILE -d file:\/\/\/sdcard\/DCIM\/hacked.jpg<\/span><\/li>\n<\/ul>\n<\/li>\n<li>Dans le m\u00eame flux, elle construit \u00e9galement une sonde \"photo la plus r\u00e9cente\" sur DCIM en utilisant :\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">find \/sdcard\/DCIM -type f -exec ls -t1 {} + | grep -v hacked| head -1<\/span><\/li>\n<li>Ce sch\u00e9ma est coh\u00e9rent avec la r\u00e9colte du dernier \u00e9l\u00e9ment de l'appareil photo tout en excluant un artefact qu'il peut planter. Cette routine est compil\u00e9e mais n'est appel\u00e9e par aucun autre code dans l'\u00e9chantillon.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li>Planteur (planter) de chemin m\u00e9dia WhatsApp. Une autre routine d\u00e9code un PNG 1x1 cod\u00e9 en dur en Base64 (<span style=\"font-family: 'courier new', courier, monospace;\">iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJ\u2026JRU5ErkJggg==<\/span>) et recherche dans les r\u00e9pertoires multim\u00e9dias de WhatsApp sur le stockage externe un chemin de fichier r\u00e9cent qui correspond \u00e0 l'identifiant de l'agent (l'UUID est d'abord d\u00e9pouill\u00e9 de ses tirets). Elle construit et ex\u00e9cute un pipeline de recherche \u00e0 travers les chemins par d\u00e9faut (ID 0) et multi-utilisateurs (ID 95) :\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">find \/storage\/emulated\/0\/Android\/media\/com.whatsapp\/WhatsApp\/Media\/WhatsApp\\ Images\/ \/storage\/emulated\/95\/Android\/media\/com.whatsapp\/WhatsApp\/Media\/WhatsApp\\ Images\/ -type f -atime -720m -maxdepth 1 -exec grep -lo '.*&lt;agentIdNoHyphens&gt;.*' {} \\; -quit 2&gt;\/dev\/null.<\/span><\/li>\n<li>Si un tel chemin est retourn\u00e9, elle y \u00e9crit le PNG d\u00e9cod\u00e9 tel quel. Cela ressemble \u00e0 un artefact de couverture ou \u00e0 un marqueur secret visant sp\u00e9cifiquement les images WhatsApp.<\/li>\n<\/ul>\n<\/li>\n<li>Un autre assistant prend un r\u00e9pertoire de base et une cha\u00eene et retourne un chemin JPEG correspondant en ex\u00e9cutant :\n<ul>\n<li><span style=\"font-family: 'courier new', courier, monospace;\">find &lt;base&gt; -name '*.jpg' -exec grep -le '.*&lt;pattern&gt;.*' {} \\;<\/span><\/li>\n<li>Il supprime les nouvelles lignes de fin et v\u00e9rifie que le chemin existe avant de retourner.<\/li>\n<\/ul>\n<\/li>\n<li>V\u00e9rification d'\u00e9vitement de Zygote : Un assistant d'hygi\u00e8ne de processus alloue un tampon pour sa propre ligne de commande (<span style=\"font-family: 'courier new', courier, monospace;\">cmdline<\/span>) et ne retourne le succ\u00e8s que lorsque le nom ne correspond pas \u00e0 <span style=\"font-family: 'courier new', courier, monospace;\">zygote<\/span> ou <span style=\"font-family: 'courier new', courier, monospace;\">zygote64<\/span>. Il est con\u00e7u pour \u00e9viter les processus h\u00f4tes sp\u00e9ciaux d'Android.<\/li>\n<li>R\u00e9solveur de symboles SELinux et nettoyage : Deux petites routines g\u00e8rent la plomberie SELinux dynamique.\n<ul>\n<li>L'une effectue un <span style=\"font-family: 'courier new', courier, monospace;\">dlopen sur \/system\/lib64\/libselinux.so<\/span> et r\u00e9sout <span style=\"font-family: 'courier new', courier, monospace;\">getfilecon<\/span> et <span style=\"font-family: 'courier new', courier, monospace;\">setfilecon<\/span> dans des pointeurs de fonction globaux.<\/li>\n<li>L'autre d\u00e9monte cela et efface les pointeurs.<\/li>\n<li>Les deux existent pour soutenir le travail sur la <span style=\"font-family: 'courier new', courier, monospace;\">politique\/le contexte<\/span> de fichier mais ne sont pas r\u00e9f\u00e9renc\u00e9es par le chemin de code observ\u00e9.<\/li>\n<\/ul>\n<\/li>\n<li>Une routine plus substantielle accepte une liste de chemins de syst\u00e8me de fichiers. Pour chacun, elle sauvegarde l'\u00e9tiquette actuelle via getfilecon, invoque un \"\u00e9tiqueteur\" (labeler) interne sur le chemin, applique la propri\u00e9t\u00e9 via <span style=\"font-family: 'courier new', courier, monospace;\">chown<\/span> puis restaure l'\u00e9tiquette sauvegard\u00e9e avec setfilecon. Elle retourne des codes n\u00e9gatifs distincts lorsque <span style=\"font-family: 'courier new', courier, monospace;\">chown<\/span> ou <span style=\"font-family: 'courier new', courier, monospace;\">setfilecon<\/span> \u00e9chouent.<\/li>\n<li>Il y a une sonde de fichier qui tente d'ouvrir un chemin et mappe le r\u00e9sultat \u00e0 des codes de statut internes (succ\u00e8s, permission refus\u00e9e, non trouv\u00e9, erreur g\u00e9n\u00e9rique). Elle r\u00e9initialise \u00e9galement l'\u00e9tat interne de la biblioth\u00e8que (y compris tous les descripteurs SELinux pr\u00e9c\u00e9demment ouverts).<\/li>\n<li>Mapper le r\u00e9sultat de l'ex\u00e9cution du processus au statut du message : Un petit mappeur convertit le r\u00e9sultat d'un assistant d'ex\u00e9cution de commande interne en codes de catalogue de messages (par ex., mappant un retour sp\u00e9cifique (1) au code <span style=\"font-family: 'courier new', courier, monospace;\">CMD_STAT_*<\/span> <span style=\"font-family: 'courier new', courier, monospace;\">0x0C<\/span> et 2\u20133 \u00e0 <span style=\"font-family: 'courier new', courier, monospace;\">0x51<\/span>). Il standardise le rapport pour les assistants mais n'est pas atteint par la logique actuelle.<\/li>\n<li>Construire un tableau JSON de rapport d'appareil : Une autre routine dormante construit un tableau cJSON o\u00f9 chaque entr\u00e9e transporte <span style=\"font-family: 'courier new', courier, monospace;\">device_path<\/span>, un champ binaire cod\u00e9 en Base64, un bool\u00e9en <span style=\"font-family: 'courier new', courier, monospace;\">last_updated<\/span> et un \u00e9tat textuel d\u00e9riv\u00e9 de la table interne <span style=\"font-family: 'courier new', courier, monospace;\">CMD_STAT_*<\/span>. Elle parcourt un vecteur d'entr\u00e9e, lit le fichier r\u00e9f\u00e9renc\u00e9 en m\u00e9moire, le code en Base64 et l'ajoute au tableau.<\/li>\n<li>Un petit assistant de \"templating\" de cha\u00eenes trouve les occurrences du jeton <span style=\"font-family: 'courier new', courier, monospace;\">--working_dir--<\/span> \u00e0 l'int\u00e9rieur d'une valeur JSON et les remplace par le chemin d'ex\u00e9cution suivi par le <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span>.<\/li>\n<li>Ajout de <span style=\"font-family: 'courier new', courier, monospace;\">TracerPid<\/span> \u00e0 la t\u00e9l\u00e9m\u00e9trie : Un assistant de diagnostic analyse <span style=\"font-family: 'courier new', courier, monospace;\">\/proc\/self\/status<\/span>, extrait la ligne <span style=\"font-family: 'courier new', courier, monospace;\">TracerPid<\/span>, la convertit en un entier et, si sup\u00e9rieur \u00e0 z\u00e9ro, ajoute une paire cl\u00e9\/valeur format\u00e9e dans le corps de la requ\u00eate via le constructeur de cha\u00eenes du <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span>.<\/li>\n<li>Un assistant de mise en place (staging) concat\u00e8ne un tampon existant avec un bloc pseudo-al\u00e9atoire d\u00e9riv\u00e9 d'une cha\u00eene d'entr\u00e9e :\n<ul>\n<li>Il initialise un octet avec <span style=\"font-family: 'courier new', courier, monospace;\">rand()<\/span><\/li>\n<li>Il effectue un XOR sur chaque octet suivant de l'entr\u00e9e dans un accumulateur roulant<\/li>\n<li>Il \u00e9crit les octets de l'accumulateur en suffixe<\/li>\n<li>Il \u00e9crit ensuite le tampon combin\u00e9 dans un chemin de fichier donn\u00e9 via l'\u00e9crivain du <span style=\"font-family: 'courier new', courier, monospace;\">b.so<\/span><\/li>\n<\/ul>\n<\/li>\n<li>Une paire installateur\/d\u00e9sinstallateur en two-steps utilise trois cl\u00e9s de configuration : <span style=\"font-family: 'courier new', courier, monospace;\">persistency_origin, persistency_payload<\/span> et <span style=\"font-family: 'courier new', courier, monospace;\">persistency_backup<\/span>. La routine principale v\u00e9rifie que les trois sont d\u00e9finies, recopie la sauvegarde vers l'origine si n\u00e9cessaire, puis supprime le fichier de la charge utile. Elle retourne des codes de statut distincts (<span style=\"font-family: 'courier new', courier, monospace;\">0x4B\/0x4C\/0x4D<\/span>) qui correspondent aux entr\u00e9es du catalogue de messages pour \"pas de config\", \"\u00e9chec d\u00e9placement\" et \"\u00e9chec suppression\". Une routine s\u0153ur cr\u00e9e ou tronque conditionnellement le fichier de sauvegarde (fopen avec le mode \u201cw\u201d) lorsqu'un drapeau de persistance global est d\u00e9fini.<\/li>\n<li>Pourcentage de batterie via <span style=\"font-family: 'courier new', courier, monospace;\">sysfs<\/span> : Un utilitaire lit la capacit\u00e9 de la batterie depuis le <span style=\"font-family: 'courier new', courier, monospace;\">sysfs<\/span> de l'alimentation du syst\u00e8me, v\u00e9rifiant deux emplacements courants : <span style=\"font-family: 'courier new', courier, monospace;\">\/sys\/class\/power_supply\/battery\/capacity<\/span> et <span style=\"font-family: 'courier new', courier, monospace;\">\/sys\/class\/power_supply\/Battery\/capacity.<\/span><\/li>\n<li>Deux routines configurent et finalisent le r\u00e9pertoire de travail sous le stockage priv\u00e9 de l'application.\n<ul>\n<li>La premi\u00e8re cr\u00e9e l'arborescence du r\u00e9pertoire, applique le mode <span style=\"font-family: 'courier new', courier, monospace;\">0771<\/span> (<span style=\"font-family: 'courier new', courier, monospace;\">0x1F9<\/span>), ajoute temporairement l'ex\u00e9cution au parent et copie le chemin r\u00e9solu dans la <span style=\"font-family: 'courier new', courier, monospace;\">configuration<\/span>. Et, lors de l'ex\u00e9cution en tant que \"root\", elle tente de monter un <span style=\"font-family: 'courier new', courier, monospace;\">tmpfs<\/span> \u00e0 cet emplacement pour conserver les artefacts en m\u00e9moire<\/li>\n<li>La seconde (nettoyage\/finalisation) peut, lorsque \"root\" et que le r\u00e9pertoire existe, ex\u00e9cuter <span style=\"font-family: 'courier new', courier, monospace;\">lsof | grep &lt;working_dir&gt;<\/span> et envoyer le r\u00e9sultat \"\u00e0 la maison\". Elle restaure ensuite le mode d'origine du r\u00e9pertoire parent et lib\u00e8re le tampon du chemin.<\/li>\n<\/ul>\n<\/li>\n<li>D\u00e9couverte de processus par contexte SELinux et par <span style=\"font-family: 'courier new', courier, monospace;\">cmdline<\/span> : Deux assistants de recherche it\u00e8rent <span style=\"font-family: 'courier new', courier, monospace;\">\/proc<\/span>, construisant et lisant des fichiers par PID.\n<ul>\n<li>L'un compare <span style=\"font-family: 'courier new', courier, monospace;\">\/proc\/%d\/attr\/<\/span>current \u00e0 un contexte SELinux cible puis confirme que le processus a un PPID 1.<\/li>\n<li>L'autre compare \/<span style=\"font-family: 'courier new', courier, monospace;\">proc\/%d\/cmdline<\/span> \u00e0 une <span style=\"font-family: 'courier new', courier, monospace;\">cmdline<\/span> cible.<\/li>\n<li>En cas de correspondance, ils \u00e9crivent le PID dans un param\u00e8tre de sortie et retournent le succ\u00e8s.<\/li>\n<\/ul>\n<\/li>\n<li>Impression de d\u00e9bogage d'un tableau de variantes : Une routine destin\u00e9e aux d\u00e9veloppeurs imprime une petite structure de tableau typ\u00e9. Elle formate les noms de types \u00e0 partir d'une table, vide les tableaux d'octets courts entre crochets et \u00e9met un seul caract\u00e8re pour un type sp\u00e9cifique, un \u00e9l\u00e9ment par ligne. Cela ressemble \u00e0 des restes de d\u00e9bogage et n'est pas invoqu\u00e9 par le code actif.<\/li>\n<\/ul>\n<p>Aucun de ces assistants n'est exerc\u00e9 par la boucle d'ex\u00e9cution principale de ce composant. Leur pr\u00e9sence est coh\u00e9rente avec une architecture \u00e0 \u00e9tapes (staged) dans laquelle les objets partag\u00e9s charg\u00e9s ult\u00e9rieurement, formant le framework LANDFALL complet, \u00e9tendent la collecte et la persistance en utilisant des capacit\u00e9s d\u00e9j\u00e0 compil\u00e9es dans ce chargeur.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Le spyware LANDFALL de calibre commercial exploite la CVE-2025-21042 dans la biblioth\u00e8que de traitement d'image de Samsung (sur Android). Le spyware \u00e9tait int\u00e9gr\u00e9 dans des fichiers DNG malveillants.<\/p>\n","protected":false},"author":23,"featured_media":164369,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[8832,8850],"tags":[9759,9761,9763,9764,9765,9766,9760,9762],"product_categories":[8956,8965,8979,8955,9151],"coauthors":[1025],"class_list":["post-164629","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-threat-research-fr","category-vulnerabilities-fr","tag-android-fr","tag-apple-fr","tag-cve-2025-21042-fr","tag-cve-2025-21043-fr","tag-cve-2025-43300-fr","tag-cve-2025-55177-fr","tag-samsung-fr","tag-spyware-fr","product_categories-advanced-dns-security-fr","product_categories-advanced-threat-prevention-fr","product_categories-advanced-wildfire-fr","product_categories-cloud-delivered-security-services-fr","product_categories-unit-42-incident-response-fr"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.0 (Yoast SEO v27.0) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>LANDFALL : Nouveau logiciel espion commercial pour Android dans une cha\u00eene d&#039;exploitation ciblant les appareils Samsung<\/title>\n<meta name=\"description\" content=\"Le spyware LANDFALL de calibre commercial exploite la CVE-2025-21042 dans la biblioth\u00e8que de traitement d&#039;image de Samsung (sur Android). Le spyware \u00e9tait int\u00e9gr\u00e9 dans des fichiers DNG malveillants.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/unit42.paloaltonetworks.com\/fr\/landfall-is-new-commercial-grade-android-spyware\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"LANDFALL : Nouveau logiciel espion commercial pour Android dans une cha\u00eene d&#039;exploitation ciblant les appareils Samsung\" \/>\n<meta property=\"og:description\" content=\"Le spyware LANDFALL de calibre commercial exploite la CVE-2025-21042 dans la biblioth\u00e8que de traitement d&#039;image de Samsung (sur Android). Le spyware \u00e9tait int\u00e9gr\u00e9 dans des fichiers DNG malveillants.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/unit42.paloaltonetworks.com\/fr\/landfall-is-new-commercial-grade-android-spyware\/\" \/>\n<meta property=\"og:site_name\" content=\"Unit 42\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-07T11:00:18+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/09_Nation-State-cyberattacks_1920x900.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1920\" \/>\n\t<meta property=\"og:image:height\" content=\"900\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Unit 42\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"LANDFALL : Nouveau logiciel espion commercial pour Android dans une cha\u00eene d'exploitation ciblant les appareils Samsung","description":"Le spyware LANDFALL de calibre commercial exploite la CVE-2025-21042 dans la biblioth\u00e8que de traitement d'image de Samsung (sur Android). Le spyware \u00e9tait int\u00e9gr\u00e9 dans des fichiers DNG malveillants.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/unit42.paloaltonetworks.com\/fr\/landfall-is-new-commercial-grade-android-spyware\/","og_locale":"fr_FR","og_type":"article","og_title":"LANDFALL : Nouveau logiciel espion commercial pour Android dans une cha\u00eene d'exploitation ciblant les appareils Samsung","og_description":"Le spyware LANDFALL de calibre commercial exploite la CVE-2025-21042 dans la biblioth\u00e8que de traitement d'image de Samsung (sur Android). Le spyware \u00e9tait int\u00e9gr\u00e9 dans des fichiers DNG malveillants.","og_url":"https:\/\/unit42.paloaltonetworks.com\/fr\/landfall-is-new-commercial-grade-android-spyware\/","og_site_name":"Unit 42","article_published_time":"2025-11-07T11:00:18+00:00","og_image":[{"width":1920,"height":900,"url":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/09_Nation-State-cyberattacks_1920x900.jpg","type":"image\/jpeg"}],"author":"Unit 42","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/landfall-is-new-commercial-grade-android-spyware\/#article","isPartOf":{"@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/landfall-is-new-commercial-grade-android-spyware\/"},"author":{"name":"Unit 42","@id":"https:\/\/unit42.paloaltonetworks.com\/#\/schema\/person\/a891f81d18648a1e0bab742238d31a63"},"headline":"LANDFALL : Nouveau logiciel espion commercial pour Android dans une cha\u00eene d'exploitation ciblant les appareils Samsung","datePublished":"2025-11-07T11:00:18+00:00","mainEntityOfPage":{"@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/landfall-is-new-commercial-grade-android-spyware\/"},"wordCount":8425,"image":{"@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/landfall-is-new-commercial-grade-android-spyware\/#primaryimage"},"thumbnailUrl":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/09_Nation-State-cyberattacks_1920x900.jpg","keywords":["Android","Apple","CVE-2025-21042","CVE-2025-21043","CVE-2025-43300","CVE-2025-55177","Samsung","spyware"],"articleSection":["Recherche sur les menaces","Vuln\u00e9rabilit\u00e9s"],"inLanguage":"fr-FR"},{"@type":"WebPage","@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/landfall-is-new-commercial-grade-android-spyware\/","url":"https:\/\/unit42.paloaltonetworks.com\/fr\/landfall-is-new-commercial-grade-android-spyware\/","name":"LANDFALL : Nouveau logiciel espion commercial pour Android dans une cha\u00eene d'exploitation ciblant les appareils Samsung","isPartOf":{"@id":"https:\/\/unit42.paloaltonetworks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/landfall-is-new-commercial-grade-android-spyware\/#primaryimage"},"image":{"@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/landfall-is-new-commercial-grade-android-spyware\/#primaryimage"},"thumbnailUrl":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/09_Nation-State-cyberattacks_1920x900.jpg","datePublished":"2025-11-07T11:00:18+00:00","author":{"@id":"https:\/\/unit42.paloaltonetworks.com\/#\/schema\/person\/a891f81d18648a1e0bab742238d31a63"},"description":"Le spyware LANDFALL de calibre commercial exploite la CVE-2025-21042 dans la biblioth\u00e8que de traitement d'image de Samsung (sur Android). Le spyware \u00e9tait int\u00e9gr\u00e9 dans des fichiers DNG malveillants.","breadcrumb":{"@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/landfall-is-new-commercial-grade-android-spyware\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/unit42.paloaltonetworks.com\/fr\/landfall-is-new-commercial-grade-android-spyware\/"]}]},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/landfall-is-new-commercial-grade-android-spyware\/#primaryimage","url":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/09_Nation-State-cyberattacks_1920x900.jpg","contentUrl":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2025\/11\/09_Nation-State-cyberattacks_1920x900.jpg","width":1920,"height":900,"caption":"Pictorial representation of LANDFALL spyware. An illustration of a glowing red warning icon centered on a detailed blue circuit board background, representing a vulnerability in Samsung Galaxy devices."},{"@type":"BreadcrumbList","@id":"https:\/\/unit42.paloaltonetworks.com\/fr\/landfall-is-new-commercial-grade-android-spyware\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/unit42.paloaltonetworks.com\/"},{"@type":"ListItem","position":2,"name":"LANDFALL : Nouveau logiciel espion commercial pour Android dans une cha\u00eene d'exploitation ciblant les appareils Samsung"}]},{"@type":"WebSite","@id":"https:\/\/unit42.paloaltonetworks.com\/#website","url":"https:\/\/unit42.paloaltonetworks.com\/","name":"Unit 42","description":"Palo Alto Networks","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/unit42.paloaltonetworks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Person","@id":"https:\/\/unit42.paloaltonetworks.com\/#\/schema\/person\/a891f81d18648a1e0bab742238d31a63","name":"Unit 42","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/unit42.paloaltonetworks.com\/#\/schema\/person\/image\/4ffb3c2d260a0150fb91b3715442f8b3","url":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2018\/11\/unit-news-meta.svg","contentUrl":"https:\/\/unit42.paloaltonetworks.com\/wp-content\/uploads\/2018\/11\/unit-news-meta.svg","caption":"Unit 42"},"url":"https:\/\/unit42.paloaltonetworks.com\/fr\/author\/unit42\/"}]}},"_links":{"self":[{"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/posts\/164629","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/users\/23"}],"replies":[{"embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/comments?post=164629"}],"version-history":[{"count":2,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/posts\/164629\/revisions"}],"predecessor-version":[{"id":164814,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/posts\/164629\/revisions\/164814"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/media\/164369"}],"wp:attachment":[{"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/media?parent=164629"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/categories?post=164629"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/tags?post=164629"},{"taxonomy":"product_categories","embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/product_categories?post=164629"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/unit42.paloaltonetworks.com\/fr\/wp-json\/wp\/v2\/coauthors?post=164629"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}