반응형
SMALL

2. Http Client 기능 구현


TCP 서버, 클라이언트 통신 실습에 이어 Http Client 모듈을 사용해 exploit하는 방법을 알아보려고 한다. 서버에 있는 웹 페이지 코드들을 exploit을 통해 msfconsole 창에 띄우려고 한다.


2-1) Http Client 통신


 <그림 2-1 tcp_client.rb 파일 복사>


지난 번에 실습했었던 tcp_client.rb 파일을 파일명만 바꿔서 그대로 복사해준다. 파일명은 http_client.rb로 한다. 


<그림 2-2 tcp_client 파일 코드 -1>


vi에디터로 tcp_client 파일을 열고 믹스인을 HttpClient로 바꿔준다. 앞서도 설명했듯이 core안에 있는 라이브러리들을 가져다가 쓰는 것이다. 


<그림 2-3 tcp_client 파일 코드 -2>


register options를 활용해서 우리가 필요한 옵션을 새로 추가해준다. 추가해줄 옵션은 targeturi이고, /를 지정해준다. 


<그림 2-4 tcp_client 파일 코드 - 3>


추가했던 옵션을 exploit에서 사용하기 위해 작성해주는 코드이다. target_uri로 사용할 옵션을 지정해주고 send_request_cgi를 통해 어떤 파일을 받을 것인지, 어떤 메시지를 받을 것인지에 대해 지정해준다. 만약 받는게 성공하면 200이라는 숫자값을 출력해주면서 access complete라는 메시지를 출력해 줄 것이고, 그렇지 않다면 not existed라는 명령어를 출력해 줄 것이다.


<그림 2-5 index.php 파일>


가상 윈도우 7을 실행시켜 Apm monitor을 설치해주고 Apm_setup/htdocs 경로에 index.php파일이 있는데 내용들을 모두 지우고 사진과 같이 코드를 작성해준다. username, password도 웹 페이지에 띄울 수 있다.


<그림 2-6 웹 페이지 실행 결과>


URL에 본인 IP를 입력하고 그 뒤에 /index.php?username = 1 & password = 2라고 입력하고 실행시켜 주면 웹 페이지에 1,2,wow라는 결과가 나오게 된다.


<그림 2-7 msfconsole 경로 지정>


msfconsole을 실행시켜 현재 우리가 만든 파일 경로를 지정해준다. 경로는exploit/dev/http_client이다.


<그림 2-8 http_client 옵션 지정>


http_client 파일의 옵션을 지정해준다. 윈도우 7의 IP주소를 입력해서 지정해주고 exploit을 감행한다.



<그림 2-8 exploit 결과>


exploit 결과 우리가 아까 윈도우 7에서 만들었던 index.php 코드들이 메타스플로잇으로 그대로 가져왔음을 볼 수 있다. 이처럼 http_client를 활용해서 웹페이지 코드들을 탈취하는 것이 가능하다.


2-2) Http_client pry


<그림 2-9 require 지정>


require을 먼저 선언해 주어야한다. require 'pry'라고 입력해준다.



<그림 2-10 binding.pry 지정>


pry를 사용하기 위해서는 pry를 바인딩 시켜주어야 한다. 위 사진과 같이 binding.pry를 입력해주고 저장한다.



<그림 2-11 http_client 경로 지정>



msfconsole 실행시켜 http_client경로를 지정해준다.


<그림 2-12 msfconsole 옵션 지정, exploit>


rhost 윈도우 7 IP주소를 지정해준다. 윈도우 7 있는 페이지 정보들을 가져오는 것이기 때문이다. 지정이 다되면 exploit 시도해주면 우리가 코드로 만들었던 http_client 파일의 코드가 실행되게 되고, pry 콘솔창이 실행되게 된다.


<그림 2-13 res.get_html_document 명령어 실행>


res.get_html_document 명령어를 실행한 결과이다. 트리구조로 나타내고 있으며, 우리가 지정해준 Text 또한 나타나고 있다.


<그림 2-14 html.at('div') 명령어 실행>


html.at('div') 명령어를 실행한 결과이다. div 필터링 걸어서 화면에 출력해주고 있는 거승ㄹ 있으며, client파일에서 지정해준 이름들 또한 나타나고 있다






반응형
LIST

'메타스플로잇' 카테고리의 다른 글

http browser 서버  (0) 2018.04.23
http Server  (0) 2018.04.22
메타스플로잇 TCP 통신  (0) 2018.04.19
adobe flash player 취약점  (0) 2018.02.28
metasploitables 해킹  (0) 2018.02.13
블로그 이미지

만년필석사

,