Les antivirus mobiles ne fonctionnent pas

Les antivirus mobiles ne fonctionnent pas
TL; DR si vos appareils mobiles d'entreprise nécessitent un antivirus, alors vous faites tout de travers et l'antivirus ne vous aidera pas.

Cet article est le résultat d'un débat houleux sur la question de savoir si un antivirus est nécessaire sur un téléphone mobile d'entreprise, dans quels cas il fonctionne et dans quels cas il est inutile. L’article examine les modèles de menaces contre lesquels, en théorie, un antivirus devrait protéger.

Les fournisseurs d'antivirus parviennent souvent à convaincre les entreprises clientes qu'un antivirus améliorera considérablement leur sécurité, mais dans la plupart des cas, il s'agit d'une protection illusoire, qui ne fait que réduire la vigilance des utilisateurs et des administrateurs.

La bonne infrastructure d’entreprise

Lorsqu’une entreprise compte des dizaines, voire des milliers d’employés, il est impossible de configurer manuellement chaque appareil utilisateur. Les paramètres peuvent changer chaque jour, de nouveaux employés arrivent, leurs téléphones portables et ordinateurs portables tombent en panne ou se perdent. De ce fait, tout le travail des administrateurs consisterait à déployer quotidiennement de nouveaux paramètres sur les appareils des collaborateurs.

Ce problème a commencé à être résolu sur les ordinateurs de bureau il y a longtemps. Dans le monde Windows, cette gestion s'effectue généralement à l'aide d'Active Directory, de systèmes d'authentification centralisés (Single Sign In), etc. Mais désormais, tous les employés disposent d'un smartphone ajouté à leur ordinateur, sur lequel se déroule une partie importante des processus de travail et stocke des données importantes. Microsoft a tenté d'intégrer ses Windows Phones dans un écosystème unique avec Windows, mais cette idée est morte avec la mort officielle de Windows Phone. Par conséquent, dans un environnement d’entreprise, vous devez dans tous les cas choisir entre Android et iOS.

Désormais dans un environnement d’entreprise, le concept d’UEM (Unified endpoint management) est en vogue pour gérer les appareils des collaborateurs. Il s'agit d'un système de gestion centralisé pour les appareils mobiles et les ordinateurs de bureau.
Les antivirus mobiles ne fonctionnent pas
Gestion centralisée des appareils des utilisateurs (gestion unifiée des points de terminaison)

L'administrateur système UEM peut définir différentes stratégies pour les machines des utilisateurs. Par exemple, permettre à l'utilisateur plus ou moins de contrôle sur l'appareil, installer des applications provenant de sources tierces, etc.

Ce que l'UEM peut faire :

Gérer tous les paramètres — l'administrateur peut interdire complètement à l'utilisateur de modifier les paramètres de l'appareil et de les modifier à distance.

Logiciel de contrôle sur l'appareil — permettent la possibilité d'installer des programmes sur l'appareil et d'installer automatiquement des programmes à l'insu de l'utilisateur. L'administrateur peut également bloquer ou autoriser l'installation de programmes depuis la boutique d'applications ou depuis des sources non fiables (à partir de fichiers APK dans le cas d'Android).

Blocage à distance — en cas de perte du téléphone, l'administrateur peut bloquer l'appareil ou effacer les données. Certains systèmes vous permettent également de définir la suppression automatique des données si le téléphone n'a pas contacté le serveur pendant plus de N heures, afin d'éliminer la possibilité de tentatives de piratage hors ligne lorsque des attaquants parviennent à retirer la carte SIM avant que la commande d'effacement des données ne soit envoyée depuis le serveur. .

Collecter des statistiques — suivez l'activité des utilisateurs, la durée d'utilisation de l'application, l'emplacement, le niveau de la batterie, etc.

Que sont les UEM ?

Il existe deux approches fondamentalement différentes pour la gestion centralisée des smartphones des employés : dans un cas, l'entreprise achète des appareils auprès d'un fabricant pour ses employés et choisit généralement un système de gestion auprès du même fournisseur. Dans un autre cas, les employés utilisent leurs appareils personnels pour travailler, et c'est ici que commence le zoo des systèmes d'exploitation, des versions et des plates-formes.

BYOD (Apportez votre propre appareil) est un concept dans lequel les employés utilisent leurs appareils et comptes personnels pour travailler. Certains systèmes de gestion centralisés vous permettent d'ajouter un deuxième compte professionnel et de séparer complètement vos données en personnelles et professionnelles.

Les antivirus mobiles ne fonctionnent pas

Directeur commercial Apple - Le système de gestion centralisé natif d'Apple. Ne peut gérer que les appareils Apple, les ordinateurs équipés de téléphones macOS et iOS. Prend en charge BYOD, créant un deuxième environnement isolé avec un autre compte iCloud.

Les antivirus mobiles ne fonctionnent pas

Gestion des points de terminaison Google Cloud — vous permet de gérer des téléphones sous Android et Apple iOS, ainsi que des ordinateurs de bureau sous Windows 10. La prise en charge BYOD est déclarée.

Les antivirus mobiles ne fonctionnent pas
Samsung Knox UEM - Prend en charge uniquement les appareils mobiles Samsung. Dans ce cas, vous ne pouvez immédiatement utiliser que Gestion des appareils mobiles Samsung.

En fait, il existe bien d’autres fournisseurs d’UEM, mais nous ne les analyserons pas tous dans cet article. La principale chose à garder à l’esprit est que de tels systèmes existent déjà et permettent à l’administrateur de configurer les appareils des utilisateurs de manière adéquate selon le modèle de menace existant.

Modèle de menace

Avant de choisir des outils de protection, nous devons comprendre de quoi nous nous protégeons, quelle est la pire chose qui puisse arriver dans notre cas particulier. Relativement parlant : notre corps est facilement vulnérable à une balle et même à une fourchette et un clou, mais nous ne mettons pas de gilet pare-balles lorsque nous quittons la maison. Notre modèle de menace n’inclut donc pas le risque d’être abattu sur le chemin du travail, même si statistiquement cela n’est pas si improbable. De plus, dans certaines conditions, le port d’un gilet pare-balles est tout à fait justifié.

Les modèles de menace varient d’une entreprise à l’autre. Prenons par exemple le smartphone d’un coursier qui s’apprête à livrer un colis à un client. Son smartphone ne contient que l'adresse de la livraison en cours et l'itinéraire sur la carte. La pire chose qui puisse arriver à ses données est une fuite des adresses de livraison des colis.

Et voici le smartphone du comptable. Il a accès au réseau d'entreprise via VPN, dispose d'une application client-banque d'entreprise installée et stocke des documents contenant des informations précieuses. Évidemment, la valeur des données sur ces deux appareils diffère considérablement et doit être protégée différemment.

L'antivirus nous sauvera-t-il ?

Malheureusement, derrière les slogans marketing se perd le véritable sens des tâches qu'un antivirus effectue sur un appareil mobile. Essayons de comprendre en détail ce que fait l'antivirus sur le téléphone.

Audit de sécurité

La plupart des antivirus mobiles modernes auditent les paramètres de sécurité de l'appareil. Cet audit est parfois appelé « vérification de la réputation de l’appareil ». Les antivirus considèrent qu'un appareil est sûr si quatre conditions sont remplies :

  • L'appareil n'est pas piraté (root, jailbreak).
  • L'appareil a un mot de passe configuré.
  • Le débogage USB n'est pas activé sur l'appareil.
  • L'installation d'applications à partir de sources non fiables (chargement latéral) n'est pas autorisée sur l'appareil.

Si, à la suite de l'analyse, l'appareil s'avère dangereux, l'antivirus en informera le propriétaire et proposera de désactiver la fonctionnalité « dangereuse » ou de renvoyer le micrologiciel d'usine s'il y a des signes de root ou de jailbreak.

Selon les coutumes de l’entreprise, il ne suffit pas d’avertir l’utilisateur. Les configurations dangereuses doivent être éliminées. Pour ce faire, vous devez configurer des politiques de sécurité sur les appareils mobiles à l'aide du système UEM. Et si un root/jailbreak est détecté, vous devez rapidement supprimer les données d'entreprise de l'appareil et bloquer son accès au réseau d'entreprise. Et cela est également possible avec l'UEM. Et ce n'est qu'après ces procédures que l'appareil mobile peut être considéré comme sûr.

Rechercher et supprimer les virus

Contrairement à la croyance populaire selon laquelle il n’existe pas de virus pour iOS, ce n’est pas vrai. Il existe encore des exploits courants dans la nature pour les anciennes versions d'iOS qui infecter les appareils grâce à l'exploitation des vulnérabilités du navigateur. Dans le même temps, en raison de l'architecture d'iOS, le développement d'antivirus pour cette plateforme est impossible. La raison principale est que les applications ne peuvent pas accéder à la liste des applications installées et ont de nombreuses restrictions lors de l'accès aux fichiers. Seul UEM peut obtenir la liste des applications iOS installées, mais même UEM ne peut pas accéder aux fichiers.

Avec Android, la situation est différente. Les applications peuvent obtenir des informations sur les applications installées sur l'appareil. Ils peuvent même accéder à leurs distributions (par exemple, Apk Extractor et ses analogues). Les applications Android ont également la possibilité d'accéder à des fichiers (par exemple, Total Commander, etc.). Les applications Android peuvent être décompilées.

Avec de telles capacités, l'algorithme antivirus suivant semble logique :

  • Vérification des candidatures
  • Obtenez une liste des applications installées et des sommes de contrôle (CS) de leurs distributions.
  • Vérifiez les applications et leur CS d'abord dans la base de données locale puis dans la base de données globale.
  • Si l'application est inconnue, transférez sa distribution vers la base de données globale pour analyse et décompilation.

  • Vérification des fichiers, recherche de signatures de virus
  • Vérifiez les fichiers CS dans la base de données locale, puis dans la base de données globale.
  • Vérifiez les fichiers pour détecter tout contenu dangereux (scripts, exploits, etc.) à l'aide d'une base de données locale puis globale.
  • Si un logiciel malveillant est détecté, informez l'utilisateur et/ou bloquez l'accès de l'utilisateur au logiciel malveillant et/ou transmettez les informations à l'UEM. Il est nécessaire de transférer les informations vers UEM car l'antivirus ne peut pas supprimer indépendamment les logiciels malveillants de l'appareil.

La plus grande préoccupation est la possibilité de transférer les distributions de logiciels de l'appareil vers un serveur externe. Sans cela, il est impossible de mettre en œuvre « l’analyse comportementale » revendiquée par les fabricants d’antivirus, car Sur l'appareil, vous ne pouvez pas exécuter l'application dans un « bac à sable » séparé ni la décompiler (son efficacité lors de l'utilisation de l'obscurcissement est une question complexe distincte). En revanche, des applications d'entreprise peuvent être installées sur les appareils mobiles des employés inconnus de l'antivirus car non présents sur Google Play. Ces applications mobiles peuvent contenir des données sensibles qui peuvent empêcher ces applications d'être répertoriées sur la boutique publique. Transférer de telles distributions au fabricant de l'antivirus semble incorrect du point de vue de la sécurité. Il est logique de les ajouter aux exceptions, mais je ne connais pas encore l'existence d'un tel mécanisme.

Les logiciels malveillants sans privilèges root peuvent

1. Dessinez votre propre fenêtre invisible au-dessus de l'application ou implémentez votre propre clavier pour copier les données saisies par l'utilisateur - paramètres de compte, cartes bancaires, etc. Un exemple récent est la vulnérabilité. CVE-2020-0096, à l'aide duquel il est possible de remplacer l'écran actif d'une application et ainsi d'accéder aux données saisies par l'utilisateur. Pour l'utilisateur, cela signifie la possibilité de vol d'un compte Google avec accès à la sauvegarde de l'appareil et aux données de sa carte bancaire. Pour l’organisation, il est important de ne pas perdre ses données. Si les données se trouvent dans la mémoire privée de l'application et ne sont pas contenues dans une sauvegarde Google, les logiciels malveillants ne pourront pas y accéder.

2. Accéder aux données dans les répertoires publics – téléchargements, documents, galerie. Il n'est pas recommandé de stocker les informations relatives à l'entreprise dans ces répertoires car elles sont accessibles par n'importe quelle application. Et l'utilisateur lui-même pourra toujours partager un document confidentiel en utilisant n'importe quelle application disponible.

3. Ennuyez l'utilisateur avec de la publicité, extrayez des bitcoins, faites partie d'un botnet, etc.. Cela peut avoir un impact négatif sur les performances des utilisateurs et/ou des appareils, mais ne constituera pas une menace pour les données de l'entreprise.

Les logiciels malveillants dotés des privilèges root peuvent potentiellement tout faire. Ils sont rares car le piratage des appareils Android modernes à l’aide d’une application est presque impossible. La dernière fois qu’une telle vulnérabilité a été découverte, c’était en 2016. Il s'agit du sensationnel Dirty COW, qui a reçu le numéro CVE-2016-5195. La clé ici est que si le client détecte des signes de compromission UEM, il effacera toutes les informations d'entreprise de l'appareil, de sorte que la probabilité de vol de données réussi à l'aide de tels logiciels malveillants dans le monde de l'entreprise est faible.

Les fichiers malveillants peuvent endommager à la fois l'appareil mobile et les systèmes d'entreprise auxquels il a accès. Examinons ces scénarios plus en détail.

Des dommages à un appareil mobile peuvent être causés, par exemple, si vous téléchargez une image dessus qui, une fois ouverte ou lorsque vous essayez d'installer un fond d'écran, transformera l'appareil en « brique » ou le redémarrera. Cela nuira très probablement à l'appareil ou à l'utilisateur, mais n'affectera pas la confidentialité des données. Bien qu'il y ait des exceptions.

La vulnérabilité a été récemment discutée CVE-2020-8899. Il a été allégué qu'il pourrait être utilisé pour accéder à la console des appareils mobiles Samsung à l'aide d'une image infectée envoyée par e-mail, messagerie instantanée ou MMS. Bien que l'accès à la console signifie ne pouvoir accéder qu'aux données des répertoires publics où les informations sensibles ne devraient pas se trouver, la confidentialité des données personnelles des utilisateurs est compromise, ce qui a effrayé les utilisateurs. Bien qu’en réalité, il n’est possible d’attaquer des appareils qu’en utilisant MMS. Et pour une attaque réussie, vous devez envoyer de 75 à 450 (!) messages. L'antivirus, malheureusement, n'aidera pas ici, car il n'a pas accès au journal des messages. Pour s’en prémunir, il n’existe que deux options. Mettez à jour le système d’exploitation ou bloquez les MMS. Vous pouvez attendre longtemps pour la première option et ne pas attendre, car... Les fabricants d'appareils ne publient pas de mises à jour pour tous les appareils. Désactiver la réception MMS dans ce cas est beaucoup plus simple.

Les fichiers transférés depuis des appareils mobiles peuvent endommager les systèmes de l'entreprise. Par exemple, il existe un fichier infecté sur un appareil mobile qui ne peut pas endommager l'appareil, mais peut infecter un ordinateur Windows. L'utilisateur envoie un tel fichier par email à son collègue. Il l'ouvre sur le PC et peut ainsi l'infecter. Mais au moins deux antivirus font obstacle à ce vecteur d'attaque : l'un sur le serveur de messagerie, l'autre sur le PC du destinataire. Ajouter un troisième antivirus à cette chaîne sur un appareil mobile semble carrément paranoïaque.

Comme vous pouvez le constater, la plus grande menace dans le monde numérique des entreprises réside dans les logiciels malveillants sans privilèges root. D'où peuvent-ils provenir sur un appareil mobile ?

Le plus souvent, ils sont installés à l'aide de magasins de chargement latéral, adb ou tiers, ce qui devrait être interdit sur les appareils mobiles ayant accès au réseau d'entreprise. Il existe deux options pour que les logiciels malveillants arrivent : depuis Google Play ou depuis UEM.

Avant de publier sur Google Play, toutes les applications sont soumises à une vérification obligatoire. Mais pour les applications comportant un petit nombre d'installations, les contrôles sont le plus souvent effectués sans intervention humaine, uniquement en mode automatique. Par conséquent, il arrive parfois que des logiciels malveillants pénètrent dans Google Play, mais pas souvent. Un antivirus dont les bases de données sont mises à jour en temps opportun sera capable de détecter les applications contenant des logiciels malveillants sur l'appareil avant Google Play Protect, qui est encore à la traîne dans la vitesse de mise à jour des bases de données antivirus.

UEM peut installer n'importe quelle application sur un appareil mobile, incl. malware, donc toute application doit être analysée en premier. Les applications peuvent être vérifiées aussi bien pendant leur développement à l'aide d'outils d'analyse statique et dynamique qu'immédiatement avant leur distribution à l'aide de bacs à sable spécialisés et/ou de solutions antivirus. Il est important que la candidature soit vérifiée une fois avant d'être téléchargée sur UEM. Par conséquent, dans ce cas, un antivirus sur un appareil mobile n'est pas nécessaire.

Protection du réseau

Selon le fabricant de l'antivirus, votre protection réseau peut offrir une ou plusieurs des fonctionnalités suivantes.

Le filtrage d'URL est utilisé pour :

  • Blocage du trafic par catégories de ressources. Par exemple, interdire de regarder des informations ou d’autres contenus non professionnels avant le déjeuner, moment où l’employé est le plus efficace. En pratique, le blocage fonctionne le plus souvent avec de nombreuses restrictions - les fabricants d'antivirus ne parviennent pas toujours à mettre à jour en temps opportun les répertoires des catégories de ressources, compte tenu de la présence de nombreux « miroirs ». De plus, il existe des anonymiseurs et Opera VPN, qui ne sont le plus souvent pas bloqués.
  • Protection contre le phishing ou l'usurpation d'identité des hôtes cibles. Pour ce faire, les URL auxquelles l'appareil accède sont d'abord vérifiées par rapport à la base de données antivirus. Les liens, ainsi que les ressources vers lesquelles ils mènent (y compris d'éventuelles redirections multiples), sont vérifiés par rapport à une base de données de sites de phishing connus. Le nom de domaine, le certificat et l'adresse IP sont également vérifiés entre l'appareil mobile et le serveur de confiance. Si le client et le serveur reçoivent des données différentes, il s'agit alors soit d'un MITM (« homme du milieu »), soit d'un blocage du trafic utilisant le même antivirus ou divers types de proxys et de filtres Web sur le réseau auquel l'appareil mobile est connecté. Il est difficile de dire avec certitude qu’il y a quelqu’un entre les deux.

Pour accéder au trafic mobile, l'antivirus construit un VPN ou utilise les capacités de l'API Accessibility (API pour les applications destinées aux personnes handicapées). Le fonctionnement simultané de plusieurs VPN sur un appareil mobile est impossible, la protection du réseau contre les antivirus qui construisent leur propre VPN n'est donc pas applicable dans le monde de l'entreprise. Un VPN d'un antivirus ne fonctionnera tout simplement pas avec un VPN d'entreprise, utilisé pour accéder au réseau d'entreprise.

Donner à un antivirus l’accès à l’API d’accessibilité présente un autre danger. L'accès à l'API d'accessibilité signifie essentiellement l'autorisation de faire n'importe quoi pour l'utilisateur : voir ce que l'utilisateur voit, effectuer des actions avec des applications à la place de l'utilisateur, etc. Étant donné que l'utilisateur doit explicitement accorder un tel accès à l'antivirus, il refusera très probablement de le faire. Ou, s’il y est contraint, il s’achètera un autre téléphone sans antivirus.

Pare-feu

Sous ce nom général on retrouve trois fonctions :

  • Collecte de statistiques sur l'utilisation du réseau, divisées par application et type de réseau (Wi-Fi, opérateur cellulaire). La plupart des fabricants d'appareils Android fournissent ces informations dans l'application Paramètres. Le dupliquer dans l’interface antivirus mobile semble redondant. Des informations globales sur tous les appareils peuvent être intéressantes. Il est collecté et analysé avec succès par les systèmes UEM.
  • Limiter le trafic mobile : définir une limite et vous avertir lorsqu'elle est atteinte. Pour la plupart des utilisateurs d'appareils Android, ces fonctionnalités sont disponibles dans l'application Paramètres. La définition centralisée des restrictions relève de la tâche de l'UEM, et non de l'antivirus.
  • En fait, un pare-feu. Ou, en d’autres termes, bloquer l’accès à certaines adresses IP et ports. Compte tenu du DDNS sur toutes les ressources populaires et de la nécessité d'activer le VPN à ces fins, qui, comme écrit ci-dessus, ne peut pas fonctionner en conjonction avec le VPN principal, la fonction semble inapplicable dans la pratique des entreprises.

Vérification de la procuration Wi-Fi

Les antivirus mobiles peuvent évaluer la sécurité des réseaux Wi-Fi auxquels l'appareil mobile se connecte. On peut supposer que la présence et la force du cryptage sont vérifiées. Dans le même temps, tous les programmes modernes utilisent le cryptage pour transmettre des données sensibles. Par conséquent, si un programme est vulnérable au niveau du lien, il est également dangereux de l'utiliser via n'importe quel canal Internet, et pas seulement via le Wi-Fi public.
Par conséquent, le Wi-Fi public, y compris sans cryptage, n’est ni plus dangereux ni moins sécurisé que tout autre canal de transmission de données non fiable et sans cryptage.

Protection contre les spams

La protection, en règle générale, se résume à filtrer les appels entrants selon une liste spécifiée par l'utilisateur, ou selon une base de données de spammeurs connus qui harcèlent sans cesse les assurances, les prêts et les invitations au théâtre. Même s’ils n’appellent pas pendant leur confinement, ils recommenceront bientôt. Seuls les appels sont soumis à un filtrage. Les messages sur les appareils Android actuels ne sont pas filtrés. Étant donné que les spammeurs changent régulièrement de numéro et qu'il est impossible de protéger les canaux texte (SMS, messageries instantanées), la fonctionnalité est plus marketing que pratique.

Protection antivol

Effectuer des actions à distance avec un appareil mobile en cas de perte ou de vol. Une alternative aux services Find My iPhone et Find My Device d'Apple et de Google, respectivement. Contrairement à leurs homologues, les services des fabricants d'antivirus ne peuvent pas bloquer un appareil si un attaquant a réussi à le réinitialiser aux paramètres d'usine. Mais si cela ne s'est pas encore produit, vous pouvez effectuer les opérations suivantes avec l'appareil à distance :

  • Bloc. Protection contre un voleur simple d'esprit, car cela peut facilement être fait en réinitialisant l'appareil aux paramètres d'usine via la récupération.
  • Découvrez les coordonnées de l'appareil. Utile lorsque l'appareil a été récemment perdu.
  • Activez un bip fort pour vous aider à trouver votre appareil s'il est en mode silencieux.
  • Réinitialisez l'appareil aux paramètres d'usine. Cela a du sens lorsque l'utilisateur a reconnu l'appareil comme irrémédiablement perdu, mais ne souhaite pas que les données qui y sont stockées soient divulguées.
  • Pour faire une photo. Prenez une photo de l'agresseur s'il tient le téléphone dans ses mains. La fonctionnalité la plus discutable est que la probabilité qu'un attaquant admire le téléphone sous un bon éclairage est faible. Mais la présence sur l'appareil d'une application capable de contrôler tranquillement l'appareil photo du smartphone, de prendre des photos et de les envoyer à son serveur suscite des inquiétudes raisonnables.

L'exécution de commandes à distance est fondamentale dans tout système UEM. La seule chose qui leur manque est la photographie à distance. C'est un moyen infaillible d'inciter les utilisateurs à retirer les batteries de leurs téléphones et à les mettre dans un sac Faraday après la fin de la journée de travail.

Les fonctions antivol des antivirus mobiles ne sont disponibles que pour Android. Pour iOS, seul UEM peut effectuer de telles actions. Il ne peut y avoir qu'un seul UEM sur un appareil iOS : il s'agit d'une fonctionnalité architecturale d'iOS.

résultats

  1. Une situation dans laquelle un utilisateur peut installer un logiciel malveillant sur un téléphone n'est PAS ACCEPTABLE.
  2. Un UEM correctement configuré sur un appareil d’entreprise élimine le besoin d’un antivirus.
  3. Si des vulnérabilités 0-day du système d’exploitation sont exploitées, l’antivirus est inutile. Il peut uniquement indiquer à l'administrateur que l'appareil est vulnérable.
  4. L'antivirus ne peut pas déterminer si la vulnérabilité est exploitée. En plus de publier une mise à jour pour un appareil pour lequel le fabricant ne publie plus de mises à jour de sécurité. Au maximum, c'est un an ou deux.
  5. Si nous ignorons les exigences des régulateurs et du marketing, les antivirus mobiles d'entreprise ne sont nécessaires que sur les appareils Android, où les utilisateurs ont accès à Google Play et installent des programmes provenant de sources tierces. Dans d’autres cas, l’efficacité de l’utilisation d’antivirus n’est qu’un placebo.

Les antivirus mobiles ne fonctionnent pas

Source: habr.com

Ajouter un commentaire