• Tidak ada hasil yang ditemukan

Membangun Aplikasi Desktop File Protector.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Membangun Aplikasi Desktop File Protector."

Copied!
12
0
0

Teks penuh

(1)

ABSTRACT

(2)

ABSTRAK

 

Pesatnya perkembangan dunia teknologi mengakibatkan tingginya minat produsen software untuk menghasilkan software yang dapat memenuhi kebutuhan pengguna software sekaligus meraih keuntungan dari penjualan software.

Keamanan suatu software sangat penting terutama yang berlisensi shareware. Kebanyakan shareware lebih cenderung fokus ke teknologi yang ingin ditawarkan kepada pengguna software tanpa memperhatikan sisi keamanan. Hal ini dapat mengakibatkan pemodifikasian secara illegal oleh orang lain. Aplikasi ini dapat membantu mengamankan suatu software dari pemodifikasian secara illegal dengan mengenkripsi executable dan menjalankan langsung di memory.

Aplikasi ini dibangun menggunakan dengan bahasa pemrograman Borland Delphi 7.

(3)

DAFTAR ISI

LEMBAR PENGESAHAN ... ii

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI ILMIAH ... iii

LEMBAR PERNYATAAN ORISINALITAS KARYA ... iv

KATA PENGANTAR ... vi

ABSTRACT ... vii

ABSTRAK ... viii

DAFTAR ISI ... ix

DAFTAR GAMBAR ... xii

BAB I PENDAHULUAN ... 1

1.1 Latar Belakang Masalah ... 1

1.2 Perumusan Masalah ... 1

1.3 Tujuan ... 2

1.4 Pembatasan Masalah ... 2

1.5 Sistematika Penulisan Laporan... 3

BAB II LANDASAN TEORI ... 4

2.1 Portable Executable File ... 4

2.1.1 Struktur Portable Executable File ... 4

2.2 Produk Shareware ... 9

2.2.1 Membuat Produk Shareware ... 10

2.3 Teknik Cracking Software ... 10

2.3.1 Modifikasi Kode ... 11

2.3.2 Aplikasi Cracking ... 12

2.3.2.1 Olly Debugger ... 13

2.3.2.2 Softice ... 13

(4)

2.3.2.4 Syser Debugger ... 14

2.3.2.5 Peid ... 15

2.3.3 Aplikasi Emulator ... 15

2.3.3.1 VMWare dan VirtualPC ... 15

2.3.3.2 Sandboxes ... 15

2.4 APlib Compression Library ... 16

2.5 XOR ... 16

BAB III ANALISIS DAN PEMODELAN ... 17

3.1 Use Case Diagram ... 17

3.1.2 Use Case Narrative ... 18

3.2 Activity Diagram ... 20

3.3 Pseudo Code ... 21

3.4 Flowchart ... 23

BAB IV IMPLEMENTASI ... 26

4.1 Pengenalan Sistem ... 26

4.2 Implementasi Sistem ... 27

4.2.1 Builder ... 27

4.2.1.1 ExtractLoader.pas ... 27

4.2.1.2 WriteResData.pas ... 28

4.2.1.3 EncryptBuffer.pas ... 28

4.2.1.4 GetTemp.pas ... 29

4.2.1.5 Compression.pas ... 29

4.2.1.6 ChangeIcon.pas ... 30

4.2.2 Loader ... 30

4.2.2.1 RunInMemory.pas ... 30

4.2.2.2 AntiDebugging.pas ... 31

(5)

4.2.2.4 EncryptBuffer.pas ... 34

4.2.2.5 Compression.pas ... 34

4.3 Penjelasan Sistem Dan Form Antarmuka ... 34

4.3.1 Builder ... 34

4.3.2 Loader ... 35

BAB V PENGUJIAN ... 36

5.1 Blackbox Testing ... 36

5.1.1 Enkripsi Buffer ... 36

5.1.2 Anti Olly Debugger ... 38

5.1.3 Anti SoftIce ... 39

5.1.4 Anti W32DASM ... 39

5.1.5 Anti Syser Debugger ... 40

5.1.6 Anti Generic Debugger... 41

5.1.7 Anti Memory Dumping ... 41

5.1.8 Anti VMWare ... 42

5.1.9 Anti Virtual PC (VPC) ... 42

5.1.10 Anti Sanboxes ... 43

5.1.11 Kompresi PE File ... 44

5.1.12 Mengganti Icon ... 44

5.2 Pengujian Proteksi Berdasarkan Kompiler ... 45

5.3 Pengujian Proteksi ... 46

5.3.1 Unpacking ... 46

5.3.2 Debugging ... 47

BAB VI KESIMPULAN DAN SARAN... 51

6.1 Kesimpulan ... 51

6.2 Saran ... 52

(6)

DAFTAR GAMBAR

BAB II LANDASAN TEORI ... 4 

Gambar 2. 1 Tampilan program Olly Debugger ... 13

Gambar 2. 2 Tampilan program W32DASM ... 14

Gambar 2. 3 Tampilan Syser Debugger ... 14

Gambar 2. 4 Tampilan Program Peid ... 15

  BAB III ANALISIS DAN PEMODELAN ... 17 

Gambar 3. 1 Use Case Diagram Sistem Proteksi File ... 17

Gambar 3. 2 Activity Diagram UCA.01 ... 20

Gambar 3. 3 Activity Diagram UCA.02 ... 20

Gambar 3. 4 Activity Diagram UCA.03 ... 21

Gambar 3. 5 Activity Diagram UCA.04 ... 21

Gambar 3. 6 Flowchart Builder ... 24

Gambar 3. 7 Flowchart Loader ... 24

  BAB IV IMPLEMENTASI ... 26 

Gambar 4. 1 Desain Tampilan Form Builder ... 34

  BAB V PENGUJIAN ... 36 

Gambar 5 1 Tampilan default bytes notepad.exe ... 37

(7)

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Semakin tingginya minat pengguna komputer saat ini membuat produsen piranti lunak atau software berlomba-lomba untuk membuat software untuk meraih keuntungan dari hasil penjualan software tersebut sekaligus memenuhi tuntutan kebutuhan software dari pengguna komputer.

Banyak software bersifat komersial atau shareware yang diedarkan di masyarakat oleh produsen shareware lebih fokus terhadap pembuatan atau pengembangan teknologi software yang diinginkan oleh pengguna komputer tanpa memperhatikan sisi keamanan software.

Keamanan suatu software sangat penting untuk menjaga keuntungan dan eksistensi dari suatu produsen shareware. Lemahnya keamanan suatu software dapat mengakibatkan beredarnya software serupa yang bersifat ilegal atau tanpa lisensi resmi di masyarakat.

Berdasarkan uraian di atas, penulis akan mengembangkan suatu program aplikasi yang dapat membantu produsen software dalam meningkatkan keamanan software untuk mencegah tindakan ilegal pada software yang telah dibuat.

Dalam tugas akhir ini, penulis tertarik untuk mengambil judul “File Protector” menggunakan Borland Delphi 7.

1.2 Perumusan Masalah

(8)

1.3 Tujuan

Tujuan yang ingin dicapai penulis pada pembuatan tugas akhir ini yaitu sebagai berikut :

1. Membuat program untuk memproteksi software dengan cara mengkompresi dan mengenkripsi struktur file aplikasi dari suatu software berbasis Windows 32 bit sehingga meningkatkan keamanan

pada suatu software.

2. Membantu produsen software untuk mencegah manipulasi ilegal oleh pihak tertentu pada software yang telah dibuat yang dimana dapat melanggar hak cipta pada software tersebut.

3. Membantu produsen software untuk menjaga hak atas kekayaan intelektual pada software yang telah dibuat.

4. Mengurangi resiko software terinfeksi oleh virus komputer.

5. Menambah wawasan kepada semua orang yang tertarik dalam dunia keamanan software.

1.4 Pembatasan Masalah

Batasan masalah yang tedapat pada tugas akhir ini yaitu sebagai berikut : 1. Pengenalan struktur file aplikasi dari suatu software berbasis Windows

atau lebih dikenal dengan nama Portable Executable File (PE Files). 2. Teknik cracking debugging dan reverse engineering beserta software

yang digunakan untuk memanipulasi executable seperti Peid dan Olly Debugger.

(9)

4. Penggunaan teknik enkripsi XOR pada executable.

5. Perbandingan keamanan antara program yang tidak diproteksi dengan program yang telah diproteksi menggunakan Olly Debugger v1.10 6. Bahasa pemrograman yang digunakan untuk mengembangkan

software yaitu Borland Delphi 7.0

1.5 Sistematika Penulisan Laporan

Untuk mempermudah dalam memahami laporan ini, maka penulis menyusun penulisan sebagai berikut :

BAB I PENDAHULUAN; Bab ini menjelaskan tentang Latar Belakang

Masalah, Perumusan Masalah, Tujuan, Pembatasan Masalah, serta Sistematika Penulisan Laporan.

BAB II LANDASAN TEORI; Bab ini membahas secara ringkas

teori-teori dasar yang berhubungan dengan pembuatan program aplikasi. Teori-teori-teori ini diambil dari berbagai pustaka yang menunjang dalam pemecahan masalah yang dianggap relevan dengan permasalahannya.

BAB III ANALISIS DAN PERANCANGAN PRODUK/SISTEM; Bab

ini menjelaskan tentang analisis masalah serta perancangan pembuatan program yang telah dirancang oleh penulis.

BAB IV IMPLEMENTASI; Bab ini menjelaskan hasil tujuan yang akan

dicapai dari perancangan aplikasi yang telah dibuat.

. BAB V HASIL EVALUASI PRODUK; Bab ini menjelaskan metode pengujian untuk mengevaluasi produk yang telah tercapai.

BAB VI KESIMPULAN DAN SARAN; Bab ini menjelaskan metode

(10)

BAB VI

KESIMPULAN DAN SARAN

6.1 Kesimpulan

Setelah menyelesaikan pembuatan software maka penulis dapat menyimpulkan sebagai berikut :

Pengenkripsian PE File pada suatu file executable dan menjalankan PE File tersebut di memory dapat meningkatkan keamanan file executable

dari tindakan cracking karena PE File dari program yang terproteksi tidak dapat di-debug.

Suatu file executable yang terproteksi dari software debugger atau emulator dapat menghindari file executable tersebut dari tindakan

debugging ataupun pelacakan/tracing yang dapat mengarah ke tindakan

ilegal dalam pemakaian software.

Dengan menjaga keamanan suatu software maka dapat membantu menjaga hak cipta dan hak atas kekayaan intelektual pada software.

6.2 Saran

Berikut saran-saran yang penulis sampaikan setelah menyelesaikan program dan melihat permasalahan yang muncul :

Saat program mendapatkan icon pada file executable yang akan diproteksi, program hanya mengambil icon pertama pada file executable tersebut, sebaiknya program membandingkan icon-icon yang terdapat pada file executable dengan icon yang sedang digunakan file executable.

(11)

bertambah besar. Hal ini dapat dihindari jika file loader dicompile menggunakan murni bahas assembler seperti MASM atau TASM.

Pada rutin enkripsi PE File, kualitas pengenkripsian dapat ditingkatkan dengan menggunakan enkripsi yang lebih kompleks seperti RC4 atau API Crypt.

(12)

DAFTAR PUSTAKA

Neil, Moffat. 2002 Delphi Basics. http://delphibasics.co.uk

Matt , Pietrek. 1994. Peering Inside the PE: A Tour of the Win32 Portable Executable File Format.

http://programmersheaven.com/2/Inject-code-to-Portable-Executable-file

James, Rumbaugh. 1998. UML Reference Manual. California.

Richey, 1999. Richey's Anti-Cracking FAQ.

www.woodmann.com/crackz/Tutorials/Anticrk.htm

Plachy , Johannes. 1997. The Portable Executable File Format.

www.csn.ul.ie/~caolan/publink/winresdump/winresdump/doc/pefile.html

Dzzie. 2004. Building A Simple Executable Crypter.

Referensi

Dokumen terkait

Based on the above background, this research has a purpose that is to analyze the willingness to pay visitors to the Bird Watching Ecotourism in Lake Meno and the factors

[r]

Yth. Kepala Kantor Pelayanan Perbendaharaan Negara Metro Jl. Dengan memperhatikan Peraturan Direktur Jenderal Perbendaharaan Nomor : PER-58/PB/2013 tentang

This study aims to reveal the concept of family contained in the

Penyesuaian Anggaran Dasar Perseroan Terbatas Semen Kupang ke dalam Perusahaan Perseroan (PERSERO) dilakukan menurut ketentuan-ketentuan Kitab Undang-undang Hukum Dagang

(4) Penetapan jumlah jenis dan klasifikasi Ternak yang dapat dimasukkan dari luar negeri sebagaimana dimaksud pada ayat (1) huruf a dilakukan oleh Menteri melalui

Istimewa Aceh sebagai Provinsi Nanggroe Aceh Darussalam yang oleh Undang-Undang Nomor 4 Tahun 2004 tentang Kekuasaan Kehakiman Pasal 15 ayat (2) disebutkan bahwa: ”Peradilan

[r]