Flask 보안 공격Cross-Site Scripting(XSS) 웹 취약점의 대응방안
·
프로그래밍 일기/Python & Flask
위와 같은 값이 DB에 저장될 경우 출력하는 순간 문제가 발생할 가능성이 있다.이를 해결하기 위해서는 XSS 관련 라이브러리를 사용해야한다.Java 기반일 경우 Naver Lucy XSS Filter라는 대중적인 라이브러리가 존재한다.Flask 프레임워크를 사용하고 있는 경우 파이썬3에 내장되어 있는 html 모듈을 사용하거나bleach 라이브러리를 사용하면 된다.필자는 html 모듈을 기반으로 XSS Filter 함수를 만들어 필요한 엔드포인트에만 적용 할 것이다._script_re스크립트 블록 자체 제거_js_proto_rejavascript:href, src 속성 기반 공격 방어_on_attr_reonerror=, onclick=, ...이벤트 속성 기반 공격 방어html.escape(), ", '..