ForumTayfa  

Go Back   ForumTayfa > Güvenlik & Bilgisayar & İnternet & Webmaster & Programlama Bölümü > Güvenlik & Bilgisayar & İnternet & Webmaster & Programlama > ASP, Perl, Php, Html

ASP, Perl, Php, Html ASP, Perl, Php, Html, Java gibi her tür programcılık dili için yardım alabilceğimiz bölüm...

Yeni Konu aç  Cevapla
 
LinkBack Seçenekler Stil
Alt 24.12.08, 23:39   #1 (permalink)
Acemi Tayfa
 
ShıFтdєLєтє - ait Kullanıcı Resmi (Avatar)
 
Üyelik Tarihi: Dec 2008
Nereden: Ankara/Batıkent
Mesaj Sayısı: 402
Konu Sayısı: 91
Takım: Fenerbahçe
Rep Gücü: 12706
Rep Puanı: 1269432
Rep Derecesi : ShıFтdєLєтє 0-2000000ShıFтdєLєтє 0-2000000ShıFтdєLєтє 0-2000000ShıFтdєLєтє 0-2000000ShıFтdєLєтє 0-2000000ShıFтdєLєтє 0-2000000ShıFтdєLєтє 0-2000000ShıFтdєLєтє 0-2000000ShıFтdєLєтє 0-2000000ShıFтdєLєтє 0-2000000ShıFтdєLєтє 0-2000000
Ruh Hali:

Standart PHP'de RFI/LFI Açıkları ve Korunma Yolları




Evet arkadaşlar...
Günümüzde php scriptlerinde en çok bulunan açıklardan olan RFI/LFI dan ayrıntılı şekilde bahsedicem. Bu açıklar daha çok acemi php kodlayıcılarının değişken tanımlamada yaptıkları hatalardan kaynaklanmaktadır...

Remote File İnclude: Uzaktan Dosya Dahil Etme anlamına gelmektedir.
Local File İnclude: ise Aynı serverdan dosya dahil etme anlamına gelmektedir...

Öncelikli olarak bu açıkları kullanabilmemiz için bilmemiz gereken tanımlar var ...

INCLUDE / INCLUDE_ONCE : Bu kodla uzaktan dosya dahil edilir.Uzun satırlar alan kodlar bu komutla başka sayfada kodlanmış olarak gösterilerek tek satıra indirgenir...

REQUIRE / REQUIRE_ONCE : Bu kod da aynı include kodunun yaptığı işi yapar,fakat include ile kodlanmış bi sayfada çağrılan(dahil edilen) dosya bulunamazsa php yorumlayıcımız bu kodun olduğu satırı hata mesajı göndererek atlar ve sayfanın diğer kalan kodlarını yorumlamaya devam eder fakat include komutundan sonra require komutu da kullanılmışsa; çağırılan dosya bulunamadığı taktirde bir hata verir ve yorumlamayı durdurur. require in include den farkı budur. Yine de RFI/LFI açığı bulurken require ile include aynı derecede işimize yarar(ilerde görücez).

VARIABLE : Değişken anlamına gelmektedir.Bizim açığımız da bu kodlamadan kaynaklanmaktadır. Yani örneğin ; include ile bi dosya, sayfaya dahil edilirken komutun içinde değişkenler de bulunur (örnek bi değişken : $external). Bu değişken aynı sayfada define edilmezse yani tanımlanmazsa burda bu açık kullanılabilir...


Remote File İnclude (RFI)

Uzaktan dosya dahil etme anlama gelen RFI da tanımlanmamış değişkenler tanımlanır ve açık varsa istenilen değere atanır... örneğin ; shell(c99,r57 vs... ).

<?php
include ($external. '../function.php') ;
?>


Vermiş olduğum bu kodu x.php olarak kaydedip php destekleyen bi hosta atın ve çalıştırın.Bu sayfayı çalıştıdığınızda bi hata alıcaksınız.Bu hata dahil ettiğimiz function.php dosyasının bulunamamasından kaynaklanmaktadır,bu bizi ilgilendirmiyor.


[Sadece Kayıtlı Kullanıcılar Linkleri Görebilir.Kayıt Olmak İçin Tıklayınız...]

Açık yukarıdaki gibi kullanılabilir.Engellemek için :

<?php
$external= 'data';
include ($external. '../function.php');
?>


Vermiş olduğum bu kodu da x2.php olarak kaydedip hostunuza atın ve yine bu sayfayı açtığınız zaman tekrar function.php dosyasının bulunamamasından dolayı bi hata alacaksınız fakat bu yine bizi ilgilendirmiyor.

[Sadece Kayıtlı Kullanıcılar Linkleri Görebilir.Kayıt Olmak İçin Tıklayınız...]

Shell tekrar servera sokulmaya çalışılırsa başarısız olunur.Burda $external veriable ımız tanımlanmıştır.
Bu yüzden biz tanımlanmış bi değişkeni kullanarak tekrar tanımlayarak servera giremeyiz...

Local File İnclude (LFI)

Yeral serverdan dosya dahil etme anlamına gelen bu açık RFI kadar etkili değildir.
Örneğin ;

<?php
include ('data/$external/function.php');
?>


Burda aynı RFI açığında gördüğümüz gibi $external veriable ının tanımlanmadığını görmekteyiz.
Fakat bu LFI da shell atarak kullanlamaz.Tanımlanmayan değişken kullanılarak okuma izni olan dosyalar okunabilir.Yukarıdaki kodu x3.php olarak kaydedin ve hosta atın :


[Sadece Kayıtlı Kullanıcılar Linkleri Görebilir.Kayıt Olmak İçin Tıklayınız...]

Bununla server ın asd dosyası okunabilir.İzin verilen bütün dosyaları okunabilir...Engellemek için:

<?php
$external='asdf'
include ('data/$external/function.php');
?>


Bu kodu da x4.php diye kaydedip hosta atın ve aşağıdaki gibi çalıştırın :


[Sadece Kayıtlı Kullanıcılar Linkleri Görebilir.Kayıt Olmak İçin Tıklayınız...]

Bu sefer LFI açığının çalışmadığı görülecektir.Nedeni ise $external veriable ının tanımlanmasıdır.

Bu saldırıları önlemenin diğer bi yolu ise :

/etc/php.ini dosyasını açarak

disable_function satırının karşısına şunları eklememiz gerekiyor :

system,passthru,proc_nice,exec,popen,proc_close,ex ecute,proc_get_sta tus,proc_open,allow_url_fopen,shell,

ve sonra "service htttpd restart" diyoruz...Bu fonksiyonları disable ettiğimiz için serverımızda bazı scriptler çalışmıyacaktır.Tabi korunmak için bazı scriptlerden feragat etmek gerekir

İşte bu açıkların bulunmadığı bi sisteminizin olmasını istiyosanız scriptinizi inceleyerek tanımlanmamış variable'ları tanımlayarak RFI/LFI saldırılarını önleyebilirsiniz...

SELAMETLE....


__________________

ShıFтdєLєтє isimli Üye şimdilik offline konumundadır   Alıntı ile Cevapla
Cevapla


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Sistem Açıkları Ve Kapatılması_ Süper Bir döküman -BuRAk- Güvenlik ve Güvenlik Açıkları 0 30.11.08 20:52
7 hastalık ve korunma yolları zorro Sağlık 0 31.10.07 12:30
HIV/AIDS ve Korunma venom00 Sağlık 3 22.05.07 21:51
PHp'de Tarih İşlemleri Murat_1995 ASP, Perl, Php, Html 0 09.01.07 22:22


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 07:02.


Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.6.0
User Alert System provided by Advanced User Tagging v3.0.6 (Lite) - vBulletin Mods & Addons Copyright © 2020 DragonByte Technologies Ltd.
ForumTayfa

Arşiv: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 16 22 23 24 25 26 27 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 95 96 97 98 99 100 102 103 104 105 106 155 156 157 158 159 160 161 162 163 164 167 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271


ForumTayfa - Link Değişimi
Telinka İletişim | Voip Ürünleri | Link Değişimine Katılın |

Sitemiz bir forum sitesi olduğundan dolayı, kullanıcılar her türlü görüşlerini önceden onay olmadan anında siteye yazabilmektedir. ForumTayfa Yöneticileri mesajları itina ile kontrol etse de, bu yazılardan dolayı doğabilecek her türlü sorumluluk yazan kullanıcılara aittir. Yine de sitemizde yasalara aykırı unsurlar bulursanız [email protected] email adresine bildirebilirsiniz, şikayetiniz incelendikten sonra en kısa sürede gereken yapılacaktır.

Any member of our web site has the right of adding comments instantly without getting permisson due to the forum structure of our site basis. Althought, our site modarators check comments with care, all the responsibilities sourced from these comments directly belong to the members. If you still find any illegal content in our site ( A.buse, H.arassment, S.camming, H.acking, W.arez, C.rack, D.ivx, Mp.3 or any Illegal Activity ), please report us via [email protected] .Your reports will be evaluated as soon as the arrival of your e-mail.