프록시도 탐지하는 IP검증 및 차단 소스 > 개발자팁

개발자팁

개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.

프록시도 탐지하는 IP검증 및 차단 소스 정보

PHP 프록시도 탐지하는 IP검증 및 차단 소스

본문

<?php
function checkSecurity()
{
$list = "ban.txt";
$deny = array();
$fo = fopen($list, "r");
$str = fread($fo, filesize($list));
fclose($fo);
$str = str_replace(",","_",$str);
$ary = explode("_",$str);
for($i=0; $i < count($ary); $i++)
{
$deny[] = $ary[$i];
}
if(!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
foreach($deny as $ip) {
if(eregi($ip,$_SERVER['REMOTE_ADDR'])) {
die("## your ip banned!");
}
}
if(!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
banIP($_SERVER['HTTP_X_FORWARDED_FOR']);
}
}
function banIP($ip){
$list = "ban.txt";
if($_SERVER['HTTP_X_FORWARDED_FOR']) $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
$ip = explode(".",$ip);
$ip = $ip[0].".".$ip[1].".".$ip[2].".*"; //아이피 끝대역 차단
$fo = fopen($list, "a");
fwrite($fo, $ip. ",");
fclose($fo);
die("## hacking detected :)");
}
//탐지하기
checkSecurity();

//banIP($_SERVER['REMOTE_ADDR']); - 트리거시 아이피 밴
?>
추천
1
  • 복사

댓글 0개

© SIRSOFT
현재 페이지 제일 처음으로