QEMU 6.0 arrive avec des améliorations et un support pour ARM, des options expérimentales et plus

QEMU

Lancement de la nouvelle version du projet QEMU 6.0 dans lequel plus de 3300 modifications de 268 développeurs ont été apportées à la préparation et dont les modifications incluent des améliorations de pilote, le support de nouvelles plates-formes et des options expérimentales.

Pour ceux qui ne connaissent pas QEMU, sachez qu'il s'agit d'un logiciel qui vous permet d'exécuter un programme compilé pour une plate-forme matérielle sur un système avec une architecture complètement différente, par exemple, pour exécuter une application ARM sur un PC compatible x86.

En mode virtualisation dans QEMU, les performances d'exécution de code dans l'environnement sandbox sont proches du système matériel en raison de l'exécution directe des instructions sur le CPU et de l'utilisation de l'hyperviseur Xen ou du module KVM.

Principales nouveautés de QEMU 6.0

Dans cette nouvelle version de Qemu 6.0 L'émulateur de pilote NVMe est désormais conforme à la spécification NVMe 1.4 et inclut la prise en charge expérimentale des espaces de noms zonés, des E / S multivoies et du chiffrement de stockage de bout en bout.

L'émulateur ARM ajoute la prise en charge de l'architecture ARMv8.1-M 'Helium' et les processeurs Cortex-M55, ainsi que les instructions étendues ARMv8.4 TTST, SEL2 et DIT. La prise en charge des cartes ARM mps3-an524 et mps3-an547 a également été ajoutée. Une émulation de périphérique supplémentaire est implémentée pour les cartes xlnx-zynqmp, xlnx-versal, sbsa-ref, npcm7xx et sabrelite.

Pour ARM dans l'environnement utilisateur et les modes d'émulation au niveau du système, La prise en charge de l'extension ARMv8.5 MTE est implémentée (MemTag, Memory Tagging Extension), qui vous permet de lier des balises à chaque opération de mappage de mémoire et d'organiser une vérification du pointeur lors de l'accès à la mémoire, qui doit être associée à la balise correcte. L'extension peut être utilisée pour bloquer l'exploitation des vulnérabilités causées par l'accès à des blocs de mémoire déjà libérés, les débordements de tampon, les appels de pré-initialisation et l'utilisation en dehors du contexte actuel.

L'émulateur 68k ajoute la prise en charge d'un nouveau type de machine émulée «virt» utiliser des appareils virtio pour optimiser les performances, tandis que l'émulateur d'architecture x86 ajoute la possibilité d'utiliser la technologie AMD SEV-ES (virtualisation cryptée sécurisée) pour crypter les registres du processeur utilisés dans le système invité, rendant le contenu des registres inaccessible à l'environnement hôte si le système invité ne leur accorde pas explicitement l'accès.

Aussi dans Qemu 6.0 options expérimentales ajoutées "-Machine x-remote" et "-device x-pci-proxy-dev" pour déplacer l'émulation de périphérique vers des processus externes. Dans ce mode, seule l'émulation d'adaptateur SCSI lsi53c895 est actuellement prise en charge.

Aussi bien que un nouveau module FUSE pour l'exportation des équipements blocs, vous permettant de monter une partie de l'état de tout périphérique de bloc utilisé dans l'invité. L'exportation est effectuée à l'aide de la commande block-export-add QMP ou de l'option "–export" de l'utilitaire qemu-storage-daemon.

D'autre part, il est mentionné que Virtualofs corrige les vulnérabilités:

  • CVE-2020-35517 - Permet d'accéder à l'environnement hôte à partir du système invité en créant un fichier de périphérique spécial sur le système invité par un utilisateur privilégié dans un répertoire partagé avec l'environnement hôte.
  • CVE-2021-20263 - Causé par un bogue dans la gestion des attributs étendus dans l'option 'xattrmap', et peut entraîner l'ignorance des autorisations d'écriture et de l'élévation des privilèges au sein de l'invité.

Parmi les autres changements qui ressortent de cette nouvelle version:

  • Ajout de la prise en charge expérimentale pour la création d'instantanés du contenu de la RAM.
  • Ajout de la prise en charge de l'émulation des processeurs Qualcomm Hexagon avec DSP.
  • Le générateur de code classique TCG (Tiny Code Generator) est compatible avec les environnements hôtes macOS sur les systèmes dotés de la nouvelle puce Apple M1 ARM.
  • L'émulateur RISC-V pour cartes Microchip PolarFire prend en charge le flash QSPI NOR.
  • L'émulateur Tricore prend désormais en charge un nouveau modèle de cartes TriBoard qui émulent le SoC Infineon TC27x.
  • L'émulateur ACPI offre la possibilité de nommer les cartes réseau sur les systèmes invités, quel que soit l'ordre de connexion au bus PCI.
  • Virtiofs ajoute la prise en charge de l'option FUSE_KILLPRIV_V2 pour améliorer les performances des invités.
  • VNC ajoute la prise en charge de la transparence du curseur et la prise en charge de la mise à l'échelle de la résolution d'écran dans virtio-vga en fonction de la taille de la fenêtre.
  • QMP (QEMU Machine Protocol) ajoute la prise en charge de l'accès parallèle asynchrone lors de l'exécution des tâches de sauvegarde.
  • L'émulateur USB a ajouté la possibilité d'enregistrer le trafic généré lorsque vous travaillez avec des périphériques USB dans un fichier pcap séparé pour une inspection ultérieure dans Wireshark.
  • De nouvelles commandes QMP load-snapshot, save-snapshot et delete-snapshot ont été ajoutées pour gérer les instantanés qcow2.

Enfin, si vous souhaitez en savoir plus, vous pouvez vérifier les détails dans le lien suivant.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.