http://www.nzeo.com/bbs/zboard.php?id=cgi_tip&page=2&sn1=&divpage=1&sn=off&ss=on&sc=off&keyword=방지&select_arrange=headnum&desc=asc&no=6246
로봇에 의한 광고글 쓰기방지 기법(write_ok.php 버그)
김성진 (Homepage) 2004-08-31 16:55:03, 조회 : 5,333, 추천 : 4
write_ok.php를 살펴보면 13째줄 부근에 '편법을 이용한 글쓰기 방지'에서
서버운영 환경에 따라 $HTTP_HOST과 $HTTP_REFERER 값이 없음(NULL)으로 인하여 광고성 글이 올라갑니다.
일종의 버그이며 $HTTP_REFERER는 write_ok.php를 CALL한 직전의 URL이 포함되어 있으며
이 URL에 자신의 도메인이 포함되어 있지 않으면 로봇이 작동한것으로 인지합니다.
즉, getenv("HTTP_REFERER")의 값을 보면 http://도메인/zboard/write.php......일때 정상입니다.
따라서 $HTTP_HOST를 자신의 도메인(xxxxx.pe.kr 등)으로 입력하시고
$HTTP_REFERER에는 getenv("HTTP_REFERER")를 넣어주시면 광고글이 올라가지 않습니다.
// 편법을 이용한 글쓰기 방지(수정전)
$mode = $HTTP_POST_VARS[mode];
if(!eregi($HTTP_HOST,$HTTP_REFERER)) Error("정상적으로 글을 작성하여 주시기 바랍니다.");
if(getenv("REQUEST_METHOD") == 'GET' ) Error("정상적으로 글을 쓰시기 바랍니다","");
if(!$mode) $mode = "write";
// 편법을 이용한 글쓰기 방지(수정후)
$mode = $HTTP_POST_VARS[mode];
if(!eregi("도메인",getenv("HTTP_REFERER"))) Error("로봇이 들어왔나 보군요.");
if(getenv("REQUEST_METHOD") == 'GET' ) Error("정상적으로 글을 쓰시기 바랍니다","");
if(!$mode) $mode = "write";
67.180.207.89
제로보드
도메인에 무엇을 넣어야 합니다.
우리 홈페이지는 http://ca.zo.ly 인데, ca.zo.ly 라고 입력해야 되요? 2004-08-31
17:51:38
레미짱
확인은 안해 보았지만 regexp이므로
ca\.zo\.ly
라고 해야 되지 않을까요
escape를 추가해야 될 것 같습니다 2004-09-01
00:10:28
유종현
도메인 포워딩을 받는 경우에는 어떻게 하죠? 실제 계정 주소를 써야하나요? 아니면 포워딩된 도메인 주소를 써야하나요? 2004-09-01
16:06:02
에지
레미짱//
eregi 함수에서는 \를 붙이실 필요 없이 그냥 ca.zo.ly 라고 써도 잘 받아먹습니다.. (쿵!)
유종현// .com이나 .net, .co.kr이 아니라 .wo.to 같은 포워딩이라면 실제 계정주소를 써주셔야합니다. 2004-09-01
16:38:17
유종현
그러니까 예를 들어 홈페이지가 news.com이라면 그냥 도메인을 쓰지만, 홈페이지가 서브도메인(2차도메인)인 경우 예를 들어 sports.news.com이라면 실제 계정주소를 써야한다는 말씀인가요? 2004-09-02
00:19:30
세바스챤_™
테스트 결과 아무 소용 없습니다. 여전히 광고글 보란듯이 올라옵니다. 2004-09-03
11:08:20
산마루
테스트 결과! 원격지에서 글을 올리는 경우는 차단이 됩니다.
테스트 파일을 만들어봤는데 참고하시기 바랍니다.
추천합니다.
테스트 파일 http://dorang.net/imsi/write.php 2004-10-21
08:21:31
정남주
허....이거 해놓고 나니 저도 글을 못쓰는데요 ?
어떻게 된건지 ? 2004-12-18
02:59:59
kei
잇 사람들이 -_-!!
포워딩 주소를 써놓고 안된다하면 어떡합니까?
실제 계정의 주소를 입력해야죠.
$HTTP_HOST에 무슨 값이 들어오는지 잘 생각해보면 알 수 있겠죠? 2004-12-19
12:56:06
깜보
위와 같은 원리로 더 간단하게
if(!$HTTP_REFERER) Error("로봇이 들어왔나 보군요.");
라고만 넣어도 될듯도 하군요~~~~~^^* 2005-01-21
00:11:28
로봇에 의한 광고글 쓰기방지 기법(write_ok.php 버그)
김성진 (Homepage) 2004-08-31 16:55:03, 조회 : 5,333, 추천 : 4
write_ok.php를 살펴보면 13째줄 부근에 '편법을 이용한 글쓰기 방지'에서
서버운영 환경에 따라 $HTTP_HOST과 $HTTP_REFERER 값이 없음(NULL)으로 인하여 광고성 글이 올라갑니다.
일종의 버그이며 $HTTP_REFERER는 write_ok.php를 CALL한 직전의 URL이 포함되어 있으며
이 URL에 자신의 도메인이 포함되어 있지 않으면 로봇이 작동한것으로 인지합니다.
즉, getenv("HTTP_REFERER")의 값을 보면 http://도메인/zboard/write.php......일때 정상입니다.
따라서 $HTTP_HOST를 자신의 도메인(xxxxx.pe.kr 등)으로 입력하시고
$HTTP_REFERER에는 getenv("HTTP_REFERER")를 넣어주시면 광고글이 올라가지 않습니다.
// 편법을 이용한 글쓰기 방지(수정전)
$mode = $HTTP_POST_VARS[mode];
if(!eregi($HTTP_HOST,$HTTP_REFERER)) Error("정상적으로 글을 작성하여 주시기 바랍니다.");
if(getenv("REQUEST_METHOD") == 'GET' ) Error("정상적으로 글을 쓰시기 바랍니다","");
if(!$mode) $mode = "write";
// 편법을 이용한 글쓰기 방지(수정후)
$mode = $HTTP_POST_VARS[mode];
if(!eregi("도메인",getenv("HTTP_REFERER"))) Error("로봇이 들어왔나 보군요.");
if(getenv("REQUEST_METHOD") == 'GET' ) Error("정상적으로 글을 쓰시기 바랍니다","");
if(!$mode) $mode = "write";
67.180.207.89
제로보드
도메인에 무엇을 넣어야 합니다.
우리 홈페이지는 http://ca.zo.ly 인데, ca.zo.ly 라고 입력해야 되요? 2004-08-31
17:51:38
레미짱
확인은 안해 보았지만 regexp이므로
ca\.zo\.ly
라고 해야 되지 않을까요
escape를 추가해야 될 것 같습니다 2004-09-01
00:10:28
유종현
도메인 포워딩을 받는 경우에는 어떻게 하죠? 실제 계정 주소를 써야하나요? 아니면 포워딩된 도메인 주소를 써야하나요? 2004-09-01
16:06:02
에지
레미짱//
eregi 함수에서는 \를 붙이실 필요 없이 그냥 ca.zo.ly 라고 써도 잘 받아먹습니다.. (쿵!)
유종현// .com이나 .net, .co.kr이 아니라 .wo.to 같은 포워딩이라면 실제 계정주소를 써주셔야합니다. 2004-09-01
16:38:17
유종현
그러니까 예를 들어 홈페이지가 news.com이라면 그냥 도메인을 쓰지만, 홈페이지가 서브도메인(2차도메인)인 경우 예를 들어 sports.news.com이라면 실제 계정주소를 써야한다는 말씀인가요? 2004-09-02
00:19:30
세바스챤_™
테스트 결과 아무 소용 없습니다. 여전히 광고글 보란듯이 올라옵니다. 2004-09-03
11:08:20
산마루
테스트 결과! 원격지에서 글을 올리는 경우는 차단이 됩니다.
테스트 파일을 만들어봤는데 참고하시기 바랍니다.
추천합니다.
테스트 파일 http://dorang.net/imsi/write.php 2004-10-21
08:21:31
정남주
허....이거 해놓고 나니 저도 글을 못쓰는데요 ?
어떻게 된건지 ? 2004-12-18
02:59:59
kei
잇 사람들이 -_-!!
포워딩 주소를 써놓고 안된다하면 어떡합니까?
실제 계정의 주소를 입력해야죠.
$HTTP_HOST에 무슨 값이 들어오는지 잘 생각해보면 알 수 있겠죠? 2004-12-19
12:56:06
깜보
위와 같은 원리로 더 간단하게
if(!$HTTP_REFERER) Error("로봇이 들어왔나 보군요.");
라고만 넣어도 될듯도 하군요~~~~~^^* 2005-01-21
00:11:28
'정보기술 > 일반' 카테고리의 다른 글
PC용 GPS Navigation 소프트웨어 (0) | 2007.08.14 |
---|---|
제로보드 - 최근 코멘트를 종합으로 추출하는 기능 (0) | 2007.07.18 |
Mylo 이어폰 아답터 (0) | 2007.05.18 |
Mylo v1.001 Filesystem (FTP 접속) (0) | 2007.05.18 |
MyloHacks.org! - Sony Mylo Hack Discussion Community (0) | 2007.05.18 |