FiveM Güvenlik En İyi Uygulamaları: Exploit ve Injector Girişimlerini Engelleyin
FiveM sunucunuzu açıklara karşı güçlendirin. Sunucu taraflı kontroller, event doğrulaması, escrow sorunları, anticheat tercihleri ve en iyi güvenlik uygulamaları.
Agency Scripts
Agency Scripts Kurucusu ve Baş Geliştiricisi
FiveM'deki Tehdit Ortamı
FiveM sunucuları script injector'lar, menü executor'lar ve protokol açıkları kullanan hilecilerden kaynaklanan sürekli güvenlik tehditleriyle karşı karşıyadır. Bu araçlar kötü niyetli oyuncuların uydurma verilerle sunucu event'lerini tetiklemesine, izinsiz varlıklar (entity) spawn etmesine, konumlarını ve sağlıklarını manipüle etmesine ve diğer oyuncuların oyununu çökertmesine olanak tanır. Bu saldırı vektörlerini anlamak, dayanıklı script'ler oluşturmanın ilk adımıdır. FiveM güvenliğinin temel ilkesi basit ama kritiktir: istemciye asla güvenmeyin. Bir istemci event'inden gelen her veri parçasına potansiyel olarak zararlı muamelesi yapılmalıdır.
Sunucu Taraflı Doğrulama
En önemli güvenlik uygulaması, tüm kritik mantığı sunucu tarafında yürütmektir. Para transferleri, eşya oluşturma veya meslek tamamlama gibi sonuçlara asla client tarafının karar vermesine izin vermeyin. Bir client eventi para yatırma işlemini tetiklediğinde, sunucu kaynağı doğrulamalı, tutarı makul limitlere göre kontrol etmeli, oyuncunun para alabilecek doğru durumda olduğunu teyit etmeli ve işlemi kaydetmelidir. Herhangi bir kontrol başarısız olursa, eylemi reddedin ve isteğe bağlı olarak oyuncuyu yetkili incelemesi için işaretleyin. Bu model, oynanış dengesini veya oyuncu verilerini etkileyen her sistem için geçerlidir.
Event'leri Rate Limit ile Sınırlandırma
Hileciler, yarış koşullarını kötüye kullanmak veya doğrulama mantığını devre dışı bırakmak için genellikle event'leri spam'ler. Oyuncu başına son tetiklenme zamanını takip ederek ve çok sık gelen event'leri reddederek sunucu event handler'larınızda rate limiting uygulayın. Çoğu durum için oyuncu kaynaklarını zaman damgalarıyla eşleştiren basit bir tablo yeterlidir. Bankacılık veya envanter gibi kritik sistemler için beklenen kullanıcı etkileşim hızına uygun bekleme süreleri ekleyin. Bir oyuncu saniyede elli kez mağaza satın alma eventi tetikliyorsa, bu açık bir hile göstergesidir.
Güvenli Event İsimlendirmesi
Hilecilerin tahmin edip tetikleyebileceği öngörülebilir event adlarından kaçının. Event adınızı belirlerken bank:deposit, sürüm tanımlayıcıları veya gizlenmiş sonekler içeren ad alanlı (namespaced) bir model kullanın. Belirsizlik yoluyla güvenlik tam bir çözüm olmasa da, yaygın event modellerini tarayan sıradan hileciler için engeli yükseltir. Bunu uygun sunucu taraflı doğrulama ile birleştirin, böylece bir event adı keşfedilse bile, uygun bağlam olmadan tetiklenmesi istismarla değil reddedilmekle sonuçlanır.
Anti-Cheat Kalıpları
Oyuncu durumu için sunucu taraflı tutarlılık kontrolleri uygulayın. Oyuncu konum değişikliklerini izleyerek ve imkansız hareket hızlarını işaretleyerek ışınlanmayı denetleyin. Hasar modifikatörlerini tespit etmek için silah hasar değerlerini beklenen aralıklarla karşılaştırın. Çıkarılan araçların yetkili galeri işlemlerine veya admin hibelerine uygunluğunu doğrulayın. Meşru oynanışta yanlış alarmlar sık görüldüğünden, hemen yasaklamak yerine şüphe puanları biriktiren bir tespit sistemi oluşturun. Oyuncular şüphe eşiklerini aştığında Discord webhook'ları veya oyun içi bildirimler aracılığıyla yöneticileri uyarın.
Kaynak Kodunuzu Koruma
Ücretli scriptler dağıtıyorsanız, sunucu tarafı kodunuzu yetkisiz erişime karşı koruyun. Script dosyalarınızı şifrelemek ve yalnızca yetkili sunucularda okunabilir kılmak için Tebex üzerinde asset escrow kullanın. İstemci tarafı dosyalara asla hassas mantık yerleştirmeyin: çünkü istemcide çalışan her şey kod karartmadan bağımsız olarak ayıklanabilir ve okunabilir. API anahtarlarını, webhook URL'lerini ve veritabanı kimlik bilgilerini bağlı istemcilere asla gönderilmeyen sunucu tarafı yapılandırma dosyalarında tutun. İstemci scriptleri veya NUI dosyaları üzerinden hiçbir hassas verinin sızmadığından emin olmak için kaynaklarınızı düzenli olarak denetleyin.