뉴비에욤

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

Kali 2.0 & Metasploit/Malware

Metasploit - 악성코드 생성 - 2

초보에욤 2016. 2. 14. 17:43

이전 포스팅(http://bob3rdnewbie.tistory.com/204)에서 생성했던 악성코드는 아주 단순한 구조이기 때문에 안티

바이러스에서 검출이 된다. 공격자는 이런 현상이 일어나는 것을 원하지 않기 때문에 탐지 회피를 위해 다양한

방법을 이용한다. 다행히 칼리 리눅스에서는 이를 위하여 인코더를 제공한다.

 

위 사진의 명령어와 같이 입력하면 "shikata_ga_nai" 라는 인코더로 이전에 생성한 악성코드를 3번 인코딩하여 "mal_shikata_x3.exe"로 저장한다.  이 정도로도 모자르다고 느껴지면 아래 사진처럼 다양한 인코더를

겹쳐서 사용할 수 있다. 

 

위 사진의 명령어는 악성코드를 "shikata_ga_nai" 3번, "countdown" 7번, "shikata_ga_nai" 5번 인코딩하는 것이다. 최종 사이즈를 보면 이전과 비교하여 비교적 큰 것을 볼 수 있다.

 

이전과 동일하게 공격자 쉘에서 리스너를 실행한다.

 

인코딩한 "multi_encoded_mal.exe" 악성코드를 대상 시스템에서 실행하면 성공적으로 미터프리터

세션이 성립된다.

 

아직 "migrate" 작업을 하지 않았기 때문에 대상 시스템의 프로세스 목록에 상주하고 있다.

 

그런데 문제는 인코딩한 악성코드도 이전과 동일하게 안티 바이러스에서 검출이 되고 있다. 사실 과거에는 인코딩한 파일은 검출되지 않았지만 사용되는 인코더들이 오픈 소스이기 때문에 최근에는 안티 바이러스 엔진에 디코딩 루틴이 추가되어 탐지가 되기 시작하였다. 따라서 진짜 탐지를 회피하기 위해서는 커스텀 인코더나, 프로텍터 

등을 이용해야 한다.

 

실제로 커스텀 인코딩을 적용하면 위 사진처럼 기존의 악성코드 2개와 달리 탐지되지 않는것을 볼 수 있다.

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

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