본문 바로가기

해킹

웹해킹 XSS에 대해서 알아보자!

안녕하세요? 오늘은 XSS(cross site scripting)에 대해 알아보려고 합니다. 

간단히 설명하자면 XSS는 사용자측의 브라우저에서 자바스크립트 실행할 수 있는 취약점입니다.

XSS로 발생할 수 있는 취약점은 브라우저 취약점을 이용해 PC가 랜섬웨어에 감염되게하거나

사이트의 로그인 정보(쿠키)를 탈취할 수 있는데요. 쿠키가 탈취될 경우 사이트에 인증없이 로그인을 할 수 있습니다.

 

XSS는 보통 두가지 종류로 stored와 reflected로 나뉩니다.

stored의 경우 예제를 하나 드리자면 게시판 같은 곳(서버)에

자바스크립트가 저장되어 게시글을 열람하는 경우 자바스크립트가 실행되게 됩니다. 

reflrected의 경우 주소에 붙은 파라미터에 저장되어 특정 링크를 클릭할 경우 자바스크립트가 실행되는 취약점입니다.

 

KISA에서 배포하는 크로스 사이트 스크립팅(XSS) 공격 종류 및 대응 방법 문서가 있습니다.

XSS의 종류와 취약점이 발생하는 원인, 대응방법에 대해서 자세히 다룹니다.

https://www.kisa.or.kr/uploadfile/201312/201312161355109566.pdf

 

위의 문서가 어렵다면 나무위키의 XSS 항목을 참고하면 이해하시기 쉬울 것 같습니다. 설명도 잘되어있네요.

https://namu.wiki/w/XSS

 

XSS - 나무위키

XSS는 데이터를 입력할 때와 출력할 때, 모두 필터링하고, 클라이언트에도 막을 수 있을만한 수단을 구성해놓는 것이 좋다. 보안은 한없이 덧대도 끝이 없고, 아래 서술한 방식으로 구성해도 기어코 뚫어버리는 사람들이 존재하기 때문이다. 단순히 텍스트만 입력시키거나 출력하는 데 필터를 제작할 때, 주로 필터되는 것이 <와 >이다. 각각 < 와 > 처럼 HTML 문자로 바꾸어서 HTML 코드가 아닌 단순 문자로 인식하게 하는 것이다. 하지만, 이 경

namu.wiki

 

최근 웹 해킹을 공부하면서 버그바운티 사례들을 찾아보고 있는데 

주로 XSS사례들을 잘 정리해둔 블로그가 있어서 소개해드리려고 합니다. 

https://noirstar.tistory.com/category/Security/BugBounty%20Study

 

'Security/BugBounty Study' 카테고리의 글 목록

The boughts that bear most hang lowest.

noirstar.tistory.com

 

 

제가 이전 글에서 XSS를 굉장히 중요하게 소개를 했었는데요. 

그 이유는 다른 취약점이 XSS를 사용해야만 하는 날이 올 것 같다고 생각이 들었습니다. 

마지막으로 XSS는 이전 글의 영상과 같이 취약점 점검할 수 있는 프로그램을 만들어볼까? 라는 생각이 들었습니다.