오늘도
배워봅니다.
1. XSS (크로스 사이트 스크립트)
- 피해자가 친숙하다고 느끼는 웹사이트에 악성 스크립트를 주입하는 행위를 말합니다.
- 웹사이트 사이를 넘어서 공격한다는 의미에서 크로스 사이트 스크립트가 생겨남.
- 스크립트 언어와 취약한 코드를 공격 대상으로 하며, 해킹의 주요 목적은 사용자의 정보를 도용하는것임.
playground XSS 공격 <img src='#' onerror='console.log(localStorage.getItem(\"accessToken\"))' /> <img src="http://images.png" /> onerror ? 해당 img태그를 정상적으로 불러오지 못했을 때 실행되는 요소
2. CSRF(Cross-Site Request Forgery)
- 사용자가 자신의 의지와는 무관하게 공격자가 의도한 행위(수정, 삭제, 등록 등)를 특정 웹사이트에 요청하게 하는 공격을 말한다.
- 공격 코드가 들어있으면 자동으로 차단해주는 라이브러리 중 DOMPurify 사용하기
yarn add dompurify yarn add -D @types/dompurify <div dangerouslySetInnerHTML={{ __html: Dompurify.sanitize(String(data?.fetchBoard.contents)) }} />