HTMLTagFilter 문제
- 작성자 :
- 김*훈
- 작성일 :
- 2019-11-07 14:46:54
- 조회수 :
- 2,224
- 구분 :
- 실행환경
- 진행상태 :
- 완료
Q
이전에도 문의했는데 제가원하는 답변을 듣지못해서요..
HTMLTagFilter 사용시에 < , ' (부등호,싱글쿼터),..이런특수문자들을 escape해주는데요
문제는 xml쪽에 파라미터로 부등호 ,싱글쿼터가 있는경우 이것들도 escapse를 해줘서 에러가납니다..
그럼 HTMLTagFilter 를 사용하는 곳은 파라미터로 부등호나,싱글쿼터가있는 파라미터를 전달하면 안되는건가요?
HTMLTagFilter 사용시에 < , ' (부등호,싱글쿼터),..이런특수문자들을 escape해주는데요
문제는 xml쪽에 파라미터로 부등호 ,싱글쿼터가 있는경우 이것들도 escapse를 해줘서 에러가납니다..
그럼 HTMLTagFilter 를 사용하는 곳은 파라미터로 부등호나,싱글쿼터가있는 파라미터를 전달하면 안되는건가요?
A
안녕하십니까, 표준프레임워크센터입니다.
param = {
cd : "and cd <> '12' ",
};
에서 jsp > ajax를 통해 조건문을 파라미터로 넘기고 계십니다.
화면 View쪽을 통해 쿼리에 대한 조건문을 넘기면 SQL Injection 문제가 발생하게 됩니다.
XSS 및 SQL Injection 보안 강화를 위해서는, 비즈니스 로직에서 처리해야할 부분을 화면에서 넘기는 설계를
변경하시도록 권고드립니다.
만약 설계 및 요구사항 조건으로 파라미터에 쿼리 조건을 반드시 넣으셔야 한다면,
HTMLTagFilter에 대한 역 필터를 커스터마이징하셔서 처리 하시면, 파라미터 전달이 가능합니다.
하지만 보안상 우려가 있으니 업무적으로 고려하셔야할 것 같습니다.
감사합니다.
param = {
cd : "and cd <> '12' ",
};
에서 jsp > ajax를 통해 조건문을 파라미터로 넘기고 계십니다.
화면 View쪽을 통해 쿼리에 대한 조건문을 넘기면 SQL Injection 문제가 발생하게 됩니다.
XSS 및 SQL Injection 보안 강화를 위해서는, 비즈니스 로직에서 처리해야할 부분을 화면에서 넘기는 설계를
변경하시도록 권고드립니다.
만약 설계 및 요구사항 조건으로 파라미터에 쿼리 조건을 반드시 넣으셔야 한다면,
HTMLTagFilter에 대한 역 필터를 커스터마이징하셔서 처리 하시면, 파라미터 전달이 가능합니다.
하지만 보안상 우려가 있으니 업무적으로 고려하셔야할 것 같습니다.
감사합니다.