Jika kamu adalah pembaca setia di blog ini pasti anda bertanya tanya kenapa blog ini tidak pernah di update, yah maklum penulis masih mahasiswa yang harus menempuh ujian MID T_T
Okey, kali ini kita akan sedikit belajar tentang bahasa assembler yang sebenarnya sku juga belum begitu mengerti, tapi semoha ilmu yang sedikit ini dapat bermanfaat :)
Alat yang kita butuhkan dalam praktik assembler ini adalah
- OllyDbg
- File Project1.exe
Setelah membuka kedua alat diatas mari mulai dengan extract ollydbg ke folder dimana kamu mudah untuk mengaksesnya. Langkah kedua mari kita analisa file yang ada di project1
ketika kita buka file project1 maka akan keluar messagebox berupa
ketika kita pilih yes maka
dan ketika pilih no maka akan keluar
dari analisa tersebut dapat kita simpulkan bahwa kode tersebut
bagaimana bisa dapat kode seperti itu? yak karena akulah pembuat programnya :D
tapi paling tidak kita dapat gambaran bagaimana cara menganalisanya kan :)
oke, misi pertama kita adalah menghapus message box yang terdapat pilihan opsi yes no dengan olly debugger
maka mari kita buka ollydbg lalu open project1 maka kita akan dapat kode asm seperti ini
hmmm... jika kamu tidak mengerti dari bahasa assembler disitu tidak masalah, karena aku juga tidak mengerti semuanya. hanya yang perlu saja :)
Oke, kita akan mencari string yang mengandung "hello world", click kanan - search for - all reference text string
Double click pada text hello world lalu kita akan langsung diarahkan pada Address string tersebut pada CPU
oke, mari kita analisa code yang kita dapat
pada address 00401669 kita mendapatkan UNICODE "World" yang artinya code pada address 00401669 digunakan untuk load kata world. Lalu code pada address 0040167F terdapat UNICODE "Hello World" yang artinya code itu menyediakan kata "hello world" lalu yang terpenting adalah code pada address 004016A1 yang terdapat fungsi MSVBVM60.rtcMsgBox yang artinya program akan memanggil fungsi MsgBox.
Karena kita sudah mendapatkan address untuk menampilkan message box maka mari kita disable code trersebut dengan mengisikan NOP
click kanan pada address 004016A1 - Assemble lalu tuliskan NOP dan click Assemble
Misi kita telah selesai, hanya tinggal finishing saja dengan save program ini dengan nama yang baru
click kanan - copy to executable - all modifications, pilih copy all
maka akan muncul form baru
untuk menyimpannya click kanan - backup - save data to file
beri nama lain, misal modif_project1.exe
Oke, cobalah untuk execute file modif_project1.exe bandingkan dengan project1.exe
Silahkan mencoba...
You Probably success :)
Okey, kali ini kita akan sedikit belajar tentang bahasa assembler yang sebenarnya sku juga belum begitu mengerti, tapi semoha ilmu yang sedikit ini dapat bermanfaat :)
Alat yang kita butuhkan dalam praktik assembler ini adalah
- OllyDbg
- File Project1.exe
Setelah membuka kedua alat diatas mari mulai dengan extract ollydbg ke folder dimana kamu mudah untuk mengaksesnya. Langkah kedua mari kita analisa file yang ada di project1
ketika kita buka file project1 maka akan keluar messagebox berupa
ketika kita pilih yes maka
dan ketika pilih no maka akan keluar
dari analisa tersebut dapat kita simpulkan bahwa kode tersebut
If (MsgBox("Hello world", vbYesNo, "World") = vbYes) Then MsgBox "Anda pilih yes" Else MsgBox "Anda pilih no" End If
bagaimana bisa dapat kode seperti itu? yak karena akulah pembuat programnya :D
tapi paling tidak kita dapat gambaran bagaimana cara menganalisanya kan :)
oke, misi pertama kita adalah menghapus message box yang terdapat pilihan opsi yes no dengan olly debugger
maka mari kita buka ollydbg lalu open project1 maka kita akan dapat kode asm seperti ini
hmmm... jika kamu tidak mengerti dari bahasa assembler disitu tidak masalah, karena aku juga tidak mengerti semuanya. hanya yang perlu saja :)
Oke, kita akan mencari string yang mengandung "hello world", click kanan - search for - all reference text string
Double click pada text hello world lalu kita akan langsung diarahkan pada Address string tersebut pada CPU
oke, mari kita analisa code yang kita dapat
pada address 00401669 kita mendapatkan UNICODE "World" yang artinya code pada address 00401669 digunakan untuk load kata world. Lalu code pada address 0040167F terdapat UNICODE "Hello World" yang artinya code itu menyediakan kata "hello world" lalu yang terpenting adalah code pada address 004016A1 yang terdapat fungsi MSVBVM60.rtcMsgBox yang artinya program akan memanggil fungsi MsgBox.
Karena kita sudah mendapatkan address untuk menampilkan message box maka mari kita disable code trersebut dengan mengisikan NOP
click kanan pada address 004016A1 - Assemble lalu tuliskan NOP dan click Assemble
Misi kita telah selesai, hanya tinggal finishing saja dengan save program ini dengan nama yang baru
click kanan - copy to executable - all modifications, pilih copy all
maka akan muncul form baru
untuk menyimpannya click kanan - backup - save data to file
beri nama lain, misal modif_project1.exe
Oke, cobalah untuk execute file modif_project1.exe bandingkan dengan project1.exe
Silahkan mencoba...
You Probably success :)
{ 0 Komentar... read them below or add one }
Posting Komentar