Intro


브라우저에서 자바스크립트로 할 수 있는 것들이 많기 때문에 보안 위협도 많다.

  1. Ajax call을 해서 API 호출
  2. 다이나믹한 DOM 제어
  3. 인증 정보 브라우저에 저장
  4. 인증 정보 불러오기

[공격] XSS — 크로스 사이트 스크립팅


<aside> 💡 XSS는 자바스크립트 코드 주입 공격으로 보안이 약한 웹 어플리케이션에 대한 웹 기반 공격. XSS 공격의 희생자는 어플리케이션이 아닌 유저(User)이며, XSS 공격에서 해로운 콘텐츠는 자바스크립트를 활용하여 전달됨.

</aside>

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/67fa6734-ba6a-473e-a8e2-894623feefd5/Untitled.png

클라이언트가 서버를 신뢰하기 때문에 발생하는 이슈(클라이언트가 서버로 부터 받는 데이터는 항상 정상적인 데이터일 것이다 라고 생각하기 때문)

[공격] CSRF — 사이트 간 요청 위조


사용자가 자신의 의지와 무관하게 공격자가 의도한 행동을 해서 특정 웹페이지를 보안에 취약하게 한다거나 수정, 삭제 등의 작업을 하게 만드는 공격 방법. XSS는 사용자가 특정 웹사이트를 신뢰하는 점을 노리는 것이라면(클라이언트가 서버를 신뢰), CSRF는 서버가 클라이언트를 신뢰해서 발생하는 이슈.

사용자가 웹사이트에 로그인한 상태에서 사이트간 요청 위조 공격 코드가 삽입된 페이지를 열면, 공격 대상이 되는 웹사이트는 위조된 공격 명령이 믿을 수 있는 사용자로부터 발송된 것으로 판단하게 되어 공격에 노출된다.