TUGAS AKHIR
Oleh:
NURAGA IRIANTO
NPM : 0734010142
J URUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN” J AWA TIMUR
SURABAYA
ABSTRAK
Sebagian besar penjelajah internet masih belum menyadari bahwa berbagai informasi bisa didapat dari internet bahkan yang sifatnya rahasia sekalipun dengan memanfaatkan berbagai media pengolah internet. Dalam hal ini,
search engine google menjadi salah satu pilihan yang tepat. Sebagian orang
tertentu dapat melakukan exploitasi informasi dengan trik tertentu memanfaatkan
search engine. Google hack adalah suatu aktivitas hacking yang menggunakan Google sebagai medianya. Aktivitas menjelajah internet menggunakan Google
dengan menerapkan metode pencarian yang tidak biasa sengaja dilakukan dalam mendapatkan informasi yang lebih rinci ataupun terlarang.
Informasi apapun akan didapat jika penanganan security suatu website buruk. Kerentanan dalam website security dapat ditemukan melalui hacking
google, teknik yang diterapkan pada mesin pencari oleh penjahat komputer,
pencuri identitas, dan bahkan teroris untuk mengungkap informasi. Semakin banyak celah security, maka semakin banyak pula informasi yang bocor dan terpapar. Umumnya celah security ini tidak tampak begitu saja sebelum tindakan
penetration terjadi. Aktifitas penetrasi terhadap suatu website akan memanfaatkan
celah yang tidak terproteksi tersebut. Salah satu tindakan yang tepat dalam mengamankan website adalah meminimalkan celah security. Penetration testing adalah solusi yang tepat dalam mengenali celah security yang ada. Berbagai celah
security yang terungkap dapat sesegera mungkin diatasi oleh pembuat website
sebagai upaya mengamankan sejumlah informasi.
Dengan adanya penetration testing dapat mengungkap kelemahan sebuah website. Hasil dari penetrasi yang dilakukan akan berupa status error pada
website. Pada status inilah kelemahan website dapat terungkap. Dengan begitu penetration testing memberikan hasil sesuai yang diharapkan saat selesai
mencoba penetrasi menggunakan extensions google chrome.
Allah Yang Maha Esa yang telah memberikan rahmat dan karunia-Nya, sehingga
penulis dapat menyelesaikan laporan Tugas Akhir ini yang berjudul
“IMPLEMENTASI GOOGLE HACK UNTUK PENETRATION TESTING
SEBAGAI EXTENSIONS GOOGLE CHROME ” tepat pada waktunya.
Tugas Akhir dengan beban 4 SKS ini disusun guna diajukan sebagai salah
satu syarat untuk menyelesaikan program Strata Satu (S1) pada program studi
Teknik Informatika, Fakultas Teknologi Industri, UPN ”VETERAN” Jawa Timur.
Dengan selesainya Tugas Akhir ini tidak terlepas dari bantuan banyak
pihak yang telah memberikan masukan-masukan dan semangat kepada penulis.
Untuk itu penulis mengucapkan terima kasih kepada:
1. Orang tua tercinta yaitu ayah dan ibu yang selalu memberikan dukungan
2. Bapak Sutiyono, MT selaku Dekan FTI
3. Ketua Jurusan Teknik Informatika Dr. Ir. Ni Ketut Sari , MT
4. Dosen Pembimbing yang penulis hormati yaitu Bapak
Achmad Junaidi,S.Kom dan Bapak Nur Cahyo Wibowo, M.Kom
5. Kampus UPN “Veteran” Jatim sebagai tempat dimana penulis menimba ilmu
6. Kawan-kawan : thank’s to all my guardian.
7. Thank’s to all best friend: Genk UNTU 07 yg selalu menemani
penulis harapkan.
Surabaya, Oktober 2011
KATA PENGANTAR ... i
1.6 Metodologi Penelitian ... 4
1.7Sistematika Penulisan ... 5
2.1.4 Kelemahan dan Keunggulan Google Chrome ... 12
2.2 Google Sebagai Search Engine ... 14
2.2.1 Definisi ... 15
2.3.1 Teknik Dasar Pencarian ... 18
2.3.2 Perintah Dalam Google Hack ... 20
2.4 Security sebuah Website ... 22
2.5 Penetrations Testing... 23
2.5.1 File yang Mengandung Password ... 23
2.5.2 Error Message ... 25
2.5.3 Username dan Password ... 27
2.6 Bahasa Pemrograman ... 28
BAB III ANALISIS DAN PERANCANGAN SISTEM ... 34
3.1Uraian Permasalahan ... 34
3.2Analisa Sistem ... 35
3.3Perancangan sistem... 36
3.3.1 Deskripsi Umum... 36
3.3.2 Kebutuhan Sistem ... 37
3.3.3 Alur Pengaksesan Aplikasi ... 38
B. Antarmuka form Target dan Opsi Penetration
Testing ... 50
C. Antarmuka Menu Help ... 51
D. Antarmuka Extensions [keseluruhan] ... 51
BAB IV IMPLEMENTASI ... 53
4.1. Lingkungan Implementasi ... 53
4.2. Implementasi Program ... 54
4.2.1. Pengkodean Query Penetration Google Hack ... 54
4.2.2. Pengkodean Toggle Radio Button ... 57
4.2.3. Pengkodean kombinasi query fungsi ... 59
4.2.4. Pengkodean menu deskripsi fungsi (help) ... 60
4.2.5. Pengkodean form target dan opsi penetration Testing ... 62
4.2.6. Konfigurasi properti extensions ... 64
4.3. Implementasi antarmuka ... 65
4.3.1. Pilihan fitur penetration testing... 65
4.3.2. Form target dan opsi penetration testing ... 66
4.3.3. Jendela bantuan (help) ... 67
4.3.4. Extensions ... 68
BAB V UJI COBA DAN EVALUASI ... 70
5.3.2. Uji coba Uninstall Extensions ... 75
5.3.3. Uji coba penetration testing dengan google hack .... 76
A. Menguji file yang mengandung password ... 76
B. Menguji error massege ... 83
C. Menguji username and password ... 88
5.3.4. Uji Coba Proses Seleksi Opsi ... 93
5.3.5. Uji Coba Menu Help ... 94
5.4. Evaluasi ... 96
BAB VI PENUTUP ... 97
6.1. Kesimpulan ... 97
6.2. Saran ... 97
1.1. Latar Belakang
Dunia internet merupakan pusat informasi yang luas dan bisa diakses
dengan media halaman web atau website yang ditampilkan dalam internet. Segala
bentuk kandungan informasi seperti berita, hiburan bahkan informasi pribadi dan
rahasia pun dapat terpapar dalam dunia internet. Namun rata-rata data yang
bersifat privasi memang tidak pernah ditampilkan secara langsung oleh penyedia
infomasi. Sebuah website akan menampilkan informasi seperlunya saja sesuai
tujuan lembaga/instansi dari yang bersangkutan.
Sejumlah informasi dalam website tidak sepenuhnya ditampilkan dengan
adanya alasan privasi. Sebagian data dan informasi sengaja dirahasiakan karena
keberadaanya hanya boleh diketahui seseorang yang memang terkait saja.
Membatasi informasi seperti itu merupakan tindak pencegahan agar informasi
yang penting tidak akan disalahgunakan. Salah satu contohnya adalah informasi
rekening nasabah dari suatu bank akan bersifat sangat rahasia dan hanya nasabah
sendiri yang diperbolehkan mengetahui nomor pin dari rekeningnya.
Terdapat pihak tertentu yang sengaja mendapatkan informasi rahasia
dengan cara paksa meskipun sebenarnya pihak tersebut tidak berhak akan
informasi tersebut. Umumnya pihak ini berusaha mencari celah keamanan dari
sebuah website. Celah ini akan dimanfaatkan mereka dalam mendapatkan
dengan berbagai alasan seperti untuk mencari keuntungan financial, merusak
nama baik sebuah perusahaan, dan berbagai macam alasan yang umunya bersifat
negatif. Celah keamanan sekecil apapun dapat dimanfaatkan dalam mendapatkan
informasi tersebut.
Keamanan merupakan hal penting bagi sebuah website. Sebuah website
dapat dikatakan aman saat informasi rahasia tidak bocor kepada pihak luar.
Keamanan sebuah website dapat terwujud dengan mempersempit celah yang ada.
Celah yang biasa menjadi incaran biasanya memiliki ciri khas tertentu yang mana
bila di exploitasi akan memunculkan seperti pesan error tertentu.
Website yang minim error juga minim celah keamanannya. Umumnya
keamanan adalah menjadi faktor penting bagi developer website. Keamanan dapat
tercipta setelah melewati serangkaian tahapan testing dalam menghilangkan bug
sebuah program.Testing menjadi hal utama dalam mendeteksi celah yang ada.
Oleh karena itu penetration testing (uji coba penyerangan) sangat diperlukan.
Dengan adanya testing maka developer website bisa mengetahui beberapa bagian
yang berpotensi diserang sehingga developer website dapat dengan segera
menentukan solusi yang sesuai.
Berdasarkan permasalahan tersebut diatas maka diperlukan alat bantu
(tools) dalam melakukan testing untuk mendeteksi celah yang ada. Tools ini harus
bisa menunjuk ke address tertentu. Dengan adanya tool ini maka pendeteksian
akan praktis dilakukan. Mengingat dalam pengaksesan website tidak lepas dari
penggunaan browser maka dari itu akan sangat tepat bilamana tool tersebut sudah
For Penetration Testing Sebagai Add Ons Google Chrome “ sengaja di angkat demi
mengatasi permasalahan diatas.
1.2. Per umu san Masalah
Dari latar belakang di atas, maka dapat di ambil permasalahan yaitu :
a. Bagaimana merancang dan membangun sistem untuk melakukan
penetration testing secara langsung pada suatu website tertentu.
b. Bagaimana cara penempatan sistem yang mampu disertakan dalam
browser.
c. Jenis-jenis penetration testing apa yang dapat dilakukan.
1.3. Batasan Masalah
Untuk lebih memfokuskan pada permasalahan, maka sistem yang akan
dibuat nantinya akan dibatasi pada :
a. Tools penetration testing hanya berjalan pada browser google chrome..
b. Hasil penetration testing berupa pesan kesalahan tertentu.
c. Add-ons (extentions) hanya digunakan dalam hal penetration testing.
d. Extensions hanya menyediakan 3 kategori penetration testing yaitu File
Password, Error Message dan Username Password
1.4. Tujuan
Tujuan penulisan skripsi ini adalah implementasi beberapa tahapan testing
1.5. Manfaat
Manfaatnya adalah bisa membantu dalam pendeteksian celah keamanan
sebuah website sehingga akan dimungkinkan untuk memantau keamanannya dari
beberapa segi tertentu.
1.6. Metodologi Penelitian
Langkah-langkah yang ditempuh untuk keperluan pembuatan tugas akhir
ini antara lain:
a. Studi Literatur
Mendapatkan beberapa informasi dan dasar teori baik dari buku, internet,
maupun sumber-sumber yang lainnya yang terkait dengan judul penelitian
ini.
b. Pengumpulan dan Analisa Data
Pengumpulan data dilakukan dengan cara: observasi, identifikasi dan
klasifikasi melalui studi literatur. Dari pengumpulan data tersebut,
dilakukan analisa data yaitu melakukan uji coba penetration testing
c. Rancang – Bangun Sistem
Pada tahap ini dilakukan penerapan konsep penetration testing ke dalam
bentuk add-ons google chrome dengan melakukan beberapa desain
interface beserta alur program yang sesuai dengan tahapan testing.
Pada tahap ini dilakukan uji coba terhadap sistem yang telah dibangun,
apakah sudah sesuai dengan yang diharapkan.
e. Dokumentasi
Pada tahap ini dilakukan pembuatan laporan mulai dari studi literatur
sampai dengan implementasi, serta penarikan kesimpulan dan saran.
1.7. Sistematika Penulisan
Penulisan serta pembahasan tugas akhir ini dibagi menjadi enam bab
dengan sistematika sebagai berikut :
BAB I : PENDAHULUAN
Bab ini berisi tentang latar belakang, rumusan masalah,
batasan masalah, tujuan dan manfaat, metode penelitian dan
sistematika penulisan.
BAB II : TINJAUAN PUSTAKA
Pada bab ini membahas tentang teori-teori dasar yang
mendukung penelitian ini.
BAB III : ANALISIS DAN PERANCANGAN SISTEM
Pada bab ini membahas mengenai analisis kebutuhan yang
diperlukan untuk mengatasi permasalahan tersebut.
BAB IV : IMPLEMENTASI
Pada bab ini berisi tentang hasil dari perancangan sistem
yang telah dibuat, yang meliputi penerapan alur dan apa
BAB V : UJI COBA DAN EVALUASI
Pada bab ini berisi penjelasan tentang hasil uji coba aplikasi
dan evaluasinya.
BAB VI : PENUTUP
2.1. Google Chrome sebagai Browser
Pada perkembangan dunia internet saat ini Google memiliki peranan yang
sangat besar. Google termasuk situs yang paling sering diakses karena
kemudahannya. Namun, tampaknya Google tidak ingin menghentikan langkahnya
tanpa didukung perlengkapan yang sesuai. Browser merupakan salah satu pilihan
Google dalam melengkapi fasilitasnya. Google chrome adalah dukungan yang
mereka berikan pada penjelajah internet saat ini.
2.1.1. Web Browser
Web browser adalah suatu perangkat lunak yang digunakan untuk
menampilkan halaman-halaman website yang berada di internet. Adapun
beberapa istilah yang sering muncul pada saat kita menggunakan web browser
adalah sebagai berikut :
a. Website adalah halaman-halaman web saling terhubung dalam suatu
website
b. Homepage adalah halaman awal ketika suatu situs dimunculkan, biasanya
juga sebagai penghubung ke website-website yang lain
c. URL adalah alamat unik pada suatu halaman web, yang digunakan web
server untuk mengirimkan halaman web tersebut ke komputer yang
d. WWW adalah kumpulan dari dokumen-dokumen elektronik yang
kemudian disebut web, tiap dokumen tersebut dinamakan web page
e. Portal adalah web yang menyediakan berbagai jenis layanan misal
pencarian, olahraga, hiburan dsb.
Terdapat beberapa macam web browser yang dapat kita pakai untuk
menampilkan halaman-halaman website. Salah satu contohnya adalah Google
Chrome.
2.1.2. Google Chrome
Google Chrome Mulai diperkenalkan sejak September 2008. Google
sengaja memberikan dukungan sebuah browser karena mereka percaya bahwa
browser modern didesain untuk menangani aktivitas kompleks saat ini,
menampilkan web dinamis, mempermudah bagi pengguna yang akhirnya dapat
membantu inovasi yang lebih besar. Google membangun Google chrome
berdasarkan pada tiga gagasan yaitu cepat, sederhana, dan aman yang mana
seperti yang telah disampaikan oleh Google di situs mereka:
“We Built Google Chrome based on three ideas: speed, simplicity and
security”
Desain chrome yang ramping dan minim, membiarkan fokus pada apa
yang sedang dilakukan saat online. Hal ini lebih baik dibandingkan dengan
tampilan layar monitor mahal yang dipenuhi dengan berbagai menu dan ikon yang
tidak perlu. Sementara itu, setiap aspek dari browser dioptimalkan untuk
kilat dan chrome dirancang berdasarkan pemikiran pada sisi keamanan. Chrome
akan mengisolasi setiap halaman pada layer keamanan secara tersendiri. Chrome
secara otomatis juga dapat memperbarui ketika terdapat pembaruan mengenai bug
program dan celah keamanan saat tersedia secara online. Yang paling penting dari
semuanya adalah chrome dibangun untuk mendukung HTML 5 dan terdapat
galeri Extentions agar dapat mempersonalisasikan dan meningkatkan pengalaman
browsing yang lebih baik. [3]
Gambar 2.1. User Inteface Google Chrome
Akhirnya, seluruh gagasan diatas menjadi landasan oleh Google dalam
membangun Google Chrome. Sebuah Browser baru yang memfokuskan pada
kecepatan, kesederhanaan dan keamanan. sebuah browser dengan nama Google
chrome yang bisa dengan mudah dikenali saat menemui tampilan user interface
seperti pada Gambar 2.1. Berdasarkan Gambar tersebut tampak bahwa Google
2.1.3. Extensions
Extensions adalah programs kecil dari sebuah perangkat lunak yang dapat
memodifikasi dan meningkatkan fungsionalitas dari sebuah browser yang mana
dalam hal ini adalah Google chrome browser. Pengguna bisa membuat dan
menulis extensions chrome dengan menggunakan beberapa teknologi web seperti
HTML, JavaScript, dan CSS. Pengguna bisa menggunakan sistem tambahan
(extensions) untuk membangun aplikasi kemasan (package apps), semacam
aplikasi yang bisa di download dan aplikasi web yang bisa di install.
Berdasarkan sudut pandang pengguna, extensions dan packages apps
adalah sangat berbeda karena keduanya memiliki tampilan user interface yang
sangat berbeda. Extensions memiliki sedikit atau bahkan tidak ada tampilan user
interface sama sekali. Salah satu contoh tampilan dari extension Google chrome
adalah seperti tampak sebuah ikon pada menubar Google chrome seperti pada
Gambar 2.2 ini yang menyediakan UI untuk Gmail extension.
Gambar 2.2. UI Extension Google Chrome pada Menubar
Aplikasi kemasan atau yang biasa dikenal package Apps, disisi lain terlihat
dan terasa seperti aplikasi web biasa dengan desain layar besar dan kaya user
interface. Contoh nyata yang sering di temui dalam penggunaan package
application adalah seperti saat menjalankan game puzzle dalam sebuah jendela
Keduanya yaitu extensions dan packages apps memiliki sejumlah file yang
keseluruhan akan dikemas ke sebuah file tunggal sehingga pengguna dapat
melakukan download dan install. Hal ini berarti bahwa extentions dan packages
apps tidak seperti aplikasi web biasa. Extensions dan package apps tidak perlu
bergantung pada konten dari sebuah web.
Pengguna dapat mendistribusikan extensions ataupun packaged apps
dengan menggunakan Chrome Developer Dashboard untuk mempublikasikan ke
chrome web store yang mana merupakan tempat pusat download dan instalasi
extensions Google chrome. Selain itu package apps ditandai dengan format .crx
yang mana ini juga bisa digunakan sebagai bentuk kemasan dari sebuah
extensions Google chrome meskipun package apps dan extensions sedikit
berbeda.
Google sebagai pengembang utama Google Chrome mengijinkan pihak
luar ikut berpartisipasi dalam mengembangkan produk mereka. Google Chrome
sendiri telah dikembangkan oleh Google dengan fitur standar yang cukup
memadai bagi pengguna. Extensions merupakan fitur yang cukup membanggakan
dari sebuah browser layaknya Google chrome. Dengan keikutsertaan pihak luar
mengembangkan extensions Google chrome maka akan membantu perkembangan
Google chrome dari segi fasilitas dan fungsionalitasnya. [1]
Terdapat ciri khas mendasar dalam mengembangkan extensions Google
chrome jika ditinjau dari segi kandungan file yang membentuknya, antara lain
• Sebuah manifest file yang berisi berbagai pengaturan dan
2.1.4. Kelemahan dan Keunggulan Google Chr ome
Kelemahan browser chr ome :
• PRIVASI : Google menyimpan 2% interpretation pencarian pengguna,
lengkap dengan alamat IP-a. Walaupun dalam beberapa waktu tertentu
interpretation ini akan dianonimkan. Ini artinya Google bisa saja tahu
“siapa mencari apa dan dimana”
• LISENSI : Google sempat mencantumkan pada Terms of Service mereka,
bahwa semua muatan dari pengguna yang hak ciptanya dimiliki oleh
pengguna akan diserahkan haknya pada Google. Tapi indicate ini telah
• CELAH KEAMANAN : Beberapa pakar confidence menemukan adanya
lubang kecil atau bugs pada chrome. Sehingga ketika membuka suatu
halaman website akan membuat browser ini menjadi crash. Lalu Chrome
juga memiliki underline download Otomatis yang dikhawatirkan akan
disalah gunakan oleh Hack er
• BAHASA : Pada chrome ketika pengguna memilih untuk menggunakan
dalam bahasa Indonesia maka akan terdapat beberapa kejanggalan dalam
bahasanya. [14]
Kelebihan br owser chr ome :
• TAMPILAN : Pada Interface dari Chrome terlihat bahwa Google ingin
para penggunanya lebih fokus pada web dan melupakan browser yang
digunakan. Ini artinya Google Chrome memilih tampilan yang tidak
mengusik dan nyaman ketika sedang digunakan
• MODUS PENYAMARAN : Pada modus ini memungkinkan para
penggunanya dapat mengakses website tanpa meninggalkan jejak.
Sehingga cocok bagi mereka yang menginginkan privasi secara lebih.
• APLIKASI WEB : Google memberikan opsi “Make Application
Shortcut” . Dengan underline ini sebuah aplikasi web seperti GMAIL atau
Google Teader dapat dijalankan lewat shortcut pada Desktop atau Start
Menu. Sehingga kelihatan seperti sebuah aplikasi lokal
• PENGELOLAAN MEMORY : Pada setiap TAB yang dibuka di
pada salah satu tab tidak akan meyebabkan seluruh browser error. (ini
kekurangan yang terdapat pada FireFox dan browser lainnya)
• PENCARIAN : Chrome memiliki fungsi pencarian yang sangat baik.
Contohnya, chrome dapat mendeteksi ketika pengguna pernah melakukan
pencarian di suatu website dan memasukkan website tersebut dalam daftar
penyedia pencarian.
• ANTI PENIPUAN : Chrome menyediakan kemampuan menebalkan
nama domain sebuah website. Contohnya ada sebuah website penipuan
beralamatkan ibank.klikbca.d60pc.com, maka d60pc.com akan ditebalkan
sehingga akan diharapkan para pengguna sadar bawah itu bukan situs atau
website resmi KlikBCA
• EXTENSIONS : Chrome dapat memperkaya fitur yang dimilikinya
dengan beberapa tambahan berupa extensions. Extensions ini akan
meningkatkan kemampuan Google Chrome dari segi fungsionalitas dan
personalisasi. Dengan begitu sebagai pengguna tidak perlu khawatir akan
kekurangan fasilitas. [2]
2.2. Google sebagai Sear ch Engine
Menjelajahi internet seperti sudah menjadi sebuah kebutuhan pokok
masyarakat modern saat ini. Apalagi menenlusuri web menjadi sangat mudah
bahkan orang awam sekalipun berkat adanya search engine, Google contohnya.
Hampir seluruh penduduk bumi yang mengakses internet mengenal Google.
memanjakan para penjelajah internet. Google saat ini adalah sebagai search
engine yang paling digemari dan populer.
2.2.1. Definisi
Mesin pencari adalah program komputer yang dirancang untuk melakukan
pencarian atas berkas-berkas yang tersimpan dalam layanan www, ftp, publikasi
milis, ataupun news group dalam sebuah ataupun sejumlah komputer peladen
dalam suatu jaringan. Hasil pencarian umumnya ditampilkan dalam bentuk daftar
yang seringkali diurutkan menurut tingkat akurasi ataupun rasio pengunjung atas
suatu berkas yang disebut sebagai hits. Informasi yang menjadi target pencarian
bisa terdapat dalam berbagai macam jenis berkas seperti halaman situs web,
Gambar, ataupun jenis-jenis berkas lainnya. Beberapa mesin pencari juga
diketahui melakukan pengumpulan informasi atas data yang tersimpan dalam
suatu basisdata ataupun direktori web.
Sebagian besar mesin pencari dijalankan oleh perusahaan swasta yang
menggunakan algoritma kepemilikan dan basisdata tertutup, diantaranya yang
paling populer adalah Google (MSN Search dan Yahoo!). Telah ada beberapa
upaya menciptakan mesin pencari dengan sumber terbuka (open source),
contohnya adalah Htdig, Nutch, Egothor dan OpenFTS. [5]
2.2.2. Metode Pencar ian bagi Penjelajah Inter net
Mesin pencarian layaknya Google memiliki metode pencarian yang
memiliki metode pencarian yang berbeda-beda. Pada Google metode pencarian
secara umum terdapat beberapa pilihan. Pilihan umum yang didapat para
penjelajah internet antara lain:
A. Standar
Setiap kali seseoarang mengakses internet mereka akan segera mengakses
mesin pencari jika masih belum secara tepat mengetahui alamat website yang
ingin dituju. Biasanya mereka akan segera membuka Google dan mencari apa
yang mereka butuhkan. Dengan bermodalkan kata kunci yang diketik pada kotak
pencarian Google kemudian menekan tombol penelusuran maka sejumlah hasil
berupa daftar indeks pencarian langsung muncul. Inilah fitur standar Google yang
sering digunakan. Cukup dengan sebuah kata kunci maka pengguna bisa
membiarkan Google melakukannya.
B. Penelusur an lanjutan
Terkadang bagi beberapa penjelajah internet masih merasa belum cukup
puas dengan hasil yang didapat dari pencarian Google yang biasa. Mereka akan
segera mencari cara yang lebih cocok demi mendapatkan hasil yang memuaskan.
Dalam hal ini Google sepertinya telah memahami kebutuhan para penjelajah
internet dengan memberikan alternative pencarian yang lebih khusus. Alternatif
Gambar 2.3. Penelusuran Lanjutan pada Google
Penelusuran lanjutan akan menyaring hasil pencarian yang lebih
menyempit lagi. Dengan penelusuran lanjutan ini maka Google akan menerapkan
beberapa Query pencarian khusus sehingga didapat hasil yang lebih sempit.
Penjelajah internet dapat mempersempit pencarian dengan beberapa kata ataupun
frase kata tertentu, pengecualian terhadap kata tertentu, jumlah hasil perhalaman,
bahasa tertentu, menunjuk website secara langsung serta dapat menentukan
tanggal, hak, wilayah dan lain-lain. Semuanya akan terangkum menjadi satu saat
pengguna menekan tombol penelusuran. [2]
2.3. Google Hack
Google hack bukan berarti melakukan hacking terhadap situs Google.
Namun, dengan menggunakan Google sebagai media maka aktifitas hacking dapat
Google hack pada umumnya seperti melakukan pencarian tetapi dengan
menampilkan sejumlah informasi yang sebenarnya tidak diketahui oleh umum..
Berbagai teknik dapat digunakan dalam memanfaatkan mesin pencari Google ini
sebagai penetrasi atau penyerangan terhadap keamanan website. Metode dalam
memanfaatkan Google sebagai aktifitas hacking ini dikenal dengan Google hack.
[7]
2.3.1. Tek nik dasar Pencar ian
Pada kebanyakan orang tidak terlalu memperhatikan apa yang ada dalam
URL di address bar dalam browser saat menjelajahi sebuah situs hingga ke situs
berikutnya. Kebanyakan pula penguna cenderung terbiasa seperti itu sambil
melakukan pencarian dengan Google. Ada yang perlu pengguna ketahui,
bagaimanapun bahwa query Google yang terbentuk pada URL mulanya berasal
dari apa yang tulis pada kotak pencarian Google. Jika pengguna bisa
memanfaatkan apa yang ada dalam URL Google dengan dapat langsung
menuliskannya dalam pencarian Google maka bukan tidak mungkin bisa didapat
hasil yang lebih efisien. Beberapa hal mendasar dalam metode Google hack yang
perlu diperhatikan antara lain:
• Google tidak "case sensitive", Keyword: linux = LINUX = LiNuX
Akan menghasilkan hal yang sama
• AND: Secara default Google menggunakan keyword and.keyword:
menjadi hacker hasilnya pencarian akan mengandung kata "menjadi"
• OR: Digunakan untuk menemukan halaman yang setidaknya berisi
anda bisa menambahkan "+" didepan keyword tersebut.
Keyword: hacker how ==> Kata "how" akan diabaikan
Keyword: hacker +how ==> Kata "how" akan diikutsertakan
• -: Tanda minus "-" bisa digunakan untuk mengecualikan kata-kata tertentu dalam pencarian. Misal pengguna ingin mencari kata "linus
tanpa linux", pengguna bisa menggunakan "linus -linux"
• *: Google tidak mendukung pencarian * sebagai pengganti huruf.
Misalkan kita ingin mencari dengan kata depan menja* maka Google
tidak mencari kata "menjamu", "menjadi", "menjalar", Google akan
menghasilkan pencarian hanya yang mengandung kata "menja". Tetapi
Google mendukung penggunaan * dalam pencarian kalimat misalkan
"menjadi * hacker" maka dapat menghasilkan "menjadi seorang
hacker", "menjadi white hacker", dll.
• "": Dapat digunakan untuk mencari kata yg lengkap. Misal pada query "menjadi hacker" maka hasilnya, pencarian akan mengandung kata
• ?: Dapat digunakan untuk mencari pada direktori Google. Misal: ?intitle:index.of? mp3[8]
2.3.2. Per intah dalam Google Hack
Berikut ini adalah special command yang bisa digunakan dalam
melakukan searching memanfaatkan Google yang mana beberapa command dapat
juga digunakan sebagai testing terhadap celah keamaman tertentu.
[Index of: ], index of bukan merupakan sebuah perintah tetapi lebih tepat
sebagai opsi atau pilihan lain dalam menyaring pencarian yang memang
sebenarnya tidak disediakan oleh Google tapi sangat berguna. Jika pengguna
menggunakan “index of” frase maka pengguna akan menemukan halaman daftar
direktori atau rincian dari folder pada server berupa halaman web. Salah satu
contohnya adalah seperti “index of” admin atau index.of.admin. Yang mana
dengan fase perintah seperti itu akan menampilkan hasil pencarian yang banyak
sekali berupa daftar direktori dari folder admin.
[Intitle: ], syntax ini memungkinkan pengguna melakukan search
berdasarkan title atau judul dari halaman web. Google akan membatasi dan
menampilkan hasil sesuai dengan permintaan pengguna. Misalnya pengguna
masukkan ”intitle: login”. Maka hasil pencarian akan menampilkan semua
halaman web dengan judul atau title login.
[Inur l: ], syntax ini untuk membantu pengguna membatasi pencarian atau
searching pengguna pada situs tertentu saja. Misalnya kalau pengguna ketik
akan dilakukan terhadap situs www.indowebster.com saja dan akan memberikan
hasil semua halaman yang mengandung kata ’passwd’.
[Site: ], syntax site: ini digunakan untuk membatasi pencarian pada site
atau domain tertentu. Misalnya ”hacking site:co.id” akan melakukan pencarian
dengan keyword ’hacking’ pada halaman-halaman yang terdapat di link dari
domain co.id
[Filetype: ], syntax filetype: ini sangat membantu pengguna untuk
membatasi pencarian terhadap file dengan ekstensi tertentu saja misalnya file
dengan ekstensi .doc, .pdf, .xls. Misalnya pencarian dengan semua link yang
berisikan file dengan ekstensi .doc di domain gov.
[Link : ], syntax link: ini akan menampilkan halaman-halaman web yang
mempunyai link ke situs tertentu. Misalnya ”link:www.abc.com” akan
menghasilkan semua halaman situs yang mempunyai link ke www.abc.com.
[Related: ], related: artinya yang berhubungan. Jadi syntax related: ini
akan menampilkan hasil yang mirip (similar) dengan halaman web yang
dispesifikasikan. Misalnya “related: www.blackhat.com” akan menampilkan list
halaman –halaman yang mirip dengan blackhat.com
[Intext: ], syntax intext: ini melakukan pencarian terhadap kata-kata
tertentu sesuai dengan keyword pada website atau situs yang dituju. Syntax ini
akan mengabaikan URL serta judul dari halaman web. Misalnya ”intext:exploits”
akan menghasilkan link ke halaman-halaman web yang mengandung kata
2.4. Secur ity Sebuah Website
Perbedaan antara kerentanan aplikasi web dan kerentanan suatu server
layak menjadi bahan diskusi lebih lanjut. Ketika seseorang berbicara kerentanan
(lebih khususnya penilaian pada keamanan), kebanyakan industri perangkat lunak
menunjukkan beberapa kerentanan yang telah dikenal secara homogen yang
berpengaruh setiap menginstal dari software tertentu. Dengan begitu,
memungkinkan penanganan khusus dalam jenis kerentanan yang ada. Ketika
masalah keamanan mulai diumumkan oleh developer, setiap orang menjadi
waspada akan kerentanan pada saat yang sama. Tidak semua kerentanan dapat
langsung segera diumumkan pada pihak yang bersangkutan.
Setiap orang dipengaruhi oleh suatu kerentanan website dengan cara yang
sama sehingga memungkinkan sebuah solusi tunggal untuk diterapkan. Biasanya
berupa sebuah patch perangkat lunak dari developer perangkat lunak itu sendiri.
Kelemahan sebuah keamanan identik dapat dibuat dan diterapkan pada sejumlah
scanner, firewall, perangkat pendeteksi intruksi program. [9]
Berbeda dengan keamanan pada jaringan ataupun sistem operasi,
kebanyakan pada aplikasi web tingkat keamanannya masih belum diketahui secara
pasti. Suatu kerentanan hampir selalu ada dalam aplikasi web yang hampir selalu
ditulis secara custom maka keamanannya akan menjadi unik untuk aplikasi web
tersebut. Tentu saja teknik atau metodologi yang mungkin dikenal seperti SQL
injection dapat saja terjadi, tetapi tidak setiap aplikasi web akan rentan dengan
teknik semacam itu, bahkan sesungguhnya aplikasi web akan rentan didaerah unik
hal yang paling perlu disoroti karena terdapat keunikan dalam setiap keamanan
yang ada. [18]
2.5. Penetr ation Testing
Suatu aplikasi web yang terpublikasi secara online masih perlu dilakukan
testing. Ini dilakukan agar yakin dengan system yang dibuat. Biasanya dilakukan
testing dengan tool khusus atau cara yang biasa digunakan oleh penyerang.
Beberapa testing yang disoroti disini adalah serangan yang berasal dari aktifitas
hacking dengan media Google. Melakukan testing semacam ini diharapkan akan
terlihat lubang-lubang atau celah yang ada sebelum ditemukan orang lain.
Memang tidak ada jaminan 100% bahwa system baik, tetapi sebagai seorang
admin hanya bisa membuat hacker akan lebih lama untuk masuk, lebih susah, dan
walaupun berhasil masuk hacker tidak dapat mendapatkan semua resource yang
ada.
2.5.1. File Ya ng Mengandung Passwor d
Melakukan teknik penetrasi dengan google media pencariannya, yang
mana mencari file di dalamnya mengandung text,string password. Berikut penulis
jelaskan sub kategori dari File Yang Mengandung Password beserta contoh dan
sumber referensi :
1. filetype:sql " MySQL dump" (pass|passwor d|passwd |pwd)
Melakukan teknik penetrasi dengan mencari file sql database MYSQL
Contoh :
INSERT INTO `user` (`id`,`activ`,`city`,`country`,`email`,`fax`,
`firstname`,`language`,`lastlogin`,`lastlogout`,`logincounter`,`loginna
Terlihat informasi sebagai berikut. username : admin, password : test.
Sehingga user yang kurang bertanggung jawab dapat menggunakan
login tersebut
Sumber Refer ensi :
login-managment-system.googlecode.com/files/lms20090712.sql
filetype:sql " Postgr eSQL database dump" (pass|passwor d|
passwd|pwd)
Melakukan teknik penetrasi dengan mencari file sql database
PostgreSQL yang mengandung text/string pass,password,passwd,pwd.
Contoh :
INSERT INTO users (user_id, "password", firstname, lastname,
phone, mail, department, custom_t1, custom_t2, custom_t3,
cookie_key, cookie_date, enabled, change_password, delay_number,
'ef9689be896dacd901cae4f13593e90d', 'Charlotte', 'CHARLES', '+33
1 47 24 51', 'info@maarch.org', '', NULL, NULL, NULL,
'2b67f8017119d7de32f300be3e97ccb4', '2008-09-10 15:09:23', 'Y',
'N', NULL, 'OK','standard');
Terlihat informasi sebagai berikut. user : ccharles password :
ef9689be896dacd901cae4f13593e90d (password terenkripsi).
Sehingga user yang kurang bertanggung jawab dapat menggunakan
login tersebut
Sumber Refer ensi :
http://svn.maarch.org/core/trunk/data.sql
2.5.2. Er ror Message
Melakukan teknik penetrasi dengan google media pencariannya, yang
mana mencari pesan kesalahan di suatu website. Berikut penulis jelaskan sub
kategori dari Error Message beserta contoh dan sumber referensi :
1. intitle:" Apache Tomcat" " Er ror Repor t"
Melakukan teknik penetrasi yang menampilkan pesan kesalahan
apache tomcat, informasi kesalahan yang didapatkan bisa berbagai
macam tergantung jenis kesalahan.
Contoh :
note The full stack trace of the root cause is available in the Apache
Semua pesan kesalahan tersimpan di access_log, kemudian dapat
mengeksplore .htpasswd dari semua informasi di access_log. User
yang kurang bertanggung jawab dapat merubah setting .htpasswd
sehingga bisa masuk ke webserver.
Sumber Refer ensi :
http://demonstrations.wolfram.com/topic.html?Computers
" War ning:" " failed to open str ea m: HTTP r equest failed" " on
line"
Melakukan teknik penetrasi yang menampilkan pesan kesalahan failed
to open stream, HTTP request failed, dan on line
Contoh :
Warning: getimagesize(http://www.mishkanministries.org/images/f)
[function.getimagesize]: failed to open stream: HTTP request failed!
HTTP/1.1 404 Not Found in /home/vg010web05/39/50/1015039
/web/lib/src/phpCmds.php on line 139
Didapat kesalahan di salah satu file, dari kesalahan tersebut bagi user
yang kurang bertanggung jawab dapat melakukan trace index file,
masuk ke .htaccess.
Sumber Refer ensi :
2.5.3. User name Dan Passwor d
Melakukan teknik penetrasi dengan google media pencariannya, yang
mana mencari file di dalamnya mengandung text,string username dan password.
Berikut penulis jelaskan sub kategori dari Username Dan Password beserta
contoh dan sumber referensi :
1. intitle:" Index of" .mysql_histor y
Melakukan teknik penetrasi yang menampilkan berupa list dan
terdapat file mysql_history dimana didalamnya terdapat username dan
password.
Sehingga user yang kurang bertanggung jawab dapat menggunakan
login tersebut untuk bisa masuk ke mysql server
Sumber Refer ensi :
http://195.194.24.18/~gsedek/pykota/pykota_new/pykota/contributed/
2. intitle:index.of people.lst
Melakukan teknik penetrasi yang menampilkan berupa list dan
terdapat file people.lst dimana didalamnya terdapat username dan
password.
MMGcKA7nNS6eE (Password Terenkripsi). Sehingga user yang
kurang bertanggung jawab dapat menggunakan login tersebut untuk
bisa masuk ke cpanel webserver
Sumber Refer ensi :
http://www.squaredancing.com/cgi-local/people.lst
2.6. Bahasa Pemr ograman
Dalam membentuk tool penetration testing berupa extensions Google
chrome terdapat beberapa bahasa pemrograman yang berperan penting. Bahasa
pemrograman merupakan bahasa yang digunakan dalam mengembangkan sebuah
web. Namun, dalam hal ini bahasa web tersebut ternyata juga bisa digunakan
sebagai tool testing. Dengan menggunakan beberapa bahasa seperti HTML,
2.6.1. HTML
HTML berupa kode-kode tag yang menginstruksikan penjelajah web
untuk menghasilkan tampilan sesuai dengan yang diinginkan. Sebuah file yang
merupakan file HTML dapat dibuka dengan menggunakan penjelajah web seperti
Mozilla Firefox atau Google Chrome. HTML juga dapat dikenali oleh aplikasi
pembuka email ataupun dari PDA dan perangkat lunak lain yang memiliki
kemampuan browser.
HTML dokumen tersebut mirip dengan dokumen tulisan biasa, hanya
dalam dokumen ini sebuah tulisan bisa memuat instruksi yang ditandai dengan
kode atau lebih dikenal dengan TAG tertentu. Sebagai contoh jika ingin membuat
tulisan ditampilkan menjadi tebal seperti: TAMPIL TEBAL, maka penulisannya
dilakukan dengan cara: <b>TAMPIL TEBAL</b>. Tanda <b> digunakan untuk
mengaktifkan instruksi cetak tebal, diikuti oleh tulisan yang ingin ditebalkan, dan
diakhiri dengan tanda </b> untuk menonaktifkan cetak tebal tersebut. HTML
lebih menekankan pada penggambaran komponen-komponen struktur dan
formating di dalam halaman web dari pada menentukan penampilannya.
Sedangkan penjelajah web digunakan untuk menginterpretasikan susunan
halaman ke gaya built-in penjelajah web dengan menggunakan jenis tulisan, tab,
warna, garis, dan perataan text yang dikehendaki ke komputer yang menampilkan
2.6.2. Javascript
Javascript adalah bahasa skrip yang populer di internet dan dapat bekerja
di sebagian besar penjelajah web populer seperti Internet Explorer (IE), Mozilla
Firefox, Netscape dan Opera. Kode Javascript dapat disisipkan dalam halaman
web menggunakan tag script.
Javascript ini menjadi bahasa inti dalam add ons (extensions) Google
chrome. Dengan menggunakan bahasa ini maka segala proses program extension
chome dapat ditangani. Segala hal proses yang menyangkut perhitungan, iterasi,
percabangan bisa diatasi dengan membuat beberapa fungsi-fungis khusus dalam
bahasa javascript.
Kode Javascript biasanya dituliskan dalam bentuk fungsi yang ditaruh di
tag <head> yang dibuka dengan tag.
Kode Javascript juga bisa diletakkan di file tersendiri yang berekstensi. js
(singkatan dari Javascript). Untuk memanggil kode Javascript yang terdapat di file
sendiri, di bagian awal <head> harus ditentukan dahulu nama file .js yang
dimaksud menggunakan contoh kode seperti berikut:
2.6.3. CSS
CSS (Cascading Style Sheets) digunakan dalam kode HTML (Hypertext
Markup Language) untuk menciptakan suatu kumpulan Style yang terkadang
dapat digunakan untuk memperluas kemampuan HTML (Hypertext Markup
Language). CSS (Cascading Style Sheet) adalah bahasa yang digunakan untuk
format tampilan HTML (Hypertext Markup Language), bahasa yang
direkomendasikan W3C (World Wide Web Consortium) untuk melukiskan gaya
seperti huruf, warna, ukuran, jarak, posisi pada dokumen-dokumen web. CSS
(Cascading Style Sheet) sangat membantu para web designer untuk memperindah
halaman web template.
CSS (Cascading Style Sheet) sama fungsinya dengan cara format HTML
(Hypertext Markup Language) biasa, namun CSS (Cascading Style Sheet)
mempunyai lebih banyak elemen yang bisa kita atur.
Tag table punya elemen border, CSS (Cascading Style Sheet) juga punya
format untuk border namun lebih detail lagi seperti : border-top, border-right,
border-bottom, border-left. artinya lebih kompleks karena memungkinkan kita
membuat sisi border yang berbeda. [12]
2.6.4. Jquery
Jquery adalah pustaka Javascript kecil bersumber terbuka yang
menekankan pada interaksi antara Javascript dan HTML. Pustaka ini dirilis pada
Lisensi MIT dan GPL. Dengan adanya pustaka Jquery ini bermanfaat dalam
membuat tampilan GUI yang interaktif.
Sebagai Pustaka javascript Jquery mempunyai semboyan “write less, do
more”. Jquery dirancang untuk memperingkas kode-kode javascript. Jquery
adalah javascript library yang cepat dan ringan untuk menangani dokumen
HTML, menangani event, membuat animasi dan interakasi ajax. Jquery dirancang
untuk mengubah cara penulisan javascript.
Library Jquery mempunyai kemampuan :
• Kemudahan mengakses elemen-elemen HTML
Selain itu, jika sebuah bahasa web dengan menggunakan javascript terlalu
panjang maka jquery menjadi solusi yang tepat. [11]
2.6.5. JSON
JSON (dilafalkan "Jason"), singkatan dari JavaScript Object Notation
(bahasa Indonesia: notasi objek JavaScript), adalah suatu format ringkas
digunakan untuk merepresentasikan struktur data sederhana dan larik asosiatif
(disebut objek). Format JSON sering digunakan untuk mentransmisikan data
terstruktur melalui suatu koneksi jaringan pada suatu proses yang disebut
serialisasi. Aplikasi utamanya adalah pada pemrograman aplikasi web AJAX
dengan berperan sebagai alternatif terhadap penggunaan tradisional format XML.
Format JSON ini juga digunakan dalam extension Google chrome. Pada
Google chorme tampak JSON digunakan dengan berupa file manifest.json. file
manifest dalam extensions Google chrome sangat bermanfaat dalam menyimpan
3.1. Ur aian Per masalahan
Extention pada google chrome dapat digunakan dalam membantu
meningkatkan keamanan website. Hal ini dapat dipenuhi jika extension
menerapkan penetration testing sebagai prosesnya. Pada extensions akan
disertakan berbagai jenis penetrasi yang paling sering dilakukan dalam tindakan
penyerangan keaamanan website. Saat melakukan penetrasi dengan extensions ini
tidak bersifat merusak. Extensions akan bermanfaat dalam mengungkap setiap
celah yang ada agar ke depannya ditemukan solusi yang tepat terhadap celah
tersebut.
Mengingat Sebuah website merupakan salah satu sistem yang termasuk
rentan dari sisi keamanan. Banyaknya pengunjung dapat memberikan dampak
yang negatif jika dilihat dari sisi lain.Terkadang terdapat pengunjung yang
memanfaatkan celah keamanan pada website dan melakukan penetrasi. Hal ini
akan menjadi masalah serius jika website belum aman.
Penetration testing dilakukan langsung dari extension google chrome.
Beberapa hal yang perlu dipertimbangkan dalam hal penetration adalah tidak
bersifat merusak tapi hanya mendeteksi. Dalam hal ini perlu dibuat proses
penetrasi yang mampu mengungkap kesalahan sistem.
Penggunaan extension akan memberikan hal yang praktis dalam melakukan
fokus terhadap proses dalam website. Oleh karena itu extension akan menjadi
praktis dengan dukungan browser yang tepat tersebut. Tahapan penetrasi dapat
lebih terfokus dengan browser semacam itu.
3.2. Analisa Sistem
Berdasarkan uraian permasalahan diatas maka dapat diambil kesimpulan
bahwa keamanan website dapat diperkuat dengan beberapa tahapan testing.
Testing yang dilakukan adalah dari segi penetrasi keamanan sistem.
Umumnya penetrasi keamanan dilakukan satu persatu secara manual. Hal
ini terkadang membutuhkan waktu lama jika tahapan testing begitu banyak. Selain
itu dilain pihak, aktifitas secara manual ini menjadi tidak praktis dikarenakan saat
mencoba mengulangi lagi tahapan penetrasi testing yang sama terus menerus pada
web yang berbeda. Untuk itulah harus terdapat alat Bantu (tools) yang praktis.
Dalam hal ini solusi yang tepat melekatkan alat Bantu ini langsung pada aplikasi
penelusur website yaitu browser.
Menggunakan extension google chrome sebagai penetration testing.
Dengan extension ini dapat diketahui celah-celah keamanan yang ada dengan
ditandai error atau kesalahan pada sistem website. Tool (extension) ini akan
dirancang berdasarkan uraian permasalahan dan analisa sistem. Extensions akan
terdapat beberapa kategori penetrasi yang mana memuat berbagai penetrasi
testing. Extension akan melakukan penetrasi dengan media search engine google.
Memanfaatkan query google hack yang akan ditanam langsung pada sistem
memunculkan daftar web yang memiliki celah kemaanan dengan ditandai pesan
error program. Selain itu, juga bisa ditujukan pada satu website atau acak. Saat
diketahui terdapat error pada website maka dapat dikatakan penetrasi testing
membuahkan hasil. Dengan begitu dapat diketahui celah keamanannya.
3.3. Per ancangan Sistem
Pada tahap ini akan dilakukan perencaan dan perancangan model
mengenai aplikasi yang akan dibuat. Beberapa tahapan perancangan akan
dipaparkan satu persatu dalam setiap point pembahasan berikut ini.
3.3.1. Deskr ipsi Umum
Keamanan dapat lebih diperkuat setelah melakukan tahapan testing.
Sejumlah aktiftitas testing terkadang terdapat kemiripan satu sama lain. Biasanya
adalah mengenai berbagai jenis serangan yang sering terjadi seperti error pada
sistem, informasi login akun, file password dan semacamnya. Melihat beberapa
kemiripan dalam aktifitas testing maka sebenarnya aktifitas ini dapat diwakili ke
dalam aplikasi dan menjadi layaknya alat bantu agar melakukan pengujian dengan
praktis.
Penetrasi testing dapat dilakukan melalui google chrome. Dalam hal ini
berarti terjadi penambahan fitur pada browser google chrome. Aktifitas testing
dapat disertakan dan dilakukan melalui extensions google chrome. Pengguna
cukup memasang extension pada fitur penambahan ekstensi google chrome.
grab akun (username and password), memantau error message yang mana
masing-masing dari pengujian ini terdapat sub pengujian berupa opsi-opsi
penetrasi. Semua hal tersebut dapat dilakukan secara langsung dari dalam
extension. Selain itu, proses penetrasi ini dibantu menggunakan media search
engine google dan dengan kata lain memerlukan query khusus dalam melancarkan
aktifitas penetrasi. Namun, pengguna tidak perlu repot dalam memahami atau
melakukan query google hack ini secara manual karena semua sudah tertanam
pada extension. Pengguna cukup melihat apa yang dihasilkan dari pilihan yang
dipilih pada extension google chrome.
3.3.2. Kebutuhan Sistem
Sebuah aplikasi membutuhkan beberapa hal agar sistemnya dapat
benar-benar bekerja sebagaimana semestinya. Dalam menjalankan sebuah extension
google chrome maka pengguna minimal telah memenuhi beberapa persyaratan
standar yang dibutuhkan. Mengingat aplikasi ini berupa extension google chrome
maka yang dibutuhkan system agar dapat digunakan oleh pengguna antara lain:
- Browser google chrome yang telah terpasang pada system operasi
- Menggunakan system operasi yang mendukung browser google chorme
- Akses internet yang stabil
Pada perancangan tahap ini adalah berguna dalam mendifinisikan dan
memahami beberapa aktifitas yang nantinya akan dilakukan pengguna saat
mengakses aplikasi ini. Dalam menggunakan aplikasi sebenarnya terdapat urutan
langkah dasar yang sering dilakukan oleh pengguna. Urutan aktifitas ini akan
menjadi landasan sebuah aplikasi yang dibentuk. Hal ini dapat dilihat pada alur
pengaksesan aplikasi yang direncanakan dalam mendukung aktifitas pengguna
saat menggunakan aplikasi. Alur pengaksesan aplikasi dapat diperhatikan pada
Gambar 3.1
Sebuah extension google chrome selalu diakses berdampingan dengan
browser yang digunakan. Sesuai Gambar 3.1 maka pada mulanya pengguna akan
membuka browser terlebih dahulu hingga muncul sebuah jendela google chrome.
Extension pun bisa segera dijalankan dari dalam browser google chrome.
Pengguna yang menjalankan extension akan mendapatkan tampilan antarmuka
berupa form dan opsi penetration. Pada bagian ini pengguna sudah memasuki
Gambar 3.1. Flowchart Alur Pengaksesan Aplikasi.
Penetration testing dapat dilakukan dengan menentukan jenis penetrasi.
Pengguna akan memilih jenis pengujian penetrasi berdasarkan kategori.
Selanjutnya, pengguna dapat melakukan testing secara sekaligus ataupun hanya
satu pilihan opsi testing saja. Namun, jika tidak ada satu opsi pun yang dipilih
lainnya adalah pengguna dapat melakukan testing dengan menunjuk langsung
sebuah website ataupun tidak. Saat sistem mendapatkan target penetrasi dari
pengguna maka pengujian akan terfokus pada target. Namun, jika tanpa target
maka target akan dicari secara acak tergantung dari proses search engine google.
Saat target dan opsi telah ditentukan maka aplikasi akan memulai penetrasi.
Seluruh yang telah ditentukan pengguna dalam aplikasi extension akan memicu
sistem mengeksekusi perintah penetrasi. Perintah ini berupa query google hack
yang terkumpul dan tertanam langsung pada opsi program. Saat query google
hack diproses sistem dan dilempar pada search engine google maka pengguna
langsung mendapatkan hasil berupa daftar penetrasi.
Hasil output aplikasi akan berada pada halaman google (google page).
Dalam hal ini tugas aplikasinya sebenarnya telah selesai. Selanjutnya pengguna
dapat memeriksa hasil pengujian dengan membuat target link yang tersedia. Saat
terdapat status error pada website yang dibuka maka diketahui bahwa website
terdapat celah keamanan.
Sebuah error pada system menunjukkan bahwa terdapat kelemahan dari sisi
program system. Dengan demikian penetrasi testing dapat mengungkap bagian
celah keamanan system. Proses aplikasi extension pun selesai dijalankan.
3.3.4. Use Ca se Diagr a m
Para rancangan kali ini berguna dalam menunjukkan aktifitas yang bisa
dibawah ini.
Gambar 3.2. Use Case Diagram untuk Fungsi Utama Penetration Testing
Berdasarkan diagram pada Gambar 3.2 terdapat beberapa aktifitas utama
yang terjadi pada system. Aktifitas pertama adalah pengguna mula-mula
menentukan jenis testing. Beberapa jenis testing ini disediakan dalam beberapa
kategori. Pengguna hanya dapat memilih salah satu kategori yang ada. Setelah itu
sejumlah testing yang sesuai dengan kategori tersebut dapat dilakukan.
Aktifitas pertama tersebut merupakan awal dari aktifitas kedua yaitu
pengguna melakukan penetration testing. Pengujian penetrasi ini dapat dilakukan
pengguna secara langsung dari dalam extension. Tentunya penetrasi berawal dari
menentukan opsi terlebih dahulu. Setiap opsi penetrasi telah memuat perintah
penetrasi berupa query google hack. Pengguna cukup melakukan penetrasi testing
menunjuk target website tertentu. Saat pengguna hendak menguji sebuah website
maka diperlukan sebuah address dari website. Penetrasi akan terfokus pada satu
website yang telah ditargetkan. Namun, saat pengguna tidak menentukan address
website yang akan diuji maka sebenarnya telah menunjuk target tetapi secara
acak yang mana telah ditangani oleh search engine google hack.
Pengguna dapat memeriksa hasil testing setelah melewati aktifitas-aktifitas
sebelumnnya. Hasil pengujian dapat diperiksa pengguna dengan melihat pada
daftar pencarian yang ada. Hasil testing berada pada masing–masing link pada
target website. Pengguna cukup memeriksa masing-masing link yang
menunjukkan status error. Dengan begitu semua aktifitas system telah dilakukan
oleh pengguna.
3.3.5. Activity Diagram
Pada bagian ini berguna dalam mendefinisikan rincian tindakan yang
dilakukan setiap aktifitas dari sebuah system aplikasi. Aktifitas utama aplikasi
meliputi menentukan jenis testing, melakuan penetration testing, menunjuk target
website, memeriksa hasil testing (seperti pada point 3.3.4) . setiap Aktifitas ini
memiliki rangkaian langkah-langkah hingga menjadi sebuah suatu aktifitas utama
yang utuh.
Menentukan jenis testing merupakan tahapan awal system. Dalam hal ini memiliki
Gambar 3.3. Activity Diagram untuk Menentukan Jenis Testing
Tahapan pengguna dalam menentukan jenis testing berawal dari memilih
salah satu jenis penetrasi. Terdapat berbagai jenis penetrasi berupa kategori dan
pengguna hanya dapat memilih salah satu kategori saja. Kategori penetration
testing akan memiliki sekumpulan penetrasi sesuai jenis kategori yang dipilih.
Selanjutnya pengguna dapat menentukan cara pengujian yaitu testing satu opsi
atau lebih. Saat dijalankan maka pada sisi extension google chrome akan
menjalankan penetrasi function yang telah berada pada program.
Hasil dari fungsi penetrasi pada program extension adalah sebuah query
google hack. Query ini dilempar pada google dan akan diubah otomatis menjadi
sebuah hasil testing yang dilakukan.
Berikut ini adalah beberapa kategori yang digunakan dalam menentukan
jenis testing yang ada dan nanti akan disertakan dalam aplikasi extension google
chrome, antara lain :
- File password
- Error message
- Username and password
Berdasarkan kategori-kategori tersebut aktivitas menentukan jenis testing
ini dilakukan. Secara global kategori tersebut memuat mengenai kelemahan
Gambar 3.4. Activity Diagram untuk Mengarahkan Target Website
Pada Gambar 3.4. merupakan rangkaian langkah yang membentuk aktifitas
dalam mengarahkan target penetrasi ke suatu website. Tahap ini merupakan tahap
system dalam berinteraksi dengan pengguna. System membutuhkan inputan dari
pengguna. Saat hendak memfokuskan proses penetrasi pada website maka
pengguna harus memasukkan address website. Pengguna harus memasukkan
address dalam sebuah website secara lengkap, contoh penulisannya seperti
www.nama-website.com . target ini nantinya akan disimpan dalam variabel
dalam program extensions.
setelah memasukkan target website maka pengguna dapat mengaktifkan opsi
testing. Pada bagian extensions akan melakukan inisialisasi target penetrasi yang
kemudian akan disimpan dalam program. Target ini akan diolah dalam penetrasi
function yang terdapat pada program extension. Kemudian browser akan
menampilkan hasil dari berupa dynamic html page. Tentunya setelah mendapat
message respond akibat pengaruh url encoded dari sisi google search engine.
merupakan tindakan yang terjadi saat melakukan penetrasi testing. Pada aktifitas
ini tindakan pengguna adalah menguji penetrasi. Langkah pengujian penetrasi
dapat didahului seperti pada Gambar 3.3 dan Gambar 3.4.
Sebenarnya pengujian penetrasi ini dipicu dengan beberapa aktivitas
sebelumnya. Pengguna biasanya akan memulai aktifitas menentukan kategori
terlebih dahulu. Selanjutnya pengguna akan dihadapkan pada pilihan opsi yang
harus ditentukan minimal sebuah opsi penetrasi testing. Aktifitas seperti ini
adalah kewajiban bagi pengguna jika ingin mengawali pengujian penetrasi.
Memulai pengujian penetrasi berarti memicu dijalankannya serangkaian
proses yang tertera pada extensions. Pada sisi extensions akan segera
menjalankan penetrasi function yang telah tersedia pada struktur program.
Berdasarkan fungsi inilah query google hack dibentuk. Fungsi inipun dapat
melakukan kombinasi query google hack jika dalam kasus pengujian penetrasi
oleh pengguna dilakukan dengan sekaligus. Untuk itulah, penggabungan query
perlu dilakukan. Query yang telah siap akan segera dilempar pada Google search
engine agar terjadi proses url encode. Hasilnya akan berupa message respond
dalam bentuk dynamic html page pada sisi browser.
Bagian yang paling berperan dalam melakukan penetrasi testing adalah
fungsi penetrasi dalam program extension ini. Fungsi ini yang menangani query
Google hack seperti apa yang akan dilempar dan bagaimana cara menampilkan
output program. Namun, proses penetrasi tetap terletak pada sisi Google search
engine. Jika fungsi penetrasi berguna dalam membentuk query Google hack maka
Gambar 3.6. Activity Diagram untuk Memeriksa Hasil Testing
Bagian aktifitas yang paling terakhir adalah mengenai output program.
Sesuai dengan Gambar 3.6. maka dalam mencapai hasil penetrasi testing dimulai
dari sisi extension yang sudah memasuki tahap proses aplikasi yaitu ditandai
dengan dijalankannya penetrasi function. Seperti yang telah dijelaskan
sebelumnya proses ini berujung pada dynamic html page yang ditampilkan oleh
browser. Pengguna dapat segera melihat hasil penetrasi dengan membuka link dari
Googel search page. Hal yang perlu diperhatikan pengguna disini adalah status
error pada website. Saat pengguna melihat status error maka penetrasi sukses
Hal yang paling penting yang dapat dilakukan dan perlu perencanaan lebih
lanjut lainnya adalah memastikan antarmuka pengguna dapat bekerja untuk
mendukung fungsionalitas aplikasi. Keberhasilan sebuah program ditentukan dari
pengguna itu sendiri. Dalam hal ini pengguna harus paham akan aplikasi yang
digunakan. Hal tersebut hanya terwujud jika antarmuka aplikasi tidak
membingungkan bagi pengguna.
A. Antar muka Fitur Penetr ation Testing
Pada bagian ini merupakan desain antarmuka dari penentuan kategori
aplikasi yang mana berlaku sebagai fitur penetration testing. Desain tersebut
seperti yang ditunjukkan pada Gambar 3.7.
Gambar 3.7. Antarmuka Pilihan Fitur Penetrasi Testing
Salah satu cara membuat aplikasi mudah digunakan adalah memberikan
penetrasi testing terlebih dahulu. Hal ini seperti apa yang telah dirancang pada
alur system sebelumnya.
B. Antar muka For m Tar get dan Opsi Penetr ation Testing
Desain berikut ini merupakan bagian utama dalam mengeksekusi
penetration testing berdasarkan pilihan opsi. Antarmukanya seperti yang
ditunjukkan apda Gambar 3.8.
Gambar 3.8. Antarmuka Form Target dan Opsi Penetrasi Testing
Desain pada Gambar 3.8 ini adalah form khusus yang berguna dalam
menangani control penetration testing. Dalam form tersebut sangat penting untuk
memilih control antarmuka yang tepat. Pada rancangan sebelumnya pengguna
diijinkan untuk melakukan pengujian secara serentak. Oleh sebab itu pada desain
form ini disertai dengan radio button all. Jika pengguna perlu mengaktifkan
penetrasti testing sekaligus maka dapat mengaktifkannya hanya dengan sekali
klik. Cukup dengan memustuskan apa yang harus terpilih dan apa yang tidak.
Sisanya adalah mengenai target dan eksekusi proses. Dalam desain tampak sebuah
tombol yang tersedia dalam menjalankan perintah secara instant. Selain itu, tidak
lupa menyertakan menu bantuan yang tampak jelas bersebelahan dengan tombol
Desain antarmuka pada bagian ini adalah berfungsi dalam membimbing
pengguna agar dapat memahami apa keuntungan yang ditawakan aplikasi dan
apakah itu bermanfaaat atau tidak. Dalam hal ini perlu didesain sebuah informasi
singkat yang tampil pada aplikasi sebagai pemandu agar pengguna paham akan
fungsi setiap fitur yang ada. Antarmuka menu help ini dapat diperhatikan pada
Gambar 3.9.
Ga mbar 3.9. Antarmuka Menu Bantuan (help)
Dalam desain kali ini tidak terjadi perombakan yang terlalu besar dalam
hal tampilan. Desain yang dirancang adalah bertujuan memberikan penjelasan
secara singkat. Seperti pada Gambar 3.9. informasi ini disampaikan dalam
antarmuka bantuan yang menampilkan informasi singkat mengenai fungsi sistem
agar pengguna paham akan kegunaan aplikasi. Antarmuka cukup menyediakan
tampilan pop up layer dengan judul dan konten informasi yang hendak
ditampilkan.
D. Antar muka Extensions [k eselur uhan]
Pada desain antramuka kali ini merupakan gabungan dari seluruh desain
antarmuka sebelumnya hingga membentuk tampilan extesion secara utuh. Desain
ini menentukan penempatan dan tata letak yang sesuai dari setiap desain dalam
tampilan keseluruhan akan baik. Oleh karena itu sebuah desain dalam meletakkan
dan membentuk sebuah antarmuka keseluruhan perlu dilakukan.
Tahap ini merupakan desain terakhir dari tahapan desain sebelumnya.
Karena setelah setiap komponen dikombinasikan dapat dikatakan telah siap pakai.
Gambar 3.10. Desain Antarmuka Extension Keseluruhan.
Tampak pada Gambar 3.10 bagaimana susunan yang terbentuk dari desain
setiap komponen aplikasi. Tanpa mengabaikan kesederhanaan maka desain yang
paling tepat untuk mengkombinasikan setiap komponen adalah ditampilkan
seperti Gambar 3.10. yaitu menjadikan form sebagai konten dari kategori. Dengan