62 votes

Vous avez accidentellement créé un virus ?

Je l'ai vu se produire assez souvent : J'écris une application en Delphi et lorsque je la compile, le détecteur de virus m'indique que j'ai créé un virus, puis il supprime immédiatement l'exécutable. C'est ennuyeux mais raisonnablement facile à réparer en faisant une reconstruction complète, en supprimant d'abord les fichiers *.dcu et parfois en attendant simplement.

Cela se produit avec Delphi 6, 7, 2005 et 2007, pour autant que je sache. Et Symantec, Kaspersky, McAfee et NOD32 ont tous été coupables de signaler ces faux positifs. Je sais que c'est parce que Delphi ajoute des horodatages à ses fichiers DCU et que ces horodatages se retrouvent dans l'exécutable final et semblent faire partie d'une signature virale aléatoire.

Je ne veux pas désactiver le scanner de virus, pas même pour un seul dossier ou fichier. Et je ne suis pas vraiment à la recherche d'une solution, mais je m'interroge sur ce qui suit :

  • Ces faux positifs se produisent-ils également avec d'autres compilateurs ?
  • Cela se produit-il également avec les exécutables .NET ?
  • D'autres personnes rencontrent-elles des problèmes similaires avec Delphi ?

1 votes

Je veux juste ajouter que cette erreur est assez rare, mais qu'elle se produit quand même environ une fois tous les trois mois pour moi ou un de mes collègues.

0 votes

Karpesky a signalé comme virus un programme que j'ai fait. Je leur ai envoyé un e-mail et ils l'ont corrigé pour les mises à jour suivantes.

3 votes

@Tom, la prévalence de Delphi a peut-être plus à voir avec la popularité des langages de type pascal en Europe de l'Est.

105voto

Copas Points 3729

Ces faux positifs se produisent-ils aussi avec d'autres compilateurs ?

Oui, il s'agit d'un problème courant dans le passé pour AutoIt comme indiqué dans ce message du forum "Mes AutoIt EXEs sont-ils vraiment infectés ?" . Dans la plupart des cas, y compris AutoIt elle découle de mauvaises pratiques heuristiques. Puisque AutoIt utilise le logiciel libre et ouvert UPX compresseur, il est souvent confondu avec un code malveillant qui utilise également UPX .

La meilleure (et peut-être la seule) chose que vous pouvez faire est de signaler ces erreurs, afin qu'ils puissent affiner leur heuristique ou au moins mettre votre application sur liste blanche.

Vous trouverez ci-dessous une liste des coordonnées de quelques sociétés antivirus populaires. Elles affirment toutes apprécier les soumissions car elles les aident à améliorer leur produit.

Il s'avère qu'il existe une excellente liste de logiciels AV sur wikipedia, appelée Liste des logiciels antivirus . Elle est plus complète que ma liste ci-dessus.

Un membre des Forums Autoit a fait un excellent script pour envoyer par e-mail un faux positif à une énorme liste de vendeurs d'antivirus. pour automatiser un peu ce processus.

3 votes

Mais ils ne sont intéressés que si vous êtes l'auteur. Pendant des années, McAfee a déclaré qu'un fichier .OBJ présent sur mon système était un programme potentiellement indésirable, alors qu'il n'avait aucun problème avec un .EXE qui l'incorporait. Mais je n'en étais pas l'auteur et, comme il s'agissait d'une ancienne version qui n'était plus prise en charge, l'auteur n'allait rien faire.

2 votes

@Loren : Intéressant, je ne savais pas qu'ils faisaient de telles distinctions. Merci de m'avoir prévenu !

1 votes

Un autre pour votre liste (je n'ai pas le représentant pour l'éditer), VIPRE de Sunbelt Software, www.sunbeltsoftware.com.

11voto

JimG Points 1576

Ça ressemble plus à une erreur heuristique pour moi. L'heuristique est-elle activée (certains scanners peuvent y faire référence en tant que "code de type virus") ? Les chances que les horodateurs correspondent à "une partie d'une signature virale" semblent trop faibles pour que cela se produise tout le temps.

Lorsque j'utilisais un antivirus, je n'ai jamais rencontré ce problème avec D6 ou D7.

1 votes

Oui, l'heuristique est activée. Ce n'est pas que cela me dérange, puisque l'ordinateur doit rester sécurisé et que je préfère gérer les faux positifs occasionnels plutôt que d'être la source d'une infection. Je travaille souvent sur des logiciels pour le marché financier et donc beaucoup d'informations sont sensibles.

9voto

Dmitry Osinovskiy Points 5420

Il existe en effet un virus Delphi dans la nature, voir http://www.sophos.com/blogs/sophoslabs/?p=6117

8voto

Conor Boyd Points 744

Oui, mon équipe a connu ce problème une demi-douzaine de fois en 2 ou 3 ans avec Sophos dans un environnement d'entreprise. C'est donc très rare, mais cela arrive.

Notre crétin d'informaticien a commencé par exiger que je passe en revue les 1,5 million de lignes de code de notre application pour "la faire disparaître", mais il n'est pas allé très loin dans cette voie...

Pour être juste, il était initialement préoccupé par le fait que nos clients pourraient également recevoir un tel avertissement, mais nous ne l'avons jamais vu se déclencher que lors de la construction d'un exe à partir de l'IDE sur le PC d'un développeur, jamais sur un exe de release build sur une boîte de test ou ailleurs.

Personnellement, cela arrive si rarement que nous ne nous en préoccupons pas.

2 votes

Je ne suis pas non plus inquiet à ce sujet. C'est juste ennuyeux car cela signifie un délai supplémentaire lors de la construction d'un nouvel exécutable. C'est un peu pire sur notre serveur de construction automatique, cependant. La compilation se passe bien, mais comme l'exécutable est immédiatement supprimé, il s'étouffe dans de telles occasions. Mais là encore, c'est extrêmement rare. (Et sur le serveur de construction, une nouvelle exécution de la construction corrige simplement le problème à nouveau).

4voto

Christoph Points 64389

Ce n'est pas si rare lorsque l'on utilise des compilateurs non standard ou que l'on fait des choses fantaisistes de bas niveau : Je me souviens avoir créé des faux positifs lorsque je me suis essayé au développement de systèmes d'exploitation : AntiVir n'aimait pas certains de mes binaires plats.

Récemment, il y a eu un post sur un tel problème à l'adresse suivante liste de diffusion tinyCC regading AVG.

1 votes

En fait, je sais qu'il me suffit d'appeler une seule fonction de l'API Windows dans un projet DLL pour déclencher les sonneries d'alarme de presque tous les scanners de virus. (L'API keyhook est considérée comme suspecte.) Mais pour éviter les faux positifs, je n'ai pas besoin de modifier le code source. Il me suffit de jeter les fichiers DCU (Delphi Compiled Units) pour qu'il les reconstruise à nouveau, avec des horodatages différents, générant ainsi apparemment une signature différente.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X