Joomla İçerik Yönetim Sistemi Açık kaynak kodlu bir yazılım olduğundan dolayı güvenlik riskleride baya yüksektir. Bu güvenlik açıklarını aşağıdaki adımları takip ederek azaltabilirsiniz:
configuration.php dosyanızın en az CHMOD (Klasör İzin Seviyesi) 444 olmasına dikkat ediniz.
/templates klasörü 707 ve temanızın klasörün içinde bulunan index.php en az 555.
Ana dizinde (public_html) bulunan index.php ve index2.php dosyaların izini en az 555 olmalı.
Joomla Yönetim Panel Şifrenizi en az 10 haneli olarak belirtiniz. (Örnek: Tnh1ab85Zn)
Hosting Panel ve FTP Şifrenizin en az 10 haneli olmasına özen gösteriniz.
Crackli veya Korsan FTP programı kullanmayınız. iFrame bulaşma riski çok yüksektir.
Joomla Sürümünüz herzaman güncel olmasına dikkat ediniz. En son Joomla Sürümü kullanınız!
Aslında web sitelerinizin güvenliği bilgisayarınızdan başlar bu nedenle daima güncel bir antivirüs yazılımınız olsun ve şüpheli sitelerden uzak durun, tanımadığınız epostalardaki linklere tıklamayın. Günümüzde iframe virüsü denen virüsler belli siteleri ziyaret etmeniz nedeniyle kullandığınız tarayıcının geçici depolama klasörüne veya sisteminizin “temp” klasörüne yerleşerek buradan da ftp programınız vasıtasıyla tüm site dosyalarına yayılabilir.
Exploitlere karşı korunmak için .htaccess dosyanın içine aşağıdaki kodu yapıştırınız.
########## Begin – Rewrite rules to block out some common exploits
#
# Block out any script trying to set a mosConfig value through the URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|%3D) [OR]
# Block out any script trying to base64_encode crap to send via URL
RewriteCond %{QUERY_STRING} base64_encode.*(.*) [OR]
# Block out any script that includes a < script> tag in URL
RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL
RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2}) [OR]
# Block out any script that tries to set CONFIG_EXT (com_extcal2 issue)
RewriteCond %{QUERY_STRING} CONFIG_EXT([|%20|%5B).*= [NC,OR]
# Block out any script that tries to set sbp or sb_authorname via URL (simpleboard)
RewriteCond %{QUERY_STRING} sbp(=|%20|%3D) [OR]
RewriteCond %{QUERY_STRING} sb_authorname(=|%20|%3D)
# Send all blocked request to homepage with 403 Forbidden error!
RewriteRule ^(.*)$ index.php [F,L]
#
########## End – Rewrite rules to block out some common exploits
Not: Buradaki anlatımları uygulamadan önce mutlaka sitenizin ve veritabanının bir yedeğini alın. Bilgisayarınızda bir yedekleme klasörü oluşturup aldığınız yedekleri bu klasörde düzenli bir şekilde tutun. Bu yedekler içinde en önemlilerinden bir tanesi de kullandığınız tema olduğundan, en azından tüm dizinin yedeğini almaktan üşendiğiniz durumda en son ve sağlam bir tema yedeğiniz olsun.