Content Security Policy(CSP) Mechanism (feat.Bypass)
Web/Web Hacking Techniques
CSP 기본 개념Content Securty Policy 즉, CSP라 불리는 콘텐츠 보안 정책은 웹 애플리케이션에 대한 클라이언트 측 보안 정책이다.웹 페이지에서 로드되거나 실행될 수 있는 리소스의 출처를 제어함으로써 XSS를 포함한 다양한 클라이언트 측 코드 삽입 공격을 방어하는 추가 보안 계층이다. 서버가 HTTP 응답 헤더에 CSP 규칙을 지정하면 브라우저는 해당 규칙에 따라 다양한 콘텐츠를 어떤 출처에서 불러올 수 있는지를 제한하게 된다. CSP 규칙에 위배되는 행위가 발생하면 브라우저 콘솔에는"Refused to execute inline script because it violates the CSP directive…"와 같은 오류가 표시된다. 즉, CSP는 신뢰된 출처로 명시된 리소스만 로..
Ruby-regular-expression(newline)[\n]
Web/Web Hacking Techniques
Ruby를 포함한 몇몇 언어에서는 정규표현식을 제공한다. 기본적으로 정규표현식은 "한줄모드:로 동작하며, 개발자들이 백엔드에서 특정 로직을 구현할시 ^와 $를 사용하여 문자의 시작과 끝을 정해놓는 경우가 존재한다. \n(newline) 문자는 개행을 나타내며, 해당 문자가 존재할 경우, 물리적으로 여러 줄로 나누게 된다. 이 때 한줄 모드로 검증을 수행하는 정규표현식 검사를 우회할 수 있게 된다.^[0-9a-z ]+$/i 와같이 특수문자를 배제하여 웹 취약점을 차단하려 하여도, a\n 와 같이 우회하여 특수문자가 삽입이 가능해진다. 혹은, url인코딩을 통해 a%5c%6e%3c%24%3d%20%3e와 같이 사용할 수 있다.즉, 개행 문자(\n)를 사용하면 정규 표현식의 ^와 $가 전체 문자열이 아니라 각..