Prosiding SENATEK 2015 Fakultas Teknik, Universitas Muhammadiyah Purwokerto Purwokerto, 28 November 2015, ISBN 978-602-14355-0 -2
ANALISIS KERENTANAN KEAMANAN (VA) WEB PERGURUAN TINGGI SWASTA JAKARTA IGN Mantra*, Muhammad Alaydrus Teknik Informatika, Perbanas Institute Jakarta, Indonesia *Email:
[email protected]
ABSTRAK Teknologi informasi telah menjadi bagian penting dalam kehidupan untuk melakukan berbagai aktivitas kesehariannya. Web site merupakan salah satu teknologi yang cukup penting baik di lingkungan perusahaan, pemerintahan dan pendidikan. Web site saat ini menjadi media baik sebagai sumber informasi, berkomunikasi, pencarian data, menciptakan, mengolah dan publikasi informasi, di samping itu website menjadi sumber informasi yang besar dan penting selain buku dan banyak digunakan dalam media pembelajaran di Perguruan Tinggi dan Sekolah oleh para pengguna internet. Paper ini akan mengulas tentang analisis kerentanan (vulnerability analysis) keamanan web site khususnya Perguruan Tinggi Swasta Lingkup DKI Jakarta untuk mengetahui lebih jauh bagaimana response website dalam filter berbagai serangan. Serangan yang akan diujikan dalam bentuk SQL injection untuk mencari kerentanan dan memberikan pencegahan/ counter measure bagi pemilik web site tersebut. Keywords: SQL injection; attacks; countermeasure, vulnerability analysis, OWASP; Perguruan Tinggi, web site. PENDAHULUAN Website telah digunakan oleh masyarakat dunia, hal ini dapat terlihat dari perkembangan informasi masyarakat dunia yang dahulu menggunakan kertas untuk menyebarkan informasi seperti surat kabar, brosur, buku pelajaran, namun saat ini menggunakan media elektronik atau digital untuk mendapatkan informasi walaupun tetap menggunakan media tradisional/kertas. Tidak hanya untuk memberi informasi namun website dapat pula menjadi bagian dari komunikasi sehingga website dapat di klasifikasikan sesuai dengan kegunaannya. Penulis mengkaji dari sisi keamanan website beberapa perguruan tinggi di Indonesia tepatnya kota DKI Jakarta yang memanfaatkan dan menerapkan teknik dalam mendapatkan informasi lebih detail dengan SQL Injection Technique[5]. Perguruan tinggi di Indonesia dan negara lain telah menjadikan website sebagai media untuk publikasi dari informasi-informasi yang akan diakses oleh masyarakat dunia. Tidak hanya itu banyak pula perguruan tinggi yang menggunakan teknologi website untuk memberikan dan menjadikan media dalam belajarmengajar. Baru-baru ini, sebagai contoh diketahui beberapa website di dunia mengalami peretasan atau yang biasa dikenal dengan istilah “hack”. Salah satu perusahaan terbesar pada bidang entertainment, yaitu Sony Pictures Entertainment mengalami peretasan hingga data-data terpenting yang dimiliki mengalami kebocoran. Maka dari itu, penulis mencoba melakukan riset terkait untuk mendapatkan informasi lebih detail atau tidak umum dengan memanfaatkan ilmu keamanan informasi. Penelitian ditujukan pada perguruan tinggi swasta di DKI Jakarta. Didalam mendapatkan informasi, penulis memanfaatkan vulnerabilitykeamanan yang ada pada tiap website perguruan tinggi tersebut[2]. Vulnerability pada tiap website berbeda-beda dan mengakibatkan faktor serangan yang berbeda pula. Banyak sekali macam vulnerability pada web contohnya adalah kelemahan security misconfiguration atau sensitive data exposure. Penulis melakukan riset dengan metode injeksi yang termasuk dalam top 10 web application security risk pada OWASP. Top 10 web applicationsecurity risk tersebut ialah metode injection, cross site scripting (xss), broken authentication and session management, insecure direct object references, cross-site request forgery, security misconfiguration, insecure cryptographic storage, failure to restrict URL access, insufficient transport layer protection, unvalidated redirects and forward[1].
1
Prosiding SENATEK 2015 Fakultas Teknik, Universitas Muhammadiyah Purwokerto Purwokerto, 28 November 2015, ISBN 978-602-14355-0 -2
Metode injeksi termasuk dalam bagian bahaya dari keamanan yang dapat dimanfaatkan. Dengan metode injeksi tidak hanya informasi lebih yang didapatkan, namun jika dalam informasi yang disimpan atau dibuat memiliki informasi tentang akses dari sebuah sistem yang dibangun maka metode tersebut dapat menjadi tahapan dalam mendapatkan akses terhadap sebuah sistem bahkan mendapatkan akses sistem secara keseluruhan atau disebut administrator[3].
METODE PENELITIAN Metodologi yang digunakan untuk penelitian ini adalah metode penelitian konstruktif yaitu melakukan uji coba kerentanan keamanan web server perguruan tinggi tersebut dan kemudian mencatat sekaligus mengumpulkan response dari uji kerentanan keamanan web. Tools uji menggunakan beberapa tools yang biasa digunakan dalam web vulnerability assesment. Setiap website yang dapat diakses oleh masyarakat dunia memiliki keragaman kegunaan. Terkait dengan keamanan informasi yang kadang tidak terperhatikan oleh para pengguna, pengembang dan pembuat website, penulis melakukan penelitian serta memberikan pengetahuan terkait dengan pengujian untuk mendapatkan informasi yang lebihdalam pada beberapa website yang diuji. Teknik yang digunakanuntukmenguji web server tersebutdengantekniksql injection attacks. Selanjutnyamelakukan analisa, pengujian dari bahaya kesalahan dalam perancangan informasi yang dapat diakses publik, kemudian akan mendapatkan informasi lebih dalam dan penting seperti sistem database yang digunakan, nama database, atau bahkan username dan password menggunakan teknik sql injection[2]. Masalah-masalah diatas selanjutnnya diselesaikan dengan melakukan studi pustaka, studi lapangan dan analisa terhadap hasil yang didapatkan dari pengujian langsung ke setiap website yang memiliki potensi untuk diterapkan teknik sql injection. Tahapan yang dilakukan terdapat pada bagian metodologi yang diterapkan untuk mendapatkan hasil yang baik dari pengujian.
HASIL DAN PEMBAHASAN Analisis Kerentanan SQLi Setelah mendapatkan informasi yang cukup perihal website yang diuji, selanjutnya mencoba melakukan analisa untuk penerapan serangan atau teknik mendapatkan informasi menggunakan sql injection. Pada tahapan ini akan mendapatkan informasi terkait dengan kelemahan untuk penerapan teknik sql injection. Lebih lanjut akan melakukan analisa secara manual dan juga dibantu dengan tools untuk melakukan pencarian kelemahan pada website yang memiliki kelemahan pada bagian penyimpanan data yang menggunakan database. Proses analisa manual dapat dilakukan langsung pada URL tiap website. Analisa manual yang biasa dilakukan terhadap url sebagai berikut: http://sub.univ1.ac.id/informasi.php?id=37’ Jika terjadi error pada saat analisa manual tersebut, kemungkinan dapat diterapkan teknik mendapatkan informasi dengan sql injection, namun jika dianalisa lebih lanjut maka dapat melakukan secara manual seperti yang telahdisampaikan sebelumnya tentang penerapan teknik sql injection. Agar mempercepat proses untuk memastikan bahwa URL tersebut dapat diterapkan sql injection maka berikutnya menggunakan salah satu tools yang memang digunakan untuk mencari, menganalisa, menguji bahwa URL memiliki kelemahan atau dapat diterapkan dengan teknik mendapatkan informasi lebih dalam lagi dengan sql injection. Ada beberapa command untuk mencari, mendeteksi, dan dapat pula mengeluarkan isi dari penyimpanan data dari web yang diuji. Untuk command pencarian dari url yang dapat diterapkan injeksi:
Gambar2.Crawl Command
Selaincommandtersebut, jikainginmemastikandapat pula dengancommand sebagaiberikut:
2
Prosiding SENATEK 2015 Fakultas Teknik, Universitas Muhammadiyah Purwokerto Purwokerto, 28 November 2015, ISBN 978-602-14355-0 -2
Gambar3. Checking for Injectable Command
Command lengkap dari tools dapat dilihat pada direktori tools tersebut atau jika menggunakan linux command dapat menuliskan pada terminal: “sqlmap --help”atau “man sqlmap” Pada tahapan pencarian kelemahan, analisis selanjutnya dibantu tool burp suite untuk mendapatkan informasi lebih detail terkait vulnerability website yang sedang diuji penggunaannya, setelah melakukan analisa pada target dan crawl pada website, kemudian menggunakan pilihan scanner atau burp scanner tool. Berikut pilihan scanner pada burp yang ditampilkan pada gambar 4.:
Gambar4.Scanner Options
Scanner tool dapat melakukan passive dan active scanning. Seperti yang dapat dilihat pada gambar dengan menceklis beberapa pilihan, pilihan tersebut terdapat pada active scanning areas yang dapat di pilih atau difokuskan pada beberapa pilihan. Pada penelitian ini menitikberatkan pada kelemahan yang dapat diterapkan teknik sql injection namun juga mendapatkan pengetahuan atau informasi jika terdapat kelemahan lain apabila mencek lis semua pilihan yang ada pada tool burp suite [3]. Berikut keterangan vulnerability pada perguruan tinggi yang dicoba cari kelemahannya yaitu univ2.ac.id:
Gambar 4.5 Vulnerability Scanner
Selanjutnya, penelitian ini tidak hanya terfokus pada hasil scan dari tools yang digunakan, harus menguji langsung apakah memang terdapat kelemahan seperti hasil yang ada atau ternyata tidak. Hal ini terkait dengan hasil pengujian ada yang bernilai false positive dan false negative yang telah disampaikan sebelumnya.
3
Prosiding SENATEK 2015 Fakultas Teknik, Universitas Muhammadiyah Purwokerto Purwokerto, 28 November 2015, ISBN 978-602-14355-0 -2
Laporan Pengujian Setelah melakukan tahapan-tahapan untuk pengujian, penerapan mendapatkan informasi dengan menggunakan teknik sql injection pada beberapa website bakal calon perguruan tinggi swasta terbaik yang memiliki program studi teknik informatika,kemudian mencantumkannya dalam tabel 2.website yang berhasil mendapatkan informasi dari penyimpanan data dengan menggunakan teknik sql injection. Penelitian ini juga menemukan beberapa kelemahan yang dapat dijadikan bahan laporan, kelemahan ini hanya bersifat tambahan dan tidak menerapkan teknik lain untuk mendapatkan informasi lebih walaupun hal tersebut dapat berpotensi dilakukan untuk mendapatkan informasi. Kelemahan pada website dan penerapan teknik sql injection ini disamarkan, seperti yang di kemukakan sebelumnya dengan alias www.univ1.ac.id hingga www.univ15.ac.id. Website yang memiliki kelemahan dan dapat diterapkan teknik sql injection dapat dilihat pada tabel berikut: Pada tabel 4.2 dapat diketahui ada kelemahan pada website tersebut dan dapat diterapkan teknik sql injection. Namun, tidak semuanya mendapatkan informasi dari tempat penyimpanan data. Pada keterangan di tabel ada 4 keterangan yang diberikan, 4 keterangan tesebut dimaksudkan untuk penelitian lebih lanjut. Mungkin saja ditemukan kelemahan terkait dengan penerapan sql injection atau kelemahan lain yang berpotensi untuk mendapat informasi lebih dalam dari website yang diuji[4]. 4 keterangan tersebut ialah : 1. Tidakdites Keterangan ini mengindikasikan bahwa website tersebut tidak dapat diterapkan teknik sql injection. Indikasi tersebut terlihat dari tampilan website dan target tersebut memiliki pengetahuan tentang keamanan website dan komputer lebih baik dari target lain. Selain itu, terdapat pula target yang telah diretas hingga website tersebut tidak tampil sebagaimana mestinya. Hal lain tidak ditesnya perguruan tinggi tersebut terkait dengan waktu penelitian,fokus dari penelitian ini adalah website yang berpotensi diterapkan teknik sql injection. 2. Tidakditemukan Keterangan ini terkait dengan tidak ditemukannya kelemahan yang mengakibatkan penerapan teknik sql injection diterapkan. 3. Terdapatpadasub-domain Keterangan ini diberikan karena saat pengujian dan analisis dapat memperluas cakupan analisis kelemahan tidak hanya pada alamat yang dapatkan dari pihak kopertis III dan google. 4. Tidakterdapatpada domain Keterangan tidak terdapat pada domain ini terkait dengan pengujian dan analisa dari kelemahan yang memungkinkan jika analisa lebih lanjut terhadap sub-domain terdapat kelemahan yang dapat diterapkan teknik sql injection. Selain dari teknik sql injection tersebut, penelitian mendapatkan beberapa kelemahan dari perguruan tinggi lain yang apabila dimanfaatkan oleh orang-orang yang tidak bertanggung jawab dapat menjadi sesuatu yang buruk. Namun kelemahan tersebut belum semua tervalidasi karena fokus hanya pada teknik mendapatkan informasi dengan sql injection. Kelemahan tersebut antara lain disampaikan pada tabel 2. Selain tabel 2., kelemahan lain dilampirkan pada penulisan Pengujian kerentanan keamanan website Perguruan Tinggi Swasta Jakarta. Hal ini dapat dimanfaatkan atau berguna jika para pembaca ingin melakukan analisa, pengujian, dan penelitian, dapat menjadi bahan informasi, keterangan, dan referensi.
4
Prosiding SENATEK 2015 Fakultas Teknik, Universitas Muhammadiyah Purwokerto Purwokerto, 28 November 2015, ISBN 978-602-14355-0 -2
Tabel 1.Hasil Laporan Domain / Web Address
Keterangan
univ1.ac.id
Tidak dites
univ2.ac.id
Tidak ditemukan
univ3.ac.id
Tidak dites
univ4.ac.id
Tidak ditemukan
univ5.ac.id
Tidak ditemukan
univ6.ac.id
Tidak dites
univ7.ac.id
Tidak ditemukan
univ8.ac.id
Tidak ditemukan
univ9.ac.id
Terdapat pada sub-domain – host lain
univ10.ac.id
Tidak ditemukan
univ11.ac.id
Terdapat pada domain
univ12.ac.id
Tidak ditemukan
univ13.ac.id
Terdapat pada sub-domain – host lain
univ14.ac.id
Terdapat pada sub-domain – host lain
univ15.ac.id
Tidak terdapat pada domain
Tabel 2 .Kelemahan Website No
Kelemahan
1
Email address disclosed
2
Server side injection
3
Ip internal disclosure
KESIMPULAN Analisis terhadap target website mendapat kesimpulan bahwa, Informasi awal terkait target yang ditentukan dapat diperoleh dengant eknik yang umum dilakukan untuk pencarian informasi, baik menggunakan search engine maupun tools yang tersedia untuk information gathering atau intelligence gathering.Tidak semua website memiliki kelemahan yang menyebabkan informasi yang tidak biasa atau informasi yang rahasia didapatkan dengant eknik sql injection. Selain itu, tidak semua kelemahan yang dapat diterapkan teknik sql injection terdapat pada web address atau domain utamapada web tersebut.Terdapat kelemahan atau kerentanan pada tiap website target tersebut yang tidak terkait dengan mendapatkan informasi dengan teknik sql injection yang masih dapat diterapkan lebih lanjut.Teknik mendapatkan informasi dengan sql injection masih menjadi salah satu teknik yang telah diketahui para pengembang, umum dilakukan attackers, dan ternyata masih ada kelemahan dibeberapa coding yang akan digunakan untuk pentest lebih mendalam.
5
Prosiding SENATEK 2015 Fakultas Teknik, Universitas Muhammadiyah Purwokerto Purwokerto, 28 November 2015, ISBN 978-602-14355-0 -2
DAFTAR PUSTAKA Halfond, W. G., Viegas, J., &Orso, A. (2006, March).A classification of SQL-injection attacks and countermeasures.In Proceedings of the IEEE International Symposium on Secure Software Engineering (Vol. 1, pp. 13-15). IEEE. Kieyzun, A., Guo, P. J., Jayaraman, K., & Ernst, M. D. (2009, May). Automatic creation of SQL injection and cross-site scripting attacks. In Software Engineering, 2009. ICSE 2009. IEEE 31st International Conference on (pp. 199-209). IEEE. Khoury, N., Zavarsky, P., Lindskog, D., & Ruhl, R. (2011, October). An analysis of black-box web application security scanners against stored SQL injection. InPrivacy, Security, Risk and Trust (PASSAT) and 2011 IEEE Third Inernational Conference on Social Computing (SocialCom), 2011 IEEE Third International Conference on (pp. 1095-1101). IEEE. Khoury, N., Zavarsky, P., Lindskog, D., & Ruhl, R. (2011, June). Testing and assessing web vulnerability scanners for persistent SQL injection attacks. InProceedings of the First International Workshop on Security and Privacy Preserving in e-Societies (pp. 12-18). ACM.Mirdula, S., & Manivannan, D. (2013). Security Vulnerabilities in Web Application-An Attack Perspective. International Jour-nal of Engineering and Technology, 5(2), 1806-1811.
6