AUDIT SISTEM KEAMANAN SERVER WEB SESUAI STANDAR PERMENKOMINFO TENTANG KEAMANAN SERVER WEB PEMERINTAHAN (Studi Kasus Situs Resmi Pemerintah Daerah Kabupaten Kotawaringin Timur http://beta.kotimkab.go.id) Andy Ismail, S.Kom Fakultas Ilmu Komputer, Universitas Darwan Ali
[email protected]
ABSTRAK Saat ini, internet sudah merupakan suatu kebutuhan bagi sebagian besar masyarakat. Bersumber dari internet inilah berbagai kemudahan akan sebuah informasi bisa didapatkan. teknologi internet kemudian dimanfaatkan dalam berbagai bidang salah satunya dalam pemerintahan. Hampir seluruh Pemerintah Daerah di Indonesia saat ini telah memiliki situs web resmi Pemerintah Daerah, misalnya web site Pemerintah Daerah Kabupaten Kotawaringin Timur bisa diakses melalui alamat beta.kotimkab.go.id. Agar web site Pemerintah Daerah bisa menjadi media informasi yang yang efektif, tentunya segala sesuatu yang berkaitan dengan kelangsungan hidup sebuah situs web harus dipenuhi, bukan hanya menghabiskan biaya setiap tahun untuk membayar sewa ISP dan web hosting sedangkan pengelolaanya diabaikan. Sebuah web tentunya harus dikelola sehingga mampu untuk memenuhi tuntutan terhadap perubahan-perubahan yang harus dilakukan, baik dari segi isi dari web site tersebut maupun keamanannya. Oleh sebab itu audit keamanan untuk server web beserta aplikasi didalamnya khususnya pada sebuah server web Pemerintah Daerah sangat diperlukan, berhubung saat ini situs web adalah bagian dari identitas dan kredibiltas Teknologi yang dimiliki oleh Daerah tersebut. Adapun audit yang dilakukan berlandaskan standar keamanan server web yang di tetapkan dalam peraturan Kementerian Komunikasi dan Informatika Republik Indonesia dengan menggunakan teknik one-way webhacking, yaitu suatu teknik yang mengandalkan pada lalu lintas HTTP untuk menyerang dan menembus web server dan aplikasi server. Teknik ini diformulasikan untuk menunjukkan bahwa memiliki firewall ketat atau SSL tidak terlalu penting ketika datang ke serangan aplikasi web. Premis one-way adalah bahwa hanya permintaan HTTP yang valid yang diijinkan dan hanya merespon HTTP yang diperbolehkan keluar dari firewall. Tahapan yang dilakukan yaitu melakukan penyamaran identitas, pengintaian untuk mengumpulkan data, kemudian mencari kemungkinan kelemahan dan memetakan kelemahan yang ada. Dari hasil penelitian yang telah dilakukan diperoleh kesimpulan hasil audit keamanan server web dan aplikasi didalamnya membutuhkan perawatan dan penanganan khusus terutama di bagian-bagian yang memiliki kelemahan keamanan, sehingga pengembangan situs web dan layanan internet didalamnya menjadi sesuai dengan standar peraturan keamanan server web oleh kementerian komunikasi dan informatika dan menjadikan server web lebih aman dari gangguan perentas di dunia maya. Kata Kunci : audit server web, Hacking Web, dan Teknik One-Way Web Hacking. ABSTRACT Currently, the Internet is a necessity for most people. Based from the internet will ease a variety of information that can be obtained. Internet technology utilized in various fields, one of them is in the government. Almost all local governments in Indonesia now has an official website, for example the web site of East Kotawaringin District Government can be accessed through the address beta.kotimkab.go.id. For Local Government web site can be an effective medium of information, of course all things related to the survival of a website must be achieved, not only cost each year to pay ISP and Web hosting while its maintenance is ignored. A web should be managed so as to to meet the demands of the changes that must be done, both in terms of the content of the web site as well as security. Therefore, security audits for web servers and applications in it, especially on a local government web server is needed, since the current web site is part of the identity and credibility of Technology is owned by the Region. The audits are conducted based on web server security standards defined in the regulations in the Ministry of Communication and Information of the Republic Indonesia by using one-way webhacking, is a technique which relies purely on HTTP traffic to attack and penetrate web servers and application servers. This technique was formulated to demonstrate that having tight firewalls or SSL does not really matter when it comes to web application attacks. The premise of the one-way technique is that only valid HTTP requests are allowed in and only valid HTTP responses are allowed out of the firewall. Steps being taken is to do undercover identity, reconnaissance to gather data, then look for possible weaknesses and map out the existing weaknesses. From the results of research conducted, concludes the audit security in web servers and applications require special care and handling, especially on the section that has a security weakness, so that the website development and internet services in it in accordance with standard web server security regulations by the ministry of communication and informatics and make the web server more secure from tampering by hackers in cyberspace. Key Word : Web Server Audit, Web Hacking, and One-Way Web Hacking Technique.
1.
PENDAHULUAN Situs web didalam server web merupakan salah satu sistem informasi yang digunakan sebagai media informasi yang yang efektif . Beberapa fungsi dan manfaat dari adanya website atau situs remi Pemerintah Daerah ini, antara lain : a. Memperkenalkan dan mempromosikan kelebihan yang ada baik sumber daya alam maupun produk hasil bumi suatu daerah tertentu, agar dapat diketahui secara luas baik dalam skala nasional maupun internasional karena dapat diakses oleh siapapun melalui internet, agar dapat menarik minat investor dalam negeri atau investor asing menanamkan modal di wilayah Pemerintah Daerah. b. Memperlihatkan secara nyata kegiatan atau aktivitas yang dilakukan oleh Pemerintah Daerah dalam melaksanakan urusan pemerintahan kepada masyarakat umum secara luas. c. Tersedianya sarana interaksi langsung antara Pemerintah Daerah dan masyarakat, baik dalam wilayah Pemerintah Daerah maupun diluar wilayah Pemerintah Daerah, terutama para perantau dari daerah asal yang ingin memperoleh informasi secara langsung akan perkembangan pembangunan di daerah asalnya dengan tersedianya konten berita ( News ) dan forum. d. Memberitakan produk-produk hukum yang dikeluarkan oleh Pemerintah Daerah dalam bentuk Peraturan Daerah ( Perda ) yang dapat dilihat oleh masyarakat umum. e. Menjadi indikator dan barometer bagi pembangunan daerah dari suatu Pemerintah Daerah tertentu dengan Pemerintah Daerah lainnya, sehingga tiap daerah terpacu untuk membangun wilayah daerahnya masingmasing, dan memperluas wawasan Pemerintah Daerah akan informasi-informasi baru dari daerah lainnya. Dari beberapa fungsi di atas, dapat diketahui bahwa informasi yang cepat dan tepat mempengaruhi perkembangan suatu daerah dalam skala regional, nasional maupun internasional. Namun website tidak bisa terlepas dari segi keamanan. Tetapi kebanyakan para pengelola hanya mengutamakan tampilan dan topik apa yang harus disediakan supaya menarik pengunjung sebanyakbanyaknya. Padahal jika seorang pengelola mengabaikan keamanan suatu situs web, maka yang dirugikan adalah pengelola itu sendiri serta institusi pemilik dari situs web tersebut. Keamanan suatu situs web atau web security systems merupakan salah satu prioritas yang sangat utama bagi seorang pengelola web. Jika pengelola web mengabaikan keamanan suatu situs web, maka hacker dapat mengambil data-data penting pada suatu situs web dan bahkan pula dapat merusak data yang ada. Beberapa faktor timbulnya serangan : a. Scripting Kesalahan dalam scripting pembuatan web adalah hal terbanyak yang dimanfaatkan oleh para attacker, sehingga rata-rata web yang berhasil diserang melalui lubang ini. Kelemahan-kelemahan scripting yang ditemukan pada proses vulnerabilities scanning
misalnya, XSS, SQL Injection, PHP Injection, HTML Injection, dan lain sebagainya. Begitu pula pada CMS semisal Mambo, Joomla, WordPress, dan lainnya. CMS tersebut memiliki banyak komponen pendukung di internet yang bisa kita download, install dan konfigurasi. Sehingga sangat memungkinkan sekali terdapat bug pada scriptingnya. Langkah terbaik tentunya melakukan pembedahan terhadap script serta melakukan pengujian sebelum komponen tersebut kita gunakan pada web yang sebenarnya. b. Lubang pada Situs Tetangga Ini merupakan salah satu faktor yang jarang mendapat perhatian. Sebagian webmaster kadang tidak begitu peduli ketika web lain yang satu hosting direntas. Mereka berpikiran, “Ah, bukan web saya yang kena.” Padahal justru di sinilah letak kesalahannya. Logikanya, misal web ditempatkan pada perusahaan hosting A. itu artinya web bertetangga dengan web milik orang lain yang berada dalam 1 hosting. Jika web tetangga tersebut memiliki celah fatal, sehingga penyerang bisa menanam program yang dijadikan backdoor. Dengan backdoor inilah penyerang bisa masuk ke dalam web lainnya. Bukan itu saja, tidak mustahil attacker melakukan perusakan massal. c. Tempat Hosting yang Bermasalah Pada beberapa kasus justru tempat hosting yang bermasalah menjadi sebab direntasnya banyak situs yang berada di bawah pengelolaannya. Kenyataannya, justru web hosting itu yang tidak pernah di administrasi dengan baik, jarang diupdate, dan jarang di patch, sehingga mudah terkena serangan. Dengan model pengelolaan yang seperti ini jangan berharap web akan aman. Karena itu, pastikan tempat hosting yang digunakan benar-benar memperhatikan tingkat keamanan bagi pelanggannya. Adapun standar dan ketentuan pengamanan server web milik pemerintahan baik pemerintah pusat maupun pemerintah daerah telah di tetapkan dalam sebuah Peraturan yang ditetapkan oleh Kementerian Komunikasi dan Informatika sebagai berikut : PERTAMA: Bahwa dalam rangka melindungi HAM tersebut dan melayani publik, maka situs pemerintah haruslah dihargai dan diberikan perlindungan, khususnya terhadap otentisitas, keutuhan, dan ketersediaan Informasi demi kepentingan publik itu sendiri, sehingga diperlukanlah upaya untuk melindungi situs pemerintah dari segala tindakan tersebut. KEDUA: Bahwa keamanan atas situs pemerintah haruslah terjaga dengan baik demi akuntabilitas dan kepercayaan publik terhadap substansi informasi yang disediakan, dan telah menimbulkan permasalahan yang serius jika tampilan situs dirusak, layanan publik terhenti dan informasi yang bersifat sensitif jatuh ketangan pihak yang salah. KETIGA: Sistem Informasi berikut sistem keamanan yang baik adalah sistem yang dapat memberikan kejelasan informasi bagi penyelenggara dan pengguna, tidak membuat ketergantungan terhadap penggunaan jenis teknologi tertentu, serta dapat memberikan kemandirian bagi penyelenggara negara untuk
mengembangkan sendiri lebih lanjut sistem tersebut sesuai dengan perkembangan organisasi penyelenggara negara dari waktu ke waktu; KEEMPAT: Keamanan terhadap situs informasi dan web-server harus dirumuskan dalam satu kebijakan internal dalam setiap instansi pemerintah yang memuat kejelasan proses pengembangan dan pengimplementasian sistem informasi yang mencakup kejelasan rancangan dan penerapan serta pengoperasiannya serta telah memperhitungkan insiden ataupun kejadian-kejadian tak tentu yang tidak dikehendaki. KELIMA: Untuk penyelenggaraan yang baik maka Penyelenggara Negara yang bertanggung jawab terhadap Penyelenggaraan Informasi (Chief Information Officer) yang berkewajiban menyelenggarakan keterbukaan informasi publik mempunyai kewajiban kehatian-hatian (duty of care) terhadap penyediaan atau penyajian informasi kepada publik. Tim pengelola situs pemerintah (Web management teams) harus berkonsultasi dengan instansi yang terkait dalam menentukan kebijakan keamanannya. KEENAM: Jika situs resmi pemerintah dikelola oleh pihak ketiga (Internet Service Provider (ISP)/hosting service), Penyelenggara Negara harus menjalankan Sistem Manajemen Keamanan Informasi dan mengikat secara kontraktual pihak ketiga dan menyediakan pengamanan terhadap webserver serta infrastruktur terkait sesuai dengan tingkat yang ditentukan. Standar umum tentang sistem keamanan untuk situs non pemerintah pada umumnya (contoh antara lain kelompok ISO 27000 atau yang setara) dapat digunakan sebagai acuan untuk pengembangan dan pengelolaan untuk situs pemerintah. Dengan landasan peraturan tersebut maka auditing dilakukan demi memenuhi setiap aspek standar yang sudah ditentukan. Karena situs web Kotawaringin Timur dalam proses pengembangan (baru meluncurkan situs versi beta dengan alamat beta.kotimkab.go.id) mendorong peneliti melakukan audit khususnya diaspek-aspek keamanan server web sesuai standar keamanan server web yang sudah ditetapkan oleh aturan menteri yang masih berlaku. 2. DASAR TEORI 2.1 Web Hacking 2.1.1 Pendahuluan Situs web dimiliki oleh sebagian besar Pemerintah daerah di Indonesia dengan aturan standar keamanan pada web servernya yang telah diatur dalam peraturan Menteri Komunikasi dan Informatika. Standar tersebut selayaknya dipenuhi oleh pengembang server web yang didalamnya terdapat situs web dan aplikasi pendukungnya. Untuk itu audit dilakukan dengam menggunakan beberapa metode yang terdapat dalam teknik one-way web hacking. Istilah Hacking dalam web hacking mengandung pengertian aktivitas penyusupan ke dalam sebuah sistem komputer ataupun jaringan dengan tujuan untuk menyalahgunakan ataupun merusak sistem yang
ada, Zackary [Basic of Hacking]. Definisi dari kata “menyalahgunakan” memiliki arti yang sangat luas, dan dapat diartikan sebagai pencurian data rahasia, serta penggunaan e-mail yang tidak semestinya seperti spamming ataupun mencari celah jaringan yang memungkinkan untuk dimasuki. 2.1.2 Pengertian Audit atau pemeriksaan dalam arti luas bermakna evaluasi terhadap suatu organisasi, sistem, proses, atau produk. Audit dilaksanakan oleh pihak yang kompeten, objektif, dan tidak memihak, yang disebut auditor. Tujuannya adalah untuk melakukan verifikasi bahwa subjek dari audit telah diselesaikan atau berjalan sesuai dengan standar, regulasi, dan praktik yang telah disetujui dan diterima (Wikipedia, 2011). 2.1.3 Tahapan Audit Server Web 1. Melakukan penyamaran identitas Internet Protocol / IP Spoofing, sebab web server biasanya memiliki aplikasi pendeteksi kegiatan dan perilaku hacking yang dianggap berbahaya bagi server, dan secara otomatis melakukan pemblokiran atas Internet Protocol / IP pengakses. 2. Web Application discovery, melakukan pencarian data aplikasi yang tertanam didalam server web untuk dipelajari titik lemah dari tiap-tiap aplikasi yang dimiliki server web kemudian memetakannya. 3. Memberi saran solusi perbaikan dari kelemahan yang telah ditemukan. 2.1.4 Aspek Audit Server Web Aspek-aspek yang dianalisis meliputi: 1.
2. 3.
4.
5.
2.2 2.2.1
Site Structure, adalah pemetaan struktur situs web yang terdapat di server web, seperti susunan folder dan file yang ada didalamnya. Port Scan, adalah pemetaan Port yang terbuka pada server web. Network Alerts, adalah pemetaan celah keamanan pada jaringan keluar masuk data pada server web. Web Alerts, adalah pemetaan kemungkinan celah keamanan yang ada pada aplikasi web di server web. Knowledge Base, adalah pemetaan service yang sedang berjalan pada server web.
Web Definisi Web World Wide Web atau “Web” adalah sebuah system dari keterhubungan, dokumen hypertext yang berjalan dalam internet. Dengan browser web, seorang pengguna melihat halaman-halaman web yang berisi teks, gambar, dan multimedia; dan menghubungkan anatara mereka menggunakan hyperlink. World Wide Web adalah kombinasi dari empat hal dasar:
1. 2. 3. 4.
Hypertext. Resource Indentifers. Model Client-Server. Markup Language. Dalam World Wide Web, aplikasi client menerima informasi, seperti halaman Web atau file komputer lainnya, dari web server menggunakan URL. Jika aplikasi client tersebut adalah browser web, maka ia akan menampilkan informasi tersebut pada komputer pengguna. Pengguna kemudian dapat menggunakan hyperlink dalam tiap halaman web untuk navigasi ke informasi dalam web lainnya. (Wikipedia, 2008) 2.3 Software yang Digunakan Dalam Audit Server Web Dalam audit server web ini, digunakan undaOS sebagai Operating System dengan aplikasi penunjang yaitu nmap. 2.3.1 Linux undaOS undaOS Sistem Operasi berbasis Open Source Linux yang dikembangkan oleh Team Pengembang Sistem Universitas Darwan Ali, yang dikembangkan dari Linux Ubuntu dan Linux Backtrak. undaOS dikembangkan untuk tujuan kemudahan bermigrasi dari Sistem Operasi Windows dan juga memiliki kelebihan dibidang keamanannya terutama dalam memenuhi keamanan bertransaksi e-commerce dan ebanking. 2.3.2 Nmap Nmap (Network Mapper) adalah scanner keamanan yang aslinya ditulis oleh Gordon Lyon (juga dikenal dengan nama samaran Fyodor Vaskovich) digunakan untuk menemukan host dan service di jaringan komputer, sehingga menciptakan peta jaringan (Wikipedia, 2011). 2.3.3 Mozilla Firefox Web Browser Mozilla Firefox (aslinya bernama Phoenix dan kemudian untuk sesaat dikenal sebagai Mozilla Firebird) adalah penjelajah web antar-platform gratis yang dikembangkan oleh Yayasan Mozilla dan ratusan sukarelawan. Versi 3.0 dirilis pada 17 Juni 2008 (Wikipedia, 2011). 2.4 Server Web Server web adalah sebuah perangkat lunak server yang berfungsi menerima permintaan HTTP atau HTTPS dari klien yang dikenal dengan browser web dan mengirimkan kembali hasilnya dalam bentuk halaman-halaman web yang umumnya berbentuk dokumen HTML. Server web yang terkenal diantaranya adalah Apache dan Microsoft Internet Information Service (IIS). Apache merupakan server web antarplatform, sedangkan IIS hanya dapat beroperasi di sistem operasi Windows. Server web juga dapat berarti komputer yang berfungsi seperti definisi di atas (Wikipedia, 2011). 2.4.1 Komponen Server Web Ada empat komponen dalam sistem aplikasi web, yaitu klien yang biasanya web browser, web frontend server, aplikasi server dan untuk sebagian besar aplikasi, database server. Diagram berikut memperlihatkan bagaimana komponen bekerja.
Gambar 2.1 Komponen Server Web Aplikasi server web memiliki semua aplikasi, yang dapat berupa script, tools atau file binary. Web server front-end bertindak sebagai antarmuka aplikasi ke dunia luar, menerima masukan dari klien web melalui form HTML dan HTTP, dan memberikan output yang dihasilkan oleh aplikasi dalam bentuk halaman HTML. Secara internal, aplikasi antarmuka dengan database server back-end untuk melakukan transaksi. Firewall diasumsikan dikonfigurasi ketat, sehingga apa yang masuk dan keluar dimonitor dan dibatasi. 3. PERENCANAAN AUDIT SERVER WEB Perencanaan merupakan suatu sketsa langkahlangkah awal yang akan dilakukan dalam melakukan kegiatan audit server web. 3.1 Identifikasi 3.1.1 Identifikasi Kebutuhan Fungsional Untuk mengetahui kebutuhan fungsi apa saja yang harus ada saat melakukan kegiatan audit server web, diperoleh spesifikasi fungsi sebagai berikut : 1. Akses internet dengan kecepatan broadband 512kbps. Pada dasarnya semakin cepat akses internet yang dimiliki, semakin cepat pula audit diselesaikan. 2. Proxy, dengan Koneksi Proxy digunakan untuk mengganti Internet Protocol / IP sebagai cara untuk menyamarkan identitas diri saat melakukan analisa celah keamanan server web. adapun proxy adalah adalah sebuah [peladen [(komputasi)peladen]] (sistem komputer atau aplikasi) yang bertindak sebagai perantara permintaan dari klien mencari sumber daya dari server lain. Klien A terhubung ke peladen perantara, meminta beberapa servis, seperti berkas, koneksi, halaman web, atau sumber daya lainnya, yang tersedia dari peladen yang berbeda (Wikipedia, 2011).
Gambar 3.1 Kerja Proxy Indentifikasi Kebutuhan Aplikasi Identifikasi kebutuhan aplikasi dilakukan untuk mengetahui konten dan media yang digunakan dalam audit server web. 3.1.2
1. Indentifikasi Analisa Keamanan Server Web Berbagai macam cara untuk menganalisa server web dan aplikasi didalamnya sehingga dalam penelitian ini menggunakan beberapa analisa tersebut, yaitu: a. Pada aspek Site Stucture, analisa yang dilakukan adalah analisa Web Scanning yaitu pada lingkungan aplikasi Web yang ada pada server web. Terbagi menjadi dua bagian, yaitu : - Crawling, adalah teknik menganalisa struktur folder dan file yang tersedia di aplikasi web. - Scanning, adalah teknik menganalisa folder dan file yang ada kemudian mencari kelemahan keamanan didalam sourcecode. b. Pada aspek Port Scan, analisa yang dilakukan yakni analisa memetakan Port yang terbuka pada server web. c. Pada Aspek Network Alert, analisa yang dilakukan yakni mencatat kelemahan jaringan yang terhubung ke server web. d. Target Finding, adalah sebuah penelusur port yang memungkinkan Anda untuk mencari server web (port 80, 443) dalam rentang alamat IP tertentu. Jika web server ditemukan, pemindai juga akan menampilkan header respon server dan perangkat lunak server. e. Sub Domain Scanning, Menggunakan berbagai teknik dan menebak-nebak nama sub domain umum, Sub domain scanner memungkinkan identifikasi yang cepat dan mudah ke sub domain aktif. f. Blind SQL Injection, Ideal untuk penguji penetrasi, Blind SQL injection adalah sebuah teknik ekstraksi basis data bertujuan untuk menganalisis lebih lanjut dan melaporkan kemungkinan kelemahan injeksi SQL. bekerja dengan cara menghitung database, tabel, data dump dan juga membaca file tertentu pada sistem file dari web server jika eksploitasi SQL injection ditemukan. g. HTTP Editing, memungkinkan untuk membuat permintaan HTTP dan melakukan debug HTTP baik permintaan dan tanggapan. Ini juga mencakup sebuah encoding dan decoding alat untuk encode / decode teks dan URL untuk hash MD5, UTF-7 format dan banyak format lainnya. h. HTTP Fuzzy, Dengan HTTP Fuzzy dapat meluncurkan serangkaian tes fuzzy, untuk menguji aplikasi web dalam menangani data acak, tidak valid
dan tak terduga. Sebuah contoh akan menjadi URL berikut: http://www.test.com/berita.php?idberita=1 Menggunakan HTTP Fuzzy dapat membuat aturan yang secara otomatis akan mengganti bagian terakhir dari URL '1 'dengan angka antara 1 dan 999. Hanya hasil yang valid akan dilaporkan. Tingkat otomatisasi ini memungkinkan untuk dengan cepat menguji hasil dari 1000 query tanpa harus melakukan satu per satu. i. Authentication Tester, adalah melakukan dictionary attack terhadap halaman login yang menggunakan kedua HTTP (NTLM v1, v2 NTLM, digest) atau bentuk berdasarkan otentikasi. Biasa menggunakan dua file teks standar (kamus) yang berisi daftar nama pengguna umum dan password. Dapat pula menambahkan sendiri kombinasi untuk file-file teks. 2. Identifikasi Kebutuhan Hardware Kebutuhan hardware yang dicantumkan sesuai dengan hardware yang digunakan peneliti dalam melakukan penelitian ini, yaitu : a. Perangkat Laptop AXIOO NEON MNW dengan spesifikasi Processor Core2Duo 2 GHz, Memory 2GHz, VGA SIS Mirage 3 128Mb b. Modem Broadband TPLINK untuk Sambungan Internet Broadband Telkom Speedy. 4. MEMULAI ANALISA SERVER WEB Analisa dilakukan secara langsung melalui internet (online realtime) dimulai pada tanggal 7 April 2011 jam 21:45:00 dan diselesaikan tanggal 8 April 2011 jam 08:55:25, selama 11 jam 10 menit. Karena status situs pemkab saat penelitian berlangsung masih dalam status pengembangan (beta), maka bisa terjadi hasil pemetaan celah keamanan bisa berubah-ubah dan menyebabkan hasil penelitian menjadi tidak valid lagi dalam waktu tertentu. 4.1 Penyamaran Identitas Untuk menyamarkan identitas dalam melakukan audit server web, diperlukan penggantian Internet Protocol/IP yang dimiliki dengan mengganti IP milik proxy. berikut penerapannya menurut http://wazem.blogspot.com/2008/01/how-to-changegnome-proxy-settings-on.html: a. Cek IP sebenarnya dapat dilakukan dengan cara mengakses situs http://ip-adress.com terlihat IP sebenarnya milik klien adalah beserta ISP asal IP
Gambar 4.1 IP klien sebenarnya b. Pada Network Proxy Ubah IP dengan IP milik Proxy
Gambar 4.2 Menggunakan Proxy pada undaOS C. Periksa kembali IP klien dengan cara mengakses http://ip-adress.com , jika IP sudah berubah maka penyamaran identitas berhasil.
Gambar 4.3 IP klien yang tampil setelah menggunakan Proxy 4.2 4.2.1
Web Application Discovery Port Scan dan Knowledge Base Port Scan dilakukan untuk menganalisa port dan service yang terbuka pada server web, dengan menggunakan fasilitas pada nmap untuk melakukan analisa port dengan cara penggunaannya dapat dilihat di alamat http://nmap.org/bennieston-tutorial/ dan hasil yang diperoleh, port yang terbuka pada server web http://beta.kotimkab.go.id adalah : a. Open Port 25 / smtp b. Open Port 22 / ssh c. Open Port 21 / ftp d. Open Port 80 / http e. Open Port 110 / pop3 f. Open Port 143 / imap g. Open Port 443 / https h. Open Port 587 / submission i. Open Port 873 / rsync j. Open Port 993 / imaps k. Open Port 995 / pop3s l. Open Port 3306 / mysql Dapat dilihat bahwa port yang terbuka selain http juga https, database yang digunakan mysql, terlihat dari port mysql yang terbuka, begitu pula terdapat port email. Selanjutnya menganalisa service yang aktif pada server web. hasil yang didapat adalah : a. FTP server running An FTP server is running on TCP port 21. b. Whois lookup Whois result for IP address 119.235.18.102: c. IMAP server running An IMAP server is running on TCP port 143. d. POP3 server running A POP3 server is running on TCP port 110. e. SMTP server running A SMTP server is running on TCP port 25. Information gathered from this service:
250-server42307.masterweb.net f. SMTP server running A SMTP server is running on TCP port 587. Information gathered from this service: 250-server42307.masterweb.net g. SSH server running A SSH server is running on TCP port 22. SSH server information: SSL server running [443] A SSL3 server is running on TCP port 443. SSL server information: Version: SSL2,SSL3,TLS1 Certificate: Country Name: US Organization Name: Equifax Organizational Unit Name: Equifax Secure Certificate Authority: Serial Number: R-7YzbIknW3djPY/OsKMChOTTGz-8nsh Country Name: ID Organization Name: *.masterweb.net Organizational Unit Name: GT70027190 Organizational Unit Name: See www.rapidssl.com/resources/cps (c)10 Organizational Unit Name: Domain Control Validated - RapidSSL(R) Common Name: *.masterweb.net version: 2 number: 0fd0d3 print: bc2fa580dafb46267a47f00f118daaa6 ID: 1.2.840.113549.1.1.5 start:Fri Mar 12 03:51:17 UTC+0700 2010 end:Thu Mar 12 13:43:30 UTC+0700 2015 in:1434 days A TLS1 server is running on TCP port 443. SSL server information: Version: SSL2,SSL3,TLS1 Certificate: Country Name: US Organization Name: Equifax Organizational Unit Name: Equifax Secure Dari analisa port dan service yang 4.2.2 Informasi Server Web Dalam pengujian mencari informasi server web diketahui beberapa informasi penting, yaitu : Queried whois.apnic.net with "119.235.18.102" inetnum: 119.235.18.0 - 119.235.18.255 netname: MWN-INET-ID descr: PT. Master Web Network descr: IT Solution Company descr: Gd. Cyber Lt. 5 Jl. Kuningan Barat No. 8 Jakarta Selatan 12710 country: ID admin-c: SH1061-AP tech-c: SH1061-AP status: ASSIGNED NON-PORTABLE remarks: Send Spam & Abuse report to:
[email protected] mnt-by: MAINT-ID-INET changed:
[email protected] 20090902
changed: source: route: descr:
[email protected] 20100215 APNIC 119.235.18.0/24 Route object of PT. Master Web Network descr: IT Solution Company descr: Jakarta country: ID origin: AS24532 mnt-by: MAINT-ID-INET changed:
[email protected] 20090709 source: APNIC person: Santoso Halim Facebook: http://www.facebook.com/ profile.php?id=579811729 address: Pluit Permai 8 No.3A address: Jakarta-Utara address: Indonesia country: ID phone: +62-21-30047799 fax-no: +62-21-30047798 e-mail:
[email protected] nic-hdl: SH1061-AP mnt-by: MAINT-ID-INET changed:
[email protected] 20061020 source: APNIC NS1: dns3.masterwebnet.com NS2: dns1.masterwebnet.com Server: Apache OS: Debian 5 Location: http://beta.kotimkab.go.id Informasi yang didapatkan diatas menunjukkan bahwa situs beta.kotimkab.or.id dikelola oleh pihak ketiga yaitu perusahaan hosting PT. Master Web Network (www.masterwebnet.com) beralamat di Jakarta-Utara, dengan atas nama Santoso Halim. Dipastikan server web ditempatkan di Jakarta Utara. 4.2.3 Site Structure Pemetaan struktur situs yang didapatkan dari hasil web crawling adalah sebagai berikut :
Gambar 4.1 Struktur Folder Utama Dari pemetaan struktur folder situs beta.kotimkab.go.id dapat diketahui bahwa situs menggunakan sebuah script Content Management
Systems (CMS) Joomla. Selanjutnya untuk analisa versi Joomla yang digunakan yaitu dengan melihat struktur script pada file index.php.
Gambar 4.2 Struktur Script pada File index.php Dapat diketahui bahwa versi Joomla yang digunakan adalah versi 1.5. Tahap selanjutnya adalah menganalisis komponen pihak ketiga yang ditanamkan pada script joomla.
Gambar 4.3 Struktur komponen tambahan Komponen pihak ketiga yang ditanamkan pada script Joomla adalah : a. com_easybookreloaded oleh http://joomla-extensions.kubikrubik.de/ebr-easybook-reloaded, adalah komponen yang berfungsi sebagai modul buku tamu pada laman http://beta.kotimkab.go.id/index.php?optio n=com_easybookreloaded&view=easyboo kreloaded&Itemid=144 b. com_eventlist oleh http://www.schlu.net adalah komponen yang berfungsi sebagai modul pengaturan agenda kegiatan, digunakan pada laman http://beta.kotimkab.go.id/index.php?optio n=com_eventlist&view=eventlist&Itemid= 139 c. com_phocadownload oleh http://www.phoca.cz/phocadownload adalah komponen yang berfungsi sebagai modul yang memberikan fasilitas untuk mengunduh berkas, digunakan pada laman http://beta.kotimkab.go.id/index.php?optio n=com_phocadownload&view=sections&It emid=121 d. com_phocagallery oleh http://www.phoca.cz/phocagallery adalah komponen yang berfungsi sebagai modul album foto, digunakan pada laman http://beta.kotimkab.go.id/index.php?optio n=com_phocagallery&view=categories&It emid=122
Kemudian memetakan dan menganalisa modul dan templat pihak ketiga yang digunakan pada situs beta.kotimkab.go.id.
Gambar 4.4 Struktur Modules dan Templates Modul pihak ketiga yang digunakan adalah : a. mod_hot_image_slider oleh http://www.hotjoomlatemplates.com adalah modul yang berfungsi menampilkan gambar secara berotasi, digunakan pada halaman index situs. b. mod_news_pro_gk4 oleh http://tools.gavick.com/newshowpro.html adalah modul yang berfungsi mengatur tampilan berita pada situs, digunakan pada halaman index situs. c. mod_vvsit_counter oleh http://vinaora.com adalah modul yang berfungsi menghitung jumlah pengunjung pada situs. Templat pihak ketiga yang berfungsi sebagai tampilan atau layout situs beta.kotimkab.go.id adalah menggunakan jsn epic pro yang dapat di beli melalui http://www.joomlashine.com/?task=view
Gambar 4.5 Templat jsn epic pro
Gambar 4.6 Templat jsn epic pro pada situs beta.kotimkab.go.id
4.3
Analisa Celah Keamanan pada Aplikasi Server Web 4.3.1 Celah Keamanan Jaringan 4.3.1.1 Network Alert Port 8080 yang menjalankan layanan proxy server terbuka untuk umum dapat diakses melalui beta.kotimkab.go.id:8080, sehingga proxy server dapat digunakan untuk terhubung ke port server web tanpa terikat firewall. Tingkat ancaman keamanan : Tinggi. Potensi serangan : proxy ini memungkinkan setiap orang untuk melakukan permintaan untuk port HTTP sewenang-wenang, seperti membuka email dan telnet/ssh. 4.3.2 Celah Keamanan Aplikasi Web 4.3.2.1 Blind SQL Injection Menggunakan analisa pada aplikasi web yang berhubungan dengan database SQL khususnya MySQL yang terpasang pada server web beta.kotimkab.go.id. adapun teknik penggunaannya dapat dilihat pada laman http://packetstormsecurity.org/files/95588/TutorialBlind-SQL-Injection-Referensi.html SQL injection merupakan kerentanan yang memungkinkan penyerang untuk mengubah data melalui backend SQL dengan memanipulasi input pengguna. Sebuah SQL injection terjadi ketika aplikasi web menerima input pengguna yang langsung ditempatkan dalam sebuah pernyataan SQL dan tidak menyaring karakter yang berbahaya. Request 1: POST /index.php?Itemid=139&option=com_eventlist &view=eventlist HTTP/1.1 Content-Length: 84 Content-Type: application/x-www-form --------dipotong untuk menyingkat-------------Host: beta.kotimkab.go.id:80 Connection: Keep-alive Accept-Encoding: gzip,deflate --- dipotong untuk menyingkat-------------filter=&filter_order=%24%7bCELAH_KEA MANAN_DISINI%7d&filter_order_Dir=&fil ter_type=title&limit=5 HTML Response 1:
Gambar 4.5 Celah Keamanan pada Modul Agenda
Request 2: POST /index.php?Itemid=139&option=com_eventlist &view=eventlist HTTP/1.1 Content-Length: 91 Content-Type: application/x-www-formurlencoded --- dipotong untuk menyingkat-------------Host: beta.kotimkab.go.id:80 Connection: Keep-alive Accept-Encoding: gzip,deflate --- dipotong untuk menyingkat-------------filter=&filter_order=a.dates&filter_order_Dir= %24%7bCELAH_KEAMANAN_DISINI%7 d&filter_type=title&limit=5 HTML Response2:
Gambar 4.6 Celah Keamanan pada Modul Agenda Dari hasil percobaan menggunakan teknik SQL Injection, ditemukan beberapa celah keamanan khususnya pada modul Agenda yang merupakan komponen untuk joomla dari pihak ketiga bernama com_eventlist oleh http://www.schlu.net. Berikut untuk kasus keamanan serupa menyangkut komponen tersebut: a. http://www.cvedetails.com/cve/CVE-20074509/ b. http://www.milw0rm.com/exploits/4309 Tingkat ancaman keamanan : Sedang. Potensi serangan : Penyerang dapat melakukan modifikasi beberapa file sistem atau informasi, tetapi penyerang tidak memiliki kendali atas apa yang dapat dimodifikasi. Tetapi jika diimplikasikan pada link Layanan Pengadaan Secara Elektronik (LPSE) http://beta.kotimkab.go.id/index.php?option=com_bann ers&task=click&bid=4 milik Kabupaten Kotawaringin Timur (http://lpse.kotimkab.go.id/eproc/app), maka potensi pemalsuan terhadap halaman (web spoofing, http://en.wikipedia.org/wiki/Website_spoofing) Layanan Pengadaan Secara Elektronik (LPSE) bisa terjadi dan kerugian yang diakibatkannya pun bisa menjadi sangat besar. 4.3.2.2 Web Scanning 4.3.2.2.1 Berkas yang Usang Ditemukan beberapa file yang tidak memiliki fungsi / tidak pernah terhubung dengan file lainnya, yaitu index2.php, dapat diakses pada http://beta.kotimkab.go.id/index2.php
Tingkat ancaman keamanan : kecil Potensi ancaman keamanan : File usang atau tidak terhubung dengan file lainnya biasanya terjadi saat pengembang melakukan backup file, terkadang dapat berisikan informasi yang sensitif seperti informasi koneksi database atau informasi penting lainnya. 4.3.2.2.2 Broken Link Ditemukan beberapa broken link / link rusak yang didapat dari penelusuran sourcecode navigasi tiaptiap file, yaitu: /index.php?Itemid=26&option =com_contact&view=contact Request : GET /index.php?Itemid=26&option=com_contact& view=contact HTTP/1.1 Pragma: no-cache --------------dipotong------------------------Host: beta.kotimkab.go.id Connection: Keep-alive Response :
Gambar 4.7 Broken Link pada Situs Tingkat ancaman keamanan : Rendah Potensi ancaman keamanan : Broken link terkadang dapat berisikan informasi yang sensitif seperti informasi database atau informasi penting lainnya. 4.3.2.2.3 Templat Joomla Script pada situs beta.kotimkab.go.id menggunakan CMS Joomla versi 1.5 dengan menambah templat bernama jsn epic pro yang dapat di beli melalui http://www.joomlashine.com/?task=view , hasil analisa source code pada file index.php, templat merupakan versi berbayar / non-free tetapi tampak dalam sourcecode templat tidak mencantumkan kode lisensinya.
Gambar 4.8 templat JSN Epic Pro tanpa lisensi Tingkat ancaman keamanan : Tinggi Potensi ancaman keamanan : Jika templat yang digunakan situs beta.kotimkab.go.id memang tidak memiliki kode lisensi, maka hal ini dapat
digolongkan dalam pembajakan/pelanggaran atas hak cipta. 4.4 Solusi Perbaikan Atas Celah Keamanan Hasil dari analisa dan penemuan atas celah keamanan, maka solusi perbaikan yang disarankan peneliti dipaparkan menjadi beberapa bagian. 4.4.1 Solusi Celah Keamanan Jaringan 4.4.1.1 Solusi Network Alert Konfigurasi Proxy Server yang berdampingan dengan server web beta.kotimkab.go.id tergolong sebagai open public proxy (http://en.wikipedia.org/wiki/Open_proxy),yang artinya setiap orang dapat terhubung dan menggunakan layanan proxy tersebut. Untuk server web milik beta.kotimkab.go.id yang bukan sebagai layanan publik seharusnya melakukan konfigurasi proxy menjadi reverse proxy (http://id.wikipedia.org/wiki/Proxy_server) sehingga service seperti email dan telnet/ssh menjadi lebih aman dan bebas dari penyalahgunaan IP proxy. Rujukan cara konfigurasi revese proxy terdapat pada laman http://emka.web.id/linux/ubuntu/2010/panduanmenginstall-varnish-web-acceleratorreverse-proxy-didebianubuntu/ 4.3.2 Solusi Celah Keamanan Aplikasi Web 4.3.2.1 Solusi Blind SQL Injection Blind SQL Injection dapat dilakukan bila pesan error / warning pada script diaktifkan, sehingga perusak bisa mengetahui informasi penting seperti nama database, tabel dan kolom yang digunakan pada situs. jika pesan error dan warning tidak tampak, maka akan mempersulit kerja dari teknik Blind SQL Injection tersebut. untuk menonaktifkan pesan error dan warning pada php dapat dilakukan dengan cara: a. Menambah kode error_reporting(0); pada sourcecode
http://extensions.joomla.org/extensions/calendars-aevents 4.3.2.2 Solusi Web Scanning 4.3.2.2.1 Solusi Berkas yang Usang Seluruh berkas yang sifatnya adalah berkas usang atau tidak berfungsi dalam situs seharusnya dihapus untuk mencegah kelalaian yang menyebabkan potensi kebocoran informasi penting pada server web. Hapus berkas index2.php dari folder web beta.kotimkab.go.id. 4.3.2.2.2 Solusi Broken Link Seluruh link yang sifatnya adalah broken link dalam sourcecode seharusnya dihapus untuk mencegah kelalaian yang menyebabkan potensi kebocoran informasi penting pada server web. Hapus link /index.php?Itemid=26&option=com_contact&view=co ntact pada index.php. 4.3.2.2.3 Solusi Templat Joomla Templat yang digunakan oleh beta.kotimkab.go.id tidak memiliki kode lisensi, jadi tambahkan kode lisensi yang didapatkan saat pembelian atau ganti templat dengan yang lain yang sifatnya tidak melanggar hak paten atau gratis. 4.3.2.2.4 Solusi Lain-lain Joomla saat ini (April 2011) telah meluncurkan versi terbaru yakni versi 1.6 dengan tingkat keamanan yang lebih baik. Sebaiknya selalu upgrade Joomla dengan versi yang terbaru, sehingga mengurangi potensi ancaman keamanan. Cara melakukan upgrade dapat dilihat pada rujukan http://docs.joomla.org/Tutorial:Migrating_from_Joomla _1.5_to_Joomla_1.6 Begitu juga untuk setiap modul dan komponen yang digunakan, lakukan upgrade versi secara berkala untuk menjamin keamanan sourcecode dari bug pada script tersebut. 5. KESIMPULAN DAN SARAN 5.1 Kesimpulan Kesimpulan dari Penelitian yang berjudul “ AUDIT SISTEM KEAMANAN SERVER WEB SESUAI STANDAR PERMENKOMINFO TENTANG KEAMANAN SERVER WEB PEMERINTAHAN” adalah sebagai berikut :
Gambar 4.9 Error terjadi pada mysql.php 1. tempatkan kode error_reporting(0); di baris awal php pada error yang terdapat pada file mysql.php. Rujukan untuk cara penggunaan error_reporting(0) dapat diakses pada http://www.w3schools.com/PHP/func_error_re porting.asp b. Konfigurasi php.ini, set display_errors = Off. sehingga setiap error dan warning yang terjadi pada setiap script php otomatis tidak ditampilkan dilayar. Cara lain mengatasi celah keamanan ini adalah dengan tidak menggunakan sama sekali untuk komponen com_eventlist dan mengganti komponen lain yang fungsinya sama, daftar komponen pengganti com_eventlist dapat dilihat di
2.
3.
Situs Web milik Pemerintah baik Pemerintah Pusat maupun Pemerintah Daerah yang di hosting pada server web memiliki standar keamanan yang telah diatur oleh Peraturan Kementerian KOMINFO, sehingga dalam pembangunan dan pemeliharaannya harus berdasarkan standar yang telah ditetapkan tersebut . Server web dan situs web milik Kabupaten Kotawaringin Timur di hosting diluar Kabupaten Kotawaringin Timur dan dikembangkan oleh perusahaan umum pengelola jasa web hosting sebagai pihak ketiga. Server web tempat situs dihosting dan situs web masih belum memenuhi standar keamanan server web untuk Pemerintahan
4.
5.
yang telah diatur Peraturan Kementerian KOMINFO. Templat yang digunakan oleh situs web beta.kotimkab.go.id tidak memiliki kode lisensi yang mengakibatkan potensi pelanggaran atas hak cipta / menggunakan templat bajakan. Analisa dilakukan secara langsung melalui internet (online realtime) dimulai pada tanggal 7 April 2011 jam 21:45:00 dan diselesaikan tanggal 8 April 2011 jam 08:55:25, selama 11 jam 10 menit. Karena status situs pemkab saat penelitian berlangsung masih dalam status pengembangan (beta), maka bisa terjadi hasil pemetaan celah keamanan bisa berubah-ubah dan menyebabkan hasil penelitian menjadi tidak valid lagi dalam waktu tertentu.
5.2 Saran Saran yang perlu diperhatikan adalah sebagai berikut : 1. Jika situs web di hosting pada server web komersil / perusahaan umum sebagai pihak ketiga, maka sebaiknya perusahaan tersebut mengetahui dengan benar standar keamanan server web untuk Pemerintahan yang diatur oleh Peraturan Kementeri KOMINFO. 2. Ada baiknya server web yang menghosting situs Pemerintah di bendakan baik dari segi konfigurasi software ataupun bisa dari hardware sever web itu sendiri. Tidak mencampurkan user penyewa hosting umum dengan user pemerintahan. 3. Lakukan audit, upgrade software dan hardware secara berkala, pemeliharaan server web sama pentingnya dengan pengadaan server web dan situs web itu sendiri. 4. Sangat disarankan situs Pemerintahan seperti kotimkab.go.id di hosting sendiri, dengan server web sendiri yang diolah oleh Pemerintah Daerahnya sendiri, karena situs web merupakan cerminan identitas dan kredibilitas teknologi yang dimiliki oleh Daerah tersebut. DAFTAR PUSTAKA [1]
[2]
[3]
Saumil Shah . (2003, Desember 8). One-way Web Hacking: http://netsquare.com/papers/one_way/one_way.html Tedjaprawira, Y., 2007, Keamanan Sistem Informasi, Institut Teknologi Bandung, Bandung National Computer Security Center, A Guide To Understanding Discretionary Access Control in Trusted Systems, Version 1, National Computer Security Center, 30 September 1987.
[4]
[5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21]
Wardhana, D., 2007, Arsitektur Dan Prototipe Keamanan Database Multilevel, Institut Teknologi Bandung. http://www.depkominfo.go.id http://www.wikipedia.com http://www.google.com http://wazem.blogspot.com/2008/01/how-tochange-gnome-proxy-settings-on.html http://www.ip-adress.com http://nmap.org/bennieston-tutorial http://joomla-extensions.kubik-rubik.de/ebrhttp://easybook-reloaded http://www.schlu.net http://www.phoca.cz http://www.hotjoomlatemplates.com http://tools.gavick.com/newshowpro.html http://vinaora.com http://packetstormsecurity.org/files/95588/ Tutorial-Blind-SQL-Injection-Referensi.html http://www.joomlashine.com http://joomla.org http://www.w3schools.com/PHP/ func_error_reporting.asp