İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

php.ini ile Güvenlik

KLAMP

0
İyinet Üyesi
Katılım
1 Şubat 2010
Mesajlar
290
Reaction score
0
Değerli arakadaşlar belirttiğim disable fonksiyonlarında Güncelleri varsa sizlerde paylaşınız
Herkesin güvenliği daha sağlam olmuş olur


SSH ile sunucumuza Bağlanıp php.ini üzerinden sunucumuzda kullanıma kapatacağımız fonksiyonları belirteceğiz. Eğer Putty yi nasıl kullanacağınızı bilmiyorsanız {Putty ile Linux sunucuya bağlanma} isimli makaleyi ilerki Günlerde hazırlıyabilirim.


Putty yada scp ile Sunucumuza bağlandıktan sonra cd /usr/local/lib/ yazıp ilgili dizine giriyoruz. Girdikten sonra vi php.ini yazıp dosyamızı açıyoruz ve içerisinde aşağıya doğru inip ayarları uyguluyoruz.

Safe mode = On olarak ayarlayın…

Sonra disable_function yazan satırı bulup aşağıdaki özellikleri ekliyoruz. Her bir özelliğin ne anlama geldiğini görevlerini de ekliyeceğim…

disable_functions = system, shell_exec, exec, passthru, pcntl_exec, proc_open, proc_close, proc_get_status, proc_nice, proc_terminate, openlog, escapeshellcmd, escapeshellarg, dl,show_source



system => Sunucu sistemini birebir ilgilendiren ve sunucu aktivitelerini takip etmemizi sağlayan sistem dosyalarının görüntülenmesi, çalıştırılması gibi etkinliklerini sağlar

shell_exec => Shell yetkimiz varmış gibi işlem yapabilmesini sağlar. Bu şekilde bir çok dizinin görüntülenmesi ve dizinler üzerinde işlem yapılmasına olanak sağlar.

passthru => Gerek dış bir sunucuda gerekse sunucu içinde bulunan programları(komut satırlarını) değerlendirip işleme koyar. shell_exec ve exec özellikleri ile hemen hemen aynı görevleri yapmaktadırlar.

pcntl_exec => Sistem kütüphanelerini kullanarak (/usr/local/bin/perl gibi) istenilen kodların çalıştırılmasını sağlar. Bu şekilde sistem üzerinden bir çok kod hiç bir yere takılmadan çalıştırılabilir.

proc_open=> işaret edilen dosyalardaki kodları ve bağımsız kodları çalıştırmaya yarar. popen fonksiyonunun biraz daha geniş kapsamlısıdır.

proc_close => proc_open fonksiyonu ile açılan işlemleri sonlandırmaya yarar.

proc_get_status => proc_open fonksiyonu ile başlatılan işlemin durumunu takip etmek için kullanılır.

proc_nice => aktif olarak yürütülen işlemin önceliğini değiştirmenize olanak sağlar…

proc_terminate => proc_open ile başlatılan işlem sürecini sonlandırmaya yarar.

open_log => Bir program(kod parçaları,scriptler) için sistemde kayıt dosyalarını saklamalarını sağlamak için bağlantı kurar

dl => PHP Kütüphanesindeki eklentilerin aktif olarak kullanılmasını sağlar…

Bir çok arkadaşın önerdiği fakat benim anlamını bilmediklerim. Bazi disable funksiyonları da var ama ilk etapta serverinizi yeteri kadar guvenli hale getirmeye yetecektir





Güncel Olarak farklı bir disable_functions Daha Ni-Osman 'ın Yapılandırmış Olduğu disable_functions aşağıda yer almaktadır

disable_functions = "ini_set,ini_get_all,hopenbasedir,system,dl,passth ru,cat,exec,popen,proc_close,proc_get_status,proc_ nice,proc_open,escapeshellcmd,escapeshellarg,show_ source,posix_mkfifo,mysql_list_dbs,get_current_use r,getmyuid,pconnect,link,symlink,pcntl_exec,ini_al ter,leak,apache_child_terminate,posix_kill,posix_s etpgid,posix_setsid,posix_setuid,posix_getpwuid,pr oc_terminate,syslog,fpassthru,stream_select,socket _select,socket_create,socket_create_listen,socket_ create_pair,socket_listen,socket_accept,socket_bin d,socket_strerror,pcntl_fork,pcntl_signal,pcntl_wa itpid,pcntl_wexitstatus,pcntl_wifexited,pcntl_wifs ignaled,pcntl_wifstopped,pcntl_wstopsig,pcntl_wter msig,openlog,apache_get_modules,apache_get_version ,apache_getenv,apache_note,apache_setenv,virtual,u ser_dir,ini_restore"
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst