d2jsp
Log InRegister
d2jsp Forums > Off-Topic > International > Français > Antivirus
Prev12
Add Reply New Topic New Poll
Member
Posts: 35,865
Joined: Apr 8 2006
Gold: 111.10
May 5 2017 07:17am
Quote (Bremen @ 3 May 2017 16:08)
Non, ça dépend des antivirus, ça c'est une légende urbaine, et les antivirus pros / payants sont loin d'être safe contre des attaques simples à mettre en place. Avast est un bien meilleur antivirus que Kaspersky pro full suite (KIS) par exemple, ou que la plupart des antivirus récents, qui sont sensibles à des MITM vieux de 5 ans et des failles stupides. Après si tu veux un système 100% secure faut de toute façon pas utiliser Windows, ni même un Linux classique type Debian ou Ubuntu, faut régler tous les droits sur les devices de tous les users et process, c'est long et chiant, mais c'est clairement mieux qu'un antivirus (checkez les access control des OS si ça vous intéresse, y en a beaucoup mais trois principaux qui sont MAC, DAC (le plus utilisé) et RBAC). Sécuriser ton système ça se fait généralement pas à l'aide d'un antivirus tout fait de toute façon, c'est complexe et faut quand même une certaine connaissance.

J'ai pas mal étudié les problèmes liés aux antivirus, y a qqes articles qui sont intéressants si ça te / vous branche, et ça permet de mieux comprendre le fonctionnement des antivirus en général, et des énormes failles dont la plupart font preuves, et dont 99% des utilisateurs ne sont absolument pas au courant.


comment un antivirus simple peut il etre meilleur que la (l'une des) référence en antivirus + firewall ?
Member
Posts: 16,218
Joined: Sep 27 2009
Gold: 13.00
May 5 2017 08:34am
Quote (ShaY @ May 5 2017 03:17pm)
comment un antivirus simple peut il etre meilleur que la (l'une des) référence en antivirus + firewall ?


Bon le post va être assez long mais j'ai pas trop le choix.

Ill faut comprendre avant tout la communication sécurisée sur Internet, et le système des certificats ou PKI, pour Public Key Infrastructure. D'abord, comment est-ce qu'on communique de manière sécurisée sur Internet ? Le principe de base c'est celui de la cryptographie asymétrique. Tu as Bob et Alice qui veulent communiquer, mais Alice veut être sûr que seul Bob soit capable de lire ce qu'elle va lui écrire. Elle va chiffrer le message qu'elle veut envoyer à Bob avec une clé publique, qui, comme son nom l'indique est publique. Par contre, le gros avantage de cette technique, c'est que seule la personne qui possède la clé privée associée à la clé publique est capable de déchiffrer le message.

Donc Alice chiffre le message avec la clé publique de Bob et lui envoie, Bob peut le décrypter avec sa clef publique (en plus de ça, Alice génère un hash du message à l'envoie, pour être sûr qu'une personne au milieu de la conversion qui a aussi la clé publique de Bob ne modifie le message. Quand Bob reçoit le message, il calcul le hash, si il est différent de celui reçu, alors le message a été modifié.)

Du côté de Bob, il doit être sûr que c'est bien Alice qui a envoyer le message. Donc pour ça, Alice signe le message avec sa clé privée. N'importe qui doit pouvoir le décrypter avec la clé publique de Alice, et si Bob peut le décrypter, ça signifie que le message provient bien d'Alice.

Bon alors évidemment comme ça ça à l'air bien, mais c'est pas encore tout à fait fini. Quand Alice parle avec Bob, elle veut être sûre qu'elle utilise bien la clé publique de Bob, et pas la clé de quelqu'un d'autre, et Bob doit aussi être sûr que la signature qu'il reçoit est bien celle d'Alice.
Les deux vont donc utiliser un certificat, qui valide l'identité de l'autre en confirmant sa clé publique par une trusted third party. Quand tu créés un site web par exemple, c'est ça que tu fais. Tu demandes la création d'un certificat après avoir généré ta clé publique et ta clé privée auprès d'une autorité de certification, une autorité de confiance, qui permet aux gens qui te contact d'être certain de la sécurité que tu assures. Pour cela, les deux partis utilisent la clé publique de l'autorité de certification, pour vérifier le certificat de l'autre et sa clé publique.

Et donc, comme tu l'a compris, l'autorité de certification sert à signer les certificats avec sa clé privée, et permet aux parties communicantes de s'assurer qu'il communique avec quelqu'un de trusted.

On parle d'architecture Public Key Infrastructure parce qu'un Internet fonctionne comme une "chaîne de confiance", ou chaîne de certification. Il faut parfois remonter plusieurs autorité de certification d'une chaîne pour vérifier une clé: tu as l'autorité de confiance tout en haut, puis des autorités un peu plus faible en dessous qui sont trusté par l'autorité de confiance et ainsi de suite.

Avec ce que je t'ai écris tu te rend donc bien compte que la clé privée d'un certificat est extrêmement importante, puisque c'est elle qui permet de signer les certificats et autres, et donc de les rendre trusted.

Alors, comment marche un antivirus / firewall. Quand tu l'installe, l'antivirus va installer son certificat racine dans le magasin de certificat de ton OS ou dans un dossier, ou bien une base de données ... Ca dépend de l'antivirus. Ce certificat va devenir le certificat autorité de ta machine, le certificat de confiance. En fait, l'antivirus va jouer le rôle de proxy TLS (le protocole qui te permet d'avoir du HTTPS) qui aura l'autorité sur toutes les signatures.

Quand tu vas envoyer une requête depuis ton browser, ton antivirus va l'intercepter puis il va forger un certificat TLS pour prendre la place du serveur que tu veux contacter. Ensuite, il va créer un deuxième certificat TLS pour contacter le serveur. Du coup toi, ta connexion sécurisée se termine à ton firewall, qui va pouvoir inspecter le contenu de tes paquets, ce qui lui permet de bloquer le trafic non désiré par exemple. Et ça va marcher pareil dans l'autre sens, quand le serveur va te répondre. En fait il ne répond pas au browser, mais à l'antivirus.

Kaspersky a eu la bonne idée de stocker la clé privée de son certificat autorité (donc la clé la plus important qui est sensée être connue de personne) dans le dossier d'installation, en clair. Et en plus cette clé à la bonne idée d'être pré-générée, c'est à dire qu'elle est la même pour tout les gens qui utilisent Kaspersky.

Il suffit à quelqu'un de récupérer ce document sur ton PC, puis de se placer entre toi et Internet, d'intercepter toutes requêtes. Le man-in-the-middle va d'abord générer sa propre clé publique et créer un certificat signé par la clé privée de Kaspersky, qu'il a récupéré sur ta machine. La première requête que tu vas envoyer au site va se faire intercepter, et le mitm va te répondre, en se faisant passer pour le site, en t'envoyant sa propre clé publique, pour que tu chiffres tes messages avec. Comme son certificat est créé à partir de la clé privée de Kaspersky, ce dernier va automatiquement l'accepter. Et la suite tu la devine: tu cryptes tes messages avec la clé publique du mitm, il les décrypte, retransmet tout au site web que tu veux contacter, décrypte les réponses ... Il a accès à toutes les conversions en clair entre toi et n'importe quel site que tu veux contacter.

Avast ne stock pas les données en clair, elles sont stockées dans le magasin de certificat de Windows ou de Firefox sous Linux, et c'est extrêmement difficile d'y accéder (impossible en fait). Il faut que pendant l'install tu inspectes les registres utilisés, si éventuellement il y a des traces, que tu fasses du reverse engineering sur le code de l'installer ... Enfin bref c'est dur, très long, et pas garanti du tout que tu trouves quoi que ce soit.

Voila donc le gros problème de Kaspersky, en plus du fait qu'il soit sensibles à des attaques qui sont vieilles de 6 ou 7 ans et qu'il ai des politiques un peu bizarre, mais j'en parlerais pas le poste est suffisamment long comme ça ^^.
Member
Posts: 35,865
Joined: Apr 8 2006
Gold: 111.10
May 5 2017 09:08am
Quote (Bremen @ 5 May 2017 16:34)
Bon le post va être assez long mais j'ai pas trop le choix.

Ill faut comprendre avant tout la communication sécurisée sur Internet, et le système des certificats ou PKI, pour Public Key Infrastructure. D'abord, comment est-ce qu'on communique de manière sécurisée sur Internet ? Le principe de base c'est celui de la cryptographie asymétrique. Tu as Bob et Alice qui veulent communiquer, mais Alice veut être sûr que seul Bob soit capable de lire ce qu'elle va lui écrire. Elle va chiffrer le message qu'elle veut envoyer à Bob avec une clé publique, qui, comme son nom l'indique est publique. Par contre, le gros avantage de cette technique, c'est que seule la personne qui possède la clé privée associée à la clé publique est capable de déchiffrer le message.

Donc Alice chiffre le message avec la clé publique de Bob et lui envoie, Bob peut le décrypter avec sa clef publique (en plus de ça, Alice génère un hash du message à l'envoie, pour être sûr qu'une personne au milieu de la conversion qui a aussi la clé publique de Bob ne modifie le message. Quand Bob reçoit le message, il calcul le hash, si il est différent de celui reçu, alors le message a été modifié.)

Du côté de Bob, il doit être sûr que c'est bien Alice qui a envoyer le message. Donc pour ça, Alice signe le message avec sa clé privée. N'importe qui doit pouvoir le décrypter avec la clé publique de Alice, et si Bob peut le décrypter, ça signifie que le message provient bien d'Alice.

Bon alors évidemment comme ça ça à l'air bien, mais c'est pas encore tout à fait fini. Quand Alice parle avec Bob, elle veut être sûre qu'elle utilise bien la clé publique de Bob, et pas la clé de quelqu'un d'autre, et Bob doit aussi être sûr que la signature qu'il reçoit est bien celle d'Alice.
Les deux vont donc utiliser un certificat, qui valide l'identité de l'autre en confirmant sa clé publique par une trusted third party. Quand tu créés un site web par exemple, c'est ça que tu fais. Tu demandes la création d'un certificat après avoir généré ta clé publique et ta clé privée auprès d'une autorité de certification, une autorité de confiance, qui permet aux gens qui te contact d'être certain de la sécurité que tu assures. Pour cela, les deux partis utilisent la clé publique de l'autorité de certification, pour vérifier le certificat de l'autre et sa clé publique.

Et donc, comme tu l'a compris, l'autorité de certification sert à signer les certificats avec sa clé privée, et permet aux parties communicantes de s'assurer qu'il communique avec quelqu'un de trusted.

On parle d'architecture Public Key Infrastructure parce qu'un Internet fonctionne comme une "chaîne de confiance", ou chaîne de certification. Il faut parfois remonter plusieurs autorité de certification d'une chaîne pour vérifier une clé: tu as l'autorité de confiance tout en haut, puis des autorités un peu plus faible en dessous qui sont trusté par l'autorité de confiance et ainsi de suite.

Avec ce que je t'ai écris tu te rend donc bien compte que la clé privée d'un certificat est extrêmement importante, puisque c'est elle qui permet de signer les certificats et autres, et donc de les rendre trusted.

Alors, comment marche un antivirus / firewall. Quand tu l'installe, l'antivirus va installer son certificat racine dans le magasin de certificat de ton OS ou dans un dossier, ou bien une base de données ... Ca dépend de l'antivirus. Ce certificat va devenir le certificat autorité de ta machine, le certificat de confiance. En fait, l'antivirus va jouer le rôle de proxy TLS (le protocole qui te permet d'avoir du HTTPS) qui aura l'autorité sur toutes les signatures.

Quand tu vas envoyer une requête depuis ton browser, ton antivirus va l'intercepter puis il va forger un certificat TLS pour prendre la place du serveur que tu veux contacter. Ensuite, il va créer un deuxième certificat TLS pour contacter le serveur. Du coup toi, ta connexion sécurisée se termine à ton firewall, qui va pouvoir inspecter le contenu de tes paquets, ce qui lui permet de bloquer le trafic non désiré par exemple. Et ça va marcher pareil dans l'autre sens, quand le serveur va te répondre. En fait il ne répond pas au browser, mais à l'antivirus.

Kaspersky a eu la bonne idée de stocker la clé privée de son certificat autorité (donc la clé la plus important qui est sensée être connue de personne) dans le dossier d'installation, en clair. Et en plus cette clé à la bonne idée d'être pré-générée, c'est à dire qu'elle est la même pour tout les gens qui utilisent Kaspersky.

Il suffit à quelqu'un de récupérer ce document sur ton PC, puis de se placer entre toi et Internet, d'intercepter toutes requêtes. Le man-in-the-middle va d'abord générer sa propre clé publique et créer un certificat signé par la clé privée de Kaspersky, qu'il a récupéré sur ta machine. La première requête que tu vas envoyer au site va se faire intercepter, et le mitm va te répondre, en se faisant passer pour le site, en t'envoyant sa propre clé publique, pour que tu chiffres tes messages avec. Comme son certificat est créé à partir de la clé privée de Kaspersky, ce dernier va automatiquement l'accepter. Et la suite tu la devine: tu cryptes tes messages avec la clé publique du mitm, il les décrypte, retransmet tout au site web que tu veux contacter, décrypte les réponses ... Il a accès à toutes les conversions en clair entre toi et n'importe quel site que tu veux contacter.

Avast ne stock pas les données en clair, elles sont stockées dans le magasin de certificat de Windows ou de Firefox sous Linux, et c'est extrêmement difficile d'y accéder (impossible en fait). Il faut que pendant l'install tu inspectes les registres utilisés, si éventuellement il y a des traces, que tu fasses du reverse engineering sur le code de l'installer ... Enfin bref c'est dur, très long, et pas garanti du tout que tu trouves quoi que ce soit.

Voila donc le gros problème de Kaspersky, en plus du fait qu'il soit sensibles à des attaques qui sont vieilles de 6 ou 7 ans et qu'il ai des politiques un peu bizarre, mais j'en parlerais pas le poste est suffisamment long comme ça ^^.


J'allais répondre k juste histoire de troller un peu mais j'ai une question sérieuse,

Si on prend une métaphore, KIS laisse la clé de la maison posée vite fait sur la table du salon on est d'accord ? Si oui, c'est pas bien génant tant que cette foutue porte est fermée a clef, non ?
Member
Posts: 6,551
Joined: Aug 14 2006
Gold: 17,277.49
May 5 2017 09:17am
Bremen, les attaques de ce genre (MITM avec accès préalable à la machine en question) sont rarissimes pour les particuliers non? Je suis d'accord que ce genre de faille est grave, mais je suppose que la plupart des gens qui payent un antivirus le font plutôt pour se prémunir contre les keyloggers etc.

Ensuite Kaspersky si je me souviens bien c'est Russe, donc ça m'étonne pas trop qu'il laisse la porte grande ouverte.

Member
Posts: 16,218
Joined: Sep 27 2009
Gold: 13.00
May 5 2017 09:18am
Oui effectivement, mais c'est très rare qu'un pirate passe par la porte pour récupérer la clé en général. Je dirais que c'est plus comme si ils avaient laissés la clé sous le paillasson. Un mec au courant en sécurité n'utilisera pas Kaspersky rien que pour ça, et du coup c'est peu probable que quelqu'un qui l'utilise bosse dans un environnement suffisamment sécurisé pour éviter tout type de virus type cheval de troie, worm ou w/e. Et c'est encore plus grave que ça émane d'une société aussi connue que Kaspersky, surtout sur ce genre de choses que sont les clés privées pour l'encryption. C'est vraiment hyper grave, un pirate qui a accès à ça te ruine plus ou moins toute ta vie internet et probablement une bonne partie de ta vie privée aussi.

En plus, pour rappel, cette clé est commune à TOUS les utilisateurs de Kaspersky. Pour faire une métaphore, c'est comme si ta clé de maison ouvrait aussi les portes de tout le voisinage, tu vois le truc ? Et ce genre de problèmes a touché des outils de pub (SuperFish, qui utilisait un outil de développement qui avait une clé privée similaire tout le temps. Un mec a trouvé la clé privée et à niqué plein de produits à cause de ça. Y a aussi ce soucis dans des laptop Dell ... Enfin bref, c'est vraiment dangereux.

This post was edited by Bremen on May 5 2017 09:23am
Member
Posts: 16,218
Joined: Sep 27 2009
Gold: 13.00
May 5 2017 09:22am
Quote (Hubbard @ May 5 2017 05:17pm)
Bremen, les attaques de ce genre (MITM avec accès préalable à la machine en question) sont rarissimes pour les particuliers non? Je suis d'accord que ce genre de faille est grave, mais je suppose que la plupart des gens qui payent un antivirus le font plutôt pour se prémunir contre les keyloggers etc.

Ensuite Kaspersky si je me souviens bien c'est Russe, donc ça m'étonne pas trop qu'il laisse la porte grande ouverte.


Oui évidemment c'est très rare pour les particuliers, mais c'est possible. En fait c'est pas vraiment ça le problème, comme je le dis plus haut c'est surtout le fait que cette clé privée soit la même pour tous les KIS, et ça, ça ne touche pas que les antivirus. Après les attaques MITM restent assez large, généralement c'est plutôt utilisé pour du déni de service, mais le simple fait que ce genre de failles simples à régler existent (suffit d'appeler la fonction crypt() de Linux sur ton fichier) est dangereux.

En plus les attaques MITM c'est facile à faire en vrai, t'installe Kali t'as des outils tout prêt super simples à utiliser ^^.

This post was edited by Bremen on May 5 2017 09:25am
Member
Posts: 35,865
Joined: Apr 8 2006
Gold: 111.10
May 5 2017 10:11am
Et bien pour une fois que j'ai accepté de payer pour une solution antivirus / Fwall j'ai pris de la merde.

Pourtant cette saloperie de KIS sort en general 1er (ou deuxieme avec bitdefender) dans les tests / comparatifs antivirus...
Member
Posts: 16,218
Joined: Sep 27 2009
Gold: 13.00
May 5 2017 05:43pm
Quote (ShaY @ May 5 2017 06:11pm)
Et bien pour une fois que j'ai accepté de payer pour une solution antivirus / Fwall j'ai pris de la merde.

Pourtant cette saloperie de KIS sort en general 1er (ou deuxieme avec bitdefender) dans les tests / comparatifs antivirus...


Ouais mais comme je te dis, en tant qu'antivirus il a des politiques intéressantes, mais son gros point faible c'est ce stockage de clé et le fait qu'il soit sensible à l'attaque CRIME. Mais comme l'a dit Hubbard, c'est rarissime que tu subisses ce genre d'attaques en tant que particulier, ça t'arrivera jamais dans 99% des cas. Et puis c'est probable qu'il y ai eu une mise à jour aujourd'hui, car le papier qui présente la faille date de milieu 2016.
Go Back To Français Topic List
Prev12
Add Reply New Topic New Poll