mencegah exploit url website sensitek stmik pontianak ... · mengharuskan pengelola website untuk...

12
55 Mencegah Exploit URL Website Sensitek STMIK Pontianak Dengan Algoritma Blowfish Avoid the exploitation of STMIK Pontianak Sensitek Website URL by using Blowfish Algorithm Gat STMIK Pontianak Jalan Merdeka No. 372 Pontianak, Kalimantan Barat e-mail : [email protected] Abstrak STMIK Pontianak memiliki website Sensitek yang merupakan sub domain dari website stmikpontianak.ac.id. Semakin meluasnya tindakan kejahatan melalui media internet mengharuskan pengelola website untuk lebih memperhatikan aspek keamanan informasi yang tersimpan didalam website tersebut. Salah satu informasi yang penting dari website Sensitek adalah informasi profil pemakalah, bukti pembayaran matakalah dan makalah yang diupload. Salah satu ancaman keamanan dari website adalah serangan melalui kelemahan URL. URL dikatakan lemah jika penyerang dapat melakukan manipulasi terhadap informasi yang ada di URL untuk masuk lebih jauh kedalam sistem sebagai usaha untuk membaca database. Tujuan dari penelitian ini adalah melakukan enkripsi terhadap URL dengan algorimta Blowfish. URL yang sudah dienkripsi tidak mudah untuk dilakukan manipulasi sehingga akan mempersulit penyerang untuk mengetahui informasi dari database. Hasil penelitian ini menunjukkan bahwa algoritma Blowfish telah berhasil melakukan enkripsi dan dekripsi terhadap URL sehingga menghasilkan tingkat keamanan yang baik. Dari pengujian dan analisa yang telah dilakukan menunjukkan bukti bahwa algoritma Blowfish berjalan dengan baik dalam mengenkripsi plaintext dan mendekripsi ciphertext. Keamanan yang dibuat oleh algoritma blowfish menggunakan 16 kali putaran sehingga sulit ditembus. Kata kunci— Exploit, Algoritma Blowfish, Kriptografi, URL Abstract STMIK Pontianak has a website called Sensitek in which is a sub domain from a website address stmikpontianak.ac.id. As the crime rate through internet is increasing, it pushed the website manager to be more focused on the security aspect like the safety of the information saved in that website. One of the important information from Sensitek website is the Profile of the author of the research paper, payment proof of the research paper and the uploaded research paper. One of the security threats is the attack through the URL weaknesses. URL became weak when the attackers able to manipulate the information available in the URL to get into the system as the attempt to read the database. The purpose of this research is to do the encryption to URL by using Blowfish algorithm. Encrypted URL is not easy to be manipulated that it will be difficult for the attacker to know the information from the database. The result from this research is showing that Blowfish algorithm succeeded in doing the encryption and decryption to URL that resulting in better security level. From the test and analysis that had been done and showed prove that Blowfish algorithm working really well in encrypting plaintext and decrypting cipher text. The security made by the Blowfish algorithm is having a function to iterate 16 times of network that makes it difficult to penetrate. Keywords — Exploit, Blowfish Algorithm, Cryptography, URL

Upload: hoangnhi

Post on 13-Mar-2019

229 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mencegah Exploit URL Website Sensitek STMIK Pontianak ... · mengharuskan pengelola website untuk lebih memperhatikan aspek keamanan informasi yang ... karena kriptografi memainkan

55

Mencegah Exploit URL Website Sensitek STMIKPontianak Dengan Algoritma Blowfish

Avoid the exploitation of STMIK Pontianak SensitekWebsite URL by using Blowfish Algorithm

GatSTMIK Pontianak

Jalan Merdeka No. 372 Pontianak, Kalimantan Barate-mail : [email protected]

AbstrakSTMIK Pontianak memiliki website Sensitek yang merupakan sub domain dari website

stmikpontianak.ac.id. Semakin meluasnya tindakan kejahatan melalui media internetmengharuskan pengelola website untuk lebih memperhatikan aspek keamanan informasi yangtersimpan didalam website tersebut. Salah satu informasi yang penting dari website Sensitekadalah informasi profil pemakalah, bukti pembayaran matakalah dan makalah yang diupload.Salah satu ancaman keamanan dari website adalah serangan melalui kelemahan URL. URLdikatakan lemah jika penyerang dapat melakukan manipulasi terhadap informasi yang ada diURL untuk masuk lebih jauh kedalam sistem sebagai usaha untuk membaca database. Tujuandari penelitian ini adalah melakukan enkripsi terhadap URL dengan algorimta Blowfish. URLyang sudah dienkripsi tidak mudah untuk dilakukan manipulasi sehingga akan mempersulitpenyerang untuk mengetahui informasi dari database. Hasil penelitian ini menunjukkan bahwaalgoritma Blowfish telah berhasil melakukan enkripsi dan dekripsi terhadap URL sehinggamenghasilkan tingkat keamanan yang baik. Dari pengujian dan analisa yang telah dilakukanmenunjukkan bukti bahwa algoritma Blowfish berjalan dengan baik dalam mengenkripsiplaintext dan mendekripsi ciphertext. Keamanan yang dibuat oleh algoritma blowfishmenggunakan 16 kali putaran sehingga sulit ditembus.Kata kunci— Exploit, Algoritma Blowfish, Kriptografi, URL

AbstractSTMIK Pontianak has a website called Sensitek in which is a sub domain from a website

address stmikpontianak.ac.id. As the crime rate through internet is increasing, it pushed thewebsite manager to be more focused on the security aspect like the safety of the information savedin that website. One of the important information from Sensitek website is the Profile of the authorof the research paper, payment proof of the research paper and the uploaded research paper.One of the security threats is the attack through the URL weaknesses. URL became weak whenthe attackers able to manipulate the information available in the URL to get into the system asthe attempt to read the database. The purpose of this research is to do the encryption to URL byusing Blowfish algorithm. Encrypted URL is not easy to be manipulated that it will be difficult forthe attacker to know the information from the database. The result from this research is showingthat Blowfish algorithm succeeded in doing the encryption and decryption to URL that resultingin better security level. From the test and analysis that had been done and showed prove thatBlowfish algorithm working really well in encrypting plaintext and decrypting cipher text. Thesecurity made by the Blowfish algorithm is having a function to iterate 16 times of network thatmakes it difficult to penetrate.Keywords — Exploit, Blowfish Algorithm, Cryptography, URL

Page 2: Mencegah Exploit URL Website Sensitek STMIK Pontianak ... · mengharuskan pengelola website untuk lebih memperhatikan aspek keamanan informasi yang ... karena kriptografi memainkan

ISSN: 1978-152056

1. PENDAHULUAN

Website telah menjadi bagian yang sangat penting bagi masyarat sebagai media untukpenyampaian informasi[1]. Teknologi informasi berbasis web juga mengalami pertumbuhan[2]karena keuntungan dan kemudahan untuk mendapatkan informasi[3]. Bagi sebagian mayarakat,kehadiran internet merupakan suatu anugrah karena dengan internet dapat melakukan banyakpekerjaan[4]. Pada dunia bisnis, sebagian besar perusahaan berinteraksi dengan pelangganmereka melalui kekuatan situs web. Informasi sangat berguna dalam kehidupan dan salah satumedia yang tepat untuk memenuhi kebutuhan akan informasi adalah website[5]. Jumlah penggunainternet terus mengalami peningkatan dari waktu ke waktu. Pada konferensi pers Survei Penetrasidan Perilaku Internet Indonesia 2017 oleh Asosiasi Penyelenggara Jasa Internet Indonesia (APJII)di Jakarta. Pada tahun 2017, jumlah pengguna internet di Indonesia mencapai 143,26 juta jiwa.Angka tersebut meningkat dibandingkan pada tahun sebelumnya, yakni tahun 2016 yang tercatatmencapai 132,7 juta jiwa. Sekretaris Jenderal APJII Henri Kasyfi Soemartono menjelaskan,jumlah pengguna internet pada tahun 2017 tersebut mencakup 54,68 persen dari total populasiIndonesia yang mencapai 262 juta orang. Meningkatnya penggunaan teknologi internet yangbegitu cepat, dibutuhkan perlindungan terhadap data rahasi[6], karena pertumbuhan ini jugamemberikan cara baru bagi peretas untuk mencuri data penting pengguna. Perkembanganteknologi menghasilkan kemudahan bagi banyak pengguna akan tetapi semakin semakin tinggipula tingkat kejahatan komputer yang terjadi. Keamanan dalam sebuah website menjadi penting,karena data dapat diambil dan disalahgunakan oleh pihak yang tidak bertanggung jawab[7].

Keamanan menjadi isu utama ketika adanya pertukaran data yang melibatkan penggunaanteknologi internet, kerena pada umunya banyak pengguna yang mengandalkan internet terkaitdengan email, e-shopping, permainan, perdagangan dan lain-lain[8]. Website menyimpan begitubanyak informasi rahasia yang sangat sensitif, oleh karenanya pengembang dituntut untuk tidakmeninggalkan kerentanan pada aplikasi web tersebut. Kerentanan yang dimiliki dari suatuaplikasi web menjadi target populer bagi serangan cyber melalui teknologi jaringan[9].Kerentanan yang ditimbulkan dalam pengembangan perangkat lunak juga dapat menyebabkankerugian atau hasil yang tidak diinginkan[10]. Serangan SQL Injection adalah ancaman palingumum[11] yang merupakan salah satu teknik hacking yang melakukan serangan dengan caramemasukkan karakter-karakter khusus pada URL sebuah website untuk mengeksploitasi celahkeamanan yang muncul disekitar lapisan basis data pada aplikasinya[12]. Atas dasar hal tersebut,perlu dikedepankan metode terbaik dalam keamanan berinternetan[13]. Untuk menjaga keamananinformasi, berbagai teknik digunakan[14]. Salah satu cara yang dapat digunakan untukmengamankan suatu website dari serangan SQL injection adalah dengan ilmu kriptografi[15]karena kriptografi memainkan peran penting dalam keamanan jaringan. Teknologi enkripsiinformasi tidak hanya dapat memenuhi persyaratan keamanan kerahasiaan informasi, tetapi jugamenghindari kebocoran dari ancaman keamanan informasi yang signifikan[16]. Kekuatanenkripsi terletak pada penggabungan matematika dan ilmu komputer sehingga isinya tidak dapatdibaca dan dijelaskan kepada siapa saja yang tidak memiliki wewenang untuk membaca[17][18].

Salah satu metode kriptografi adalah algoritma Blowfish yang dapat dipergunakan untukmelakukan enkripsi dan dekripsi data yang menggunakan kunci simetris[19]. Algoritma Blowfish(BF) adalah salah satu algoritma simetris keamanan yang paling umum dan umum, ini adalahsandi Feistel dengan enam belas putaran dan menggunakan kunci besar[20]. Blowfish merupakanalgoritma simetris modern dengan kunci simetris berbentuk cipher block[21]. Secara konsepBlowfish adalah kunci dengan panjang variabel, 64-bit block cipher. Ini adalah jaringan Festalyang terdiri dari 16 putaran. Input adalah elemen data 64-bit. Kemudian input dibagi menjadi duabagian 32-bit: LE dan RE. Dekripsi sama persis dengan enkripsi, kecuali P1, P2 ... P18.Implementasi Blowfish sangat mudah, aman, cepat dan merupakan blok cipher simetris terbaik.Algoritma Blowfish hanya menggunakan dua operasi XOR dan tambahan pada kata-kata 32-bitdengan hanya menggunakan 4KB memori saat berjalan[22]. Algoritma enkripsi cipher bloksimetris yang berarti bahwa Blowfish menggunakan kunci rahasia yang sama untuk mengenkripsi

Page 3: Mencegah Exploit URL Website Sensitek STMIK Pontianak ... · mengharuskan pengelola website untuk lebih memperhatikan aspek keamanan informasi yang ... karena kriptografi memainkan

57

dan mendekripsi pesan dan membagi pesan ke dalam blok panjang tetap selama enkripsi dandekripsi[23].

STMIK Pontianak sudah memiliki website SENSITEK yang perlu dikembangkan lagidengan tingkat keamanan yang tinggi. Pengembangan ini perlu dilakukan mengingat pada websitetersebut mengijinkan setiap pengguna dalam kontek ini adalah pemakalah dari berbagaiPerguruan Tinggi Indonesia untuk mengupload makalah mereka sebagai bukti partisifasi padakegiatan Seminar Nasional Sistem Informasi dan Teknologi Informasi (SENSITEK). Selainupload makalah, ada data penting lainnya yang dimiliki oleh pemakalah yaitu nomor kontak yangharus diinputkan ketika pemakalah mengisi formulir registrasi. Banyaknya jumlah pemakalahyang akan berkontribusi dalam menggunakan website ini akan memberikan peluang bagi paraattacker untuk mengambil keuntungan dari informasi yang tersimpan di dalam sistem tersebut.Fokus penelitian ini terletak pada pengamanan nilai variabel yang dikirim saat penggunamembuka suatu link untuk masuk ke modul lain dan link tersebut akan membentuk URL yangsudah dienkripsi. Algoritma Blowfish dipergunakan untuk enkripsi dan dekripsi UniformResource Locator (URL). Penggunaan Algoritma blowfish didasarkan pada sifatnya yang mudah,cepat, tersusun dengan rapi dan terjamin keamanannya. Sampai saat ini belum ada kripnalis yangbisa menembus keamanan yang dibuat oleh algoritma blowfish dengan menggunakan 16 kaliputaran[24]. Tujuan penelitian ini adalah menghasilkan URL website Sensitek terenkripsimenggunakan algoritma Blowfish sebagai upaya untuk mencegah serangan yang memanfaatkanURL yang tidak terenkripsi. Dengan demikian website Sensitek dapat menjamin keamanan datapengguna.

2. METODE PENELITIAN

Setiap perusahaan dipastikan memiliki data penting yang perlu dijaga keamanannyaterutama dari sisi integritas data. Diperlukan penerapan mekanisme keamanan yang baik agarinformasi tidak jatuh ke tangan orang yang tidak berwenang[25]. Metode penelitiannya Research& Development (R&D). Metode pengembangan perangkat lunak mengimplementasikanmetodologi AGILE dengan menerapkan Extreme Programming (XP). Memilih metodologibergantung pada jenis, skala proyek dan faktor lainnya [26]. Extreme programming dimunculkanuntuk menangani perubahan-perubahan yang biasanya sering terjadi pada saat pengembanganberlangsung bahkan pada saat proses pengembangan sudah hampir berakhir. Pengembanganhanya difokuskan pada fitur yang menghasilkan URL seperti saat membuka link dan fitur yangmengambil nilai dari URL untuk menampilkan data. Ada dua proses mendasar kriptografi yangakan dibahas dalam penelitian ini yaitu enkripsi dan dekripsi. Proses enkripsi adalah merupakanproses mengubah data asli (plaintext) menjadi data yang tidak dapat dibaca (ciphertext).

3. HASIL DAN PEMBAHASAN

Adanya keuntungan dari sisi keamanan informasi seperti kerahasiaan, keutuhan data danotentifikasi adalah sebuah alasan untuk menggunakan kriptografi. Secara prinsif kriptografimelindungi informasi dengan cara mengubah informasi tersebut menjadi format yang tidakterbaca[27]. Ketika data sudah menjadi format yang tidak dapat dibaca oleh orang yang tidakmemiliki hak, maka disitulah terdapat unsur keamanan. Dalam website Sensitek banyakmenggunakan Method GET dalam pengiriman maupun pengambilan nilai (value) dari suatuvariabel. Nilai variabel yang dikirim menggunakan method GET dapat dilihat pada bagian URLdan nilai tersebut dapat dimanipulasi oleh orang lain yang memiliki pengetahuan pada bidangilmu hacker. Atas dasar hal tersebut maka website Sensitek STMIK Pontianak melakukan enkripsipada URL dengan alasan agar nilai variabel pada URL tidak dapat dimanipulasi. Pada umumnyaURL akan menampilkan nilai ketika pengguna melakukan aksi klik pada salah satu link yang adadi website. Selanjutnya nilai yang terdapat pada URL akan diambil menggunakan method GET.Nilai yang berhasil diambil dengan method akan dipergunakan untuk melanjutkan aksi berikutnya

Page 4: Mencegah Exploit URL Website Sensitek STMIK Pontianak ... · mengharuskan pengelola website untuk lebih memperhatikan aspek keamanan informasi yang ... karena kriptografi memainkan

ISSN: 1978-152058

seperti, perubahan data dan penghapusan data. Dengan telah dilakukan enkripsi terhadap setiapnilai variabel yang dikirim melalui URL, maka keamanan data terjamin dengan baik. Algoritmaenkripsi yang dipergunakan adalah algoritma Blowfish. Blowfish merupakan blok cipher 64-bitdengan panjang kunci variabel. Algoritma ini terdiri dari dua bagian: key expansion dan enkripsidata. Key expansion merubah kunci yang dapat mencapai 448 bit menjadi beberapa arraysubkunci (subkey) dengan total 4168 byte. Algoritma Blowfish dapat berjalan dengan baik dalammelakukan enkripsi dan dekripsi nilai variabel yang kirim melalui URL sehingga meningkatkankeamanan data. Berikut ini akan dilakukan proses secara bertahap dalam menghasilkan keamananURL terenkripsi dengan algoritma Blowfish.3.1 Perencanaan

Perencanaan dimaksudkan untuk memberikan kemudahan dalam melakukan apa yang akandikerjakan dalam pengembangan keamanan sistem sehingga setiap langkah yang akandilaksanakan bisa berjalan dengan baik. Website Sensitek sudah ada dan sudah dipublikasisehingga penelitian ini hanya terfokus pada pengembangan terutama pada bagian interfacepengguna sistem. Perubahan hanya dilakukan pada bagian sistem yang menghasilkan URL sepertipada aksi klik link dan pada bagian sistem yang mengambil nilai dari URL untuk melakukanproses pengambilan data ke database. File index.php harus dipersiapkan karena pada fileindex.php tersebut berisikan banyak link yang berfungsi untuk menampilkan fitur dari sistem.Setiap link yang diakses oleh penggunaan akan mengakibatkan perubahan nilai pada URL dimananilai tersebut sebagai acuan untuk menampilkan informasi yang tersimpan di dalam database.Penyerang keamanan komputer biasanya menggunakan kode (exploit) untuk menyerangkerapuhan keamanan yang salah satunya terletak pada bagian URL. Sebagai tindakanpencegahan, maka perlu ditingkatkan keamanan dengan cara menutupi celah kerapuhankeamanan menggunaan teknik enkripsi. Blowfish adalah salah satu metode enkripsi yangtermasuk dalam Symmetric Cryptosystem [28] yang akan dipergunakan untuk meningkatkankeamanan pada website Sensitek. Penelitian ini hanya melakukan pengembangan pada sisikeamanan dari website Sensitek yang sudah dipublikasi secara online. Perlu dilakukan perubahanpada bagian pengiriman data dan penangkapan data yang menggunakan method GET dengan caraenkripsi.3.2 Perancangan

Perancangan mengindentifikasikan semua struktur sistem, prinsip komponen (sub-sistem/modul), hubungannya dan bagaimana didistribusikan. Perancangan arsitekturmempresentasi framework dari sistem perangkat lunak yang dibangun. Deskripsi arsitekturmengadopsi spesifikasi sistem, model analisis, dan interaksi subsistem yang telah didefenisikanpada tahap analisis. Perancangan hanya terkonsentasi pada rancangan enkripsi dan enkripsi dariURL. Hal ini mengingat karena website Sensitek sebelumnya sudah ada namun perludikembangkan sebagai upaya peningkatan dari keamanan. Perancangan akan dimulai darimemberikan suatu kerangka dasar prinsif secara coding dari enskripsi blowfish dan dekripsi dariblowfish. Selanjutnya secara nyata, enkripsi dan dekripsi tersebut akan ditempatkan pada fiturutama sistem yaitu menu akun pengguna sistem. Setiap ada akses ke link akan dilakukan enkripsisecara otomatis pada saat kursor mouse diletakkan pada link tersebut. Secara garis besar juga akandibuatkan model dari keamanan enkripsi dan dekripsi menggunakan algoritma blowfish. Modeldari arsitektur keamanan tersebut memperlihatkan proses kerja dan kaitan antara penggunadengan sistem. Rancangan flowchart hanya menggambarkan proses enkripsi dan proses dekripsipada sistem.a. Enkripsi Blowfish

Enkripsi algoritma blowfish Terdiri dari iterasi fungsi sederhana (Feistel Network) sebanyak16 kali putaran (iterasi), masukannya adalah 64-bit elemen data X. Setiap putaran terdiri daripermutasi kunci dependent dan substitusi kunci- dan data dependent. Semua operasi adalahpenambahan (addition) dan XOR pada variabel 32-bit. Blowfish dapat secara sederhananyadigambarkan dengan algoritma berikut (Chauhan, 2017):

Page 5: Mencegah Exploit URL Website Sensitek STMIK Pontianak ... · mengharuskan pengelola website untuk lebih memperhatikan aspek keamanan informasi yang ... karena kriptografi memainkan

59

b. Dekripsi BlowfishDekripsi Blowfish bekerja dalam arah algoritma yang sama seperti halnya dengan enkripsi

namun sebagai masukannya adalah chipertext. Proses dekripsi pada blowfish mempunyai sifatmaju dengan sub-kunci yang digunakan dalam posisi urutan terbalik. Sehingga algoritma dekripsiBlowfish sebagai berikut:

Enkripsi dan dekripsi Blowfish diimplementasikan pada website Sensitek untukmengamankan nilai yang dikirim melalui URL dan diambil dengan method GET. Setiap linkdienkripsi dan data enkripsi akan diambil dengan menggunakan GET lalu didekrip agar dapatdikenali yang selanjutnya akan melaksanakan aksi sesuai dengan perintah. Berikut ini adalahantara muka website Sensitek modul pengguna:

Gambar 1. Antarmuka Modul Pengguna Website Sensitek

Page 6: Mencegah Exploit URL Website Sensitek STMIK Pontianak ... · mengharuskan pengelola website untuk lebih memperhatikan aspek keamanan informasi yang ... karena kriptografi memainkan

ISSN: 1978-152060

Modul website Sensitek ada beberapa bagian dan modul pengguna ini yang cukup berbahayajika tingkat keamanan lemah karena pada modul ini berbagai pengguna dengan latar belakangberbeda bisa mengakses modul ini dengan hanya mendaftar terlebih dahulu. Penulis hanyaterfokus pada melakukan enkripsi dan dekripsi pada nilai variabel yang akan dikirim melaluiURL. Seperti yang telah dijelaskan sebelumnya bahwa nilai variabel yang terletak pada URL bisadisalahgunakan oleh orang jika nilai tersebut bisa dibaca dalam format plaintext. Ketika nilaivariabelnya bisa dimanipulasi maka penyerang bisa mendapatkan informasi penting dari strukturtabel sistem dan bahkan bisa mendapatkan informasi penting dari isi tabel. Atas dasar permasalahtersebut maka diperlukan format URL yang ter-enkripsi sehingga memberikan kesulitan bagipenyerang untuk melakukan manipulasi URL. Arsitektur pengembangan keamanan websiteSensitek adalah sebagai berikut:

URL (plaintext) Encrypt

database URL (ciphertext)

DecryptURL (plain text)

SecretKey

Gambar 2. Arsitektur Sistem Keamanan Website

Pada gambar 2 arsitektur sistem keamanan website dengan teknik enkripsi dan dekripsidimulai dari meng-enkripsi URL dalam format plaintext dari website Sensitek. Proses enkripsisecara otomatis saat pengguna meng-askes salah satu link yang tersedia pada sistem tersebut.Sebagai contoh ketika pengguna meng-akses menu makalah, maka akan terjadi pengiriman nilaivariabel yang memberikan perintah untuk membuka form makalah. Sebelum nilai variabeltersebut ditampilkan pada bagian URL, terlebihdahulu dilakukan proses enkripsi dengan kuncitertentu agar setiap nilai variabel yang ditampilkan pada URL tidak dikenali sehinggamempersulit bagi orang yang ingin memanfaatkan kelemahan tersebut untuk tujuan yang jahat.Algoritma kriptografi terbagi menjadi dua yaitu algoritma simetris dan algoritma asimetris. Salahsatu contoh algoritma simetris adalah blowfish. Algoritma kriptografi simetris blowfishmerupakan algoritma modern kunci simetris berbentuk cipher block. Kunci simetris yangdigunakan untuk prosesenkripsidan dekripsi. Berikut ini adalah flowchart enkripsi dan dekripsidengan algoritma Blowfish pada method GET:

Page 7: Mencegah Exploit URL Website Sensitek STMIK Pontianak ... · mengharuskan pengelola website untuk lebih memperhatikan aspek keamanan informasi yang ... karena kriptografi memainkan

61

Start

Baca Classs

Enkripsi Nilai VariabelDengan Kunci

Nilai variabelyang akan di

Enkripsi

Tentukan Kunci

Tampilkan Nilai Variabeldi URL dalam format

ciphertext

End

Start

Baca Classs

Dekripsi Nilai VariabelDengan Kunci

Ambil NilaiVariabel Dengan

Method GET

Tentukan Kunci yang sama

Menampilkan NilaiVariabel dalam format

plaintext

End

Gambar 3 (a). Flowchart Enkripsi URL Gambar 3(b). Flowchart Dekripsi URL

3.3 Implementasi CodingBlowfish adalah algoritma kriptografi kunci simetrik cipher blok dengan panjang blok tetap

sepanjang 64 bit. Teknik dalam menerapkan ukuran kunci adalah sembarang antara 32 hingga448 bit dengan ukuran standar sebesar 128 bit. Blowfish memanfaatkan teknik pemanipulasianbit dan teknik pemutaran ulang dan pergiliran kunci yang dilakukan sebanyak 16 kali. Algoritmautama terbagi menjadi dua sub-algoritma utama, yaitu bagian ekspansi kunci dan bagian enkripsi-dekripsi data. Dalam melakukan implementasi coding enkripsi URL menggunakan algoritmablowfish, ada beberapa hal yang harus diperhatikan yaitu coding enkripsi diletakkan pada fileindex.php dengan maksud agar semua alamat URL dapat terenkripsi dan terdekripsi. Sebagaicontoh bentuk URL yang belum dienkripsihttp://www.stmikpontianak.ac.id/sensitek/sensitek/account/?index=info_akun&id=105. Padakasus ini yang akan dienkripsi adalah nilai variabel dari id, dimana nilai tersebut akan dikirim fileinfo_akun yang selanjutkan nilai tersebut akan diambil dengen method GET. Tujuandilakukannya enkripsi pada nilai variabel id tersebut adalah agar para attackers tidak bisamelakukan manipulasi terhadap nilai variabel tersebut. Secara garis besar berikut ini adalah kodePHP untuk menggambarkan fungsi dari Enkripsi dan Dekripsi Algoritma Blowfish:

Gambar 4. Fungsi Enkripsi dan Dekripsi Algoritma Blowfish

Page 8: Mencegah Exploit URL Website Sensitek STMIK Pontianak ... · mengharuskan pengelola website untuk lebih memperhatikan aspek keamanan informasi yang ... karena kriptografi memainkan

ISSN: 1978-152062

Pada gambar 4 di atas, terlihat ada dua jenis fungsi yaitu function encrypt dan functiondecrypt. Fungsi enkripsi dan dekripsi di atas menggunakan base64_encode dan base64_decodesebagai fungsi enkripsi dan dekripsi dasar serta fungsi urlencode dan urldecode. Fungsi encryptuntuk melakukan eksekusi enkripsi terhadap data plaintext dan fungsi decrypt untuk melakukaneksekusi dekripsi terhadap data ciphertext. Cara ini memungkinkan hasil enkripsi bisa dikirimmelalui URL tanpa ada karakter yang menggangu URL. Fungsi ini dapat digunakan untukmenyembunyi id pada form inputan sehingga script menjadi aman karena yang ditampilkanbukanlah id dalam database tetapi sudah dalam bentuk salt atau acak. Berikut ini adalah penerapanenkripsi dan dekripsi nilai variabel yang kirim dan diambil dengan method GET menggunakanalgoritma Blowfish:

Gambar 5. Source Code Enkripsi

Pada gambar 5 di atas dapat dijelaskan bahwa terjadi pemanggilan file bernamaChiper.php dan ini merupakan kumpulan dari function encrypt, function decrypt dan functionSetKey. Kemudian dilanjutkan dengan membuat sebuah object dengan nama cipher dari kelasCipher dan metode enkripsi dan dekripsi yang digunakan adalah dengan algoritma Blowfish. Nilaivariabel $en_id1, $en_id2, $en_id3 merupakan hasil enkripsi dari nilai yang terdapat dalamvariabel $id1 beserta dengan kuncinya. Bentuk dari data enkripsi bisa terlihat ketika penggunamengarahkan kursor ke salah satu pilihan menu (Ptofil, Makalah dan Surat Keterangan). Ketikapengguna mengklik link menu tersebut, maka akan terlihat pada URL bentuk data yang sudahterenkripsi di parameter terakhir pada URL.

Gambar 6. Source Code Dekripsi

Pada gambar 6 di atas penjelasannya kurang lebih sama dengan gambar 5 dimana terjadipemanggilan file bernama Chiper.php dan ini merupakan kumpulan dari function encrypt,function decrypt dan function SetKey. Kemudian dilanjutkan dengan membuat sebuah objectdengan nama cipher dari kelas Cipher dan metode enkripsi dan dekripsi yang digunakan adalah

Page 9: Mencegah Exploit URL Website Sensitek STMIK Pontianak ... · mengharuskan pengelola website untuk lebih memperhatikan aspek keamanan informasi yang ... karena kriptografi memainkan

63

dengan algoritma Blowfish. Nilai variabel $de_id merupakan hasil enkripsi dari nilai yangterdapat dalam variabel $getid beserta dengan kuncinya. Nilai variabel dari $getid diperolah dariURL dalam format enkripsi. Ketika function decrypt dipanggil maka akan terjadi prosesperubahan bentuk dari ciphertext menjadi plaintext. Dengan demikan akan terjadi pemanggilanfungsi lainnya sesuai dengan nilai yang terkandung dalam variabel $de_id.3.4 Pengujian Sistem

Tahapan pengujian suatu sistem merupakan proses yang sangat penting sebelum sebelumsistem tersebut dipergunakan. Hasil pengujian dapat dijadikan sebagai acuan dalam menilaitindakan yang akan dilakukan berikutnya. Pada penelitian ini akan dilakukan pengujian terhadapenkripsi URL untuk memastikan apakah pemanggilan fungsi ekripsi berjalan dengan baik.Berikut ini adalah hasil uji coba enkripsi URL ketika pengguna mengklik salah satu menu darimodul pengguna:

Gambar 7. Hasil Pengujian Enkripsi Pada URL

Seperti yang diperlihatkan pada gambar 7 di atas, nilai variabel id sudah ditampilkandalam format data yang tidak bisa dikenali ketika pengguna membuka salah satu link yang adapada interface sistem tersebut. Informasi yang sudah terenkripsi tersebut akan diteruskan kemodul interface yang lain dimana pengambilan data tersebut menggunakan method GET. Agardata yang sudah terekripsi bisa dikenali oleh sistem untuk diteruskan ke proses lain, maka akandilakukan proses dekripsi secara otomatis dengan kunci rahasia.

Gambar 8. Hasil Pengujian Enkripsi Pada Link

Pada gambar 8 di atas ditunjukkan juga bentuk link pada status bar yang terenkripsi.Proses ini membuktikan bahwa setiap kali pengguna sistem mengarah kursor pada salah satu link,maka proses enkripsi akan dieksekusi. Dua contoh kasus ini sudah cukup membuktikan adanyaupaya pengamanan data dan teknik pengamanan data yang sudah berfungsi dengan baik sesuaidengan teori yang terkandung pada teknik algoritma blowfish.

Page 10: Mencegah Exploit URL Website Sensitek STMIK Pontianak ... · mengharuskan pengelola website untuk lebih memperhatikan aspek keamanan informasi yang ... karena kriptografi memainkan

ISSN: 1978-152064

Tabel 1. Analisa Proses EnkripsiBlowfish Key MAX 56 Bytes Blowfish Plain (or ASCII HEX if

Encrypted) Blowfish Encrypted Text

979a218e0632df2935317f98d47956c7 stmik 6p+k9uMVUH8=218e0632df2935317f98 Pontianak B2m+rUhE70oD8QnoexoyGw==stmikpontianak123 sensitek U14huSfLetdZy7HqbrsOYA==123 stmik aO/cohPHRy4=x STMIK Pontianak JHTgdFmMfxPmQnRtKsXEGQ==

Analisa proses enkripsi seperti yang ditujukkan pada tabel 1 diatas merupakan suatu proses yangakan mengekripsi teks dari bentuk plaintext menjadi ciphertext. Pada contoh analisa tersebutdiambil beberapa contoh Blowfish Key dan Blowfish Plain. Nilai yang ditampilkan pada BlowfishEncrypted Text sangat bervariasi berdasarkan kunci dan plaintext yang diberikan. Banyaknya karakter(Blowfish Plain) diinputkan akan mempengaruhi panjang karakter dari enkripsi. Sedangkan panjang kuncitidak memberikan pengaruh terhadap pangjangnya hasil enkripsi.

Tabel 2. Analisa Proses DekripsiBlowfish Encrypted Text Blowfish Key MAX 56 Bytes Blowfish Plain (or ASCII HEX

if Encrypted)6p+k9uMVUH8= 979a218e0632df2935317f98d47956c7 stmikB2m+rUhE70oD8QnoexoyGw== 218e0632df2935317f98 PontianakU14huSfLetdZy7HqbrsOYA== stmikpontianak123 sensitekaO/cohPHRy4= 123 stmikJHTgdFmMfxPmQnRtKsXEGQ== x STMIK Pontianak

Analisa proses dekripsi seperti yang ditunjukkan pada tabel 2 di atas merupakan proses yang akanmelakukan dekripsi terhadap ciphertext untuk menghasilkan plaintext. Pada contoh analisatersebut, Blowfish Encrypted Text mengambil dari contoh analisa tabel 1 untuk memastikan apakah nilaiBlowfish Plain (plaintext) sama dengan nilai plaintext yang diujikan pada tabel 1. Jika memperhatikanhasil yang ditampilkan pada bagian Blowfish Plain, terlihat jelas bahwa Blowfish Plain yang ada padatabel 2 sama dengan yang ada pada tabel 1. Untuk menguji hasil dekripsi dalam menghasilkan plaintextharus menggunakan cipertext dan kunci yang sama dengan data pada tabel 1.

4. KESIMPULAN

Menjaga kerahasiaan, keutuhan, integritas data dan otentifikasi merupakan suatupermasalahan yang harus menjadi perioritas bagi pengembang sistem. Bagi para developerperangkat lunak seyogianya tidak meninggalkan celah keamanan atau kerentanan keamananketika membangun suatu sistem. Pemilik sistem memiliki tanggung jawab untuk bisa menjagakeamanan data para pengguna, karena kegagalan dalam menjamin keamanan data pengguna akanmenimbul efek negatif. SENSITEK (Seminar Nasional Sistem Informasi dan TeknologiInformasi) adalah website milik STMIK Pontianak telah berkomitmen untuk menjaga keamanandata terhadap para penulis makalah yang ikut berpartisifasi dalam kegiatan seminar tersebut.Bukti komitmen yang ditunjukkan oleh STMIK Pontianak adalah dengan melakukan penutupancelah keamanan URL melalui teknik enkripsi dan dekripsi. Algoritma blowfish dipilih sebagaisalah satu metode kriptografi yang merupakan algoritma yang menggunakan kunci simetris untukmelakukan enkripsi dan dekripsi. Penggunaan algoritma blowfish didasarkan pada sifatnya yangmudah, cepat, tersusun dengan rapi dan terjamin keamanannya. Hasil penelitian ini menunjukkanbahwa algoritma Blowfish telah berhasil melakukan enkripsi dan dekripsi terhadap URL sehinggamenghasilkan tingkat keamanan yang baik. Dari pengujian dan analisa yang telah dilakukanmenunjukkan bukti bahwa algoritma Blowfish berjalan dengan baik dalam mengenkripsi

Page 11: Mencegah Exploit URL Website Sensitek STMIK Pontianak ... · mengharuskan pengelola website untuk lebih memperhatikan aspek keamanan informasi yang ... karena kriptografi memainkan

65

plaintext dan mendekripsi ciphertext. Keamanan yang dibuat oleh algoritma blowfishmenggunakan 16 kali putaran sehingga sulit ditembus.

5. SARAN

Sistem keamanan yang diterapkan pada website Sensitek sudah berhasil berjalan dan cukupbaik sesuai dengan algorimta blowfish. Namun sistem keamanan yang telah dihasilkan tersebuthanya fokus pada mengamankan URL dari attacker. Keamanan URL hanya dilakukan dengancara mengekripsi agar para attacker tidak mudah melakukan manipulasi data yang diperlihatkanpada URL. Keamanan dari aspek lain perlu dilakukan karena sebuah website memiliki celahkeamanan bukan hanya dari URL. Perlu dipertimbangkan untuk melakukan pencegahan terhadapsearangan yang memanfaatkan fitur login dan serangan dengan teknik cross site scripting.

UCAPAN TERIMA KASIH

Penulis mengucapkan terima kasih kepada Sekolah Tinggi Manajemen Informatika danKomputer (STMIK) Pontianak yang telah memberikan dukungan finansial terhadap penelitianini. Terima kasih kepada rekan-rekan dosen yang telah memberikan masukan dan dukungandalam menyelesaikan tulisan ini. Kepada para reviewer saya juga mengucapkan banyak terimakasih atas bimbingan dan arahannya sehingga tulisan ini dapat sesuai seperti apa yang diharapkan.Semoga tulisan ini dapat memberikan manfaat bagi banyak orang, saat ini maupun yang akandatang.

DAFTAR PUSTAKA

[1] N. Nikiforakis, A. Kapravelos, W. Joosen, C. Kruegel, F. Piessens & G. VignaG. (2013,May). "Cookieless monster: Exploring the ecosystem of web-based device fingerprinting",In Security and privacy (SP), 2013 IEEE symposium on IEEE, pp. 541-555, May 2013.

[2] T. Bala & Y. Kumar, “Asymmetric Algorithms and Symmetric Algorithms: A Review”,International Journal of Computer Applications (ICAET), pp. 1-4, 2015.

[3] G. Parimala, M. Sangeetha & R. AndalPriyadharsini, “Efficient Web VulnerabilityDetection Tool for Sleeping Giant-Cross Site Request Forgery”, In Journal of Physics:Conference Series, Vol. 1000, No. 1, pp. 1-10, April 2018.

[4] P. R. Kadam, “Stop Website Attack before It Attacks You–XSS and SQLi Detection”,World Journal of Technology, Vol. 2, No. 1, pp. 331-336, 2017.

[5] D. I. Mulyana, “Kajian Penerapan Encode Data Dengan Base64 Pada Pemrograman PHP”,CKI ON SPOT, Vol. 9, No. 1, pp. 47-52, Juni 2016.

[6] M. B. Bharathi, Manivasagam & M. A. Kumar, “Metrics For Performance Evaluation OfEncryption Algorithms”.IJARSE, Vol. 6, No. 3, pp. 62-72, 2017.

[7] R. R. Suryono, D. Darwis & S. I. Gunawa, “Audit Tata Kelola Teknologi InformasiMenggunakan Framework Cobit 5 (Studi Kasus: Balai Besar Perikanan Budidaya LautLampung)”, Jurnal Teknoinfo, Vol. 12, No. 1, pp. 16-22, 2018.

[8] S. I. A. Qadri & K. Pandey, “Tag based client side detection of content sniffing attackswith file encryption and file splitter technique”, International Journal of AdvancedComputer Research, Vol. 2, No. 3, pp. 227 233, 2012.

[9] Y. Pan, F. Sun, J. White, D.C. Schmidt, J. Staples & L. Krause, Detecting Web Attackswith End-to-End Deep Learning. pp. 1-14, 2018.

[10] T. Jayaletchumi, S. Moorthy, S. B. Ibrahim & M. N. R. Mahrin, “Understanding UsabilityVulnerabilities”. Advanced Science Letters, Vol. 24, No. 6, pp. 4391-4394, 2018.

[11] A. Makiou, Y. Begriche & A. Serhrouchni, “Improving Web Application Firewalls todetect advanced SQL injection attacks”. In Information Assurance and Security (IAS), 201410th International Conference on IEEE., pp. 35-40, November 2014.

Page 12: Mencegah Exploit URL Website Sensitek STMIK Pontianak ... · mengharuskan pengelola website untuk lebih memperhatikan aspek keamanan informasi yang ... karena kriptografi memainkan

ISSN: 1978-152066

[12] I. K. Bayu, M. Yamin & L. F. Aksara, “Analisa Keamanan Jaringan WLAN DenganMetode Penetration Testing (Studi Kasus: Laboratorium Sistem Informasi danProgramming Teknik Informatika UHO)”, semanTIK, Vol. 3, No.2, pp. 69-78, 2018.

[13] Yulianingsih, “Melindungi Aplikasi dari Serangan Cross Site Scripting (XSS) DenganMetode Metacharacter”, TEKNOSI, Vol. 3, No. 1, pp. 83-88, 2017.

[14] R. Dubey, A. Saxena & S. Gond, “An Innovative Data Security Techniques UsingCryptography and Steganographic Techniques”, (IJCSIT) International Journal ofComputer Science and Information Technologies, Vol. 6, No. 3, pp. 2175-2182, ISSN,0975-9646, 2015.

[15] E. Gunadhi & A. P. Nugraha, “Penerapan Kriptografi Base64 Untuk Keamanan Url(Uniform Resource Locator) Website Dari Serangan Sql Injection”, Jurnal Algoritma, Vol.13, No. 1, pp. 491-498, 2016.

[16] X. Li, L. Yu & L. Wei, 2013, “The application of hybrid encryption algorithm in softwaresecurity. In Consumer Electronics, Communications and Networks (CECNet)”, 2013 3rdInternational Conference on IEEE. pp. 669-672, November 2013.

[17] M. A. Ahmad & I. F. Al, “Protection of the texts using Base64 and MD5”, Journal ofAdvanced Computer Science and Technology Research, 2, pp. 22-34, 2013.

[18] G. Singh, “Modified Vigenere Encryption Algorithm and Its Hybrid Implementation withBase64 and AES. In Advanced Computing, Networking and Security (ADCONS)”, 20132nd International Conference on IEEE, pp. 232-237, December 2013.

[19] S. Wardoyo, Z. Imanullah & R. Fahrizal, “Enkripsi dan Dekripsi File dengan AlgoritmaBlowfish pada Perangkat Mobile Berbasis Android”, Jurnal Nasional Teknik Elektro, Vol.5, No. 1, pp. 36-44, 2016.

[20] Y. B. Awwad & M. Shkoukani, “The Affect of Genetic Algorithms on Blowfish SymmetricAlgorithm”, International Journal of Computer Science and Network Security (IJCSNS),Vol. 17. No. 3, pp. 65-72, March 2017.

[21] S. Manku & K. Vasanth, “Blowfish encryption algorithm for information security”, ARPNJournal of Engineering and Applied Sciences, Vol. 10, No. 10, pp. 4717-4719, June 2015.

[22] B. S. Ross & V. Josephraj, “Performance Enhancement of Blowfish Encryption Using RKBlowfish”, International Journal of Applied Engineering Research, Vol. 12, No. 20, pp.9236-9244, 2017.

[23] M. Narendran, B. S. Praneeth, B. S. Sumanth, M. V. V. R. Raju & S. T. V. R. Raju , “AReview on Secured Data Transfer with Multiple Clouds Using Blowfish Encryption”,Journal of Network Communications and Emerging Technologies (JNCET), Vol. 8, No. 4,pp. 18-21, Apr 2018.

[24] Y. P. Astuti, E. H. Rachmawanto & C. A. Sari, “Optimasi Enkripsi Password MenggunakanAlgoritma Blowfish”, Techno. Com, Vol. 15, No. 1, pp. 15-21, 2016.

[25] B. Basri, “Kriptografi Simetris dan Asimetris Dalam Perspektif Keamanan Data danKompleksitas Komputasi”. Jurnal Ilmu Komputer, Vol. 2, No. 2, pp. 17-23, 2018.

[26] M. Javanmard, & M. Alian, "Comparison between Agile and Traditional softwaredevelopment methodologies", Cumhuriyet Science Journal, vol. 36, no. 3, pp. 1386-1394,2015.

[27] B. Dakhare, N. N. Shinde, S. S. Salvi, A. H. Kadam, P. G. Wagh & B. E. Student,“Performance Analysis of Data Encryption Algorithms using AES BLOWFISH andSNAP”, International Journal of Engineering Science, Vol. 8, No. 3, pp. 16466-16468,2018.

[28] R. Siregar, “Performance analysis of AES-Blowfish hybrid algorithm for security of patientmedical record data”, In Journal of Physics: Conference Series, Vol. 1007, No. 1, p. 1-10,IOP Publishing, Apr 2018.