Lors de l'été 2015, Zimperium a dévoilé l'existence dans le système d'exploitation mobile Android d'une vulnérabilité d'exécution de code à distance dite Stagefright en rapport avec la bibliothèque logicielle multimédia éponyme (libstagefright).

Des chercheurs en sécurité ont notamment démontré comment un message MMS spécialement conçu et envoyé à un numéro de téléphone peut permettre de compromettre un appareil via un fichier média, et ce à l'insu de l'utilisateur.

Le champ des possibilités ouvert par le bug - ou plutôt les bugs - Stagefright a eu un fort écho, et d'autant plus avec le problème de la fragmentation des versions d'Android pour apporter un correctif. Outre des patchs, cela a poussé Google à inaugurer des mises à jour de sécurité mensuelles. Mais tous les appareils ne les verront pas…

Les bugs Stagefright font encore parler d'eux avec pour coupable désigné la trop grande latitude de mediaserver qui est utilisé pour le traitement du contenu multimédia. Dans Android N, il a ainsi été décidé de diviser mediaserver et ses autorisations dans plusieurs composants et environnements de sandbox distincts, et en quelque sorte de lui donner moins de pouvoir " générique " sur le multimédia.

La manœuvre passe par une nouvelle architecture afin que l'obtention d'une exécution de code dans libstagefright ne puisse pas donner accès à toutes les autorisations et ressources disponibles dans un seul " bloc " mediaserver.

Android-N-mediaserver
" Dans Android N, libstagefright fonctionne dans la sandbox mediaserver avec un accès à très peu d'autorisations. […] La compromission de libstagefright offrira à l'attaquant un accès à beaucoup moins d'autorisations et atténuera également les élévations de privilèges en réduisant la surface d'attaque exposée par le kernel ", écrit l'équipe de sécurité Android.

Sur le blog Android Developers, des mesures préventives pour complexifier l'exploitation de problèmes de dépassement d'entier dans libstagefright sont également détaillées. Tout cela ne sera disponible que dans Android N.