php.ini ile Güvenlik

SaMuRai

Emektar
8 Eyl 2008
11,571
30
(nowhere) in
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.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.