[C++] Programme détecté comme Virus

Résolu
luc743 Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   -  
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   -
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
A voir également:

3 réponses

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Pourquoi ne pas utiliser directement un utilitaire pour créer ton setup ?
Par exemple Inno Setup
0
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
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.
0
luc743 Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   15
 
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 :/
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
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,
0
luc743 Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   15
 
En Zone de Confiance ?

Si je le met, seul mon ordinateur aura confiance. Je veux redistribué mon programme
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
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).
0
luc743 Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   15
 
Oui, mais il y a plein de programme qui ont leur propre Setup et qui ne sont pas bloqué pour autant :(
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
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...
0