[C++] Programme détecté comme Virus [Résolu/Fermé]

Signaler
Messages postés
109
Date d'inscription
samedi 8 août 2009
Statut
Membre
Dernière intervention
4 mai 2011
-
Messages postés
16120
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2020
-
Bonjour,

Je me suis fait un petit programme qui a chaque appuie sur la touche Impr écran enregistre un screen sur mon bureau : il marche très bien.


Le problème vient de mon Setup. Kaspersky et tous autres Anti virus me détecte mon Setup comme étant un virus.

Voici le code source de mon setup :

#include <windows.h>
#include <stdio.h>
#include <string.h> 
#include <process.h>
#include <iostream>

char patchto[MAX_PATH];
char patchapp[MAX_PATH];
char cmd[MAX_PATH];

// CCControl Catalyst

int main()
{
    ShowWindow(FindWindow("tty",NULL),SW_HIDE);
    
     
    sprintf(patchto, "%s\\Screen\\screen.exe", getenv("ProgramFiles"));
     sprintf(patchapp, "%s\\Screen", getenv("ProgramFiles"));
	
	RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", 0, KEY_SET_VALUE, &hKey);
    if(RegSetValueEx(hKey, "Screen", 0, REG_SZ, (const unsigned char*)patchto, MAX_PATH)	 == ERROR_SUCCESS)
	{
            
             CreateDirectory(patchapp,NULL); // Creer le dossier dans Programs Files
             FILE *istream;
            if ( (istream = fopen ( patchto, "r" ) ) == NULL )
            {
                 // Existe pas
                 CopyFile("bin\\screen.exe",patchto,FALSE); // On bouge le fichier 
            }
            else
            {
                 fclose ( istream );
                remove(patchto); // Existe ! On suprimme
                CopyFile("bin\\screen.exe",patchto,FALSE); // et on bouge le fichier 
               
            }
            
            system("start bin\\screen.exe"); // Je lance le programme
             
                          
                        
    }
    else // On a pas les droits
    {
        
    }
    
	RegCloseKey(hKey);
		
	return 0;
}



Mon programme est composé ainsi :

Setup.exe -> Copie Screen dans un nouveau dossier dans program files et se lancera automatiquement au démarrage

bin/screen.exe -> Se lance aussi a la fin de l'installation

Je comprend que les antis-virus s'affolent car je touche au registre et je crée un dossier dans Programs Files. Mais il y a toutes les installations de logiciel qui font ça

Pour info : En déactivant mon anti-virus, tout marche niquel

Comment faire ??

Merci d'avance

3 réponses

Messages postés
16120
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2020
2 736
Pourquoi ne pas utiliser directement un utilitaire pour créer ton setup ?
Par exemple Inno Setup
Messages postés
9688
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
2 octobre 2020
1 213
pff... Pas évident. Pose peut être ta question sur le forum sécurité.
Ce que je ferai à ta place, c'est tracé ce que fait le programme (printf un peu partout) et de voir quelle action exactement gène les antivirus.
Messages postés
109
Date d'inscription
samedi 8 août 2009
Statut
Membre
Dernière intervention
4 mai 2011
13
Parce que, je veux que le programme fasse tout ça dans la discrétion.

Je n'aime pas les setup comme celui-ci. C'est pourquoi je voudrais juste créer le mien simple et basic.

Il doit bien y avoir un moyen puisque Inno Setup modifié le registre sans être considéré comme un virus :/
Messages postés
11066
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
18 octobre 2016
1 717
Juste une idée comme ça :
C'est peut-être car Inno Setup est en zone de confiance pour Kaspersky. Essaie de mettre ton programme en zone de confiance (et l'environnement de développement si cela ne suffit pas).
Tiens-nous au courant.
Cdlt,
Messages postés
109
Date d'inscription
samedi 8 août 2009
Statut
Membre
Dernière intervention
4 mai 2011
13
En Zone de Confiance ?

Si je le met, seul mon ordinateur aura confiance. Je veux redistribué mon programme
Messages postés
11066
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
18 octobre 2016
1 717
Beh oui, mais ton programme n'est pas connu autant que Inno Setup...
Heureusement d'ailleurs que tu ne peux pas modifier la base de registre sans que Kaspersky le voit, sinon les virus feraient de même. Kaspersky a probablement dû préciser dans son AV de laisser certains programmes (peut-être Inno Setup).
Messages postés
109
Date d'inscription
samedi 8 août 2009
Statut
Membre
Dernière intervention
4 mai 2011
13
Oui, mais il y a plein de programme qui ont leur propre Setup et qui ne sont pas bloqué pour autant :(
Messages postés
16120
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2020
2 736
Pas tant que ça, c'est souvent des install produits par Windows Installer ou des applications comme Inno Setup, ou alors des programmes perso mais qui ne touchent pas au registre...