if(preg_match('/bot|crawler|spider|facebook|alexa|twitter|curl/i',
$_SERVER['HTTP_USER_AGENT'])) {
logger("[BOT] {$_SERVER['REQUEST_URI']} - 500");
header('HTTP/1.1 500 Internal Server Error');
exit(); } |
악의적인 공격자 입장에서 특정 웹 크롤러나 사용자 에이전트가 자신의 특정 페이지를 로드하는 걸 원치 않을 때 유용함.
즉, 자신이 만든 피싱 페이지나 해킹된 악성 다운로드 페이지가 외부로 유출되는 걸 방지하고자 사용할 수 있음.
위 코드를 보면 preg_match() 함수를 사용하여 user-agent 필드에서 알려진 특정 크롤러 문자열을 찾음. 일치하는 항목을 찾으면 웹페이지를 출력하는 대신 header() 함수를 이용한 HTTP 500 코드를 응답함.
참고 사이트 :
https://blog.sucuri.net/2020/08/web-crawler-user-agent-blocking-techniques.html
============================================================
본 게시물은 KOROMOON 님께서 작성하였으며 CCL (Creative Commons License) 에서 "저작자표시-비영리-동일조건변경허락" 이용조건으로 자료를 이용하셔야 합니다.
댓글 없음:
댓글 쓰기