Yüklenen bir dosyanın virüs yoluyla olup olmadığını veya PHP ile olup olmadığını kontrol etmek için nasıl gidebileceğimi görmek istiyorum. Hangi seçenekler vardır, her birinin artıları ve eksileri, vb.PHP yüklemesinde virüs kontrolü için seçeneklerim nelerdir?
cevap
ClamAV yaygın sunucu uygulamalarında kullanılan ücretsiz bir anti virüstür.
php-clamav, ClamAV'ı PHP'ye bağlamak için kullanılan bir eklentidir. Onların documentation numaralarını kontrol edebilirsiniz.
Zaten yükleme dosyalarını nasıl doğrulayacağınızla ilgili yönergeleri içeren bir tutorial on how to use clamav as a Zend Framework Validator buldum. Öğretici, başka bir çerçevede veya mimaride kullanmanıza da yardımcı olmalıdır.
Ayrıca, clamav komut satırı arabirimiyle clamscan
numaralı telefonu da arayabilirsiniz. Bu, clamav'ın PHP eklentisine yüklenmesini gerektirmez. PHP tarafında, shell_exec('clamscan myuploadedfile.zip');
yazıp çıktıyı ayrıştırabilirsiniz. OK
ile biten satırlar güvenli dosyalardır, FOUND
ile biten satırlar zararlı dosyalardır.
VirusTotal.com'u kullanarak dosyaları yüklemek için kullanabileceğiniz bir API'ye sahiptir ve birden çok virüs tarayıcısı kullanarak tarama yaparlar.
(maalesef kendi web sitesi şu anda bakımda, ama geri yakında olmasını bekliyoruz)
Dosya URL'nizi taramak için bir API kullanabileceğiniz için çok iyi. Ancak kamu versiyonu, belirli bir 1 dakikalık zaman diliminde herhangi bir türden en fazla 4 talep ile sınırlıdır. – Daniel
Dosya yüklemesinde istenmeyen uzantılardan kaçının. dosya uzantılarını nasıl kısıtlayacağınızı denetleyin http://stackoverflow.com/questions/10456113/php-check-file-extension-in-upload-form –
İstenmeyen uzantılardan kaçınmak virüslerden kaçınmayacaktır. – Daniel