s

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

· 2013-03-24 (일) 10:38:04 · 6532
<?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']); - 트리거시 아이피 밴
?>
|
댓글을 작성하시려면 로그인이 필요합니다.

개발자팁

5,403건

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

+
분류 제목 글쓴이 날짜 조회
MySQL 13-08-22 조회 4,415
기타 13-08-22 조회 3,771
MySQL 13-08-18 조회 8,861
JavaScript 13-08-18 조회 5,421
PHP 13-08-17 조회 5,661
기타 13-08-17 조회 4,754
PHP 13-08-17 조회 3,950
기타 13-08-08 조회 5,561
기타 13-08-08 조회 3,777
정규표현식 13-08-08 조회 1.1만
웹서버 13-08-08 조회 5,486
기타 13-07-23 조회 4,463
MySQL 13-07-23 조회 8,006
MySQL 13-07-23 조회 8,718
jQuery 13-07-23 조회 5,824
정규표현식
[정규표현식]
13-07-23 조회 1.1만
웹서버 13-07-23 조회 5,843
jQuery 13-07-23 조회 1.5만
jQuery 13-07-14 조회 4,975
jQuery 13-07-14 조회 5,443
jQuery 13-07-14 조회 6,501
jQuery 13-07-14 조회 5,675
jQuery 13-07-14 조회 5,003
jQuery 13-07-14 조회 5,905
jQuery 13-07-14 조회 4,573
jQuery
[jQuery]
13-07-14 조회 3,960
jQuery 13-07-14 조회 3,705
jQuery 13-07-14 조회 3,601
jQuery 13-07-14 조회 4,661
jQuery 13-07-14 조회 4,086