크로스사이트스크립트 2

XSS - Backtick(`)

Tab 키 위에 존재하는 이 Backtick은 ` javascript에서는 템플릿 리터럴에 활용된다. Backquote, backtick, grave accent 으로도 불리며 거의 접할 이유가 없는 문자이기도 하다. 그러면 왜 XSS에 Backtick을 언급한 이유가 무엇이냐 하면 보통 XSS를 발생시키기 위해 Javascript에서 기존 안의 구문에서 벗어나기 위해 "> 와 같은 입력값으로 개발자의 의도와 다른 방식으로 입력을 한다. 따라서 보통은 " , ' , , % 와 같은 특수문자들을 HTML Encoding하거나 필터링하여 입력을 방지한다. 필터링을 하거나 Encoding하여 방지하면 이 Backtick은 의미가 없지만 간혹 개발자 중 php에서 magic_quotes_gpc를 활성화 시키고 ..

정보보안/Web 2020.10.21

XSS 진단 및 Cheat Sheet

프로젝트를 진행하면서 항상 듣는 말이 자신만의 비밀 사전이 필요하다는 말이다. 그래서 언젠가는 만들어야지? 생각하다가 그냥 지금 글에 계속 덧붙여서 만들기로 했다. 주관적인 생각으로 작성되었고 나만의 방법론이기 때문에 틀릴 수도, 비 효율적일 수도 있다. ※ 일반 사이트에 해당 구문 사용을 절대 권장하지 않는다. 스크립트를 발생시키는 이유는 해당 사이트에 의도하지 않는 스크립트 구문을 삽입하여 작동시킴으로 다양한 공격을 발생시키기 위함이다. 예를 들어 쿠키값 획득 + CSRF + 리다이렉션 이외에도 수많은 공격 목적이 존재한다. 단순히 이 발생하는 사이트는 거의 존재하지 않는다. 대부분은 입력값을 검증하여 >,

정보보안/Web 2020.01.13