( Find Bug On PHP System)

Holigano

Forumdan Uzaklaştırıldı
Katılım
2 May 2015
Mesajlar
560
Tepkime puanı
0
Puanları
0
Bu dökümanı arşivimde buldum ve paylaşmıyacaktım ama olsun

Find Bug 0n PHP Systems

Author : Hestia' |

PHP sistemlerde ki zafiyetleri fonksiyonlar ve değişkenler üzerinden ele alacağız.

Bunu sınıflandırmamızın sebebi çoğu arkadaşımızın Php sistemlerde açık bulmakta ve tanımlamakta zorluk çekmesidir.

Bu dökümanın size bug bulma ve tanımlamada yardımcı olacaktır.

*//

Php sistemlerde ilk olarak kaynak kodlarında aşağıdaki değişkenlere göz atmalısınız:

Kod:
$_SERVER 
$_GET 
$_POST 
$_COOKIE 
$_REQUEST 
$_FILES 
$_ENV 
$_HTTP_COOKIE_VARS 
$_HTTP_ENV_VARS 
$_HTTP_GET_VARS 
$_HTTP_POST_FILES 
$_HTTP_POST_VARS 
$_HTTP_SERVER_VARS

Neden? Cevap:

Php sistemlerde var olan bu değişkenler Input table değişkenleridir.

Örneğin admin giriş sayfasında şifremizi girdiğimiz form alanı $_POST değişkeni ile değere atanıyorsa yapacağımız iş bu değişken alanını incelemek olmalıdır.
Çünkü kontrolsuz inputlar sistemde fiyet oluşturur.


Şimdi hepsini teker teker inceleyeceğiz.

__________________________________________________ _____________

[~] Cross Site Scripting Vulnerability (XSS)



XSS kullanıcı odaklı bir açıktır.

Browserler üzerinde; Web sayfalarına inject edilen javascript kodları ile kullanıcıya yönelik saldırı yapılır.
Günümüzde Website sahiplerinin bu açık hakkında bilgisizliği ve tüm tarayıcıların javascript desteği olması XSS açıklarının çok yaygın olduğunu anlamak için yeterlidir.



Peki nasıl meydana gelir?


Temel olarak HTML etiketlerinin(tag) kötüye kullanımına sonucu meydana gelir.

ÖRNEK:

Kod:
<?php
$xss = $_GET[’alco’];
print $xss ;
?>

Değişkenler hiç bir filtreye tabi değil.

Örnek atak modülü:

Kod:
#http://127.0.0.1:80/index.php?alco="><scr ipt>alert(********.cookie);</script>

DEFANS

HTML etiketlerinin kötüye kullanımını engellemek gerekir.
Bunun için "htmlspecialchars" fonksiyonunu kullanmalıyız:

Kod:
<?php
$xss = $_GET[’alco’];
print htmlspecialchars($xss) ;
?>

[~] SQL Injection Vulnerability

SQL Injection XSS açıklarının aksine server odaklı bir açıktır.

SQL Injection açıkları user inputlarının(kullanıcı girdilerinin) filtrelenmesinden meydana gelir.
Soracaksınız XSS de filtre eksikliğinden meydana gelmekte farkı ne? Cevap:

SQL Injection: Database ile data alış verişi yaptığımız alanların filtrelenmemesinden kaynaklanır.

XSS: WEB APPLICATION > USER > BROWSER > USER

SQL: WEB APPLICATION > USER > DATABASE > USER

şeklinde meydana gelir.

ÖRNEK:

Kod:
<?php
$id= $_GET[’id’];
....
$query= "SELECT * FROM users WHERE id= ’ “ .$id." ;"
...
?>

id değikeni hiç bir filtremeye tabi değil.Bir üstten tırnak koysak database hata verecektir!


Örnek atak modülü:

Kod:
#http://127.0.0.1:80/index.php?id=1+UNION+SELECT+1,@@version,3,4,5+from+users/*

EFANS

Burada SQL Injectionda kullanılan "+(artı)" ";(noktalı virgül)" terimleri yasaklayacağız.

Kod:
<?php
$id= $_GET[’id’];
....
$yasak = array("\\\\\\\\"", "\\\\\\\\\\\\\\\\", "/", "*", "’", "=", "-
", "#", ";", "<", ">", "+", "%");

$id = str_replace($yasak, "", $id);

$query= "SELECT * FROM users WHERE id= ’ “ .$id." ;"
...
?>

Yukarda array kullanarak yasak terimleri dizi içine aldık ve id değerini bu terimlere göre yeniden tanımladık.

__________________________________________________ _____________


[~] Dynamic Evaluation Vulnerability


Php fonksiyonlarının yanlış kullanılması ile meydana gelen bir açık türüdür.


ÖRNEK

Kod:

Kod:
<?php
$fonksiyon = $_GET[’fonksiyon’];
$fonksiyon();
?>
Yukardaki fonksiyonun çağırılma şekline dikkat ediniz.

Örnek atak Modülümüz:

Kod:
#http://127.0.0.1:80/index.php?fonksiyon=phpinfo
 

mersin escort mersin e ticaret bodrum escort fethiye escort alanya escort konya escort marmaris escort bodrum escort vozol puff sakarya escort sakarya escort sakarya escort sakarya escort sakarya escort sakarya escort sakarya escort sakarya escort sakarya escort ankara escort meritking giriş
Üst
Copyright® Ajanlar.org 2012