Créé accidentellement un virus?
j'ai vu cela se produire assez souvent: j'écris une application dans Delphi et quand je la compile, le virus-scanner me dit que j'ai créé un virus et puis supprime immédiatement l'exécutable à nouveau. C'est ennuyeux mais facile à réparer en faisant une reconstruction complète, en supprimant le *.les fichiers dcu d'abord et parfois simplement en attendant.
cela arrive avec Delphi 6, 7, 2005 et 2007, autant que je sache. Et Symantec, Kaspersky, McAfee et NOD32 ont tous été coupables la déclaration de ces faux positifs. Je sais que C'est parce que Delphi ajoute des horodateurs à ses fichiers DCU et que ces horodateurs finissent dans l'exécutable final et semblent faire partie d'une signature de virus aléatoire.
Je ne veux pas désactiver le virus-scanner, même pour un seul dossier ou fichier. Et je ne suis pas vraiment pour une solution, mais je me demande ce qui suit:
- ces faux positifs se produisent-ils aussi avec d'autres compilateurs?
- est-ce que cela arrive aussi avec les exécutables. net?
- Faire du bien aux autres également remarquer des problèmes similaires avec Delphi?
18 réponses
est-ce que ces faux positifs se produisent aussi avec d'autres compilateurs?
Oui, c'est a été un problème commun dans le passé pour AutoIt comme abordé dans ce post de forum "est-ce que mes maladies auto-immunes sont vraiment infectés?" . Dans la plupart des cas, y compris AutoIt il découle de mauvaises pratiques heuristiques. Depuis AutoIt utilise le libre et ouvert UPX compresseur, il est souvent confondu avec le code malveillant qui utilise également UPX .
la meilleure (et peut-être seulement) chose que vous pouvez faire est de signaler ces erreurs, afin qu'ils puissent affiner leur heuristique ou au moins white Liste votre application.
vous trouverez ci-dessous une liste des coordonnées de quelques entreprises antivirus populaires. Ils disent tous apprécier les soumissions car cela les aide à améliorer leur produit.
- Antivirir - Contact
- A2 (A Au Carré) - Contact (adresse courriel)
- Avast! - Contact
- AVG - Contact
- BitDefender - Contact
- BullGuard - Contact
- anti-virus CA - Contact
- ClamAV - Contact
- ClamWin - Contact
- Comodo - Contact
- Nod32 - Contact
- eSafe - Contact (connexion requise)
- Fortinet - Contact
- F-PROT - Contact
- F-Secure - Contact
- G-Data - Contact
- Kaspersky - Contact
- McAfee - Contact (adresse e-mail)
- Norman - Contact (adresse courriel))
- Panda Anti-Virus - Contact
- Sophos - Contact
- Symantec (Norton) - Contact
- Vipre - Contact
- Windows Live OneCare - Contact
- ZoneLabs - Contact
il S'avère Qu'il y a une grande liste de logiciels AV sur wikipedia, appelée "liste de logiciels antivirus " . Il est plus complet que ma liste ci-dessus.
un membre des Forums Autoit fait un grand script pour envoyer un faux positif à une liste énorme des vendeurs AV pour automatiser ce processus un peu.
ressemble plus à un fiasco heuristique pour moi. Avez-vous activé l'heuristique (certains scanners peuvent l'appeler "code semblable à un virus")? Les chances que les horodatage équivaudraient à "une partie de la signature d'un virus" semblent trop faibles pour se produire tout le temps.
quand j'ai utilisé un scanner de virus, je n'ai jamais vu ce problème avec D6 ou D7.
il y a effectivement le virus Delphi dans la nature, voir http://www.sophos.com/blogs/sophoslabs/?p=6117
Oui, mon équipe a vécu cela peut-être une demi-douzaine de fois en 2-3 ans avec Sophos dans un environnement d'entreprise. Donc, très rarement, mais ça arrive.
notre crétin informatique a commencé en exigeant que je passe en revue toutes les lignes de code de 1,5 M dans notre application pour "faire en sorte qu'elle disparaisse", mais il n'est pas allé trop loin en poursuivant cette ligne...
pour être honnête, il était d'abord inquiet que nos clients pourraient aussi recevoir un tel avertissement, mais nous n'avons jamais vu déclenché lors de la construction d'un exe à partir de L'IDE sur le PC d'un développeur, jamais sur une version construire exe sur une boîte de test ou ailleurs.
personnellement, cela arrive si rarement que nous ne nous en soucions pas.
ça m'est arrivé avec le code déployé. La prochaine mise à jour du scanner résolu le problème. Certains Crétins ont écrit un virus en utilisant le même compilateur et la signature faisait partie de la bibliothèque runtime, pas réellement dans le code hostile.
ce n'est pas si rare quand on utilise des compilateurs non standard ou quand on fait des trucs de fantaisie de bas niveau: je me souviens avoir créé des faux positifs quand j'ai travaillé dans OS-development: Antivirir n'a pas aimé certains de mes binaires plats.
récemment, il y a eu un post sur un tel problème à la tinyCC mailing list regading AVG.
Je n'ai jamais vu cela, ayant fait beaucoup de développement C++ et .NET avec Visual Studio (de la version 1.5 à 2010).
Je n'ai vu cela arriver qu'avec les monteurs. Par exemple, MASM32 avertit en fait les gens qu'il pourrait déclencher des scanners de virus puisque les EXEs sont si petits (et/ou certains virus sont écrits dans l'assemblage). Mon scanner McAfee a identifié certains des programmes d'exemple comme des virus.
cela ne devrait se produire que pour les scanners de virus qui ont un mode d'analyse" semble suspect".
dans certaines applications, si J'utilise RtlVclOptimize.pas, L'antivirus Avira dit que j'ai créé un virus.
en plus de ce que d'autres ont dit, les programmes anti-virus modernes augmentent l'alerte aux virus si vos programmes utilisent aussi des API" suspectes " (comme URLdownloadFile ou D'autres API hooking). si vous google "delphi RAT FUD API indétectable" vous trouverez de nombreux sujets intéressants .
certains programmes antivirus signalent même un fichier batch comme un virus et ne peuvent pas être convaincus qu'il ne l'est pas. Très ennuyeux, si ce fichier fait partie d'une bibliothèque tierce et que L'avertissement de virus est déclenché à chaque fois que TortoiseSVN le vérifie. J'ai fini par désactiver le scanner de virus, supprimer le fichier et faire une propagation. (Sans désactiver le scanner, Je ne pouvais même pas le faire: - ()
il y a quelques années, chaque fois que nous avons mis à jour le Linker GNU à partir de sources mingw et que nous avons commencé à le distribuer avec notre compilateur, nous avons reçu des rapports selon lesquels virusscanners classifiait ld.exe virus. (.exe écrit .ex. ..)
Je ne dirais pas qu'il s'agit d'un" faux positif", parce que, à proprement parler, il n'est pas faux et le logiciel antivirus n'est pas" coupable " de quoi que ce soit.
je suis sûr à 99%, qu'il s'agit de l'analyse heuristique agissant vers le haut (je parie qu'il détecte votre exécutable comme quelque chose le long des lignes de win32.virus.Générique-notez le Générique , il s'agit d'un signe, que ce n'est pas dans sa signature db, mais plutôt a été détecté par les heuristiques) et, avec être heuristique et tout, il ne vous donne aucune sorte de garantie, que quoi qu'il trouve est malveillant, il fait juste sorte de le faire savoir à vous, que l'exécutable est suspect de son point de vue .
la solution la plus simple serait simplement d'ajouter une exception pour votre fichier par nom (c'est toujours le même nom, correct?). Si vous êtes mal à l'aise avec cela, vous devriez, probablement, faire votre logiciel antivirus vous invite avant de prendre des mesures afin vous pouvez faire passer votre fichier manuellement.
en général, j'ai trouvé le codage dans windows avec un logiciel antivirus quelque peu irritant (ne le faites pas beaucoup de nos jours, mais tout de même), surtout si le dit logiciel est en"mode paranoïaque". Aussi irritant soit-il, il est inévitable (IMO).
ça m'est arrivé aussi. Accrocher le clavier déclenchera presque n'importe quel logiciel de balayage heuristique pour signaler un logger de clé. Il y a probablement beaucoup d'autres appels système qui déclenche trop. Solution - essayez de reconcevoir votre code ou contactez le fabricant AV pour inclure votre logiciel dans la liste des exceptions.
je me souviens d'un autre étrange:
un dossier était signalé comme suspect. La seule chose est que le dossier était un .OBJ! Un. EXE qui contenait le code le .OBJ contained n'était pas considéré comme un problème.
si vous avez des problèmes avec les faux positifs, il ya VirusTotal service en ligne qui peut vous aider à vérifier votre dossier contre le nombre de moteurs antivirus.
C'est un service gratuit et actuellement il peut exécuter antivirus vérifier avec près de 40 moteurs antivirus.
de nombreux développeurs honnêtes ont des problèmes en raison de logiciels antivirus imprudents. Voir aussi: comment prévenir la fausse alerte de virus positive sur mon logiciel?
Imaginez que pour chaque faux positif qu'ils montrent, vous perdez un client possible. Peut-être que nous pouvons nous unir contre de tels produits antivirus et les forcer à être plus prudent sur les fausses alarmes positives, même pour obtenir des revenus pour les ventes que nous perdons à cause d'eux.
VS plate-forme toolset 2010 rend mon programme simple à détecter comme virus. Changer l'ensemble d'outils en VS 2013 résout le problème.
il crée simplement un HttpWebRequest et écrit le résultat dans un fichier.