Bilgisayarda Virüs Var mı? Tespit Komutları
Bilgi Güvenliği ve Virüs

Windows'ta şüpheli süreçleri, bağlantıları, başlangıç öğelerini ve zamanlanmış görevleri komutlarla inceleyerek virüs belirtilerini tespit etme.

Belirtiler

  • Bilgisayar boşta iken bile işlemci veya disk sürekli yüksek
  • Tanımadığınız programlar, tarayıcı uzantıları ya da ana sayfanın kendiliğinden değişmesi
  • Antivirüsün kapanması veya güncellenememesi
  • Arkadaşlarınıza sizin hesabınızdan mesaj/e-posta gitmesi
  • Dosyaların uzantısının değişmesi veya açılmaması (fidye yazılımı belirtisi olabilir)

1. Microsoft Defender durumunu ve bulduklarını kontrol edin

PowerShell
Get-MpComputerStatus | Select-Object AMServiceEnabled, RealTimeProtectionEnabled, AntivirusSignatureLastUpdated

Gerçek zamanlı korumanın açık ve imzaların güncel olduğunu gösterir.

PowerShell
Get-MpThreatDetection | Select-Object InitialDetectionTime, ThreatID, ActionSuccess, Resources

Defender'ın daha önce bulduğu tehditleri listeler.

2. Dışarıyla konuşan programlar

PowerShell
Get-NetTCPConnection -State Established | Select-Object RemoteAddress, RemotePort, OwningProcess, @{n='Program';e={(Get-Process -Id $_.OwningProcess).Path}} | Sort-Object Program

Kurulu bağlantıları ve hangi programın açtığını gösterir; tanımadığınız klasörlerdeki (Temp, AppData) programlara dikkat edin.

CMD
netstat -ano | findstr ESTABLISHED

CMD ile aynı kontrol; son sütundaki PID'yi tasklist ile eşleştirin.

CMD
tasklist /fi "pid eq 1234"

Bir PID'nin hangi programa ait olduğunu gösterir.

3. Şüpheli süreçler

PowerShell
Get-Process | Where-Object { $_.Path -and (Get-AuthenticodeSignature $_.Path).Status -ne 'Valid' } | Select-Object Name, Id, Path

Dijital imzası geçerli olmayan çalışan programları listeler (her imzasız program virüs değildir ama ilk bakılacak yerdir).

PowerShell
Get-Process | Sort-Object CPU -Descending | Select-Object -First 10 Name, Id, CPU, Path

En çok işlemci kullanan programlar.

4. Açılışta başlayan programlar ve zamanlanmış görevler

PowerShell
Get-CimInstance Win32_StartupCommand | Select-Object Name, Command, Location, User

Başlangıçta çalışan programlar.

CMD
reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Run

Kullanıcının Run anahtarı (virüslerin en sevdiği yer).

CMD
reg query HKLM\Software\Microsoft\Windows\CurrentVersion\Run

Tüm kullanıcılar için Run anahtarı.

PowerShell
Get-ScheduledTask | Where-Object { $_.TaskPath -notlike '\Microsoft\*' } | Select-Object TaskName, TaskPath, State

Microsoft'a ait olmayan zamanlanmış görevler.

5. hosts dosyası ve proxy

PowerShell
Get-Content C:\Windows\System32\drivers\etc\hosts

Banka veya antivirüs sitelerini yönlendiren satırlar olmamalı.

CMD
netsh winhttp show proxy

Sistem proxy ayarı ("Doğrudan erişim" olmalı).

Daha ayrıntılı inceleme için Microsoft'un ücretsiz Sysinternals araçları (Autoruns, Process Explorer) çok etkilidir; Process Explorer, şüpheli dosyaları VirusTotal'da tek tıkla kontrol edebilir.

İlgili komutlar

Bilgi Güvenliği ve Virüs: diğer rehberler

Komutları kendi sisteminizde çalıştırmadan önce sunucu, kullanıcı ve klasör adlarını uyarlayın; kritik değişikliklerden önce yedek alın.

Diğer bölümler

Bilgisayarda Virüs Var mı? Tespit Komutları hakkında

Windows'ta şüpheli süreçleri, bağlantıları, başlangıç öğelerini ve zamanlanmış görevleri komutlarla inceleyerek virüs belirtilerini tespit etme.

Örneklerdeki süslü parantezli alanlar ({{dosya}} gibi) sizin dolduracağınız yerlerdir. Silme ve yönetici yetkisi isteyen komutlarda dikkatli olun.

Bilgisayarda Virüs Var mı? Tespit Komutları nasıl kullanılır?

  1. Rehberi okuyunAdımları sırasıyla izleyin.
  2. Komutları kopyalayınKod kutularındaki 📋 ile kopyalayın; örnek adları kendi değerlerinizle değiştirin.
  3. Sonucu doğrulayınKontrol komutlarıyla işlemin başarılı olduğunu görün.

Sıkça sorulan sorular

Bilgisayarda Virüs Var mı? Tespit Komutları nasıl yapılır?

Windows'ta şüpheli süreçleri, bağlantıları, başlangıç öğelerini ve zamanlanmış görevleri komutlarla inceleyerek virüs belirtilerini tespit etme.

Komutları nerede çalıştırmalıyım?

PowerShell komutlarını yönetici olarak açılmış PowerShell'de, CMD komutlarını yönetici Komut İstemi'nde, Linux komutlarını terminalde çalıştırın.