ASP.NET Core 에 서 는 어떻게 Csp 레이 블 을 이용 하여 Xss 공격 에 대항 합 니까?
쉽게 말 하면 CSP 는 웹 페이지 에서 어떤 자원 을 불 러 올 수 있 는 지 를 제어 하 는 방식 이다.예 를 들 어 페이지 는 자바 스 크 립 트,CSS,이미지 자원 을 불 러 올 수 있 도록 명시 할 수 있 습 니 다.크로스 사이트 스 크 립 트(XSS)공격 등 을 방지 하 는 데 도움 이 된다.
HTTPS 를 통 해 불 러 오 는 내용 을 제한 하 는 등 프로 토 콜 을 제한 하 는 데 도 사용 할 수 있다.CSP 는 Content-security-Policy HTTP 응답 에 있 는 레이 블 을 통 해 이 루어 집 니 다.
CSP 를 사용 하려 면 웹 서버 를 설정 해 야 합 니 다Content-Security-PolicyHTTP 레이 블 을 되 돌려 줍 니 다.그러면 이 글 에서 ASP.NET Core 응용 프로그램 에 CSP 를 추가 하려 고 합 니 다.
app.Use(async (ctx, next) =>
{
ctx.Response.Headers.Add("Content-Security-Policy",
"default-src 'self'; report-uri /cspreport");
await next();
});
홈/Index 에 cdn 파일 을 도입 하고 프로젝트 를 시작 해서 무슨 일이 일어 날 지 봅 시다!오 류 를 실행 하고 관찰 합 니 다.페이지 를 불 러 올 때 브 라 우 저 는 원 격 원본 에서 불 러 오 는 것 을 거부 합 니 다.
따라서 우 리 는 CSP 를 조직 하여 우리 의 화이트 리스트 를 제어 할 수 있 습 니 다.설정 에 출처 와 내용 을 작성 해 야 합 니 다.다음은 자주 사용 되 는 제한 옵션 입 니 다.
원본:
*:모든 사이트 주 소 를 허용 합 니 다.
'self':제 공 된 페이지 의 원본 을 허용 합 니 다.작은 따옴표 가 필요 하 니 주의 하 세 요.
'none':원본 을 허용 하지 않 습 니 다.작은 따옴표 가 필요 하 니 주의 하 세 요.
Host:지정 한 인터넷 호스트(이름 이나 IP 주소)를 허용 합 니 다.어댑터(별표 문자)는 http:/*.foo.com 과 같은 모든 하위 도 메 인 을 포함 하 는 데 사용 할 수 있 습 니 다.
'unsafe-line':내 연 스 크 립 트 허용
'nonce-[base 64-value]':특정한 nonce 를 가 진 내 연 스 크 립 트(한 번 의 숫자 사용)를 허용 합 니 다.모든 HTTP 요청/응답 에 대해 nonce 를 암호 화하 고 유일 하 게 해 야 합 니 다.
명령:
script-src:유효한 자 바스 크 립 트 원본 정의
스타일 시트 의 유효한 원본 을 정의 합 니 다.
img-src:올 바른 이미지 원본 정의
connect-src:AJAX 호출 이 가능 한 유효한 원본 을 정의 합 니 다.
font-src:올 바른 글꼴 원본 정의
object-src:정의
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Tailwind를 ASP.NET Core 프로젝트에 통합우리는 을 사용합니다. 에서 코드를 찾을 수 있습니다. 면도기 페이지 구조를 추가합니다. "node_modules"가 설치되었습니다. "tailwind.config.js"파일이 생성되었습니다. 모든 .razor 및 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.