[PHP] Ziyaretci HTTP Vekil Sunucu Kontrolü Kod Örneği
-
<?php /** * Ziyaretcinin vekil sunucu kullanip kullanmadigini belirlemek icin HTTP basliklarini kontrol eder. * Varsayilan vekil sunucu olabilecek port numaralarini denetler. * * fonksiyonlar: * bool vekil_sunucu_kontrolu() * -Ziyaretci vekil sunucu kullaniyorsa "true", kullanmiyorsa "false" olarak doner. */ # HTTP Vekil sunucu basliklari $vekil_sunucu_basliklari = array( 'HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_X_REAL_IP', 'HTTP_X_CLIENT_IP', 'HTTP_X_FORWARDED_HOST', 'HTTP_X_FORWARDED_SERVER', 'HTTP_FORWARDED_FOR', 'HTTP_CLIENT_IP', 'HTTP_VIA', 'HTTP_FORWARDED', 'HTTP_FORWARDED_FOR_IP', 'VIA', 'X_FORWARDED_FOR', 'FORWARDED_FOR', 'X_FORWARDED', 'FORWARDED', 'CLIENT_IP', 'FORWARDED_FOR_IP', 'HTTP_PROXY_CONNECTION' ); # Kontrol edilecek varsayilan vekil sunucu port numaralari $portlari_tara = array( 80, 443, 3128, 8080, ); # Ziyaretci uzerinde vekil sunucu kontrolu $portlar = array( 78, 79, 80, 81, 82, 83, 443, 3128, 8080, 8081, 8090, 8181, 8282, 8888, 9050, 9999 ); function vekil_sunucu_kontrolu(){ global $vekil_sunucu_basliklari,$portlari_tara,$portlar; foreach($vekil_sunucu_basliklari as $header){ if(isset($_SERVER[$header])){ return true; } } foreach($portlari_tara as $port){ if(@fsockopen($_SERVER['REMOTE_ADDR'], $port, $errstr, $errno, 1)){ return true; } } foreach($portlar as $port){ if($_SERVER["REMOTE_PORT"] == $port){ return true; } } return false; } ?>
-
hmm güzelmiş bu. proxy kullananları siktir etmek için ideal.
-
Çok mantıklı olmuş hocam .
Keşke sen sürekli konu açsanda seni takip edebilsek dayı :W
-
İyiymiş, teşekkürler :)
-
faydalı bir paylaşım teşekkürler hocam.
-
Ben başarılı buldum her zamanki gibi
Tebrikler.
-
cahilliğime verin bunu index.php nasıl kullanacağız biri söyleyebilir mi? bir siteme saldırı var. mutlaka entegre etmem gerek.
-
xylgn_ bunu yazdı
cahilliğime verin bunu index.php nasıl kullanacağız biri söyleyebilir mi? bir siteme saldırı var. mutlaka entegre etmem gerek.
kodları vekil.php diye aynı dizine kaydet al düzenledim ama saldırıyla bunun ne alakası var
<?php
Realist tarafından 14/May/14 22:54 tarihinde düzenlenmiştir
include('vekil.php');
$isproxy = vekil_sunucu_kontrolu();
if($isproxy==true)
{header('Refresh: 2; url=http://www.google.com.tr');}
else{ //buraya kendi index.php kodlarını koy}
?> -
vekil sunucu kullananları google a yönlendirebilir miyim?
-
dokumanlara eklenecek icerik
-
Performans sıkıntıları oluşturmaz mı bu. Birde socket kullanımı için gerekli php eklentileri yüklü olması lazım. Fsocket denemesi perfromans sıkıntılarına yola açabilir (yüksek trafikli siteler için)
Eline sağlık.