뉴비에욤

Metasploit - 악성코드 생성 - 1 본문

Kali 2.0 & Metasploit/Malware

Metasploit - 악성코드 생성 - 1

초보에욤 2016. 2. 14. 04:14

칼리 리눅스에서는 기존과 달리 페이로드 생성을 "msfvenom" 명령어로 통합하고 다양한 옵셩을 제공한다. 

 

 

사용할 수 있는 페이로드는 다양한 운영체제에 알맞게 총 437개를 사용할 수 있다. 

 

인코더 역시 운영체제에 맞게 꽤 많은 개수를 제공한다.

 

기본적으로 위 사진과 같은 명령어를 이용하여 리버스 쉘(미터프리터 세션 수립)을 생성하는 쉘코드를

C 언어 형태로 보면 위와 같은 쉘코드가 나온다. 해당 쉘코드는 어셈블리어 명령어들의 16진수 모음이다.

* -f 옵션이 페이로드를 나타낼 확장자를 의미함 

 

이전에 살펴보았던 페이로드를 exe 형태로 생성한 뒤 모든 권한을 할당한다. 

 

생성된 mal.exe 파일을 "file" 명령어로 확인해보면 정상적은 PE32 파일로 잘 생성된 것을 볼 수 있다. 해당

악성코드를 실행하면 공격자의 IP/Port (192.168.100.140/8080)로 쉘을 성립시키기 때문에 이를 위한 리스너

스크립트를 생성한다.

 

이전에 생성한 리스너 스크립트를 "msfconsole" 옵션으로 실행하면 포트를 열고 대기한다.

 

 이전에 생성한 mal.exe 파일을 윈도우 운영체제에 복사하고 실행하면 위 사진처럼 이전에 실행한

리스너에서 미터프리터 세션이 성립된다.

 

다만, 공격 대상 시스템에서 프로세스 목록을 보면 당당하게 해당 파일의 이름이 존재하기 때문에 사용자가

알아차리지 못하게 숨겨야 한다.

 

미터프리터 세션이 성립된 뒤 "run migrate -f" 옵션을 통해 악성코드를 메모장을 의미하는 "notepad.exe"

프로세스로 이주시킨다.

 

이주가 되면 해당 시스템에서 "mal.exe" 프로세스가 사라지고 메모장을 의미하는 "notepad.exe"가 대신한다.

 

*  물론 메모장이 실행되지 않는데 notepad.exe가 실행되면 의심할 수도 있다. 간단한 실습이기 때문에

    notepad.exe로 생성했지 원한다면 "explorer.exe" 등도 가능하다.

 

메타스플로잇이 오픈 소스이기 때문에 지금과 같은 방법으로 생성한 "mal.exe"는 안티 바이러스에 99% 탐지된다.

따라서 탐지 회피를 해야 하는데 이는 다음 포스팅에서 다룰 예정이다.

'Kali 2.0 & Metasploit > Malware' 카테고리의 다른 글

Metasploit - 악성코드 생성 - 3  (0) 2016.02.14
Metasploit - 악성코드 생성 - 2  (2) 2016.02.14
Comments