Metin 2 files içindeki arka kapıları tespit etmek için uygulanabilir adımlar: dosya tarama, ağ bağlantısı izleme ve şüpheli kod işaretleri.
Metin2 topluluğunda düzenli yaşanan bir olay var: sunucu sahibi bir yerden dosya seti alıyor, kuruyor, her şey yolunda görünüyor. Birkaç hafta sonra oyun içinde açıklanamayan eşyalar beliriyor veya oyuncu hesapları ele geçiriliyor.
Sebep genellikle dosya setine gömülü bir arka kapıdır. Bu yazıda, kullanmadan önce dosyalarınızı nasıl denetleyeceğinizi anlatıyorum. Uzman olmanıza gerek yok; aşağıdaki adımlar temel Linux/FreeBSD bilgisiyle uygulanabilir.
Denetimi Nerede Yapmalı?
Önemli: şüpheli dosyaları canlı sunucunuzda çalıştırarak denetlemeyin. Ayrı bir test sunucusunda, tercihen internete kapalı bir ortamda inceleyin. Kurulum sırasında çalışan bir arka kapı, denetim yapmanıza fırsat vermeden bağlantı kurabilir.
1. Adım: Çalıştırılabilir Dosyaları Listeleyin
Dosya setinde kaç adet çalıştırılabilir dosya olduğunu görün:
find . -type f -perm -u+x -exec ls -lh {} \;
Beklediğiniz dosyalar: auth, db, game (core), belki birkaç yardımcı araç. Tanımadığınız bir isim görürseniz not alın.
2. Adım: Metin İçindeki Şüpheli İzleri Arayın
İkili dosyaların içindeki okunabilir metinleri tarayabilirsiniz. Sabit kodlanmış bir IP adresi veya alan adı, en yaygın arka kapı işaretidir:
strings auth/auth | grep -E "([0-9]{1,3}\.){3}[0-9]{1,3}"
Çıkan IP'ler arasında sizin sunucunuza ait olmayan adresler varsa araştırın. Bazı adresler meşrudur (kütüphanelere ait örnekler gibi) ama tanımadığınız bir sunucu adresi ciddi bir uyarıdır.
Alan adı araması da faydalıdır:
strings db/db | grep -Ei "http|\.com|\.net|\.ru|\.xyz"
3. Adım: Betik Dosyalarını Okuyun
Kabuk betikleri ikili dosyalardan çok daha kolay incelenir ve arka kapılar sıklıkla buraya saklanır:
find . -name "*.sh" -o -name "*.py" -o -name "*.pl" | xargs ls -la
Her birini açıp okuyun. Dikkat çekmesi gerekenler:
curlveyawgetile dışarıdan dosya indiren satırlarbase64 -dile çözülüp çalıştırılan içerik- Cron görevi ekleyen satırlar
- SSH anahtarı yazan satırlar (
authorized_keys) - Kullanıcı oluşturan veya yetki veren komutlar
4. Adım: SQL Dosyalarını Kontrol Edin
Veritabanı yedeği içine gizlenmiş yönetici hesapları sık rastlanan bir yöntemdir. İçe aktarmadan önce arayın:
grep -i "INSERT INTO account" veritabani.sql | head -20
Tanımadığınız hesaplar varsa silin. Ayrıca yetki tablosunda beklenmedik kayıt olup olmadığına bakın.
5. Adım: Ağ Bağlantılarını İzleyin
Test ortamında sunucuyu çalıştırıp hangi adreslere bağlandığına bakın:
netstat -tunp | grep -v 127.0.0.1
Oyun sunucusunun normalde bağlanması gereken yerler sınırlıdır: kendi veritabanı ve oyuncu bağlantıları. Bunun dışında dışarıya giden kalıcı bir bağlantı varsa nedenini bulmalısınız.
Daha ayrıntılı izleme için:
tcpdump -n -i any not port 22 and not host 127.0.0.1
6. Adım: Cron ve Başlangıç Görevlerini Denetleyin
Kurulumdan sonra sisteme eklenmiş görevler olup olmadığına bakın:
crontab -l
ls -la /etc/cron.d/
Kurmadığınız bir görev varsa kaldırın ve kaynağını araştırın.
7. Adım: Dosya Değişikliklerini Takip Edin
Kurulumdan sonra son 24 saatte değişen dosyaları listeleyin:
find / -mtime -1 -type f 2>/dev/null | grep -v "^/proc\|^/sys"
Beklemediğiniz konumlarda değişiklik varsa inceleyin.
Arka Kapı Bulursanız Ne Yapmalı?
Tek bir şüpheli dosyayı silip devam etmeyin. Arka kapı bulunduysa dosya setinin tamamı güvenilmezdir:
- O dosya setini kullanmayın.
- Test sunucusunu sıfırlayın.
- O ortamda kullandığınız tüm şifreleri değiştirin.
- Veritabanını içe aktardıysanız temizden başlayın.
Baştan Korunmak
Denetim faydalıdır ama en iyi savunma kaynak seçimidir:
- Topluluk tarafından uzun süredir kullanılan, bilinen setleri tercih edin.
- "Her şey dahil, ücretsiz" tekliflere temkinli yaklaşın; emek karşılıksız verilmez.
- Sunucunuzda gereksiz portları kapatın, güçlü şifre kullanın.
- Düzenli yedek alın; sorun fark edildiğinde temiz bir noktaya dönebilmek kritiktir.
Dosya seti seçimi konusunda daha fazla bilgi için files nedir, nasıl seçilir yazımıza; dizin yapısını tanımak için klasör yapısı rehberimize bakabilirsiniz.
Sunucu tarafındaki ağ güvenliği bizde: tüm Metin2 paketlerimizde DDoS koruması ücretsiz olarak dahildir.
