스팸 차단 방법 > 그누보드5 팁자료실

그누보드5 팁자료실

스팸 차단 방법 정보

스팸 차단 방법

본문

캡차가 있는 경우에도 write_update.php로 바로 스팸이 들어오는 경우가 종종 발생하네요.
그래서 메인페이지나 글쓰기 페이지에 세션을 저장하고 스팸 차단 체크를 해보았습니다.

 


// extend/user.extend.php 파일에 입력
 
if (!defined('_GNUBOARD_')) exit;
 
// 현재 실행되는 스크립트 이름 확인
$current_script = basename($_SERVER['SCRIPT_NAME']);
// 1. 글쓰기 화면(write.php)이나 인덱스 등 정상 경로에서 세션 생성
// (봇은 보통 이 페이지들을 렌더링하지 않고 바로 공격하므로 세션이 없음)
if ($current_script == 'write.php' || $current_script == 'index.php') {
    set_session('ss_is_human_entry', true);
}
// 2. 글 저장(write_update.php) 시 세션 체크
if ($current_script == 'write_update.php' || $current_script == 'write_comment_update.php') {
    // 세션이 없거나 리퍼러(이전 페이지)가 없으면 차단
    if (!get_session('ss_is_human_entry')) {
        die('올바르지 않은 접근입니다. (Direct Access Denied)');
    }
    
    // 추가: 리퍼러 체크 (봇은 리퍼러를 위조하기도 하지만, 없는 경우도 많음)
    if (!isset($_SERVER['HTTP_REFERER']) || !$_SERVER['HTTP_REFERER']) {
        die('잘못된 접근입니다. (No Referer)');
    }
}


감사합니다.
추천
5

댓글 5개

아직 스팸이 쌓이는 글은 있으나... 너무 오래된 버전의 게시판이라... 추후에 캡차가 있는 오픈된 자유게시판을 사용하게 되면 스팸 체크해보고 알려주신 방법으로 대비해봐야겠네요!

저같은 경우에는 가짜 회원 가입스크립트를 통과해서 회원가입하는것을 지역IP 로를 활용해서 1차로 막았고, (효과는 있음). 2차로 게시글에 대해서 승인되지않는 사람은 못쓰게 막아서 일부분 해결을 했는데, 이 방법도 고려해봐야겠습니다.

전체 2,742 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT