리퍼러를 이용한 스패머 차단 > 그누4 팁자료실

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

리퍼러를 이용한 스패머 차단 정보

리퍼러를 이용한 스패머 차단

본문

안녕하세요 . 포인트에 눈이 멀어 여기저기 들쑤시고 다니는 사람입니다.
여러분들의 소중한 스킨을 열심히 사용하기위해서요.
0포인트라 다운을 못받아서 쇼크먹었습니다.

일단 리퍼러가 뭔지는 다 아실겁니다. 페이지 요청이 들어온 객체
즉 A 태그라던지 FORM 전송을 통해 넘어오기 전의 host정보를 가지고 있는걸로 알고 있습니다.
이 리퍼러는 물론 만능은 아닙니다.
충분히 헤더수정으로 속일 수 있고 프록시로도 속일수 있고 비슷하게
다른 서치페이지를 거쳐오면 걸러내기도 뭐하고 그럽니다.
따라서 리퍼러를 가지고 특정 아이피 대역을 차단하는것은 사실상 유명무실한 일입니다만

로컬에서 로컬로 전송만 허용하기는 적당한것 같아서 이렇게 글을써봅니다.
상당히 중복일 것 같아서 악플이 겁나지만 포인트를 주니까 용기내서 쓰겠습니다.

우선 common.php 를 수정하시던지, extend디렉토리에 하나를 만드시던지 해서
상단에 다음 함수가 들어가도록 합니다.

function valid_post_ban(){//물론 함수 이름은 제마음이빈다.
 $referer = parse_url($_SERVER['HTTP_REFERER']); //리퍼러정보를 가져와서
 $refer_ip = gethostbyname($referer[host]);//아이피를 찾아냅니다.
 if($refer_ip!="127.0.0.1") exit();//로컬호스트가 아니면 종료
}


이래놓고 write_update.php의 include_once("./_common.php");하단에
valid_post_ban(); //아까 엿장수 마음대로 만든 함수 이름이구요

추가해주시면
로컬호스트의 페이지에서 전송한 폼 외에는 다 떨구게 되겠죠
이렇게 하면 외부에서 자체 form을 만들어 전송러시를 하는넘들은 다 떨구게 됩니다.

물론 이것만으로는 우리집 페이지를 경로해서 글을 남기도록 설계된
소위 브라우징 플레이는 막을 수 없습니다.

따라서 브라우징 플레이 까지 막으시려면
write.php상단에도 똑같이 해줍시다.
valid_post_ban();

그러면 url자체에서 write.php?bo_table=어쩌구
이렇게 직접 요청하는넘들을 다 떨굽니다.

단지 유의하실 점은 실제 페이지에서 window.location이나 플래시의 GetURL로
write.php에 접근할 수 없다는 점입니다.
오로지 a 태그를 경유한 접근만 리퍼러를 인식하기 때문이죠

그누보드 시스템에서는 충분히 적용 가능한것 같아서 실례를 무릅쓰고 써봅니다.

스패머가 우리집에 있는 링크를 타고 write.php를 접근한다면?
list.php 에도 똑같이 해줍시다.(단지 반드시 a태그로만 접근 가능하다는거 유념하시고)
홈페이지 메뉴를 경유해서 리스트를 거쳐서 쓰기모드로 write.php까지 온다면..
...


원츄입니다. 그런 스패머는 우리의 친구입니다. mind만 없을뿐 방문자로 봐야겠네여-_-ㅋ

추천
4

댓글 6개

오.. 간단하면서도 좋은 방법인듯 합니다..
요즘 회사에서 관리하는 사이트들에 무작위 글들이 올라오는데 이방법을 써먹어봐야 겠네요..
효과는 제가 여러 사이트에서 확인했습니다. 잘만하면 스팸률 0 에 가까워집니다만,
치명적인 결점을 발견했습니다. 로봇이 긁어가질 못하네요 ㅠㅠ
보안과 노출은 딜레마 같습니다. 돈벌어야 하는 사이트에서는 사용하지 마시길
전체 6 |RSS
그누4 팁자료실 내용 검색
  • 개별 목록 구성 번호 제목 작성자 작성일 추천 조회
  • 게시물이 없습니다.

회원로그인

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