보안vs해킹2011. 11. 17. 13:14

Metasploit의 세가지 중요한 툴들을 알아봤다면 이제는 기능들에 대해 알아보겠다. 이 기능들은 Metasploit에 있는 기능들로써 특히 특정한 공격을 행할때 중요하게 사용된다.

MSFpayload: msfpayload기능은 shellcodeFramework없이도 실행가능하게 만들어주는 기능을 한다. 이는 C, Ruby, JavaScript, Visual Basic과 같은 형태로 생성 가능하다. 가령 Python으로 작업중이라면 C언어형태로의 실행이 가능하고 웹에서 사용한다면 JavaScript의 형태가 가장 적당할 것이다. msfpayload -h를 통해서 기능들을 알 수 있다.

root@bt:/# msfpayload -h

msfcli와 같이 추가기능에 대해 알고자 하면 옵션 O를 넣어주면 된다.

root@bt:/# msfpayload windows/shell_reverse_tcp O



MSFencode: msfpayload로 생성된 shellcode는 다양한 환경에서 사용가능 하지만 null 캐릭터가 있을시 즉, x00s나 xffs가 있을 시에는 프로그램이 강제로 종료된다. 또한 이러한 shellcode는 IDS에 의해 쉽게 탐지되고 네트워크의 접근이 거부되어진다. 그래서 제안된게 msfencode이고 이 유틸이 그러한 코드들을 수정해준다. msfencode의 리스트를 보려면 옵션 l을 붙여주면 된다.

root@bt:~# msfencode -l

Nasm Shell: nasm_shell.rb는 어셈블리어를 사용할때 유용하고 각 코드를 알고자 할때 사용된다. 즉 jmp esp에 대한 내용을 알고자 할때 다음과 같이 사용된다.

root@bt:/opt/framework3/msf3/tools# ./nasm_shell.rb
nasm > jmp esp
00000000 FFE4
jmp esp

Posted by 구텐모르겐