Une faille critique dans macOS révélée publiquement

Stéphane Moussie |

Une faille critique touchant macOS, et même plus précisément son noyau XNU, est au vu et au su de tous depuis quelques jours. Les experts en sécurité de Google qui l’ont dénichée ont suivi la procédure habituelle : ils ont informé Apple de leur découverte puis attendu 90 jours avant de la révéler publiquement, qu’elle soit comblée ou non. Dans le cas présent, la faille est toujours présente.

Elle concerne le mécanisme de copie sur écriture qui crée des copies privées de ressources (mémoire virtuelle) qui sont partagées entre plusieurs processus. L’équipe Project Zero s’est rendue compte qu’il était possible de modifier une image disque sans que le sous-système de gestion de la mémoire n’en soit informé, ce qui donne un vecteur d’attaque pour un piratage de plus grande ampleur, sans avoir besoin des droits administrateur.

Apple va résoudre ce problème, décrit comme « hautement critique », dans une future mise à jour de macOS, indique le chercheur Ian Beer, sans plus de détail.

avatar iBaby | 

C’est de bonne guerre, merci Google.

C’est pas demain qu’Apple fourrera son nez dans Andro?

avatar IceWizard | 

iBaby
"C’est pas demain qu’Apple fourrera son nez dans Andro?"

Suffisamment pour développer Apple Music Android, quand même ..

avatar occam | 

@iBaby

"C’est de bonne guerre, merci Google."

Oh, Project Zero n’en a pas uniquement pour Apple.
Gareth Halfacree note des cas précédents où le groupe a eu bien moins d’égards envers Microsoft (averti seulement une semaine avant) qu’envers Apple (cinq mois).
https://bit-tech.net/news/tech/software/googles-project-zero-outs-apple-cow-zero-day/1/

Et ils font preuve d’une tendresse particulière envers Edge. Là, ils ne ratent pas une occasion d’enfoncer le clou de la supériorité de Chrome. Clou sur lequel Microsoft a fini par s’asseoir.

avatar Hideyasu | 

@iBaby

Google a un un intérêt à les trouver, principalement parce qu’ils en utilisent plus de 40 000 des Mac.

Ça me semble une raison valable ^^

avatar Jeamy | 

Apple qui se veut le chantre de la sécurité : plus de 90 jours pour réagir !!!!
C’est sûr que nos données sont en sécurités

avatar oomu | 

le chantre de la vie privée

mais de toute évidence, pas de la sécurité informatique... hum.

avatar MacTHEgenius | 

@Jeamy

Une faille de sécurité peut arriver à tout le monde. Apple, Google, et même votre banque.

Un patch de sécurité peut être compliqué à concevoir et designer pour éviter d’éventuels bugs et d’impacter le reste du système.

avatar Link1993 | 

De ce que j'en comprends, ouvrir un .DMG (entre autre, .sparsebundle aussi par exemple) peut donc exécuter du code en administrateur c'est ça ? ^^

avatar oomu | 

non.

avatar oomu | 

le bug est subtil, (bien que grossier que ça ait pu être oublié), et pourrait éventuellement ouvrir la voie à une exploitation pour accès root (très théorique)

en gros:

quand on monte une image disque, le système le "cartographie" (map), le copie, en mémoire vive. Il fait une sorte de redirection entre des adresses mémoires de la mémoire vive et le fichier sur le stockage. Les applications croient taper en mémoire, elles tapent en vrai dans le fichier de l'image disque

MAIS, pour des raisons de performance, si y a assez de mémoire, l'ordinateur va copier des données en mémoire vive, et faire taper les applications dedans. Ainsi, on évite de solliciter le stockage (beaucoup plus lent) pour rien. Cela ne se fait pas pour le fichier de l'image disque en entier mais "page" par "page". une page ayant une taille plus ou moins grande.

A partir de là, tous les accès par le systèmes et applications se font dans cette version en mémoire

MAIS le système autorise encore des écritures directes à l'image disque telle que stockée dans le média physique.

Maintenant, si vous forcez le système à ne plus avoir assez de mémoire vive de libre, il va jeter sa copie en mémoire vive de l'image disque, puis éventuellement relire depuis le système de fichier

et là, le système va lire le nouveau contenu, sans que le système s'en émeuve le moins du monde, alors qu'il a éventuellement autorisé d'autres process à en exécuter du code, à accéder des données etC.

Il est donc pensable, possible, théorisable, de monter une attaque où on présente au début une image disque avec des données innocentes, puis après coup les modifier, forcer le système à les relire, et il va accepter alors qu'il ne devrait pas.

L'os aurait du
- ni autoriser la modification directe d'une image disque montée en mémoire vive
- ni d'accepter sans rien dire de recharger des données modifiées subrepticement et les représenter aux applications.

Il aurait du:
- interdire les modifications directes au fichier de l"image disque (inmutable) tant qu'il est copié en mémoire vive.
ou
- notifier les applications, supprimer les permissions, redemander à tout le monde de reconfirmer que ok, c'est normal.

avatar mimot13 | 

@oomu : un grand merci pour cette explication.

Est ce que le processus décrit ici sera rigoureusement le même pour le système de fichiers HFS+ et APFS ? Juste une petite interrogation à cause des particularités d'APFS..?

avatar oomu | 

autant que je peux saisir, oui ça sera pareil quelque soit le système de fichier.

Attention, le terme "copy-on-write" décrit une technique d'optimisation utilisable dans toutes sortes de contexte.

Ici, c'est indépendant de HFS+ et APFS.

avatar IceWizard | 

@oomu
Intéressant. Merci de l'explication ..

avatar zoubi2 | 

@oomu

Merci M'sieur

avatar MrMeteo | 

@oomu

Merci !

avatar Moonwalker | 

Danke.

avatar oomu | 

concrètement, il faut quand même vous monter un piège

avec une image disque préparée et un programme (fourni avec éventuellement) qui va mettre en oeuvre l'attaque.

-
en partant du principe que cela permet d'exploiter un AUTRE bug du noyau ou d'une application qui est ciblée.

avatar Link1993 | 

@oomu

Parfait merci ! :)

avatar labon | 

Merci des explications claires.
Cela concerne quelles versions de Mac Os ?
Ce serait bien que l’article le precise.
Merci.

avatar SyMich | 

A priori, toutes les versions de macOS sont concernées.
D'ailleurs il y a une petit utilitaire "proof of concept " mis à disposition, c'est très simple de faire le test sur votre version de macOS pour vérifier que la faille est bien présente.

avatar lillegubben | 

Apple qui ne veut pas rémunérer les découvreurs de bugs, Apple qui met 90 jours à réagir à une faille.... Ils doivent trop occupés à faire fructifier leurs actions en bourse. On a vraiment l'impression qu'il n'y a plus que le pognon qui intéresse cette société....

avatar oomu | 

Le soucis c'est l'incapacité d'Apple à se hisser à la hauteur des enjeux.

C'était déjà un soucis début 2000, début 90s, etc, régulièrement.

-
Apple a mis des années, après le lancement de MacOs X a se mettre aux pratiques de sécurités standards de Microsoft et autres éditeurs de distribution Linux, en publiant des rapports clairs et net sur les mises à jour de sécurités

Tout comme elle est venu au rythme d'escargot pour participer aux conférences de sécurités, alors que l'os de ses ordinateurs et produits prenaient une importance toujours plus grande au fur et à mesure du succès du mac, puis le lancement de services en lignes.

tout comme elle a été parmi les dernières (en comparant google, amazon et quelques spécialisés à la salesforce) pour mettre en place une page de diagnostique et suivi de la santé des serivices en ligne. un pratique pourtant courante de l'industrie déjà à l'époque.

en clair: ce que vous pensez être un comportement nouveau et qui Frappe votre Sensibilité aujourd'hui est une vielle sale manie que se traîne l'entreprise et que les nouveaux clients ont toujours accepté à chaque fois.

-
pour un professionnel, Apple ne fournit toujours pas de programme de remplacement de machine par un mac de secours en cas de réparation longue, pas de programme de réparation sur site, pas de relation avec des OEM/VAR pour intégration du mac dans ses solutions grands comptes, etc

pratiques pourtant classique chez canonical, redhat(ibm), microsoft, hp , etc. autant coté système d'exploitation que matériel, donc.

Bref: Apple se comporte encore, même aujourd'hui, lundi 4 mars 2019, comme si elle était une startup rigolote avec 100 000 clients.

C'est sur, ça économise.

-
je rajoute, que ce qui la sauve et a fait qu'on lui pardonne beaucoup, c'est la grande qualité et radicalisme régulier de nombre de ses produits.

Mais sitôt qu'elle ne maintient pas cette "promesse", tout de suite ses travers historiques sautent à la figure.

avatar occam | 

@oomu

? ?

On ne saurait mieux résumer le problème.

avatar Fan2ElodieFrege | 

Ils s'en occuperont plus tard; la priorité c'est les émojis.

avatar NICE-G0lg0-INCAL | 

C'est moi, ou l'OS a de plus en plus le comportement de Windows millénium ?

avatar oomu | 

c'est vous.

Windows ME était une version surchargée de fonctionnalitées mal dégrossies d'un logiciel déjà problématique: windows 98.

Ce qui n'est pas comparable à Mac Os X.

-
Pour l'heure, Mac OS X est à l'image de Windows 10 : deux systèmes que chacun de ses éditeur laissent baisser la qualité, après une bonne période. (voir l'état des canaux de développement de Windows 10 et de bug majeurs régulièrement introduits dans windows 10 depuis 10 mois)

La différence, c'est que Microsoft a une foule de procédures digne d'un grand éditeur, au moins sur la comm, ce qui n'est pas à ignorer. Là où Apple persiste à ne pas assumer.

avatar Azurea | 

@oomu
Merci énormément pour tes commentaires très constructifs !

avatar coucou | 

C'était quand même vachement plus pratique et simple de faire appel au DoD pour interdire un concours de hacking sur mac os/osx et continuer la publicité mensongère sur sa suposée invulnérabilité au début des années 2 000.

Saloperie d'internet et de chercheurs en sécurité. :)

avatar pim | 

Détrompez moi, mais on est relativement très protégé non pas par la qualité du système, mais par sa faible popularité. Malgré toutes ces années fastes, la part du Mac dans les machines actives ne se compte qu’en centaine de millions, quant la part d’iOS est de 1,4 milliards.

Bon après il suffit de trouver une faille qui touche les deux, et c’est bon !

CONNEXION UTILISATEUR