Qu'est-ce que «YaraScanService» qui apparaît dans macOS Mojave Beta (10.14) et macOS High Sierra (10.13.6)?

27

Je viens de passer à macOS Mojave version 10.14 Beta et j'ai remarqué un nouveau processus appelé YaraScanService. Le processus consomme trop de RAM (environ 10 Go). J'ai tué le processus en utilisant Activity Monitor mais il est revenu une heure plus tard.

  • Quel est ce processus et que fait-il exactement?
  • Existe-t-il un moyen de le fermer et / ou de l'empêcher de monopoliser la mémoire?
Farabi Abdelwahed
la source
1
Il s'agit de l'outil de suppression de logiciels malveillants Apple (/System/Library/CoreServices/MRT.app/). Voir In 10.14 Beta 2 - que fait YaraScanService? . Voir Comment supprimer Yarascan d'OSX? et qu'est-ce que l'application MRT? . C'est le résultat de la mise à jour de Mojave et devrait finalement arrêter de scanner. Ne supprimez pas le MRT.app si vous comptez sur les fonctionnalités de sécurité d'Apple.
user187561
Est-il possible de limiter son utilisation de RAM? ou est-ce au détriment de l'utilisation d'une version Beta
Farabi Abdelwahed

Réponses:

17

MRT / YaraScan est un outil antivirus protégé par MacOS. La raison de son utilisation de la mémoire obscène est essentiellement la raison pour laquelle OSX ne dispose pas d'un «antivirus» formel.

Plus simplement, YaraScan fait partie de la «suite de volatilité» ici; https://www.volatilityfoundation.org/about

Sachez qu'un virus et du matériel piraté illégalement ne sont détectés que par un ensemble de chemins de code `` signature '' et qu'ils dépendent souvent de bogues, d'exploits et de correctifs faibles.Il est donc normal que l'antivirus moderne le plus puissant soit issu d'un droit d'auteur outil de détection des infractions.

YaraScan s'exécute une fois après la mise à jour de Mojave, puis se supprime. Il a également été constaté qu'il persiste sur certains systèmes MacOS au sein de MRT. La raison pour laquelle il utilise autant de mémoire est que, sauf programmation contraire (comme c'est un opt-out), un processus qui doit analyser une grande quantité de fichiers pour un fichier de taille inconnue qui pourrait être crypté dans lesdits fichiers recherchés utilisera un grand quantité de mémoire inactive pour enregistrer tous les fichiers numérisés décryptés pendant une durée limitée au cas où ils seraient à nouveau nécessaires. Pourquoi? Parce que la RAM vide est de la RAM gaspillée, je veux dire que vous devez toujours lui donner des watts, alors pourquoi supprimer les trucs dessus quand quelque chose d'autre ne veut pas être là? Il faut 100 fois plus de temps pour le récupérer.

Plus important encore, si vous Filevault ou APFS, TOUTES ces données sont cryptées et doivent être décryptées pour être lues. De nombreuses applications doivent en fait être lancées puis analysées lorsqu'elles sont chargées, car de nombreux fichiers peuvent se regrouper pour former une menace dans l'espace mémoire en tant que «fichier simultané» unique. Les virus peuvent être partiellement stockés dans un dylib pour une application complètement indépendante.

La quantité de temps est activement décidée par Grand Central Dispatch dans votre Mac et dès que vous essayez d'utiliser un programme qui a besoin de cette RAM logique, il essaiera de l'effacer. Notez que la mémoire virtuelle dans ce cas doit être volumineuse, car tout ce qui est déchiffré y est mieux stocké jusqu'à ce que vous soyez littéralement à court d'espace que supprimé sur un passage secondaire peu de temps après la création à plusieurs reprises.

Il s'agit d'un nouveau comportement à l'ère des SSD pour maximiser la durée de vie du lecteur par rapport à la réactivité. Le comportement actuel de GCD suggère que les ralentissements proviennent d'un processeur rapide créant des données déchiffrées plus rapidement qu'elles ne peuvent être écrites sur le disque et d'autres requêtes sur la RAM devant attendre la fin du SSD / HDD.

user1901982
la source
10
Donc, Apple espionne le stockage des gens à leur insu? Comment est-ce que ce n'est pas la première page à la Sony DRM-gate?
dhchdhd
4
YaraScan runs once after Mojave update, and then deletes itself. Il fonctionne pour moi après une panique du noyau, donc je suppose que le système le charge depuis le lecteur de récupération selon les besoins. Juste FYI.
Shelton
1
Bon à savoir, c'est un accord unique. Je viens de rafraîchir mon système d'exploitation après avoir eu une série de problèmes, puis voir un programme lié à un virus inconnu était troublant.
Dan Loughney
7
Il ne s'est définitivement pas supprimé après avoir été exécuté sur ma machine. Au pic, le moniteur d'activité l'a montré en utilisant 80,50 Go de RAM (ma boîte a 32 Go de RAM physique). Je l'ai laissé fonctionner jusqu'à ce que le processus disparaisse. L'exécutable existe toujours à /System/Library/CoreServices/MRT.app/Contents/XPCServices/YaraScanService.xpc. C'est sur macOS 10.13.6.
pjv
1
YaraScan fait désormais partie de XProtect / MRT / Gatekeeper. MRT étant littéralement un outil de suppression de logiciels malveillants. Avant 10.13, je pense que c'est dans le programme d'installation, mais je suis sur le même système et je ne l'ai pas présent. Je mettrai à jour cette réponse pour refléter cela. En ce qui concerne l'utilisation importante de la RAM, veuillez garder à l'esprit qu'il s'agit de mémoire virtuelle, AKA un fichier sur le disque de taille X (avec le bonus de ce fichier toujours effacé à la fermeture). Il sera beaucoup plus grand que la RAM car MRT n'utilisera pas beaucoup de RAM pour stocker les octets décryptés, il suffit de le vider sur le disque jusqu'à ce que vous manquiez d'espace puis de vous soucier de la supprimer.
user1901982
7

Il fonctionne également sur 10.13.6 (17G65).

1054  66.3  2.1 62395936 359328   ??  Us   11:48AM  10:39.14 /System/Library/CoreServices/MRT.app/Contents/XPCServices/YaraScanService.xpc/Contents/MacOS/YaraScanService

Il semble probable https://github.com/virustotal/yara

/apple/296339/mrt-process-using-large-unbounded-amount-of-memory

dhchdhd
la source
3
Effectivement. D'après ce que je peux dire, YaraScanService n'est qu'une partie de MRT, et au moins dans 10.13.6 MRT semble fonctionner après chaque redémarrage. Il ne peut pas toujours exécuter la partie YaraScanService de lui-même, mais d'après mon expérience, il le fait.
Greg A. Woods
4
Un si bon moyen d'augmenter l'obsolescence des anciens macs… Moi: "Mon Mac est lent à cause de Yara!" Apple: "Donc, vous voulez avoir des virus? Mieux vaut mettre à jour votre Mac"
w00t
2
J'ai fini par le supprimer car je n'ai jamais exécuté de code non fiable. Apple ajoutant des fonctionnalités ayant un impact sur les performances sans fournir un moyen simple de les désactiver (par exemple, le paramètre plist géré par un nouveau champ de préfiltre de sécurité) semble un peu cool.
dhchdhd
2

Il ne consomme pas vraiment votre RAM. Il utilise probablement des E / S mappées en mémoire lors de la lecture de ces fichiers, mais cela signifie uniquement que le contenu des fichiers est mappé sur l'espace de mémoire virtuelle, cela ne signifie pas réellement que la mémoire physique est utilisée. Pour une utilisation réelle, vous devez regarder "Taille réelle de la mémoire dans le moniteur d'activité.

Matt K.
la source
1
En fait, il utilise de la RAM (et les E / S mappées en mémoire utilisent également de la RAM - c'est l'idée!), Provoquant la compression et / ou la compression de la RAM déjà utilisée, ce qui aggrave encore l'utilisation du système tout en ça fonctionne
Greg A. Woods
Ce n'est pas ainsi que fonctionnent les E / S de fichiers mappés en mémoire. Il mappe simplement le fichier à l'espace d'adressage de la mémoire, il ne lui alloue en fait aucune mémoire. L'espace d'adressage sur les plates-formes 64 bits est large de 2 à 64 (en théorie, selon la plate-forme, certains bits peuvent avoir une fonction spéciale), ce qui est bien au-delà de la capacité de la mémoire physique.
Matt K.
1
Les E / S mappées en mémoire "allouent" très certainement la mémoire physique - et provoquent ainsi une "pression" de la mémoire, forçant le noyau à compresser et / ou à extraire la mémoire sinon la mémoire active est toujours utilisée à d'autres fins. Vous ne pouvez pas mettre quelque chose en mémoire si vous n'avez pas un endroit spécifique dans la mémoire physique réelle alloué pour le copier. L'espace d'adressage de la mémoire virtuelle est directement mappé à la mémoire physique chaque fois qu'un processus y accède de quelque manière que ce soit, même si cette zone particulière est sauvegardée par un stockage secondaire comme dans les E / S mappées en mémoire.
Greg A. Woods
Bien sûr, les fichiers mappés en mémoire sont accessibles via la mémoire physique, mais ces blocs sont traités comme un cache et ils sont d'abord soumis à une pression mémoire. Aucune implémentation saine de pagination du système d'exploitation ne comprimerait ou n'échangerait les pages de mémoire active tout en conservant une quantité importante de pages mmappées. Dans ce cas, le YaraScanService sur mon ordinateur avait plus de 20 gigaoctets mappés mais n'utilisait qu'environ 300 Mo de mémoire physique. Fondamentalement, l'affirmation selon laquelle les E / S de fichiers mappés en mémoire provoquent une pression sur la mémoire est la même que la revendication du cache de disque provoque un échange et une pression sur la mémoire.
Matt K.
1
Les E / S mappées en mémoire nécessitent beaucoup plus de mémoire physique que le cache de tampon équivalent, en particulier avec certains modèles d'accès. Si vous regardez la quantité de pression de la mémoire (dans le graphique dans l'onglet "Mémoire" du moniteur d'activité), et la croissance de la mémoire compressée et / ou de l'utilisation de swaps pendant que YaraScanService s'exécute sur n'importe quelle machine avec un système de fichiers volumineux et complet et beaucoup d'autres les gros processus en cours d'exécution, vous verrez qu'il provoque une grave perturbation dans la mesure où il provoque parfois un thrashing. Même lorsque Chrome perd de la mémoire et devient énorme, ce n'est pas un cochon comme YSS.
Greg A. Woods