IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Google présente KataOS : un OS open source pour le matériel embarqué axé sur la sécurité, avec seL4 comme micro-noyau et implémenté presque entièrement en Rust

Le , par Stéphane le calme

6PARTAGES

27  0 
Google a présenté KataOS, un système d'exploitation axé sur les appareils embarqués exécutant des charges de travail d'apprentissage automatique. KataOS est soucieux de la sécurité, utilise exclusivement le langage de programmation Rust et est construit sur le micronoyau seL4 comme base.

KataOS est destiné à être utilisé avec le nombre toujours croissant d'appareils connectés, avec un accent particulier sur le matériel embarqué exécutant des applications d'apprentissage automatique. Compte tenu de la concentration croissante de RISC-V sur l'industrie, cette architecture de processeur est un objectif de support principal pour KataOS.


Google a présenté son système d’exploitation KataOS, encore en développement, dont l'objectif est de fournir un système de sécurité pour les appareils embarqués.

La nécessité de travailler sur un tel projet est née d'un constat : de plus en plus d'appareils connectés qui collectent et traitent les informations de l'environnement sont mis sur le marché. Cependant, selon Google, ces appareils sont plus sensibles aux problèmes de sécurité. L'entreprise note par exemple que les données que ces appareils collectent peuvent être vulnérables aux attaquants extérieurs. Cela implique que les virus peuvent voler des photos, des enregistrements audio et d’autres données.

Pour la filiale d'Alphabet, une solution simple pour y faire face serait un système sécurisé vérifiable pour le matériel embarqué. Pourquoi ? La sécurité du système est souvent traitée comme une fonctionnalité logicielle qui peut être ajoutée aux systèmes existants ou résolue avec un élément supplémentaire de matériel ASIC, ce qui n'est généralement pas suffisant.

C'est dans ce contexte qu'est né KataOS.

Google collabore également avec Antmicro. Le partenariat permettra d’émuler et de déboguer GDB sur les appareils cibles à l’aide de Renode. En interne, KataOS a la capacité de charger et d’exécuter dynamiquement des programmes tiers. Même les programmes créés en dehors de la structure CAmkES peuvent s’y exécuter. Les composants requis pour exécuter ces applications ne sont pas encore présents dans la source Github. Google a toutefois l’intention de rendre ces opérations disponibles prochainement.

Google a également construit une implémentation de référence pour KataOS appelée Sparrow. La raison de Sparrow est de montrer pleinement le système d’environnement sécurisé. Il utilise KataOS avec une plate-forme matérielle sécurisée. Sparrow inclut une racine de confiance clairement sécurisée construite avec OpenTitan sur l’architecture RISC-V. Ceci s’ajoute au noyau du système d’exploitation sécurisé. Cependant, pour la version initiale de KataOS, Google vise à utiliser l’émulation QEMU. Il utilisera cette émulation pour exécuter le système ARM 64 bits plus standard.


Annonce de Google

Alors que nous nous retrouvons de plus en plus entourés d'appareils intelligents qui collectent et traitent les informations de leur environnement, il est plus important que jamais de disposer d'une solution simple pour créer des systèmes sécurisés vérifiables pour le matériel embarqué. S'il n'est pas prouvé mathématiquement que les appareils qui nous entourent assurent la sécurité des données, les données personnellement identifiables qu'ils collectent, telles que les images de personnes et les enregistrements de leurs voix, pourraient être accessibles à des logiciels malveillants.

Malheureusement, la sécurité du système est souvent traitée comme une fonctionnalité logicielle qui peut être ajoutée aux systèmes existants ou résolue avec un élément supplémentaire de matériel ASIC - ce n'est généralement pas suffisant. Notre équipe de recherche Google a entrepris de résoudre ce problème en créant une plate-forme sécurisée et optimisée pour les appareils intégrés qui exécutent des applications ML. Il s'agit d'un projet en cours avec beaucoup à faire, mais nous sommes ravis de partager quelques détails préliminaires et d'inviter d'autres personnes à collaborer sur la plate-forme afin que nous puissions tous créer des systèmes ambiants intelligents dotés d'une sécurité intégrée par défaut.

Pour commencer à collaborer avec d'autres, nous avons ouvert plusieurs composants pour notre système d'exploitation sécurisé, appelé KataOS, sur GitHub, ainsi que des partenariats avec Antmicro sur leur simulateur Renode et les frameworks associés. Comme base de ce nouveau système d'exploitation, nous avons choisi seL4 comme micronoyau, car il place la sécurité au premier plan ; il est mathématiquement prouvé sécurisé, avec une confidentialité, une intégrité et une disponibilité garanties. Grâce au framework seL4 CAmkES, nous sommes également en mesure de fournir des composants système définis statiquement et analysables. KataOS fournit une plate-forme sécurisée de manière vérifiable qui protège la confidentialité de l'utilisateur, car il est logiquement impossible pour les applications de violer les protections de sécurité matérielles du noyau et les composants du système sont sécurisés de manière vérifiable. KataOS est également implémenté presque entièrement dans Rust, ce qui fournit un point de départ solide pour la sécurité logicielle, car il élimine des classes entières de bogues, telles que les erreurs ponctuelles et les débordements de tampon.

La version actuelle de GitHub inclut la plupart des éléments de base de KataOS, y compris les frameworks que nous utilisons pour Rust (tels que le crate sel4-sys, qui fournit des API d'appel système seL4), un serveur racine alternatif écrit en Rust (nécessaire pour la gestion dynamique de la mémoire à l'échelle du système ) et les modifications du noyau apportées à seL4 qui peuvent récupérer la mémoire utilisée par le serveur racine. Et nous avons collaboré avec Antmicro pour activer le débogage et la simulation GDB pour notre matériel cible avec Renode.

En interne, KataOS est également capable de charger et d'exécuter dynamiquement des applications tierces construites en dehors du framework CAmkES. Pour le moment, le code sur Github n'inclut pas les composants requis pour exécuter ces applications, mais nous espérons publier ces fonctionnalités dans un avenir proche.

Pour prouver un système ambiant sécurisé dans son intégralité, nous construisons également une implémentation de référence pour KataOS appelée Sparrow, qui combine KataOS avec une plate-forme matérielle sécurisée. Ainsi, en plus du noyau du système d'exploitation logiquement sécurisé, Sparrow inclut une racine de confiance logiquement sécurisée construite avec OpenTitan sur une architecture RISC-V. Cependant, pour notre version initiale, nous visons une plate-forme ARM 64 bits plus standard fonctionnant en simulation avec QEMU.

Notre objectif est d'ouvrir la totalité de Sparrow, y compris toutes les conceptions matérielles et logicielles. Pour l'instant, nous ne faisons que commencer avec une première version de KataOS sur GitHub. Ce n'est donc qu'un début, et nous espérons que vous vous joindrez à nous pour construire un avenir où les systèmes intelligents d'AM ambiant sont toujours dignes de confiance.

KataOS GitHub

Source : Google

Et vous ?

Que pensez-vous du projet de Google visant à développer un nouvel OS pour le matériel embarqué ?
Que pensez-vous de son approche de la sécurité notamment avec le choix des technologies et des outils ?
Êtes-vous d'accord avec le choix de Rust ? Le choix de seL4 comme micronoyau ?

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de Pierre Louis Chevalier
Expert éminent sénior https://www.developpez.com
Le 17/10/2022 à 16:32
C'est pas que je sois toujours fan de ce que fait Google, par exemple le cimetière Google c'est assez révoltant, mais sur ce coup la vu comment les entreprises sont très vulnérables aux cyberattaques, je pense que l'idée va dans le bon sens, après on ne sait pas si cette initiative sera bien reçu par le marché ou si cela va encore finir au cimetière Google.
2  0 
Avatar de defZero
Membre extrêmement actif https://www.developpez.com
Le 17/10/2022 à 21:37
Et que devient "Fuchsia OS" ?
Personnellement je serait curieux de voir un OS à µKernel percer, ne serait-ce que pour les capacités de sécurité accrue qu'ils peuvent offrir.
2  0 
Avatar de Madmac
Membre extrêmement actif https://www.developpez.com
Le 17/10/2022 à 18:40
Je me demande si le fait de tous réécrire dans un autre langage n'est pas un moyen de contourné les loi sur les brevets?
1  0 
Avatar de OrthodoxWindows
Membre émérite https://www.developpez.com
Le 17/10/2022 à 23:11
Il existe déjà un système excellent pour l'embarqué, mais qui semble injustement oublié par les fabricants, c'est KolibriOS :http://board.kolibrios.org/ http://kolibrios.org/fr/

Les performances de ce système sont impressionnantes.

Concernant l'OS de Google, premièrement, je m'en méfie beaucoup (je me méfie de tout ce qui vient de cette entreprise).Je ne peut âs dire grand chose pour l'instant, il faut que je me renseigne.

Cependant, j'ai déjà remarqué quelque chose :

La nécessité de travailler sur un tel projet est née d'un constat : de plus en plus d'appareils connectés qui collectent et traitent les informations de l'environnement sont mis sur le marché. Cependant, selon Google, ces appareils sont plus sensibles aux problèmes de sécurité. L'entreprise note par exemple que les données que ces appareils collectent peuvent être vulnérables aux attaquants extérieurs. Cela implique que les virus peuvent voler des photos, des enregistrements audio et d’autres données.
Une donnée ne peut-être collectée que si l'appareil est en ligne. Or dans le cas de l’embarqué industriel, un appareil qui n'a pas besoin de se connecter à internet ne se connecte tout simplement pas (c'est la raison pour laquelle de nombreux appareils sont encore sous Windows XP). Dans le cas de l'embarqué personnel (et peut-être dans certains cas professionnels), les appareils se connectent à internet même si cela n'est pas sollicité, ce qui crée des problèmes de sécurité. Probablement pour collecter des données d'utilisation. Donc un OS créé pour répondre à ce besoin est aussi créé (pas exclusivement, une connexion peut être légitime) pour répondre au besoin des fabricants de collecter des données d'utilisation. Il est d'ailleurs possible de connecter un réseau d'appareil connecté vers un appareil "serveur", en assurant la sécurité uniquement du côté serveur.

Je remarque autre chose : la licence est une licence Apache, très permissive. Google est connu pour fonder volontairement des projets sous licence permissive afin de les inclure dans des logiciels propriétaires.
D'ailleurs, je remarque que KolibriOS est fondé sur la GPL, comme Linux (qui est très utilisé dans l'embarqué). Il est possible que ce soit une des raisons pour laquelle KolibriOS n'intéresse pas les fabricants, car un système sous Apache laisse plus de possibilités pour brider un OS (c'est possible de tout reprendre en basculant sous licence propriétaire, alors que sous Linux, les fabricants ont peu de marge de manœuvre)...
2  1 
Avatar de Madmac
Membre extrêmement actif https://www.developpez.com
Le 17/10/2022 à 18:44
Citation Envoyé par Pierre Louis Chevalier Voir le message
C'est pas que je sois toujours fan de ce que fait Google, par exemple le cimetière Google c'est assez révoltant.
Dans la création de code, ils sont forts. Mais leur responsable de la mise en marché est nul. J'ignorais 90% de ses produits.
0  0 
Avatar de OrthodoxWindows
Membre émérite https://www.developpez.com
Le 17/10/2022 à 23:13
Citation Envoyé par Madmac Voir le message
Dans la création de code, ils sont forts. Mais leur responsable de la mise en marché est nul. J'ignorais 90% de ses produits.
Et encore... De nombreux produits sont fondé sur le code des autres. C'est la cas d'Android, de Youtube, et d'une partie du code de ChromeOS et de Chromium. Je pense que j'en oublie (ce sont les start-up qui réalise le travail, pour ensuite se faire bouffer par l'ogre).
0  0 
Avatar de Madmac
Membre extrêmement actif https://www.developpez.com
Le 19/10/2022 à 15:05
Citation Envoyé par OrthodoxWindows Voir le message
Et encore... De nombreux produits sont fondé sur le code des autres. C'est la cas d'Android, de Youtube, et d'une partie du code de ChromeOS et de Chromium. Je pense que j'en oublie (ce sont les start-up qui réalise le travail, pour ensuite se faire bouffer par l'ogre).
Tu me rappelle qu'ils ont une sorte de competition: Summer of Code. Ou un truc du genre qui a servi pour un certain nombre de bibliothèque.
0  0