Tuesday, 2 January 2018

AUDIT SISTEM KEAMANAN SERVER WEB SESUAI STANDAR PERMENKOMINFO TENTANG KEAMANAN SERVER WEB PEMERINTAHAN






SOFTSKILL
AUDIT TEKNOLOGI SISTEM INFORMASI



oleh :
                                                                   
1.   Anggi Yolanda Faradila    
2.   Dimas Agus Setiawan
3.   Dwi Fernando
4.   Julianti
5.   Wahyuni                            


Kelas : 4KA35



Fakultas Ilmu Komputer & Teknologi Informasi
Universitas Gunadarma
PTA 2017/2018


AUDIT SISTEM KEAMANAN SERVER WEB SESUAI STANDAR PERMENKOMINFO TENTANG KEAMANAN SERVER WEB PEMERINTAHAN

Ruang lingkup: Audit around the computer
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.

Aspek Audit Server Web
Aspek-aspek yang dianalisis meliputi:
1.    Site Structure, adalah pemetaan struktur situs web yang terdapat di server web, seperti susunan folder dan file yang ada didalamnya.
2.    Port Scan, adalah pemetaan Port yang terbuka pada server web.
3.    Network Alerts, adalah pemetaan celah keamanan pada jaringan keluar masuk data pada server web.
4.    Web Alerts, adalah pemetaan kemungkinan celah keamanan yang ada pada aplikasi web di server web.
5.    Knowledge Base, adalah pemetaan service yang sedang berjalan pada server 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.    Hypertext.
2.    Resource Indentifers.
3.    Model Client-Server.
4.    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 computer pengguna. Pengguna kemudian dapat menggunakan hyperlink dalam tiap halaman web untuk navigasi ke informasi dalam web lainnya. (Wikipedia, 2008)

PERENCANAAN AUDIT SERVER WEB
Perencanaan merupakan suatu sketsa langkah-langkah awal yang akan dilakukan dalam melakukan
kegiatan audit server web.
1.    Identifikasi
·         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 Protoco /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).


·         Indentifikasi Kebutuhan Aplikasi
Identifikasi kebutuhan aplikasi dilakukan untuk mengetahui konten dan media yang digunakan dalam audit server web.
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.





INSTRUMEN/ALAT AUDIT
Software yang Digunakan Dalam Audit Server Web
Dalam audit server web ini, digunakan undaOS sebagai Operating System dengan aplikasi
penunjang yaitu nmap
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.    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)
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).
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).

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.
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.

CARA PENGGUNAAN INSTRUMENT AUDIT
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
 
 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
Celah Keamanan Jaringan
Network Alert
Port 8080 yang menjalankan layanan proxyCserver 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.



Celah Keamanan Aplikasi Web
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/Tutorial-
Blind-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:

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

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-2007-
4509/
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.
Solusi Celah Keamanan Jaringan
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/
Solusi Celah Keamanan Aplikasi Web
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

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
http://extensions.joomla.org/extensions/calendars-aevents

Solusi Web Scanning
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.
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.

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.

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
.
KESIMPULAN DAN SARAN
Kesimpulan
Kesimpulan dari Penelitian yang berjudul “ AUDIT
SISTEM KEAMANAN SERVER WEB SESUAI STANDAR PERMENKOMINFO TENTANG
KEAMANAN SERVER WEB PEMERINTAHAN”
adalah sebagai berikut :
1. 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 .
2. 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.
3. Server web tempat situs dihosting dan situs web masih belum memenuhi standar
keamanan server web untuk Pemerintahan
yang telah diatur Peraturan Kementerian
KOMINFO.
4. Templat yang digunakan oleh situs web
beta.kotimkab.go.id tidak memiliki kode lisensi yang mengakibatkan potensi pelanggaran atas hak cipta / menggunakan templat bajakan.
5. 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.

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.