W32.yaha.k@mm remover [vc6]

Contenu du snippet

Ce programme, écrit en catastrophe quand notre reseau a été pris d'assaut par ce virus, permet de le retirer sur toute sations utilisant windows 2000

Il est basé sur plusieurs sources du site, il est simple mais il peut toujour servir si vous êtes dans le meme cas que moi.

Source / Exemple :


#include <windows.h>
#include <tlhelp32.h>
#include <string.h>
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include "RegistreUtil.h"

bool ShellExit(char *ExeName);

void main (void)
{
		ShellExit("WinServices.exe")
		ShellExit("Nav32_loader.exe")
		ShellExit("Tcpsvs32.exe")
		printf ("\n\nSUPPRESSION DES FICHIERS :");
		remove ("c:\\WINNT\\system32\\WinServices.exe");
		remove ("c:\\WINNT\\system32\\Nav32_loader.exe");
		remove ("c:\\WINNT\\system32\\Tcpsvs32.exe");
		remove ("c:\\WINNT\\system32\\Hotmail_hack.exe");
		remove ("c:\\WINNT\\system32\\Friendship.scr");
		remove ("c:\\WINNT\\system32\\World_of_friendship.scr");
		remove ("c:\\WINNT\\system32\\Shake.scr");
		remove ("c:\\WINNT\\system32\\Sweet.scr");
		remove ("c:\\WINNT\\system32\\Be_happy.scr");
		remove ("c:\\WINNT\\system32\\Friend_finder.exe");
		remove ("c:\\WINNT\\system32\\I_like_you.scr");
		remove ("c:\\WINNT\\system32\\Love.scr");
		remove ("c:\\WINNT\\system32\\Dance.scr");
		remove ("c:\\WINNT\\system32\\Gc_messenger.exe");
		remove ("c:\\WINNT\\system32\\True_love.scr");
		remove ("c:\\WINNT\\system32\\Friend_happy.scr");
		remove ("c:\\WINNT\\system32\\Best_friend.scr");
		remove ("c:\\WINNT\\system32\\Life.scr");
		remove ("c:\\WINNT\\system32\\Colour_of_life.scr");
		remove ("c:\\WINNT\\system32\\Friendship_funny.scr");
		remove ("c:\\WINNT\\system32\\Funny.scr");
		printf (" OK\nSUPPRESSION DES PROCESSUS ET DES FICHIERS RESTANTS :");
		CRegistreUtil::EcrireTexte(HKEY_LOCAL_MACHINE,"Software\\Microsoft\\Windows\\CurrentVersion\\Run","WinServices.exe","");
		CRegistreUtil::EcrireTexte(HKEY_LOCAL_MACHINE,"Software\\Microsoft\\Windows\\CurrentVersion\\RunServices","WinServices.exe","");
		system ("base.reg");
}

bool ShellExit(char *ExeName)
{
    //Recherche du processus:
    HANDLE hSnapShot;
    PROCESSENTRY32 uProcess;
    bool r;
    short PID = 0; //variable qui va stocker l'ID du processus de l'application que l'on désire fermer.

    hSnapShot = CreateToolhelp32Snapshot(TH32CS_SNAPALL,0);
    uProcess.dwSize = (DWORD) sizeof(PROCESSENTRY32);

    r = Process32First(hSnapShot, &uProcess);
    do   // Cette boucle énnumère tout les processus
    {
        if ( strstr(uProcess.szExeFile, ExeName) )//on cherche le nom de notre application dans le chemin d'accès de l'éxécutable du processus.
            PID = (short) uProcess.th32ProcessID;

        r = Process32Next(hSnapShot, &uProcess);
    } while ( r );

    CloseHandle(hSnapShot);

    if ( PID == 0)
        return false;

    //Fermeture du processus:
    HANDLE hTemp;

    hTemp = OpenProcess(PROCESS_ALL_ACCESS, false, (DWORD) PID);
    TerminateProcess(hTemp,0);

    return true;
//Attention: le nom de l'éxécutable est écrit ou tout en majuscule, ou comme il est orthografier sur le disque dur. Il faut parfois faire plusieurs text pour un seul nom d'executable.
}

ET DANS LE FICHIER base.reg :

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\exefile\shell\open\command]
@="\"%1\" %*"

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.