본문 바로가기
플랫폼엘 정리or해석

XSS 공격 방지용 XssFilter

by shulk 2024. 6. 25.
XssFilter filter = XssFilter.getInstance("lucy-xss-superset.xml");

AdminSearchVo asvo = new AdminSearchVo();
		if(StringUtils.isNotBlank(search_type)){
			asvo.setSearch_type(filter.doFilter(search_type));
		}

		if(StringUtils.isNotBlank(search_text)){
			asvo.setSearch_text(search_text);
		}

 

프로젝트에서 쿼리파라미터로 받은 DB 검색 조건들 (ex: 제목,시작 날짜,종료날짜)을 AdminSearchVo의 필드에 넣고 이제 DB에 요청할때 검색 조건 넣은 AdminSearchVo를 같이 넘겨줄건데 

AdminSearchVo에 필드에 값을 넣는 작업 위에 코드 보면 어떤 필터를 이용하는게 보인다.

 

GPT 답변

filter.doFilter(search_type)는 XSS 필터링을 수행하여 입력된 문자열에서 잠재적인 XSS(크로스 사이트 스크립팅) 공격을 방지하기 위한 함수입니다. 이 함수는 search_type 문자열을 필터링하여 악성 코드나 스크립트를 제거하거나 인코딩합니다.

 

여기서 XssFilter는 "Lucy XSS Filter" 라이브러리를 사용하는 것으로 보입니다. 이 라이브러리는 입력된 데이터를 필터링하여 XSS 공격을 예방하는 데 사용됩니다. lucy-xss-superset.xml 파일은 필터링 규칙이 정의된 설정 파일입니다.

 

 

나중 필요해서 더 자세히 알아야 한다면 => 블로그 참고