본문 바로가기

공부정리

CORS , XSS, CSRF (web security)

CORS(Cross-Origin Resource Sharing)

HTTP 접근 제어(CORS)은 추까 HTTP혜더를 사용하여 브라우저가 한 출처에서 실행중인 웹 애플리케이션에 선택된 액세스 권한을 부여하도록 하는 메커니즘입니다.

다른 출저의 자원. 웹 응용 프로그램은 자체와 다른 출처 (도메인, 프로토콜 또는 포트)를 가진 리소스를 요청 할 때 cross-origin HTTP 요청을 실행합니다.

어떤 요청이 CORS를 사용하는가?

 Fetch API 호출일떄..

웹 폰트

Images/video frames drawn to a canvas using drawImage()

CSS Shapes from images.

결론적으로 먼저 flyrequest 요청을 보내서 서버에 승인을 받는 절차를 받는다.

그리고 서버에서 승인을 해주는 절차를 해주면..

실제 값을 주고 받는 것을 한다는 것이다.

XSS

Web browser를 통해서 코드를 web 어플리케이션에 악성코드를 심어둔 뒤에 그걸 user가 실행시키도록 만들어서 공격하는 기법.

XSS 란 보안이 약한 웹 어플리케이션에 대한 웹 기반 공격

XDD 공격의 희생자는 어플리케이션이 아닌 user

XSS 공격에서 해로운 컨텐츠는 javascript를 활용하여 전달 됨

자세히 설명하면 이렇게 나오게 된다.

1. 공격자(해커) 스크립트 형식으로 웹사이트에 집어넣는다. 

2. 사용자는 평소떄처럼 요청을 한다.

3. 서버는 평소때처럼 반환을 하지만 반환할때 사용자의 정보를 script에 담아서 주게된다.

4. 공격자에게 사용자의 정보가 넘어가게 된다.

CSRF(XSRF)

cross-site Request forgey (CSRF)

사용자가 로그인한다 은행이라는 사이트에 접속을 한다.

토큰을 받는다(인증) 

그 때 사용자가 공격자의 사이트를 방문한다 ( 귀여운 고양이 사진이나 펭수사진 등등) 

자신도 모르게 그러면서 사용자가 가지고 있는 토큰을  공격자가 가지고 CSRF코드를 실행하게 만든다.

그렇게 브라우저에 보낸다 은행사이트에 요청하도록 그 CSRF 코드를... 그렇게 자신의 재산을  빼서 공격자에게 주도록 만드는 코드를 실행하게 된다.