Linux sunucular genellikle stabil çalışır. CPU değerleri olağan seviyededir, bellek kullanımı yeterlidir ve servisler aktif görünür. Ancak bu veriler her zaman sistemin gerçek durumunu yansıtmayabilir. Dışa doğru açıklanamayan trafik artışı, bilinmeyen bağlantılar veya loglarda görünmeyen aktiviteler varsa, problem performans değil güvenlik kaynaklı olabilir. Bu durumda rootkit olasılığı değerlendirilmelidir.
Rootkit Nedir?
Rootkit, çalıştığı sistem üzerinde kendini gizlemeyi hedefleyen zararlı yazılım türüdür. Bazı rootkit’ler sistem komutlarının çıktısını değiştirerek varlığını saklar. Daha gelişmiş olanlar çekirdek seviyesinde çalışarak süreçleri, dosyaları ve ağ bağlantılarını görünmez hale getirir. Rootkit doğrudan saldırı gerçekleştirmez, mevcut saldırının tespit edilmesini engeller.
Rootkit Türleri
| Rootkit Türü | Çalıştığı Katman | Ne Yapar | Tespit Zorluğu |
|---|---|---|---|
| Userland Rootkit | Kullanıcı alanı | Sistem komutlarını (ls, ps, netstat) değiştirir | Orta |
| Kernel Rootkit | Çekirdek seviyesi | Kernel modüllerini değiştirir, her şeyi gizler | Çok zor |
| Bootkit | Boot süreci | Sistem açılırken yüklenir | Çok zor |
| Firmware Rootkit | BIOS / UEFI | Disk silinse bile kalıcıdır | Aşırı zor |
Linux sistemlerde rootkit tespiti söz konusu olduğunda genellikle iki araç öne çıkar. Rkhunter ve Chkrootkit. Bu araçlar tüm saldırıları yakalayamaz ve tek başına kesin bir sonuç sunmaz. Ancak doğru şekilde kullanıldıklarında sistem yöneticisi için erken uyarı niteliğinde önemli bir kontrol katmanı sağlarlar.
Kurulum Öncesi Hazırlık
Rootkit taraması, sistemin mevcut durumunu referans alarak çalışır. Tarama işlemi güncelleme yapılmış ya da yeni değişiklikler uygulanmış bir sistemde başlatılırsa, üretilen uyarıların önemli bir kısmı yanlış alarm olabilir.
Yetki Ve Ortam Kontrolü
Aşağıdaki komutlar, hangi kullanıcıda olduğunuzu ve temel sistem bilgisini sabitlemenizi sağlar.
whoami
uname -a
uptime Rkhunter Kurulumu Ve Temel Yapılandırma
Rkhunter, Linux sistemlerde daha kapsamlı kontroller gerçekleştiren bir tarama aracıdır. Bilinen rootkit imzaları, şüpheli yapılandırmalar ve dosya özellikleri üzerinden analiz yapar. Doğru şekilde yapılandırıldığında sistem yöneticisi için etkili bir erken uyarı mekanizması oluşturur.

Kurulum
Debian Ubuntu için
apt install rkhunter -yRHEL Alma Rocky için
dnf install epel-release -y
dnf install rkhunter -ySistemin temiz durumundaki dosya özellikleri ve hash değerleri kaydedilmelidir.
sudo rkhunter --propupdBu adım atlanırsa sonraki taramalarda üretilen uyarıların büyük kısmı anlamsız olur. Araç, hangi değişikliğin normal olduğunu ayırt edemez. Tarama şu şekilde yapılır.
sudo rkhunter --check --skTarama sonrası tüm çıktılar şu dosyada toplanır.
/var/log/rkhunter.logBurada görülen her warning gerçek bir ihlal anlamına gelmez. Paket güncellemeleri, kernel değişiklikleri veya özel derlenmiş binary’ler de benzer uyarılar üretebilir.
Chkrootkit Kurulumu ve Tarama Süreci
Chkrootkit, hızlı ve basit bir rootkit kontrolü sağlayan bir araçtır. Yapılandırma gereksinimi düşüktür ve kısa sürede sonuç üretir. Bu özelliği sayesinde pratikte ikinci bir doğrulama katmanı olarak tercih edilir.

Kurulum
Debian Ubuntu için
apt install chkrootkit -yRHEL Alma Rocky için
dnf install chkrootkit -yTarama ve log alma
chkrootkit
chkrootkit | tee /var/log/chkrootkit.logChkrootkit çıktısında INFECTED benzeri ifadeler görüldüğünde hemen sonuca varılmamalıdır. Bazı kontroller özellikle LKM testlerinde yanlış pozitif üretebilir. Bu nedenle uyarılar mutlaka ek kontrollerle doğrulanmalıdır.
Rootkit Uyarıları Nasıl Doğrulanır?
Bu aşamada hedef, tarama aracının ürettiği uyarıyı gerçek bir bulguya dönüştürecek doğrulama zincirini oluşturmaktır. Tarama araçlarından gelen çıktılar tek başına yeterli kabul edilmemelidir. Asıl doğrulama, sistem yöneticisinin temel Linux komutlarını doğru şekilde yorumlamasıyla sağlanır.
Süreç ve Bağlantı Kontrolü
Beklenmedik süreçler ve dinleyen portlar öncelikle kontrol edilmelidir.
ps auxf | head -n 50
ss -tulpn
lsof -i -P -n | head -n 50Kullanıcılar ve Oturumlar
Anormal oturumlar ve beklenmedik kullanıcılar, rootkit kadar önemli sinyaller verebilir.
last -a | head
w
cat /etc/passwdve systemd Kalıcılık Kontrolü
Birçok kalıcılık yöntemi cron veya systemd üzerinden uygulanır. Beklenmeyen zamanlayıcılar ve servisler not edilmelidir.
crontab -l
ls -la /etc/cron.*
systemctl list-timers --all
systemctl list-unit-files --state=enabled | head -n 50Şüpheli Dosyalar ve Yetki Kontrolleri
SUID ve SGID bitine sahip dosyalar doğrudan rootkit varlığı anlamına gelmez. Ancak yetki yükseltme amacıyla sık kullanılan yapılar arasında yer alır. Bu dosyaların listesi çıkarılarak daha sonra detaylı şekilde incelenmesi gerekir.
find / -xdev -type f -perm -4000 -print 2>/dev/null | head -n 50
find / -xdev -type f -perm -2000 -print 2>/dev/null | head -n 50Tamamlayıcı Güvenlik Araçları
Bu araçlar disk üzerindeki izlere odaklanır. Kernel seviyesinde gizlenen veya yalnızca bellek üzerinde çalışan tehditler klasik taramalardan kaçabilir. Bu nedenle tamamlayıcı araçlar kullanılmalıdır.
AIDE
Dosya bütünlüğü takibi yapar. Hash tabanlı çalışır.
apt install aide -y
aideinit
aide --checkLynis
Sistem sıkılaştırma ve güvenlik denetimi yapar. Yanlış yapılandırmaları ortaya çıkarır.
apt install lynis -y
lynis audit systemAuditd
Sistemdeki kritik olayları kayıt altına alır. Yetki yükseltme, dosya erişimi, değişiklikler.
apt install auditd -y
systemctl enable auditd --nowSık Sorulan Sorular
Rootkit ile backdoor arasındaki teknik fark nedir?
Backdoor, sisteme uzaktan erişim sağlayan bir giriş noktasıdır. Rootkit ise bu erişimi, süreçleri ve dosyaları gizleyen bir katmandır. Çoğu senaryoda rootkit, mevcut bir backdoor veya yetki yükseltme sonrası devreye girer ve saldırının fark edilmesini engeller.
Kernel rootkit, kullanıcı alanı rootkit’ten teknik olarak neden daha tehlikelidir?
Kernel rootkit’ler çekirdek seviyesinde çalıştığı için sistem çağrılarını manipüle edebilir. ps, ls, netstat, ss gibi araçların ürettiği çıktılar kernel üzerinden filtrelenir.
Rootkit taraması neden canlı sistemde güvenilir değildir?
Eğer rootkit aktifse, tarama aracının kendisi manipüle edilmiş çıktılarla çalışır. Bu nedenle ileri seviye analizlerde offline tarama veya farklı bir kernel ile boot edilerek inceleme tercih edilir.
Bellek üzerinde çalışan rootkit’ler disk taramalarından neden kaçar?
Disk tabanlı rootkit’ler dosya, modül veya binary bırakır. Bellek tabanlı rootkit’ler ise yalnızca RAM üzerinde yaşar ve reboot sonrası kaybolur. Bu tür tehditler rkhunter veya chkrootkit tarafından tespit edilemez.