TUGAS MAKALAH EC5010 Keamanan Sistem Informasi

Analisis Keamanan Web Server

Oleh : Izbiq Muhammad (132 00 091)

DEPARTEMEN TEKNIK ELEKTRO FAKULTAS TEKNOLOGI INDUSTRI INSTITUT TEKNOLOGI BANDUNG 2005

DAFTAR ISI

Halaman DAFTAR ISI BAB I. PENDAHULUAN BAB II.WEB SERVER II.1 APACHE II.1.1 Host Virtual II.1.2 Server Side Includes II.1.3 Common Gateway Interface II.2 MICROSOFT INTERNET INFORMATION SYSTEM (IIS) II.2.1 Aplikasi-Aplikasi ISAPI II.2.2 Direktori-direktori Virtual II.2.3 File-File Sample II.2.4 Host Virtual BAB III. KOMPONEN-KOMPONEN PENDUKUNG APLIKASI WEB III.1 WEB SERVER FRONT-END III.2 LINGKUNGAN EKSEKUSI APLIKASI WEB III.3 DATABASE SERVER III.4 MENGHUBUNGKAN MASING-MASING KOMPONEN i 1 2 2 2 4 5 6 6 9 9 10 12 13 13 14 14

III.5 IDENTIFIKASI KOMPONEN APLIKASI WEB MELALUI URL 15 III.6 TINDAKAN-TINDAKAN ANTISIPASI BAB IV. KESIMPULAN DAFTAR PUSTAKA 18 19 20

i

Karena pentingnya masalah kemanan ini maka bagi setiap orang yang ingin mengembangkan Webnya sudah selayaknya mempersiapkan diri sebaik-baiknya. virus. Telah banyak perusahaan yang menampilkan diri di Internet melalui Web. Web sedemikian populer karena mudah dibuat dan banyak menawarkan keuntungan. Web server yang akan dibahas adalah Apache dan IIS karena keduanya yang paling banyak digunakan saat ini. Banyak sekali informasi yang disediakan oleh Web-Web yang ada dan dapat diakses oleh siapa saja. maka kemanan yang baik akan menghindarkan kerugian yang mungkin didapat yang jumlahnya mungkin bisa sangat besar. Begitu juga dengan berbagai jenis Web yang lain yang kini telah menjadi bagian tak terpisahkan dari Internet. worm. EC5010 Keamanan Sistem Informasi 1 .Analisis Keamanan Web Server BAB I PENDAHULUAN Berjuta-juta halaman Web dapat kita temui saat ini di Internet. Keamanan Web menjadi lebih lagi dibutuhkan dengan adanya kasus-kasus pencurian melalui Web. Web telah dijadikan satu bagian penting untuk promosi maupun layanan kepada pelanggan. Lebih lagi dengan kemunculan Web-Web e-commerce. Perkembangannya sangat cepat. dan lain-lain. perusakan. Apalagi jika dalam pengembangan Web akan digunakan untuk aplikasi-aplikasi yang rentan atau kritis. baik secara material maupun non-material. Berkaitan dengan perkembangan ini. Bahkan saat ini banyak pula perusahaan-perusahaan yang menyediakan transaksi melalui Web mereka. penipuan. Dalam makalah ini akan penulis coba uraikan secara ringkas mengenai keamanan Web server. Demikian juga dengan penggunaan Web oleh perusahaan-perusahaan sebagai tempat promosi dan pusat layanan mereka yang tentunya membutuhkan jaminan keamanan. Pembahasan dilihat dari sisi server terutamanya mengenai titik-titik kelemahan yang dapat dimanfaatkan oleh pihak luar. maka kemanan mulai menjadi masalah penting.

Akhirnya. AIX. Server tersebut mendengarkan request pada jaringan dan menjawabnya kepada si pengirim permintaan dengan membawa data tertentu. Windows NT. BeOS. VMS. Solaris. Nama itu secara khusus merupakan nama EC5010 Keamanan Sistem Informasi 2 . Novell NetWare.Analisis Keamanan Web Server BAB II WEB SERVER Setiap kali sebuah browser berhubungan ke suatu situs Web di Internet. UNIX. OS/2. AS/400.1. yaitu dukungan platform. Macintosh. SCO. dll. II. Apache bekerja pada hampir semua platform yang terkenal termasuk NetBSD.x.1 APACHE Apache adalah Web server paling populer di Internet. Hal ini disebabkan oleh tiga faktor. HPUX. Selain itu Apache selalu menawarkan fitur-fitur bervariasi sehingga memberi saran bagi para developer untuk menciptakan desain situs Web secara cepat. II. Oleh karena banyaknya pengguna Apache inilah maka Apache menjadi incaran para hacker. FreeBSD. Windows 3. Web server ini juga menawarkan harga jual terbaik yaitu dapat diperoleh secara gratis. Mekanisme Basis-Nama Hosting virtual berbasis-nama mengharuskan user menyediakan sebuah nama unik bagi tiap request HTTP. Semua itu dapat dilakukan dengan dua buah mekanisme yaitu basis-nama dan basis-IP.1 Host Virtual Konsep host virtual yang pada dasarnya sederhana memungkinkan sebuah komputer terhubung dengan banyak Web server pada saat yang bersamaan dan satu buah komputer yang menjalan satu Web server dapat melayani banyak halaman dari berbagai situs Web. Linux. fitur-fitur dan harga. ia terhubung ke Web server. Setiap platform dan fitur yang ditambahkan juga menghadirkan kesempatan bagi oenyerang untuk mengambil keuntungan dari kelemahan-kelemahan yang ada.

16.30. Dengan perintah berikut: http://www.255 Mask:255.0. Semua record mengacu ke alamat IP yang sama. sebagai berikut: GET / HTTP/1.com maka browser akan mengirimkan request HTTP GET.0. Hal ini biasa dipakai pada perusahaan hosting.example.example.255.52 [root@jack /opt]# /sbin/ifconfig -a eth0 Link encap:Ethernet HWaddr 00:50:04:91:D5:A0 inet addr:172.16. Sebagai contoh untuk menambahkan tiga alamat IP pada sebuah interface ethernet eth0.MSIE 6.16. Ini mirip dengan pembuatan alias-alias IP pada sistem Unix.30. Pembuatan IP alias ini dapat dilakukan dengan perintah ifconfig.50 [root@jack /opt]# /sbin/ifconfig eth0:1 172.1 Accept: */* Accept-Language: en-us Accept-Encoding: gzip.30. sehingga Web server akan meneruskan request halaman ke host virtual yaitu www.0 (compatible. deflate User-Agent: Mozilla/4.30. dapat dilakukan sebagai berikut: [root@jack /opt]# /sbin/ifconfig eth0:0 172.0) Host: www. Windows NT 5.30.0.com Connection: Keep-Alive Bagian yang ditebalkan pada request HTTP GET tersebut adalah yang akan diteruskan.example. Berikut ini contohnya.51 [root@jack /opt]# /sbin/ifconfig eth0:2 172.30.16.us. Jadi. server harus memiliki alamat IP yang berbeda untuk setiap situs Web.255 Mask:255. jika dibuka sebuah situs Web yang hostnya juga dipakai oleh situs lain pada sistem yang sama (biasanya pada sistem Web hosting) maka ketika Web server menerima request HTTP GET.0 UP BROADCAST RUNNING MTU:1500 Metric:1 RX packets:33272 errors:20 dropped:0 overruns:20 frame:20 TX packets:22851 errors:0 dropped:0 overruns:0 carrier:0 collisions:309 txqueuelen:100 Interrupt:3 Base address:0x300 eth0:0 Link encap:Ethernet HWaddr 00:50:04:91:D5:A0 inet addr:172.16. Dengan demikian Web server tidak akan menampilkan seluruh situs web lain yang ada di sistem tersebut.Analisis Keamanan Web Server DNS yang merupakan record-record CNAME pada server DNS-nya.us.2 Bcast:172.16.30.255.com.50 Bcast:172.0 EC5010 Keamanan Sistem Informasi 3 . Mekanisme Basis-IP Pada hosting virtual berbasis IP.us.16. ia akan membuka host tertentu saja (virtual) yang sesuai dengan request bukan berdasar alamat IP sistem sehingga hanya akan menampilkan halaman web tertentu saja.

0 UP BROADCAST RUNNING MTU:1500 Metric:1 Interrupt:3 Base address:0x300 eth0:2 Dari contoh di atas maka eth0 memiliki tiga alias baru.16.52. nantinya masing-masing alamat IP ini harus memiliki nama DNS yang berbeda.255.30.1. Jadi. SSI serupa dengan CGI yang khusus digunakan untuk membuat dinamis halaman Web. Tapi seringnya situs Web mengaktifkannya dan memerintahkan server untuk mengerjakan semua file berekstensi .50.52 Bcast:172. Pendeteksian pada basis IP ini lebih sulit.0. Kemudian alamat-alamat IP ini masing-masing harus dibuatkan instruksi VirtualHost dalam file httpd. Dengan ini akan memaksa hacker untuk mengalihkan perhatian ke LAN lokal. Ketiganya memakai interface eth0:x.30.shtml dan mengendalikannya sebagai SSI. Fungsi ini jelas memiliki resiko keamanan yang tinggi sehingga tidak diaktifkan secara default EC5010 Keamanan Sistem Informasi 4 .30.Analisis Keamanan Web Server eth0:1 UP BROADCAST RUNNING MTU:1500 Metric:1 Interrupt:3 Base address:0x300 Link encap:Ethernet HWaddr 00:50:04:91:D5:A0 inet addr:172. Implikasi keamanannya itulah yang penting yaitu jika sebuah saja virtual Web site telah disetujui maka setiap Web site pada sistem yang bersangkutan juga disetujui.conf pada Apache. Secara default SSI dimatikan dan hal ini baik untuk kemanan.16.30.255.2 Server Side Includes Server Side Include (SSI) merupakan perintah-perintah yang ada dalam halam Web HTML yang menyediakan fungsi server-side.255 Mask:255. Caranya. Secara khusus perintah cmd hanya berjalan pada Unix.255 Mask:255. tidak seperti pada hosting virtual berbasis nama.16.51.30. yaitu 172.16. Masalah keamanan yang diperhatikan sebenarnya bukan pada hosting virtual ini sendiri. 172. II.30. dan 172. Satu-satunya cara untuk menemukan sebuah host virtual basis IP ini adalah dengan melihat alamat MAC pada tiap alamat IP. namun Windows juga memperbolehkannya. Jika SSI ini dipakai maka pastikan perintah exec cmd telah dinonaktifkan.16.51 Bcast:172.0 UP BROADCAST RUNNING MTU:1500 Metric:1 Interrupt:3 Base address:0x300 Link encap:Ethernet HWaddr 00:50:04:91:D5:A0 inet addr:172.conf Apache.16. Perintah exec cmd ini berguna untuk mengeksekusi perintah yang berubah-ubah pada sistem remote.30.0. tentukan argumen IncludesNOEXEC dengan perintah Options pada file httpd.16.

untuk semua file berekstensi . ScriptAlias Perintah-perintah ScriptAlias pada file httpd. Handler-handler yang bersifat built-in terdiri dari handler default yang mengendalikan isi data statis. File-file tertentu (. dan mod_negotiation. Misal.con memberi tahu Apache bahwa direktori-direktori yang dibawanya berisi script yang harus dijalankan. mod_imap. mod_info. dll) memerlukan kendali program tertentu pula (Java. dll). mod_cgi. Contoh perintah ScriptAlias: ScriptAlias /cgi-bin/ /opt/apache/cgi-bin Perintah itu memberi tahu Apache bahwa setiap request yang dimulai dengan /cgibin harus dipetakan ke direktori /opt/apache/cgi-bin.jsp.stu EC5010 Keamanan Sistem Informasi 5 . khususnya HTML. mod_status. II.1. yaitu perintah pada Web server untuk mengendalikan request tertentu dengan sebuah file CGI khusus. ScriptAlias dapat mengamankan Web server karena ia menentukan tempat script-script dapat dieksekusikan. Sudah sejak sebelum kemunculan Apache 1.1. Akibatnya developer memetakan suatu handler pada nama file yang tidak standar.3 Common Gateway Interface Common Gateway Interface (CGI) adalah satu dari sekian banyak mekanisme orisinil yang dikembangkan untuk mengirim isi data yang dinamis ke Web.Analisis Keamanan Web Server pada banyak server aplikasi Web dewasa ini. tersedia juga tambahannya. Selain ini bisa juga ditambahkan manual dengan perintah Action.asp. Apache mendukung beragam teknologi CGI diantaranya adalah ScriptAlias dan Handler. namun dulu pernah menjadi sumber dari sekian banyak bahaya keamanan. Web server sudah memiliki kemampuan untuk menentukan secara tepat kendali program yang dipakai untuk seuatu file berdasarkan namanya. Handler (pengendali) Handler adalah sebuah mekanisme yang mengendalikan beragam request pada Web berdasarkan nama file. yaitu mod_asis. Tetapi. daripada bergantung pada default-default yang memiliki kode-kode yang sulit dipecahkan. ASP. .

dan filter ISAPI menyediakan titik-titik entri tersebut. Secara default IIS menginstal sejumlah besar filter ISAPI yang dapat digunakan untuk mendobrak Web server. justru pengolahan paket-paket tersebut membuka serangan pada Web server. Ironisnya.conf Apache: AddHandler my-file-type . penyerang membuka jalan masuk ke sana. Perintah berikut ini dapat ditambahakan pada file httpd.0. Microsoft telah menganggap server IIS sebagai suatu poros yang amat penting karena keyakinan bahwa perusahaan memakai sistem operasi Windows pada Web servernya.1 Aplikasi-Aplikasi ISAPI Aplikasi-aplikasi ISAPI (Internet Server Application Programming Interface) merupakan ancaman terbesar dari pada Web server IIS. namun IIS merupakan software yang unggul. Hal ini berarti meningkatkan kontrol atas request dan mencegah penyerangan atas Web server.stu Action my-file-type /cgi-bin/stu. II.2 MICROSOFT INTERNET INFORMATION SERVER (IIS) Pada strategi Internetnya. Walau kehadirannya kurang begitu disadari. Hal ini terjadi karena adanya hukum keseimbangan.Analisis Keamanan Web Server dikendalikan oleh script Perl.0). Tabel 2-1 berikut ini menampilkan beberapa filter ISAPI yang terinstal secara default pada waktu instalasi Windows 2000 (IIS 5. terutama sejak NT 4. Berikut ini akan dibahas beberapa komponen keamanan dari IIS serta kelemahan-kelemahan dasarnya. Selain itu aplikasi-aplikasi ISAPI memungkinkan developer untuk menangkap semua paket yang datang ke Web server dan mengolahnya. Dengan memberikan titik-titik entri secukupnya ke Web server. ISAPI membuka kesempatan bagi para programmer Web memperluas kegunaan Web server IIS dengan membuat program mereka sendiri untuk mengolah dan mengendalikan data dan request yang sedang dikirim ke Web server.2.pl II. EC5010 Keamanan Sistem Informasi 6 .

dll .asa C:\winnt\system32\ inetsrv\asp.dll .dll C:\winnt\system32\ inetsrv\ssinc. Active Server Page—server-side scripting extension allows dynamic content delivery.ida sehingga membuka kesempatan bagi penyerang untuk mengirimkan request ke Web server dan menyebabkan overflow pada DLL yang mengendalikan request.htr C:\winnt\system32\ msw3prt.dll C:\winnt\system32\ inetsrv\ism. Worm itu berhasil mengeksploitasi kelemahan Server Indeks .ida.000 dolar per 1000 perusahaan. Active Server Page—server-side scripting extension allows dynamic content delivery.dll . Index Server extension Index Server extension Internet Data Queries. Web-based Administration—provides a means of performing administrative functions via the Web.shtml . Server-Side Includes—provides dynamic content delivery to the Web.dll C:\winnt\system32\ inetsrv\ssinc.Analisis Keamanan Web Server Table 2-1.stm .dll . penyerang mengeksekusi perintah pada sistem remote dan secara efektif mengendalikannya.dll . Internet Printing Server-Side Includes—provides dynamic content delivery to the Web. ISAPI Filters ISAPI Extension Executable Path . Worm Code Red masuk karena adanya buffer overflow pada ekstendi . Permintaan menjadi sah dan dapat diterima oleh semua firewall pada proxy yang dipakai.cer C:\winnt\system32\ inetsrv\asp.dll .htx C:\winnt\system32\ inetsrv\httpodbc.printer .cdx C:\winnt\system32\ inetsrv\asp.dll C:\winnt\system32\ inetsrv\ssinc. Dengan menambah kegunaan filter ISAPI berarti juga menambahkan hadirnya lubang keamanan. such as changing passwords. Active Server Page—server-side scripting extension allows dynamic content delivery. Sebagai contoh.ida C:\winnt\system32\ inetsrv\idq.dll . yang ternyata bertanggung jawab atas masuknya worm Nimda dan Code Red yang menyebabkan kerugian kerusakan lebih dari 100.ida. Server-Side Includes—provides dynamic content delivery to the Web.idq C:\winnt\system32\ inetsrv\idq. Inti serangan ini pada bagian muatan yang menguntungkan dilakukan pada request HTTP itu sendiri.htw C:\winnt\system32\ inetsrv\ism. filter .dll .asp C:\winnt\system32\ inetsrv\asp. lalu mengeksekusikan perintah pada remote system. Index Server extension Internet Database Connector Internet Database Connector (IDC)—uses ODBC APIs to communicate with database sources such as SQL Server. Akibatnya.ldq dan .dll Description Active Server Page—server-side scripting extension allows dynamic content delivery.shtm .dll . EC5010 Keamanan Sistem Informasi 7 .idc C:\winnt\system32\ inetsrv\httpodbc.

harus dilakukan juga hal yang sama pada Properties Master Web. Tetapi. sehingga akan membuang filter-filter dan pemetaannya pada semua server yang berhubungan.1 Pemetaan Aplikasi pada IIS Sebagai catatan. Lalu pilih tab ISAPI filter dan buang semua filter yang mengganggu. Dalam melakukannya pilih Properties dari Web server yang sedang bekerja.Analisis Keamanan Web Server Penyelesaian masalah filter ini adalah dengan tetap mengikuti semua sekurity patch dari Microsoft dan menerapkan yang cocok. Gambar 2. Kemudian pilih tab Home Directory dan pilih Configuration. Akhirnya buang pemetaan itu satu per satu. Filter-filter ISAPI default yang dapat dibuang atau dinonaktifkan adalah: • • • • Sspifilt Compression Md5filt Fpexedll.dll EC5010 Keamanan Sistem Informasi 8 . Gambar berikut memperlihatkan daftar pemetaan aplikasi secara default. penyelesaian dapat juga dilakukan dengan cara membuang semua filter ISAPI yang tidak diperlukan melalui Internet Service Manager.

II. harus memperhatikan file-file apa saja yang akan dipakai. Kemudian juga permission yang diperlukan agar dapat mempertahankan kegunaannya yang lengkap. pembuangan file-file itu malah bisa menyebabkan gangguan. tetapi tidak realistis.3 File-File Sample Beberapa file disediakan oleh IIS untuk membantu kita menulis kode program. • • _vti_bin > diperlukan untuk mendukung FrontPage Printers > untuk mencetak halaman Direktori-direktori di atas dan yang lainnya dapat dibuang tanpa pengaruh besar bagi sistem. pakai Internet Services Manager. Direktori-direktori virtual yang tidak diperlukan di antaranya yaitu: • Script > jika CGI atau ASP atau ISAPI dipakai maka diperlukan juga sebuah direktori khusus denjgan izin eksekusi script. Untuk membuangnya. jika ada aplikasi yang membutuhkan komponen sample tertentu. Jadi. Misalnya. di bagian Web sever. alternatifnya adalah dengan membatasi akses hanya kepada yang memerlukan. Gambar berikut ini akan EC5010 Keamanan Sistem Informasi 9 . karena mereka tersedia secara default dan terorirentasi pada developer.2 Direktori-Direktori Virtual Pada IIS ada fitur tambahan lagi yang membolehkan administrator untuk menset suatu link antara sebuah direktori di bawah root Web dan direktori lain pada harddisk atau pada sebuah remote system. Tetapi file-file ini banyak memiliki lubang keamanan.2. Secara default ini harus dibuang. Untuk menerapkan ACL secara benar.2. Tapi ini merupakan target umum. Beberapa file yang diinstal default: Keterangan IIS sample files IIS documentation Data access Lokasi Default c:\inetpub\iissamples c:\winnt\help\iishelp c:\program files\common files\system\msadc Direktori Virtual \IISSamples \IISHelp \MSADC Aturan umum setiap kali instalasi seharusnya adalah membuang atau meminimalkan Access Control List (ACL) pada file dengan NTFS permissions. Membuang sekaligus direktori merupakan hal yang paling mudah.Analisis Keamanan Web Server II.

Microsoft juga menyediakan host virtual dengan IP sekunder dengan mekanisme seperti pada host virtual basis-IP Apache. lalu masukkan accaunt IUSR dan memberi atribut read only atau juga execute sesuai kebutuhan. Tentu saja bukan pilihan yang baik. Sekalipun penyerang sudah dapat masuk ke dalam dan mengeksekusi file sample yang tidak digunakan.2 Properti dari Direktori Sample Grup Everyone pada daftar di atas dapat dibuang. Dengan pemakaian ACL ini secara signifikan akan mengurangi ancaman. dia tidak akan bisa menggunakan program itu untuk membuat sebuah file pada direktori sehingga tidak dapat melanjutkan serangan lebih jauh lagi. II. Selain itu juga disediakan host virtual multiple web sites dengan mekanisme seperti basis-nama Apache. with all rights”.4 Host Virtual Seperti pada Apache yang telah dibahas sebelumnya.2. EC5010 Keamanan Sistem Informasi 10 . “Everyone. Gambar 2.Analisis Keamanan Web Server menunjukkan penerapan permission secara default pada direktori iissamples.

EC5010 Keamanan Sistem Informasi 11 . Service provider banyak menggunakan sistem multiple Web sites ini untuk memaksimalkan sumber-sumbernya. fokus mereka adalah memperoleh akses pada salah satu situs yang ada sehingga dapat mempengaruhi banyak situs yang lainnya. Akibatnya.Analisis Keamanan Web Server Penambahan alamat-alamat IP sekunder bisa dilakukan dengan mudah pada Properties dari koneksi internet pada bagian Advance untuk selanjutkan dibuatkan multiple Web sites pada Internet Service Manager. Hal ini cukup penting untuk menjadi perhatian. dan kebanyakan penyerang mengetahui hal ini.

Analisis Keamanan Web Server BAB III KOMPONEN-KOMPONEN PENDUKUNG APLIKASI WEB Pada bab ini pembahasan akan difokuskan pada fungsi komponenkomponen dari sebuah aplikasi Web. Gambar 3. Tidak ada standar paling baik untuk semua jenis kebutuhan. Sebuah sistem aplikasi Web memiliki tiga komponen utama: • • • Web server front-end Lingkungan (environment) eksekusi aplikasi Web Database server Berikut ini dapat dilihat layout dari sistem aplikasi Web pada umumnya. Dengan memahami bagaimana aplikasi Web ini disusun akan membantu kita mengetahui lebih baik gambaran tentang keamanannya.1 Gambaran sekilas suatu sistem aplikasi Web tipikal EC5010 Keamanan Sistem Informasi 12 . apabila seseorang ingin membuat suatu aplikasi Web dengan kebutuhan performa yang tinggi maka sebaiknya memahami konsepnya dengan baik pula untuk dapat memanfaatkan berbagai macam teknologi aplikasi Web yang ada. Terlepas dari pengetahuan ini. Aplikasi Web disusun sesuai kebutuhan masing-masing pembuatnya.

Secara khusus disebut sebagai server aplikasi Web. penyisipan meta-karakter.1 WEB SERVER FRONT-END Pada pembahasan ini kita tidak akan bahaskan masalah Web browser dan firewall. namun tidak selalu menjadi sebuah sistem tersendiri. Mendukung API dan plug-in untuk pengintegrasian komponen-komponen dan modul-modul eksternal. atau mungkin memiliki sedikit saja kemampuan scripting dinamis. Server-server ini biasanya hanya menangani file-file HTML statis.2 LINGKUNGAN (ENVIRONMENT) EKSEKUSI APLIKASI WEB Lingkungan eksekusi aplikasi Web merupakan platform untuk membuat aplikasi-aplikasi yang bisa menerima input dari form-form HTML atau URL dan membangkitkan output HTML secara dinamis.Analisis Keamanan Web Server III. III. Server front-end biasanya dibuat untuk siap melayani request dalam jumlah besar dab mengendalikan banyak koneksi yang terjadi bersamaan. haruslah memenuhi kriteria berikut: • Scalability dan robustness: Kapasitas Web server harus bisa dengan mudah diperluas tanpa perlu membatasi hardware server dan sistem operasi yang dipakai. EC5010 Keamanan Sistem Informasi 13 . Tentunya tidak cukup untuk melayani keseluruhan aplikasi Web. Beberapa Web server font-end yang populer antara lain adalah Apache. • • • Kemampuan menangani beban besar dan koneksi yang banyak secara bersamaan. Fasilitas konfigurasi yang serbaguna. Peningkatan beban jangan sampai menurunkan performa terlalu banyak. yaitu Web server front-end. Zeus Web sever. • Sudah diuji-coba melawan serangan-serangan yang umum: Karena Web server front-end merupakan komponen pertama yang menjadi sasaran maka ia harus sudah lulus uji terhadap serangan-serangan dari luar yang umum dipakai orang. Microsoft IIS. Netscape. dll. seperti kelemahan buffer overflow. Bagian ini berfungsi untuk menerima request HTTP dan memberi jawaban. Agar fungsionalitasnya bagus. Langsung mengenai komponen utama. Ia harus mengefisiensikan sumber-sumbernya untuk menyediakan output yang besar dan memadai.

Pada gambar berikut ini dapat dilihat empat contoh cara menghubungkan komponen-komponen sistem tadi. • Antarmuka dengan database: Harus mampu memberikan antarmuka terhadap database server terkenal seperti Oracle. III. ada beberapa hal yang perlu diperhatikan: • • Kecocokan untuk menjalankan tugas yang diinginkan: Biasanya terkait dengan pilihan bahasa pemrograman yang tepat. DB2. Dalam memilih komponen server aplikasi Web ini. III. SQL Server. dan MySQL. Gambar 3. Antarmuka dengan Web server front-end: Komponen server aplikasi Web harus bisa menjadi antarmuka dan memberi alternatif metode pengintegrasian terhadap Web server front-end. Database server berkomunikasi dengan komponen sistem lain dengan API native.4 MENGHUBUNGKAN MASING-MASING KOMPONEN Beragam cara dapat kita lakukan untuk menghubungkan masing-masing komponen sistem aplikasi Web ini.2 Menghubungkan server-server aplikasi Web EC5010 Keamanan Sistem Informasi 14 . atau komponen-komponen middle-layer.3 DATABASE SERVER Database server dalam sebuah sistem aplikasi Web digunakan untuk menampung beragam database dan tabel yang diperlukan oleh aplikasi. driverdriver database.Analisis Keamanan Web Server Kadangkala server aplikasi Web ini bisa saja hanya merupakan sebuah ekstensi dari Web server front-end. Semua transaksi database dikerjakan melalui SQL.

19 yang juga mendukung SSL. mod_perl. yaitu hanya menampilkan header-header yang dibutuhkan oleh browser.3. sehingga dapat membantunya mengidentifikasi teknologiteknologi yang bekerja pada aplikasi Web. Tentunya hal ini membutuhkan pengamatan dan pengalaman.0 HTTP/1. 10 Dec 2001 04:48:34 GMT ETag: "94b5d-1ef-3c143ea2" Accept-Ranges: bytes Content-Length: 495 Connection: close Content-Type: text/html Pada contoh di atas. Yang menjadi awal di URL adalah tipe dari sumber atau file yang diminta. URL juga merupakan sarana komunikasi utama antara browser dan sistem aplikasi Web. Dari sini seseorang bisa melihat polapola pada URL. expires=Tue.Analisis Keamanan Web Server III. Misalnya.0.example.51.19 (Unix) Set-Cookie: Apache=192. Dalam contoh lain.example.12 (Unix) Connection: close Content-Type: text/html Di contoh ini kita tidak dapat mengetahui tipe dari script aplikasi Web dari sistem bersangkutan. 04 Feb 2001 19:12:35 GMT Server: Apache/1.1 200 OK Date: Mon. dapat disimpulkan bahwa server yang dipakai adalah Apache 1. ada juga server yang membatasi.com 80 GET / HTTP/1.Ekstensinya menentukan platform sumber yang digunakan. Dalam banyak hal.0 HTTP/1.3.1. header HTTP bisa secara akurat mengidentifikasikan Web server front-end yang dipakai. digunakan utiliti seperti Netcat dapat dilihat sebagai berikut: # nc www. Berikut ini contohnya: # nc www. dan PHP 4.308631012850977729.3.5 IDENTIFIKASI KOMPONEN APLIKASI WEB MELALUI URL Sebuah URL sebenarnya merupakan wujud dari sekumpulan fitur atau fungsi dari suatu aplikasi Web. Perlu diteliti lagi karakter-karakter yang membedakannya untuk mempersempit kemungkinan dan menentukan teknologi yang dipakai. 04-Feb-02 19:29:37 GMT Last-Modified: Mon. path=/.com 80 GET / HTTP/1.1 200 OK Date: Mon. Berikut ini EC5010 Keamanan Sistem Informasi 15 .168. Langkah awal untuk mengidentifikasikan teknologi yang mendukung aplikasi Web server adalah dengan memperhatikan header HTTP yang dikembalikan oleh Web server. 04 Feb 2001 19:29:37 GMT Server: Apache/1.

cfm .0.jsessionid=ZYQFN5W HKORD5QFIAE0SFF GAVAAUIIV0 Header HTTP dari situs ini mengidentifikasikan server Microsoft IIS 4. Dengan melihat pada header HTTP-nya dugaan itu terbukti.aspx . lebih mudah dengan beberapa contoh berikut ini: URL: http://www1. pada header-header HTTP-nya. IIS 4. Ekstensi .0 HTTP/1. biasanya diantarmukakan dengan Microsoft IIS Lotus Domino server Karena sifat Web server yang fleksibel. biasanya Web server di Unix Microsoft IIS Microsoft . Hal ini dikarenakan semua server aplikasi Java yang populer menyesuaikan standar J2EE.nsf?Open Connection: close Content-Type: text/html Content-Length: 305 URL: http://www2.jhtml yang merupakan halaman Java EC5010 Keamanan Sistem Informasi 16 . ataupun kadang kala pada isi file HTML-nya. Namun.Analisis Keamanan Web Server dapat dilihat beberapa ekstensi pada URL dan platform-platform yang biasanya terkait. sebenarnya dapat dilakukan perubahan konfigurasi untuk mengaburkan teknologi yang dipakai.php .jhtml.com/software/buy.jsp) tidak ada petunjuk sedikitpun informasi tentang Web server front-end dan aplikasi Java yang digunakan untuk mengeksekusi filefile JSP tersebut.asp .NET Generic.nsf?Open Ekstensi . Pada tipe file seperti Java Server Pages (.com 80 GET / HTTP/1.pl .example. biasanya diantarmukakan dengan Web server Apache Generic.1 302 Found Server: Lotus-Domino/5.com/homepage. Untuk lebih memahami masalah ini.0 tidak secara native mensupport . # nc www1. Untuk itu perlu menggali lebih dalam pada petunjukpetunjuk URL.example.5 Date: Mon.example.0.nsf mengindikasikan bahwa server ini adalah server Lotus Domino. 04 Feb 2001 17:52:59 GMT Location: homepage.nsf Teknologi Perl CGI script Active Server Pages ASP+ PHP script ColdFusion Lotus Domino Platform Server Generic.

Server yang dipakai adalah Netscape Enterprise 4. Berarti ada sebuah server aplikasi yang menjadi jembatan bagi IIS 4. yang digunakan oleh untuk menangani file Java HTML dan mengeksekusi Servlet Java.jsessionid=xxxxx" merupakan karakteristik penandaan dari server aplikasi ATG Dynamo.jsp?id=21&StoreSession=PC1q Nwwm0xqCFOWHZcYxZaZ21laYQEfOetnSjrYtrsxSC1V7b|3886513130244820/ 167838525/6/7001/7001/7002/7002/7001/-1 Contoh ini khusus.1. Sedangkan Web server front-end dideteksi dengan HTTP header yang ada. URL: http://www3.com/cgi-bin/ncommerce3/ExecMacro/webstore/ home.example.Data e-commerce platform. Ketika WebLogic berjalan pada port selain dari 7001 dan 7002. namun sebagai perkenalan dan memberikan gambaran kiranya cukup dari contoh-contoh di atas. teridentifikasi dari HTTP headernya. Namun.0. Signature URL ternyata adalah tipikal dari BEA WebLogic.d2w/report URL di atas adalah tipikal dari IBM Net.Data dan "report" adalah salah satu dari banyak metode yang disediakan oleh aplikasi makro. "signature" URL yang dipakai bukan dari server Netscape Enterprise.com/ category. Kemudian ada "home. URL: http://www4. String "ncommerce3" dan "ExecMacro" adalah kuncinya. String ".Analisis Keamanan Web Server HTML. Demikianlah beberapa contoh sebagai perkenalan dari identifikasi teknologi aplikasi Web server melalui URL-nya.example. server itu ditandai secara berbeda pada URL yang dihasilkan dari situs tersebut. yang diikuti dengan simbol "|" dan beberapa string numerik dipisah dengan tanda "/". yang dipakai WebLogic secara internal untuk berkomunikasi dengan Web server front-end.d2w" merupakan aplikasi makro ditulis pada bahasa script IBM Net. EC5010 Keamanan Sistem Informasi 17 . yang teridentifikasi melalui session identifiers dengan bentuk: Session=xxxxxxxxxxxxxx|######/#####/#/7001/7001/7002/7002/7001/# Bagian pertama dari session identifier-nya merupakan string alfanumerik. Masih banyak lagi tentunya hal yang lebih mendalam dari itu. File yang direquest adalah file Java Server Pages. Angka 7001 dan 7002 mengacu kepada HTTP and port SSL TCP.

Demikian sedikit ulasan mengenai aplikasi Web dan seluk-beluknya. Pesan-pesan kesalahan harus dicatat dalam file log pada Web server. Dengan itu sebenarnya tidak tahan lama. EC5010 Keamanan Sistem Informasi 18 . maka pengendali kesalahan harus diletakkan pada tempatnya untuk mengatasi kesalahan-kesalahan yang muncul pada saat aplikasi dipakai. • Hindari Pengiriman Informasi Keliru Kepada Browser Ketika aplikasi Web sampai pada tahap produksi dari tahap pengembangan.6 TINDAKAN-TINDAKAN ANTISIPASI Setelah mengetahui beberapa hal yang telah dipaparkan sebelumnya. Untuk membingungkan penyerang sekaligus mencegahnya. Tentu saja penyerang yang sudah berpengalaman tidak akan bisa dihentikan dengan itu saja.Analisis Keamanan Web Server III. Kemudian server aplikasi yang dipakai juga jangan sampai dimasukkan dalam header HTTP. maka perubahan string identifikasi server dan ekstensi file sudah cukup baik sebagai solusi. Bukan suatu hal yang mudah untuk dapat mencegah pihak luar atau penyerang dari mendapatkan informasi tentang teknologi yang dipakai pada sistem aplikasi Web server yang kita miliki. maka perlu diperhatikan tindakan-tindakan antisipasi untuk pengelola aplikasi Web server. Penting bagi kita untuk memahami peran masing-masing teknologi Web server agar kita dapat mengatasi berbagai kemungkinan serangan pada sistem aplikasi Web server. Setidaknya dua panduan berikut ini berdasarkan pada prinsip meminimalkan hak-hak khusus dapat diikuti. Hanya pesan kesalahan singkat yang boleh dikembalikan kepada browser sewaktu terjadi kesalahan. yaitu: • Minimalkan Kebocoran Informasi dari Header HTTP Sebagian besar Web server dikonfigurasikan agar tidak mengembalikan header HTTP selain dari informasi yang dibutuhkan. namun hanya menahan permainan script atau menghalangi scanner otomatis saja.

konfigurasi defaultnya justru akan menjadi sejumlah jalan penyerangan bagi para penyerang. namun tidak selalu diperlukan.Analisis Keamanan Web Server BAB IV KESIMPULAN Kesimpulan yang dapat diambil dari pembahasan makalah ini antara lain sebagai berikut: • Teknologi Web server merupakan inti setiap desain aplikasi Web. Untuk itu perlu diperhatikan sekali lubang-lubang keamanannya. namun mereka secara memberikan keleluasaan bagi kita untuk mematikan fungsifungsi atau program-program di dalamnya yang tidak kita inginkan. Tanpa memberi perhatian khusus pada keamanannya. EC5010 Keamanan Sistem Informasi 19 . sangat penting untuk dipahami bagaimana kerja masing-masing teknologi Web yang dipakai agar dapat diantisipasi kelemahan-kelemahan kemanannya. • Web server seperti IIS dan Apache memiliki kelemahan-kelemahan. • Dalam mengembangkan aplikasi Web. Konfigurasi default biasanya memberikan berbagai kemudahan dan fitur tambahan.

EC5010 Keamanan Sistem Informasi 20 . U.. Saumil Shah. Addison Wesley.S. and Shreeraj Shah. 2002.Analisis Keamanan Web Server DAFTAR PUSTAKA [1] Stuart McClure. Web Hacking: Attacks and Defense.