Linux Rootkit Tespiti: Araçlar ve Teknikler

10 dakikalık okuma - 16 Mayıs 2026

hero section cover
İçindekiler
  • Linux Rootkit Tespiti: Sunucu Güvenliği için Araçlar ve Teknikler
  • Linux Rootkit Türleri
  • Chkrootkit ve rkhunter ile tarama
  • Gelişmiş Algılama: Davranış İzleme ve Bütünlük Kontrolleri
  • Sunucunuzu Rootkitlere Karşı Güçlendirme
  • Sonuç
Paylaş

Sunucularınızda chkrootkit, rkhunter, Auditd, AIDE ve davranışsal izleme kullanarak Linux rootkit'leri nasıl tespit edilir ve önlenir.

Linux Rootkit Tespiti: Sunucu Güvenliği için Araçlar ve Teknikler

Rootkit'ler saldırganlara Linux sistemlerine kalıcı ve gizli erişim sağlar. Çekirdek işlemlerini manipüle eder, dosyaları ve işlemleri gizler ve standart güvenlik araçlarını atlatırlar. Bazıları yıllarca tespit edilememiştir. Bunları tespit etmek katmanlı bir yaklaşım gerektirir, çünkü hiçbir araç her şeyi yakalayamaz.

Bu yazıda başlıca Linux rootkit türleri, bunların nasıl taranacağı ve temel tarayıcıların gözden kaçırdıklarını yakalayan gelişmiş izleme teknikleri ele alınmaktadır.


Linux Rootkit Türleri

Rootkit'ler farklı ayrıcalık seviyelerinde çalışır ve ne kadar derinde yer alırlarsa bulunmaları o kadar zor olur.

Kullanıcı modu rootkit 'leri uygulama seviyesinde çalışır (Halka 3). LD_PRELOAD kullanarak dinamik bağlantıyı ele geçirir ve readdir ya da fopen gibi standart C kütüphanesi işlevlerini engelleyen kötü amaçlı kütüphaneler enjekte ederek dosyaları ve süreçleri userland araçlarından gizlerler.

Çekirdek modu rootkitleri Yüklenebilir Çekirdek Modülleri (LKM'ler) olarak yüklenerek Halka 0'da çalışır. Sistem çağrılarını engeller, çekirdek belleğini manipüle eder ve kendi varlıklarını gizlerler. Belirli çekirdek sürümlerine bağlı olduklarından, yanlış yapılandırılmış bir çekirdek paniğe neden olabilir ve bu da ironik bir şekilde onu açığa çıkarır.

eBPF tabanlı rootkitler, geleneksel bir modül yüklemeden çekirdek alanında çalışmak için Genişletilmiş Berkeley Paket Filtresi alt sisteminden yararlanır. Sistem çağrısı kancalarına, izleme noktalarına ya da LSM olaylarına bağlanırlar. Standart LKM tarayıcıları bunları görmez. Boopkit, bu yaklaşımı kullanarak gizli bir C2 kanalı oluşturan iyi bilinen bir kavram kanıtıdır.

io_uring tabanlı rootkit 'ler en yeni varyanttır. Toplu işlemler için io_uring asenkron I/O arayüzünü kullanarak daha az gözlemlenebilir syscall olayı oluştururlar. Deneysel bir rootkit olan RingReaper, bunun EDR araçlarından kaçarken okuma, yazma ve bağlanma gibi çağrıları sessizce nasıl değiştirebileceğini gösterdi.

Rootkit Türü Ayrıcalık Seviyesi Kancalama Yöntemi Tespit Zorluğu
Kullanıcı modu Halka 3 (Kullanıcı) LD_PRELOAD, kütüphane kaçırma Orta düzeyde
Çekirdek modu Halka 0 (Çekirdek) Syscall tablosu, LKM, satır içi kanca Yüksek
eBPF tabanlı Halka 0 (Çekirdek) eBPF program eki Çok yüksek
io_uring tabanlı Kullanıcı/Çekirdek Asenkron G/Ç gruplama Çok yüksek

Chkrootkit ve rkhunter ile tarama

Linux sunucularında rootkit tespiti için iki araç temel oluşturur: hızlı taramalar için chkrootkit ve daha derin kontroller için rkhunter.

chkrootkit

chkrootkit, kritik sistem ikililerini(ls, ps, netstat, sshd, ifconfig) kurcalama belirtileri için kontrol eden bir kabuk betiğidir. Ayrıca karışık ağ arayüzlerini ve silinmiş günlükleri de tespit eder. Sürüm 0.59 (Ocak 2026) itibariyle, Linux BPFDoor, Syslogk ve XZ Backdoor gibi yeni tehditler de dahil olmak üzere 75'in üzerinde rootkit, solucan ve LKM'yi tanımlayabilir.

Herhangi bir şüpheli etkinlikten sonra çalıştırın. Ifpromisc bileşeninden gelen uyarılara ve silinen lastlog veya wtmp dosyalarıyla ilgili uyarılara dikkat edin.

rkhunter

rkhunter daha da ileri gider. Sistem ikili dosyalarının SHA-1 karmalarını bilinen iyi değerlerle karşılaştırır, dosya izinlerini ve gizli dosyaları izler, başlangıç yapılandırmalarını kontrol eder ve çekirdek ve ağ analizi gerçekleştirir.

Başlangıçtan itibaren düzgün bir şekilde ayarlayın:

# Establish a baseline after a clean install or update
rkhunter --propupd
 
# Update rootkit definitions
rkhunter --update
 
# Run a full scan (use --novl on production servers to reduce I/O)
rkhunter --check --enable all

Otomatik günlük taramalar için /etc/rkhunter.conf dosyasında CRON_DAILY_RUN="true" olarak ayarlayın ve temiz çıktı için --skip-keypress ve --report-warnings-only kullanın. /var/log/rkhunter.log adresindeki günlükleri inceleyin ve onaylanmış yanlış pozitifleri beyaz listeye alın.

LKM rootkit'lerini algılama

LKM rootkitleri özellikle tehlikelidir çünkü çekirdek uzantısı olarak çalışırlar, sistem çağrılarını engellerler ve çekirdek seviyesinde süreçleri gizlerler. Lsmod gibi standart araçlar bunları görmez, ancak bunları tespit etmenin yolları vardır.

Lsmod çıktısını /sys/module/ listeleriyle karşılaştırın. Şüpheli çekirdek mesajları için sistem günlüklerini kontrol edin:

# Look for out-of-tree module warnings
sudo dmesg | grep "loading out-of-tree module taints kernel"
 
# Check for module verification failures
grep "module verification failed" /var/log/syslog
 
# Run chkrootkit's LKM-specific check
sudo chkrootkit lkm

Lsmod ve /proc/modules 'den gizlenen rootkit'ler bile ( Diamorphine gibi) /sys/module/diamorphine/coresize kontrol edilerek veya syslog uyarıları incelenerek bulunabilir.

Gelişmiş Algılama: Davranış İzleme ve Bütünlük Kontrolleri

Statik tarayıcıların temel bir zayıflığı vardır. Bir 2026 deneyinde, bir rootkit ikilisine tek bir null bayt eklemek, işlevselliği etkilemeyen bir değişiklik, tespit oranlarını önemli ölçüde düşürdü. Diamorphine'in tespit oranları sadece sembol tablolarını çıkararak 33/66'dan 8/64'e düşmüştür. Sadece imzalara güvenmek yeterli değildir.

Davranış analizi

Davranış analizi "bu dosya bilinen bir rootkit ile eşleşiyor mu?" diye sormak yerine "bu süreç olağandışı bir şey yapıyor mu?" diye sorar Bu sinyalleri izleyin:

  • Yöntemden bağımsız olarak çekirdek modüllerini yükleyen init_module() ve finit_module() sistem çağrılarını izlemek için Auditd kullanın.
  • Gizli rootkit iletişimine işaret edebilecek 31'in üzerindeki sinyallere sahip kill() çağrılarını izleyin.
  • Yetkisiz çekirdek modülü etkinliği için /proc/sys/kernel/tainted dosyasını kontrol edin.
  • /tmp veya /dev/shm içindeki beklenmedik .so dosyalarını izleyin.
  • EBPF etkinliğini, özellikle bpf_probe_write_user çağrılarını izleyin. BCC gibi araçlar io_uring işlemlerini sys_enter_io_uring_enter gibi tracepoint'ler aracılığıyla izleyebilir.

Özellikle eBPF ve io_uring rootkitleri için Tetragon, Falco ve Tracee gibi çalışma zamanı izleme araçları çekirdek içi etkinliği gerçek zamanlı olarak gözlemleyebilir.

Dosya bütünlüğü izleme

AIDE (Advanced Intrusion Detection Environment) güvenilir sistem dosyalarının bir taban çizgisini oluşturur ve değişiklikleri kontrol eder. Aide --init ile başlatın, ardından cron aracılığıyla aide --check 'i zamanlayın. Sağlama toplamlarını, izinleri, sahipliği ve /bin/login ve /usr/bin/sshd gibi kritik ikili dosyaların zaman damgalarını izler.

Paket düzeyinde doğrulama için debsums (Debian/Ubuntu) veya rpm -Va (RHEL/CentOS) sistem dosyası bütünlüğünü doğrulayabilir. En güvenilir sonuçlar için, güvenilir kurtarma medyasından önyükleme yapın ve dosya sistemini çevrimdışı olarak inceleyin, çünkü rootkit'ler çalışan bir çekirdeğin raporlamasını değiştirebilir.

Ayrıca kalıcılık mekanizmalarını da izleyin. Rootkitler genellikle /etc/ld.so.preload dosyasını değiştirerek paylaşılan nesneleri enjekte eder ya da .bashrc ve .profile dosyalarını değiştirir. Bu dosyalarda meşru değişiklikler nadirdir, bu nedenle buradaki uyarılar yüksek bir sinyal/gürültü oranına sahiptir.

Auditd ile otomatik izleme

Şüpheli çekirdek etkinliklerinin gerçek zamanlı tespiti için bu kuralları /etc/audit/rules.d/rootkit.rules dosyasına ekleyin:

# Detect unauthorized kernel module loading
-a always,exit -F arch=b64 -S finit_module -S init_module
 
# Catch unusual high-range kill signals
-a always,exit -F arch=b64 -S kill -F a1>=32

Bunları rkhunter'ın otomatik güncellemeleri ile birleştirin. Yapılandırmada UPDATE_MIRRORS=1 ve MIRRORS_MODE=0 olarak ayarlayın ve taban çizgisini yenilemek için meşru sistem güncellemelerinden sonra rkhunter --propupd çalıştırın.

Sunucunuzu Rootkitlere Karşı Güçlendirme

Tespit önemlidir, ancak önleme daha iyidir. Çoğu rootkit yüklemek için yükseltilmiş ayrıcalıklar gerektirir, bu nedenle saldırı yüzeyini azaltmak gerçek bir fark yaratır.

Çekirdeği ve paketleri güncel tutun. Saldırganlar, ayrıcalıkları yükseltmek ve LKM veya eBPF tabanlı rootkitleri dağıtmak için yamalanmamış güvenlik açıklarından yararlanır. Yama yaptıktan sonra, algılama taban çizgilerinizi rkhunter --propupd ile güncelleyin.

En az ayrıcalığı uygulayın. Kullanıcılara veya süreçlere ihtiyaç duyduklarından daha fazla erişim vermeyin. Bir süreç tehlikeye girse bile yetkisiz eylemleri engelleyen zorunlu erişim denetimleri için SELinux veya AppArmor kullanın.

Çekirdek modülünün önyükleme sonrası yüklenmesini devre dışı bırakın. Özel sunucularda, sistem başladıktan sonra modül yüklemesini kilitleyerek LKM rootkit'lerini tamamen önleyebilirsiniz. Paylaşımlı barındırmada bu mümkün değildir, bu da tahsis edilmiş veya VPS ortamlarının daha güçlü güvenlik duruşu sunmasının bir nedenidir.

Ağınızı bölümlere ayırın. Altyapınızın bölümlerini izole etmek, bir makinenin tehlikeye girmesi durumunda yanal hareketi sınırlar.

Düzenli olarak denetleyin. Lynis gibi araçlar izin hatalarını ve yanlış yapılandırmaları saldırganlar bunlardan yararlanmadan önce tespit edebilir.

Sonuç

Rootkitler göz önünde saklanmak için üretilmiştir. Belirtiler ortaya çıktığında, sistem çoktan kolay kurtarılamayacak şekilde tehlikeye girmiş olabilir. Tek bir tarayıcı her şeyi yakalayamaz ve temel imza tabanlı tespitten kaçmak kolaydır.

Pratik bir savunma birden fazla katmanı birleştirir:

  • Bilinen tehditler için chkrootkit ve rkhunter ile düzenli taramalar
  • Şüpheli çekirdek etkinliği için Auditd kuralları ve davranış izleme
  • Yetkisiz değişiklikleri yakalamak için AIDE ile dosya bütünlüğü izleme
  • EBPF ve io_uring tehditleri için Tetragon veya Falco gibi çalışma zamanı araçları
  • Saldırı yüzeyini azaltmak için güçlendirilmiş erişim kontrolleri, yama ve ağ segmentasyonu

Yapabildiklerinizi otomatikleştirin, temel çizgileri güncel tutun ve güvendiğiniz temiz bir işletim sistemi kurulumundan başlayın.

FDC Sunucuları, tam kök erişimi ve özelleştirilebilir çekirdek yapılandırmaları ile özel ve VPS barındırma sunar. Sağlamlaştırılmış bir Linux ortamı oluşturmak için özel sunucu seçeneklerini keşfedin.

background image
Sunucunuz büyümenizi engelliyor mu?

Yavaş dağıtımlardan veya bant genişliği sınırlarından bıktınız mı? FDC Sunucuları anında tahsis edilmiş güç, küresel erişim ve her ölçek için oluşturulmuş esnek planlar sunar.

Şimdi yükseltin

Blog

Bu hafta öne çıkanlar

Daha fazla makale
Linux Sunucu Güçlendirme Kontrol Listesi

Linux Sunucu Güçlendirme Kontrol Listesi

Bir Linux sunucusunu güçlendirmek için adım adım kontrol listesi. SSH, güvenlik duvarları, yama, dosya izinleri, SELinux/AppArmor ve denetim günlüğünü kapsar

15 dakikalık okuma - 8 Mayıs 2026

iperf3 Eğitimi: Linux ve Windows'ta Ağ Hızını Test Edin

10 dakikalık okuma - 7 Mayıs 2026

Daha fazla makale
background image

Sorularınız mı var veya özel bir çözüme mi ihtiyacınız var?

icon

Esnek seçenekler

icon

Küresel erişim

icon

Anında dağıtım

icon

Esnek seçenekler

icon

Küresel erişim

icon

Anında dağıtım