form 질문. 정보
form 질문.
본문
html로 게시판에서 글쓰기를 합니다.
hidden으로 업데이트 되는 문서에 name 값을 충족되게 form을 날리면 실행이 됩니다.
어떻게 하면 게시판내에서 제어를 할 수 있을까요...?
이전에 옥에티에 작성을 하였지만 패치는 되지 않고 있습니다.
코드를 공개하여 말하자니 무분별한 공격?으로 수정이 될 수 있을텐데...
대책이 안 서네요... ^ ^;;
댓글 전체
어떻게 하면 게시판내에서 제어를 할 수 있을까요...?
==> 뭘 제어를 한다는건지요?
==> 뭘 제어를 한다는건지요?
hidden으로 날린 name 값이요. ^^
원본 코드를 살펴보니 회원정보 수정시 업데이트 과정에서 문제점이 다소 보입니다.
정보 수정시에 검사 과정을 대부분 스크립트를 사용함으로 인하여 말씀하신 내용과 같이
hidden으로 업데이트 되는 문서에 name 값을 form 을 날리면 실행이 됩니다
단 리퍼러 체크를 함므로 보내는 경로가 현재사이트 주소가 아니라면 차단이 되도록 되어 있네요.
register_update.php 에서 검사 과정을 대폭 추가해야 할듯 합니다.
정보 수정시에 검사 과정을 대부분 스크립트를 사용함으로 인하여 말씀하신 내용과 같이
hidden으로 업데이트 되는 문서에 name 값을 form 을 날리면 실행이 됩니다
단 리퍼러 체크를 함므로 보내는 경로가 현재사이트 주소가 아니라면 차단이 되도록 되어 있네요.
register_update.php 에서 검사 과정을 대폭 추가해야 할듯 합니다.
세션이나 쿠키쪽도 한번 생각해 볼 필요가 있을듯 합니다....^^
리퍼러체크를 하면 주소창에 다다닥 쓰는 것만 막지 않나요?
각 글작성폼에 스크립트가 아닌 php로 url을 체크하는 것도 하나의 방법이 될 수 있습니다....^^
이를 업데이트 최상단에서 비교하면 안될까용?.....
이를 업데이트 최상단에서 비교하면 안될까용?.....
맞는 방법인지 모르겠지만 제나름대로 꼼수를 생각해 본겁니다만^^
관리자 모드에서 금지 태그 항목으로 form 태그도 지정하시고
게시판 스킨의 view.skin.php 상단에 아래의 코드를 활용 하셔도 되겠네요.
sir 자유게시판 의 특정단어 치환 참조
// 아래의 문자열이 들어간 글은 -x 를 붙여서 실행을 금지함
$view[content] = preg_replace("/(form|action|script|iframe)/i", "$0-x", $view[content]);
예제 : http://aaschool.net/@/tb.php/sub1_1/1
관리자 모드에서 금지 태그 항목으로 form 태그도 지정하시고
게시판 스킨의 view.skin.php 상단에 아래의 코드를 활용 하셔도 되겠네요.
sir 자유게시판 의 특정단어 치환 참조
// 아래의 문자열이 들어간 글은 -x 를 붙여서 실행을 금지함
$view[content] = preg_replace("/(form|action|script|iframe)/i", "$0-x", $view[content]);
예제 : http://aaschool.net/@/tb.php/sub1_1/1
일단 알려주신 꼼수로써 대체를 해야겠습니다.
근데 예제는 안 열리네요. - _-ㅋ
관심을 갖어주셔서 감사합니다~ ^ ^
근데 예제는 안 열리네요. - _-ㅋ
관심을 갖어주셔서 감사합니다~ ^ ^
요상하게 트랙백 주소가 먹통입니다.ㅋㅋ
http://www.avaschool.net/@/board.php?bo_table=sub1_1&wr_id=1
http://www.avaschool.net/@/board.php?bo_table=sub1_1&wr_id=1
일일히 스킨에다 넣는 것 보다는 bbs/view.php 파일에 삽입했더니 잘 됩니다. ^^
아래의 코드는 모? 보드의 회원 가입시에 사용하는 방법인데 이전 페이지의 이름을 체크 하는듯
합니다. 응용해 보세요.^^
if(!eregi($HTTP_HOST,$HTTP_REFERER)) Error("정상적으로 작성하여 주시기 바랍니다.");
if(!eregi("member_join.php",$HTTP_REFERER)) Error("정상적으로 작성하여 주시기 바랍니다","");
if(getenv("REQUEST_METHOD") == 'GET' ) Error("정상적으로 글을 쓰시기 바랍니다","");
합니다. 응용해 보세요.^^
if(!eregi($HTTP_HOST,$HTTP_REFERER)) Error("정상적으로 작성하여 주시기 바랍니다.");
if(!eregi("member_join.php",$HTTP_REFERER)) Error("정상적으로 작성하여 주시기 바랍니다","");
if(getenv("REQUEST_METHOD") == 'GET' ) Error("정상적으로 글을 쓰시기 바랍니다","");