Software hacking

Selasa 15 Mei 2007

Hola,,

banyak yang bingung dengan software-software yang masih bersifat trial ataupun shareware dan demo disini dijelaskan bagaimana cara merubah nama software dengan bahasa assembly GBU🙂

Hacking Software
Date: Monday, April 21, 2003 Hits: 21191 By: Onan Farabi
Melihat semakin beragamnya Jenis Operating system akhir-akhir ini, saya ingin mencoba mengusulkan tentang tata letak pembuatan sebuah software.

 

 

Hacking Software

Pada umumnya sebuah software normal tipe 32-bit terbagi menjadi beberapa bagian, bagian yang umum adalah resource, bagian dimana icon gambar dan yang lainnya disimpan, kemudian data, bagian dimana variabel yang terinisialisasi disimpan dan kode, dimana program utama dijalankan.

Program Com mempunyai bagian yang paling sederhana dari semua jenis executable atau file yang bisa dilaksanakan/jalankan. Data yang terinisialisasi oleh Com exe dengan yang tidak, akan dianggap sama. Umumnya untuk menghemat ukuran, software selalu tidak menyertakan seksi stack pada badan program, tetapi memberikannya setelah program dijalankan.

Software yang saya niatkan untuk dibuat akan mempunyai tata letak atau bagian seperti ini. 1024 byte pertama yang biasanya di isi oleh header pada Win32, akan saya jadikan sebuah perintah untuk melakukan penginisialisasian program secara automatis.

Bisa anda lihat source kode-nya dibawah ini:

; Berkas/file COM di isi di alamat CS:0100h

; (Nilai CS diset oleh Operating system)

ORG 100h

; Fungsi CSPMode di gunakan sebagai header

; Bisa pula dijadikan Kernel 32-Bit

jmp start

CSPmode:

smsw_cx db 0fh,01,0e1h ;SMSW cx byte

mov ax,cx ;At Pmode this will be mov eax,ecx

and al,1

cmp al,1

jz trs

inc cx

lmsw_cx db 0fh,01,0f1h ;lmsw cx byte

trs:

ret

; Program di mulai di sini

start:

call CSPMode

cmp al,0

jz brs

mov ah,9

mov dx,offset tes

int 21h

brs:

; Tambahkan kode anda disini

ret

Tes db ‘Prosessor already at Pmode!$’

Bila anda kebetulan mempunyai sebuah komputer kosong yang tidak mempunyai OS, dengan menuliskan program tersebut di sektor 1, head 0 dan track 0, dan setting BIOS diganti menjadi boot from A. Maka BIOS akan langsung menjalankan program dan menganggap program tersebut sebagai Operating System. Sekali lagi saya ingatkan, hacking bukan cracking (seperti menjebol sebuah system dan sejenisnya).

Program diatas saya tulis dengan menggunakan Emu8086 v.2.7. Terlihat diatas adanya sebuah variable dengan nama SMSW_AX dan LMSW_AX. Variabel tersebut memang sengaja saya buat, karena emu8086 yang saya pakai belum mendukung instruksi priviledge.

Saya jelaskan satu-persatu:

Org 100.

Org singkatan dari Origin, perintah ini tidak mempunyai opcode atau hexcode. Perintah ini hanya akan menyuruh assembler atau kompiler untuk menyimpan program kita di alamat tertentu.

Jmp Start.

Perintah ini akan melakukan lompatan ke CS+imm.

SMSW_CX.

Ini adalah variabel yang mengandung opcode priviledge instruction untuk mengambil mode prosesor.

Mov ax,cx.

Memindahkan nilai cx yang mengandung nilai Status mesin ke AX.

and al,1

Membatasi nilai al dengan satu, karena status mode terletak di Bit Nol.

cmp al,1

Membandingkan apakah nilai al adalah satu.

jz trs

Jika ya loncat ke Label Trs.

inc cx

Naikkan nilai CX sebanyak 1 saja.

lmsw_cx db 0fh,01,0f1h

Menyimpan nilai ke Register CR0, atau set Status Mesin.

trs:

ret

Label dengan nama trs. Menyuruh prosesor untuk kembali ke pemanggil.

start:

call CSPMode

Melakukan Pemanggilan ke CSPMode.

cmp al,0

Membandingkan AL apakah Nol.

jz brs

Jika ya beres.

mov ah,9

mov dx,offset tes

int 21h

Interupt Software, Tidak akan berjalan tanpa DOS. Fungsi asli sedang dibuat.

brs:

ret

Tes db ‘Prosesor sudah berada di P-Mode!$’

Untuk kembali dan variabel tulisan yang ditampilkan dengan int 21h fungsi 9h.

Catatan:

Silahkan anda lihat OpCode-nya dibawah ini:

0100: EB 10 ó Jmp 0x112

0102: 0F 01 E1 ó SMSW CX

0105: 8B C1 ó Mov AX,CX

0107: 24 01 ó And al,1

0109: 3C 01 ó Cmp al,1

010b: 74 04 ó JZ 0x111

010d: 41 ó Inc CX

010E: 0F 01 F1 ó LMSW CX

0111: C3 ó Ret

0112: EB ED FF ó Call 0x102

0115: 3C 00 ó Cmp al,0

0117: 74 07 ó Jz 0x120

0119: B4 09 ó Mov al,9

011B: BA 21 01 ó Mov DX,offs [0x121]

011E: CD 21 ó Int x21

0120: C3 ó Ret

……………………….

……………………….

……………………….

Perintah pemanggilan fungsi ke 0x102, tidak ditulis EB 02 01, tetapi EB ED FF yang berarti –20 atau -0x14. Juga JZ. Maka baik perintah jump ataupun Call sama dengan CS+imm. Jika CS bernilai 101, dengan menuliskan 74 05 misalkan. Kita akan melompat ke alamat 106.

Juga baik Call ataupun Jmp, menggunakan nilai Signed. Misalkan nilai 254 pada unsigned akan menjadi –2. Untuk lebih lengkapnya tentang un/signed, silahkan tanya saja ke Sto@jasakom.com , atau baca buku yang dikarang oleh orang yang sama.

Onan Farabi

About sugoistanley

Me is just another ordinary boy in this world....Iam not a hacker but i believe someday I Will...

Posted on May 15, 2007, in Hacking. Bookmark the permalink. 3 Comments.

  1. Find the software you’re looking for at http://www.software-mall.co.cc, the most comprehensive source for free-to-try software downloads on the Web.

    • seep ni blog

      o…gitu ta mas… thx atas infonya

      kawan2 ..
      kalok mau uang 6 dollar dalam <1 menit
      bisa diclick link dibawah ini
      aku nggak bohong / scam…
      dijamin memuaskan hasilnya
      setelah click link terus create account

      http://tinyurl.com/3yry67f

  2. om tau gak cara ngehack pasword2 software yang trial menjadi full version…
    saya makenya IDA

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s