{"id":20326,"date":"2023-03-21T10:23:18","date_gmt":"2023-03-21T08:23:18","guid":{"rendered":"https:\/\/www.kaspersky.fr\/blog\/?p=20326"},"modified":"2023-03-21T11:04:55","modified_gmt":"2023-03-21T09:04:55","slug":"ios-macos-nspredicate-class-of-bugs","status":"publish","type":"post","link":"https:\/\/www.kaspersky.fr\/blog\/ios-macos-nspredicate-class-of-bugs\/20326\/","title":{"rendered":"Pourquoi vous devez imm\u00e9diatement mettre iOS et macOS \u00e0 jour"},"content":{"rendered":"<p>Les derni\u00e8res versions d\u2019iOS et iPadOS (16.3) et macOS (Ventura 13.2) ont corrig\u00e9 plusieurs vuln\u00e9rabilit\u00e9s nomm\u00e9s CVE-2023-23530 et CVE-2023-23531. Dans cet article, nous vous expliquons la nature de ces bugs, pourquoi vous devez y faire attention, quel est le lien avec le logiciel espion <a href=\"https:\/\/www.kaspersky.com\/blog\/pegasus-spyware\/14604\/\" target=\"_blank\" rel=\"noopener nofollow\">Pegasus<\/a> et pourquoi vous devez prendre ces mises \u00e0 jour et les suivantes d\u2019iOS, iPad et macOS tr\u00e8s au s\u00e9rieux.<\/p>\n<h2>NSPredicate, FORCEDENTRY, Pegasus, et tous les autres<\/h2>\n<p>Pour vous expliquer pourquoi ces derni\u00e8res mises \u00e0 jour sont importantes, nous avons besoin d\u2019un peu de contexte. Le logiciel qui sert de fondation pour les applications d\u00e9velopp\u00e9es pour le syst\u00e8me d\u2019exploitation d\u2019Apple s\u2019appelle, et vous n\u2019allez pas le croire, l\u2019environnement Foundation. Voici comme Apple le <a href=\"https:\/\/developer.apple.com\/documentation\/foundation\" target=\"_blank\" rel=\"noopener nofollow\">d\u00e9crit\u00a0<\/a>:<\/p>\n<div style=\"background-color: #e5f0ec;padding: 10px 25px;margin-bottom: 10px\">\u00ab\u00a0L\u2019environnement Foundation fournit une couche de base de fonctionnalit\u00e9s pour les applications et les environnements, dont le stockage et la persistance des donn\u00e9es, le traitement de texte, le calcul de l\u2019heure et de la date, le classement et le filtrage et le r\u00e9seautage. Les classes, les protocoles et les types de donn\u00e9es d\u00e9finis par Foundation sont utilis\u00e9s dans tous les kits de d\u00e9veloppement logiciel (SDK) macOS, iOS, watchOS et tvOS.\u00a0\u00bb<\/div>\n<p>\u00a0<\/p>\n<p>Il y a un peu plus de deux ans, en janvier 2021, un chercheur en s\u00e9curit\u00e9 iOS connu comme <a href=\"https:\/\/twitter.com\/CodeColorist\" target=\"_blank\" rel=\"noopener nofollow\">CodeColorist<\/a> a publi\u00e9 un <a href=\"https:\/\/codecolor.ist\/2021\/01\/16\/see-no-eval-runtime-code-execution-objc\/\" target=\"_blank\" rel=\"noopener nofollow\">rapport<\/a> qui montrait comment la mise en place des classes <a href=\"https:\/\/developer.apple.com\/documentation\/foundation\/nspredicate\" target=\"_blank\" rel=\"noopener nofollow\">NSPredicate<\/a> et <a href=\"https:\/\/developer.apple.com\/documentation\/foundation\/nsexpression\" target=\"_blank\" rel=\"noopener nofollow\">NSExpression<\/a> (qui font partie de l\u2019environnement Foundation) peut \u00eatre exploit\u00e9e pour ex\u00e9cuter un code arbitraire. Il se trouve que ces classes sont responsables du <strong>classement et du filtrage des donn\u00e9es<\/strong>. Dans le cadre de ce dont nous parlons dans cet article, il faut retenir que ces outils permettent l\u2019ex\u00e9cution de scripts sur un dispositif sans avoir \u00e0 v\u00e9rifier la signature num\u00e9rique du code.<\/p>\n<p>La principal conclusion de CodeColorist \u00e9tait que ces scripts peuvent aider \u00e0 contourner les m\u00e9canismes de s\u00e9curit\u00e9 d\u2019Apple, dont l\u2019isolation de l\u2019application. Cela permet d\u2019\u00e9crire une application malveillante qui vole les donn\u00e9es d\u2019autres applications (comme les messages de l\u2019utilisateur ou les photos de la galerie).<\/p>\n<p>Un document a \u00e9t\u00e9 publi\u00e9 en mars 2022 sur la <a href=\"https:\/\/googleprojectzero.blogspot.com\/2021\/12\/a-deep-dive-into-nso-zero-click.html\" target=\"_blank\" rel=\"noopener nofollow\">mise en place pratique<\/a> d\u2019une application de ce genre, l\u2019exploit sans clic (<em>zero-click<\/em>) FORCEDENTRY, qui a notamment \u00e9t\u00e9 utilis\u00e9 pour distribuer le programme malveillant tristement c\u00e9l\u00e8bre Pegasus. Les vuln\u00e9rabilit\u00e9s pr\u00e9sentes dans NSPredicate et NSExpression permettait au programme malveillant de r\u00e9aliser une <a href=\"https:\/\/encyclopedia.kaspersky.com\/glossary\/sandbox-escape\/\" target=\"_blank\" rel=\"noopener\">\u00e9vasion de sandbox<\/a> et d\u2019acc\u00e9der aux donn\u00e9es et aux fonctions en dehors des limites clairement d\u00e9finies au sein desquelles toutes les applications iOS fonctionnent.<\/p>\n<p>\u00c0 la suite du travail th\u00e9orique de CodeColorist et de l\u2019\u00e9tude pratique de l\u2019exploit FORCEDENTRY, Apple a adopt\u00e9 plusieurs mesures de s\u00e9curit\u00e9 et restrictions. Pourtant, une nouvelle <a href=\"https:\/\/www.wired.com\/story\/trellix-ios-macos-bug-nspredicate\/\" target=\"_blank\" rel=\"noopener nofollow\">\u00e9tude<\/a> montre qu\u2019il est encore facile de les contourner.<\/p>\n<h2>Quels sont les dangers de CVE-2023-23530 et CVE-2023-23531<\/h2>\n<p>Les vuln\u00e9rabilit\u00e9s CVE-2023-23530 et CVE-2023-23531 sont devenues les nouvelles m\u00e9thodes utilis\u00e9es pour contourner les restrictions. La premi\u00e8re, CVE-2023-23530, d\u00e9coule de la fa\u00e7on dont Apple a abord\u00e9 le probl\u00e8me. Plus pr\u00e9cis\u00e9ment, les chercheurs ont dress\u00e9 des listes exhaustives de classes et de m\u00e9thodes qui doivent \u00eatre exclues parce qu\u2019elles repr\u00e9sentent un risque de s\u00e9curit\u00e9 \u00e9vident au sein de NSPredicate. L\u2019astuce consiste \u00e0 utiliser des m\u00e9thodes qui <em>ne figurent pas<\/em> dans les listes d\u2019exclusion afin d\u2019effacer le contenu des listes et de pouvoir utiliser l\u2019ensemble des m\u00e9thodes et des classes.<\/p>\n<p>La seconde vuln\u00e9rabilit\u00e9, CVE-2023-23531, est li\u00e9e \u00e0 la fa\u00e7on dont les processus au sein d\u2019iOS et macOS interagissent entre eux et \u00e0 la fa\u00e7on dont le processus de r\u00e9ception des donn\u00e9es filtre les informations entrantes. En d\u2019autres termes, le processus qui envoie les donn\u00e9es peut ajouter une \u00e9tiquette \u00ab\u00a0contenu v\u00e9rifi\u00e9\u00a0\u00bb puis alimenter le processus de r\u00e9ception avec un script malveillant qui utilise NSPredicate ; il sera ex\u00e9cut\u00e9 sans v\u00e9rification.<\/p>\n<p>Selon les chercheurs, ces deux techniques utilis\u00e9es pour contourner les contr\u00f4les de s\u00e9curit\u00e9 permettent l\u2019exploitation de certaines vuln\u00e9rabilit\u00e9s sp\u00e9cifiques. Les cybercriminels pourraient utiliser ces vuln\u00e9rabilit\u00e9s pour acc\u00e9der aux donn\u00e9es utilisateur et \u00e0 des fonctionnalit\u00e9s dangereuses du syst\u00e8me d\u2019exploitation, voire pour installer des applications (dont certaines du syst\u00e8me). En d\u2019autres termes, les vuln\u00e9rabilit\u00e9s CVE-2023-23530 et CVE-2023-23531 peuvent \u00eatre utilis\u00e9es pour cr\u00e9er des exploits de type FORCEDENTRY.<\/p>\n<p>Pour montrer de quoi CVE-2023-23530 et CVE-2023-23531 sont capables, les chercheurs ont enregistr\u00e9 une vid\u00e9o o\u00f9 ils montrent comment une application malveillante peut \u00eatre cr\u00e9\u00e9e afin d\u2019ex\u00e9cuter un code dans <a href=\"https:\/\/fr.wikipedia.org\/wiki\/SpringBoard\" target=\"_blank\" rel=\"noopener nofollow\">SpringBoard<\/a> (l\u2019application standard qui g\u00e8re l\u2019\u00e9cran d\u2019accueil d\u2019iOS) sur un iPad. Pour sa part, SpringBoard dispose de privil\u00e8ges \u00e9lev\u00e9s et de divers droits d\u2019acc\u00e8s\u00a0: appareil photo, microphone, historique des appels, photos ou encore donn\u00e9es de g\u00e9olocalisation. De plus, il peut compl\u00e8tement effacer le dispositif.<\/p>\n<h2>Quelles sont les cons\u00e9quences en termes de s\u00e9curit\u00e9 pour iOS et macOS<\/h2>\n<p>Il convient de souligner que les dangers que CVE-2023-23530 et CVE-2023-23531 repr\u00e9sentent sont purement th\u00e9oriques\u00a0: aucun cas d\u2019exploitation dans la vie r\u00e9elle n\u2019a \u00e9t\u00e9 enregistr\u00e9. De plus, les mises \u00e0 jour iOS 16.3 et macOS Ventura 13.2 ont corrig\u00e9 ces vuln\u00e9rabilit\u00e9s. Cela signifie que vous \u00eates prot\u00e9g\u00e9 si vous les avez install\u00e9es en temps et en heure.<\/p>\n<p>Cela \u00e9tant dit, nous ne savons pas si Apple a bien corrig\u00e9 les vuln\u00e9rabilit\u00e9s <em>cette<\/em> fois. Peut-\u00eatre que des astuces permettront aussi de contourner ces correctifs. En tout cas, lors d\u2019une conversation avec <em>Wired<\/em>, les chercheurs ont d\u00e9clar\u00e9 qu\u2019ils \u00e9taient convaincus que de nouvelles vuln\u00e9rabilit\u00e9s de ce genre <a href=\"https:\/\/www.wired.com\/story\/trellix-ios-macos-bug-nspredicate\/\" target=\"_blank\" rel=\"noopener nofollow\">continueront d\u2019appara\u00eetre<\/a>.<\/p>\n<p>N\u2019oubliez pas que l\u2019ex\u00e9cution de scripts malveillants sur iOS en utilisant NSPredicate ne suffit pas \u00e0 pirater un dispositif. Le cybercriminel a besoin d\u2019acc\u00e9der d\u2019une fa\u00e7on ou d\u2019une autre au dispositif de la victime afin de pouvoir agir. Dans le cas de FORCEDENTRY, cela implique l\u2019utilisation <a href=\"https:\/\/googleprojectzero.blogspot.com\/2021\/12\/a-deep-dive-into-nso-zero-click.html\" target=\"_blank\" rel=\"noopener nofollow\">d\u2019autres vuln\u00e9rabilit\u00e9s<\/a>\u00a0: un fichier PDF infect\u00e9 qui se fait passer pour un fichier GIF innocent a \u00e9t\u00e9 t\u00e9l\u00e9charg\u00e9 sur le dispositif de la victime via iMessage.<\/p>\n<p>Il est fort probable que ces vuln\u00e9rabilit\u00e9s soient utilis\u00e9es pour des <a href=\"https:\/\/www.kaspersky.fr\/resource-center\/threats\/advanced-persistent-threat\" target=\"_blank\" rel=\"noopener\">attaques APT<\/a>, donc il convient de revoir quelles mesures de protection vous pouvez adopter. Nous avons r\u00e9dig\u00e9 un article \u00e0 ce sujet o\u00f9 Costin Raiu, directeur de notre \u00e9quipe Global Research &amp; Analysis Team (GReAT), explique en d\u00e9tail comment vous prot\u00e9ger des <a href=\"https:\/\/www.kaspersky.fr\/blog\/how-to-protect-from-pegasus-spyware\/18515\/\" target=\"_blank\" rel=\"noopener\">programmes malveillants de type Pegasus<\/a> et pourquoi ces mesures fonctionnent. Nous vous proposons de r\u00e9sumer les conseils donn\u00e9s\u00a0:<\/p>\n<ul>\n<li>Red\u00e9marrez votre iPhone ou iPad plus souvent. Les cybercriminels ont du mal \u00e0 s\u2019installer durablement dans iOS et un red\u00e9marrage tue g\u00e9n\u00e9ralement le programme malveillant.<\/li>\n<li>D\u00e9sactivez iMessage et FaceTime dans la mesure du possible. Ces applications sont un point d\u2019entr\u00e9e pratique pour attaquer les dispositifs iOS.<\/li>\n<li>Utilisez un autre navigateur au lieu de Safari. Firefox Focus, par exemple.<\/li>\n<li>Ne cliquez pas sur les liens re\u00e7us par message.<\/li>\n<li>Installez une <a href=\"https:\/\/www.kaspersky.fr\/premium?icid=fr_bb2022-kdplacehd_acq_ona_smm__onl_b2c_kdaily_lnk_sm-team___kprem___\" target=\"_blank\" rel=\"noopener\">protection fiable<\/a> sur tous vos dispositifs.<\/li>\n<li>M\u00eame si nous ne cessons de le dire en boucle, mettez vos syst\u00e8mes d\u2019exploitation \u00e0 jour. \u00c0 partir de maintenant, faites particuli\u00e8rement attention aux mises \u00e0 jour pour iOS, iPadOS et macOS au fur et \u00e0 mesure qu\u2019elles sont disponibles.<\/li>\n<\/ul>\n<input type=\"hidden\" class=\"category_for_banner\" value=\"premium-generic\">\n","protected":false},"excerpt":{"rendered":"<p>Nous vous expliquons pourquoi vous ne devriez pas repousser l\u2019installation des mises \u00e0 jour iOS 16.3, macOS Ventura 13.2 et les ult\u00e9rieures.<\/p>\n","protected":false},"author":2726,"featured_media":20328,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[686],"tags":[29,165,599,790,3511,322],"class_list":{"0":"post-20326","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-threats","8":"tag-apple","9":"tag-ios","10":"tag-macos","11":"tag-mises-a-jour","12":"tag-pegasus","13":"tag-vulnerabilites"},"hreflang":[{"hreflang":"fr","url":"https:\/\/www.kaspersky.fr\/blog\/ios-macos-nspredicate-class-of-bugs\/20326\/"},{"hreflang":"en-in","url":"https:\/\/www.kaspersky.co.in\/blog\/ios-macos-nspredicate-class-of-bugs\/25376\/"},{"hreflang":"en-ae","url":"https:\/\/me-en.kaspersky.com\/blog\/ios-macos-nspredicate-class-of-bugs\/20815\/"},{"hreflang":"en-us","url":"https:\/\/usa.kaspersky.com\/blog\/ios-macos-nspredicate-class-of-bugs\/27982\/"},{"hreflang":"en-gb","url":"https:\/\/www.kaspersky.co.uk\/blog\/ios-macos-nspredicate-class-of-bugs\/25665\/"},{"hreflang":"es-mx","url":"https:\/\/latam.kaspersky.com\/blog\/ios-macos-nspredicate-class-of-bugs\/26105\/"},{"hreflang":"es","url":"https:\/\/www.kaspersky.es\/blog\/ios-macos-nspredicate-class-of-bugs\/28552\/"},{"hreflang":"ru","url":"https:\/\/www.kaspersky.ru\/blog\/ios-macos-nspredicate-class-of-bugs\/34858\/"},{"hreflang":"x-default","url":"https:\/\/www.kaspersky.com\/blog\/ios-macos-nspredicate-class-of-bugs\/47513\/"},{"hreflang":"pt-br","url":"https:\/\/www.kaspersky.com.br\/blog\/ios-macos-nspredicate-class-of-bugs\/20957\/"},{"hreflang":"de","url":"https:\/\/www.kaspersky.de\/blog\/ios-macos-nspredicate-class-of-bugs\/29920\/"},{"hreflang":"ja","url":"https:\/\/blog.kaspersky.co.jp\/ios-macos-nspredicate-class-of-bugs\/33475\/"},{"hreflang":"ru-kz","url":"https:\/\/blog.kaspersky.kz\/ios-macos-nspredicate-class-of-bugs\/25971\/"},{"hreflang":"en-au","url":"https:\/\/www.kaspersky.com.au\/blog\/ios-macos-nspredicate-class-of-bugs\/31685\/"},{"hreflang":"en-za","url":"https:\/\/www.kaspersky.co.za\/blog\/ios-macos-nspredicate-class-of-bugs\/31390\/"}],"acf":[],"banners":"","maintag":{"url":"https:\/\/www.kaspersky.fr\/blog\/tag\/ios\/","name":"iOS"},"_links":{"self":[{"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/posts\/20326","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/users\/2726"}],"replies":[{"embeddable":true,"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/comments?post=20326"}],"version-history":[{"count":5,"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/posts\/20326\/revisions"}],"predecessor-version":[{"id":20333,"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/posts\/20326\/revisions\/20333"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/media\/20328"}],"wp:attachment":[{"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/media?parent=20326"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/categories?post=20326"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.kaspersky.fr\/blog\/wp-json\/wp\/v2\/tags?post=20326"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}