xss 보안관련 궁금한것이 있습니다.

xss 보안관련 궁금한것이 있습니다.

QA

xss 보안관련 궁금한것이 있습니다.

답변 1

본문

그누보드 common 보면 
$_GET = xss_clean($_GET); 가 있어서 함수를 실행하는데요

제가 그누보드 게시판 말고 따로 사용하는 페이지가 있어서 자료 입력 받을때 보안검사를 위해서
$_POST = xss_clean($_POST); 로 1줄을 추가 해보니 DB입력시 걸려 지고 잘 되더군요
그런데 궁금한 것이 그누보드 게시판에서 입력후 DB를 살펴 보면
<script>
<div>alert("안녕");</div>
<div><script></div>
아래와 같이 나오구요
제 것에서는 alert("안녕"); xss_clean 실행후 앞뒤로 모두 잘려서 DB자체에 저장이 되더라구요
그누보드에서 보안관리 하는 정도로 부터 공부 하고 싶은데 그누보드 게시판 저장전에 어떠한 것을 실행 하게 되는건지요?
실제 그누보드에서 저장전 필터링 기능을 어디서 찾아봐야 할지 못찾겠더라구요.

그리고 궁금한것이
사실 DB 20개가 저장 된다면 거기서 실제 필터링 할건 5개 정도 거든요
그냥 20개 $_POST = xss_clean($_POST);  이걸로 필터링 하는게 나을까요?
아니면 aql 문 전에 DB레코드에 맞게 하나씩 실행을 걸어 주는게 좋을까요? (최소한으로 줄이는게 나을까요?)
서버 부하에서 많이 차이가 날런지 궁금합니다
POST 로 모두 거르기를 하면 매번 페이지 바뀔때마다도 부하가 많이 걸릴련지 싶네요

이 질문에 댓글 쓰기 :

답변 1

저장 필터링은 사용자 데이터를 손상하므로 잘못된 xss 판별 등에서 게시물을 날려먹을 수 있습니다.
그래서 저장은 mysql_escape_string 으로 escaping만 해주시고 
xss 방지는 출력전에 해주시는 게 좋습니다.

그누 저장 전은 저장하는 로직을 보시면 되겠죠?
bbs/write_update.php 에서 $wr_content 에 어떤 처리를 하느지 보심 되겠네요 
답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 10,637
© SIRSOFT
현재 페이지 제일 처음으로