Les développeurs détestent-ils les antivirus ?
Un programmeur manifeste sa haine envers ces solutions de sécurité


« Je déteste les antivirus ». C’est par ces mots que Alex Yumashev, un développeur .NET révèle dans un billet de blog pourquoi il déteste les antivirus.

Ces logiciels dont la mission principale est l’identification, la neutralisation et la suppression des programmes malveillants sont quelques fois des sources de problèmes pour les développeurs lors des tests ou de l’utilisation de leurs applications qui sont identifiées comme des menaces.

Ymashev explique que malgré la signature de son application avec un certificat de confiance Verisign, malgré qu’elle ait été développée sur .NET, qu’il utilise ClickOnce pour l’installation (en d'autres termes, le code s'exécute dans un sandbox), etc. son logiciel est toujours détecté comme un virus.

Pourquoi ? Selon Ymashev, si votre programme a une protection anticopie intégrée, un antivirus va probablement le détecter comme un très dangereux cheval de Troie. Si votre programme est une sorte de compilateur, c'est-à-dire qu’il est capable de générer ses propres fichiers exécutables, il sera détecté comme un virus d’autoréplication, etc.

Par ailleurs, Ymashev critique les éditeurs d’antivirus qui, selon lui, ne répondent jamais aux rapports de « faux positifs » qui sont transmis par le développeur, ou dans le cas contraire demandent à avoir les certificats de signature du code, adresses, informations sur l’entreprise, etc.

Enfin, pour montrer combien les antivirus peuvent signaler une alerte pour n’importe quoi, il propose ce petit bout de code en C qui sera détecté comme un virus.

Code C : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
#include <windows.h>
#include <string>
 
int __stdcall WinMain(HINSTANCE,HINSTANCE,LPSTR,int)
{
  return MessageBoxA(0,(std::string("->")+GetCommandLineA()+"<-").c_str(),"Cmdline",0);
}

Une situation que doivent vivre probablement plusieurs développeurs et qui pousse ceux-ci à détester les antivirus ?



Source : Blog Jitbit