Forum Sayfam

Full Versiyon: Joomla Güvenlik
Şu anda tam olmayan bir veriyonu görüntülüyorsunuz. Tam versiyonu görmek için, buraya tıklayın
Joomla güvenlik ile ilgili soru ve cevaplar....
Merhaba Arkadaşlar
Burada joomla güvenliği için kullandığım gerekli bilgileri toparlayıp yayınlayacağım:
İLK MESAJ
Joomla tüm sürümler için sunucu tabanlı php.ini yamasıdır. Hack girişimleri için önemlidir.

Php ilk yapılandırma dosyasını aksi düzenlenmemişse sitenin ana dizininde arar. Bizde bu yönetemi kullanıp php için yeni bir yapılandırma dosyasını sitemizin kök dizinine atıyoruz.


(Bu yama tüm sunucularda çalışmamaktadır. php.ini dosyası php yapılandırma dosyasıdır. Genelde sunucu kökünde bulunur. Windows İşletim sistemleri: c:/windows gibi )

Sitenizin public_html klasörünü açın. Bu kök dizininizde php.ini adlı bir dosya oluşturun.

İlk Satıra şu kodu girin:
register_globals = off


Bu kod ile birkaç sunucu komutunu kapatıyoruz. Genelde iyi programlanmamış scriptler bu komutları kullanıp açık oluşturmaktadır. Joomlanın bu komutlara ihtiyacı yoktur.

İkinci satıra şu kodu girin:
allow_url_fopen = OFF


Bu kod dosya ekleme işlemini sadece sunucu local url leri ile yaptırır. Dosyalar uzak url den çağrılamazlar.

Üçüncü satıra şu kodu ekleyin:
disable_functions = show_source, system, shell_exec, passthru, exec, phpinfo, popen, proc_open


Bu kod adındanda anlaşılacağı giğbi birçok komutu pasif yapar. (Shell gibi)


Dilerseniz düzenlediğimiz php.ini dosyasını buradan indirerek sitenizin

1. /public_html (configuration.php nin bulunduğu dizin)
2. /installation (Sadece yeni kurulum yapıyorsanız, siteniz zaten kurulu ise uygulamayın)
3. /administrator

klasörleri içine atınız.
.htacces dosyası güncellenmiştir. Bu son haliyle register global ve magic_quotes ayarları düzenlenmiştir. Kod dosyası aşağıdaki gibidir. İsterseniz yukarıdaki linkten indirip ftp ile site nizin root klasörüne atabilirsiniz.

Code:
#
### İdeal optimizasyon by tmrsk ###
#
### Hata verirse +FollowSymlinks yapin
#
Options FollowSymLinks
#
DirectoryIndex index.php
#
RewriteEngine On
#
### RewriteBase e lütfen dikkat
#
### eger siteniz.com/xyz seklinde ise
#
### /xyz olmalidir,
#
### siteniz.com ise / olarak kalsin
#
RewriteBase /
#
RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$ [NC]
#
RewriteCond %{REQUEST_FILENAME} !-f
#
RewriteCond %{REQUEST_FILENAME} !-d
#
RewriteRule ^(.*) index.php
#
### GUVENLIK ###
#
# Mosconfig requestlerini için güvenlik
#
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
#
#  base64culer güvenliği
#
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
#
# Url icinde javascript güvenliği
#
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
#
# Register globals güvenliği
#
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
#
#  request güvenliği
#
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
#
# yönlendirme
#
RewriteRule ^(.*)$ index.php [F,L]

php_flag magic_quotes_gpc On

########## End - Rewrite rules to block out some common exploits
php_flag register_globals off
CHMOD AYARLARI
Joomla resmi sitesinde dosya chmod ayarlarının aşağıdaki gibi olması yeterli görülmüştür güvenlik için dosyalarınızı kontrol ediniz.

change the permissions of the

images/,

media/,

uploadfiles/

administrator/backups .... directories to 707, this should be done recursively:

chmod -R 707 images

chmod -R 707 media

chmod -R 707 uploadfiles

chmod -R 707 components

chmod -R 707 languages

chmod -R 707 modules

chmod -R 707 templates

chmod -R 707 administrator/backups

chmod -R 707 administrator/components

chmod 744 configuration.php


BENCE

joomla klasor ve dosyalarindan


SADECE MEDIA VE IMAGES KLAORLERIve ICINDEKI;

klasorler chmodlari 755 olmali
dosyalar chmod lari 644 olmali

media ve images haricindeki diger klasorlerin chmod larini istersen 707 yapabilirsiniz

joomlayi hacklerken images klasorunden giriyorlar (TABII CHMOD unu 777 yapip degi$tirmeyi unuttuysanız)

bunun haricinde sen chmod lari dogru yaptiysanız JOOMLA da acik yoktur.
Bu ayarları kısa yoldan admin - genelayarlar- sunucu ayarlarından
Dosya oluuşturulması bölümünde chmod new files to yu işaretleyin 0644 yazdığını görün ve
Apply to existing files kutusunu işaretleyin. Aynısını klasör izinlerinde 0755 olarak yapın.
Mutlaka ftp programınızdan kontrol edip düzenlemeleri tekrar yapın.
Hackerlar bazı shell scriplerile açığı bulunan sitelere girebilmektedir. Eğer sitenize index atılmaya çalışıldığını veya dosya gönderildiğini düşünüyorsanız aşağıdaki linkten

http://www.joomlation.eu/index.php?optio...&Itemid=35

flist dosyasımı bilgisayarınıza indirin. zipten çıkarıp ftp programınız ile joomla kurulu klasörün içine atın. Sonra http://www.joomlasiteniz.com-net/filist.php adresine girin. Size enson değiştirilmiş dosyaları gösterecektir. Eğerki aralarında sizin yönetici değişiklikleri dışında yabancı dosya yapmadığınız değişiklikler görünüyorsa sorun var demektir.
Mesaj 2
Alıntıdır.

Joomla 1.0.11 ve alt tüm sürümlerde exploid tarzı url ile hackleme girişimlerinin tamamını kapatan yamadır. Joomla site hackleme girişimlerinin yaklaşık %90 ı aşağıdaki yama ile kapatılabilmektedir.

Sunucunuzda joomla dosyalarının bulunduğu ana dizine girin. .htaccess dosyasına aşağıdaki kodu ekleyin.


RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|%3D) [OR]

RewriteCond %{QUERY_STRING} base64_encode.*(.*) [OR]

RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]

RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2}) [OR]

RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2})




Eğer .htaccess dosyası yoksa dosyayı oluşturun ve kodu ekleyin.

Eğer 404 hatası alıyorsanız Joomla SEO(AMO) özelliğini genel ayarlardan kapatın.

Düzenlenmiş .htaccess dosyasını aşağıdan indirebilirsiniz.
zipten çıkarıp root klasörünize yükleyin.

http://www.tnkweb.net/joomla/htaccess.zip
Joomlanın Register_Globals ON yamasını kapatmak için gerekir.

Uyarı: Bu yama tek başına işe yaramamaktadır. Öncelikle diğer yamaları uygulayınız

Bunun için Joomla 1.0.10 ve 1.0.11 sürümlerinde ana dizinde (configuration.php dosyasının bulunduğu yer) bulunan globals.php dosyasını açın.

Ve aşağıdaki satırı bulun.

define( 'RG_EMULATION', 1 );


Bu kodu aşağıdaki gibi değiştirin.

define( 'RG_EMULATION', 0 );


Dosyayı kaydedin ve tekrar eskisi üzerine yazın.

Not: Bilgiler çeşitli sitelerden derlenmiştir.
değerli Hocam gerçekten çok yararlı bilgilerle destek oldunuz....

EMEĞE SAYGI...  

TEŞEKKÜRLER...
Referans URL

Fatal error: Call to a member function run_hooks() on a non-object in /home/bilisimf/public_html/inc/functions.php on line 146