SlideShare a Scribd company logo
1 of 6
HTTP Protocol Basic
23 May 2012

1. Pengertian Dasar
Ketika kita membuka sebuah halaman website, sebenarnya ada proses apa saja
dibalik terbukanya halaman website tersebut? Pertanyaan itulah yang akan mengarahkan
kita kepada salah satu pengetahuan tentang information gathering yang biasanya digunakan
oleh para penyusup untuk memasuki sistem suatu website. Seperti yang sudah kami
jelaskan pada tulisan sebelumnya bahwa information gathering adalah suatu proses penting

om

yang tidak akan dilewatkan oleh para penyusup untuk dilakukan sehingga mereka bisa

ai

l.c

mendapatkan lebih banyak informasi tentang sistem yang menjadi target. Sistem target yang

gm

akan dibahas dalam tulisan ini adalah sebuah website.

al
@

Sebelum kami membahas lebih jauh tentang informasi apa yang dicari oleh para

riz

penyusup terhadap suatu website melalui HTTP Protocol Basic, ada baiknya anda

k.

mengetahui beberapa istilah dibawah ini.

ar

HTTP adalah sebuah protokol dimana adanya pertukaran pesan antara client dan

&

m

server. Pesan ini terdiri dari dua bagian utama yaitu “Header” dan “Message Body“. Yang

l.c
om

disebut dengan Header adalah seperti tampak pada Gambar 1, sedangkan yang disebut
dengan Message Body adalah sorce code yang membentuk halaman website yang sedang

gm

ai

dibuka.

HTTP Protocol dibagi menjadi dua yaitu :

in
d

ri.

ca
n

tik

@

a. HTTP Request

Gambar 1. HTTP Request Header dari www.google.com

Ini adalah apa yang terjadi ketika kita membuka browser dan mengetikkan url
www.google.com, maka request HTTP ke www.google.com dimulai, apa yang anda lihat
pada gambar di atas adalah Header atau yang di sebut HTTP Request Headers. Koneksi ke
www.google.com pada port 80 dimulai sebelum mengirimkan perintah HTTP ke web server .
Ketika kita melakukan permintaan untuk membuka website www.google.com ada
beberapa bagian yg diperlukan, yaitu :
a.1. Request Method
Ini adalah jenis permintaan yang juga dikenal sebagai HTTP Verb. Tipe Request Method
adalah :
GET : verb ini digunakan untuk meminta resource yang spesifik, misalnya : ada sebuah
website yang meminta anda untuk memasukkan nama anda dan kemudian klik submit,
maka pernyataan GET akan terlihat seperti ini :
GET /page.php?name=indri HTTP/1.1
POST : verb ini digunakan untuk mengirimkan data ke bentuk html dan argumen berada di body
request.
PUT : dapat digunakan untuk mengupload file ke server

ai

l.c

OPTIONS : digunakan untuk query web server tentang verb yang digunakan.

om

DELETE : digunakan untuk menghapus resource / file tertentu dari web server

gm

a.2. Host Header

al
@

HTTP Headers memiliki struktur sebagai berikut :

ar

k.

riz

Header-name: Header-value

m

Host header mengijinkan web server untuk host beberapa website pada alamat IP sama. ini

&

berarti anda harus menentukan website yang anda inginkan di host header.

ai

l.c
om

contoh : http://www.google.com

gm

a.3. Protocol

@

Ini adalah versi HTTP protokol dari browser dalam berkomunikasi dengan web server

ca
n

tik

(HTTP/1.1).

ri.

a.4. Path

in
d

Ini adalah alamat file yang anda minta, contoh : /downloads/index.php
a.5. Host Value
Contoh jika anda ingin menuju ke host : www.google.com host value + path akan menjadi
rangkaian URL yang anda minta.
a.6. Accept Header
Ini digunakan oleh browser untuk menentukan jenis dokumen yang diharapkan sebagai hasil
dari permintaan anda.
a.7. Host user agent
User agent menampilkan versi browser, sistem operasi dan bahasa untuk remote web
server. semua web browser memiliki user agent untuk identifikasi mereka sendiri. ini adalah
bagaimana website mengenali jenis browser yang digunakan.
contoh :
user-agent : Mozilla/5.0 (windows; U; Windows NT 6.1; it; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2
GTBDFffGTB7.0

a.8. Header Connection
Perbedaan antara HTTP/1.1 dengan HTTP/1.0, yaitu penggunaan hubungan persistent /

om

kuat.

HTTP/1.0 membuka satu koneksi untuk tiap permintaan URI, header = Connection: close.



HTTP/1.1 dapat menggunakan sebuah koneksi TCP untuk beberapa permintaan URI (persistent),

gm

ai

l.c



al
@

header = Connection: Keep-Alive

riz

b. HTTP Response

ar

k.

Menanggapi Permintaan HTTP, web server akan merespon dengan sumber daya yang

m

diminta sebelumnya oleh sejumlah Headers. Header ini akan digunakan oleh browser web

Gambar 2. HTTP Response pada www.google.com

in
d

ri.

ca
n

tik

@

gm

ai

l.c
om

&

untuk menafsirkan isi yang ada dalam Respon content.

b.1. Cache headers
Header Cache memungkinkan Browser dan Server untuk bertukar informasi tentang cache
content. Cache contents menghemat bandwidth karena mencegah browser untuk meminta
content yang tidak dimodifikasi ketika sumber daya yang sama akan digunakan.

b.2. Server header
Header Server berisi banner dari Web Server. Apache dan IIS adalah web server umum.
Google menggunakan sebuah banner web server custom yang disebut sebagai “GWS”
(Google Web Server).
b.3. Via header
Via Header hadir ketika sambungan telah melalui proxy. Proxy adalah web server khusus
untuk pengiriman cache content agar lebih cepat

b.4. Content
Ini adalah content dari resource yang diminta. Konten dapat menjadi halaman web html,
dokumen atau file binary. Jenis konten terkandung dalam header Content-type

2. Arti penting Information Gathering di HTTP Protrocol
Untuk membuka suatu website dibutuhkan Request Method, jika kita bisa

om

mengetahui Request Method apa saja yang digunakan untuk membuka halaman suatu

l.c

website, maka besar sekali kemungkinan penyusup dapat memanfaatkannya. Contohnya,

gm

ai

jika penyusup mengetahui bahwa request method yang di ijinkan adalah “OPTIONS”, maka

al
@

penyusup bisa mengetahui seluruh Request Method yang di ijinkan di halaman tersebut

in
d

ri.

ca
n

tik

@

gm

ai

l.c
om

&

m

ar

k.

riz

selain “OPTIONS”, seperti tampak pada Gambar 3.

Gambar 3. Request Method yang di ijinkan di halaman website

Lalu bagaimana cara penyusup bisa mengetahui Request Method yang di ijinkan ?
Sebut saja sebuah tool yang bernama Burp Suite, dengan Burp Suite penyusup hanya perlu
memasukkan alamat URL dari suatu halaman website, maka penyusup tersebut dapat
mengetahui Request Method yang di ijinkan di halaman web tersebut.
Pada Gambar 3, terlihat Request Method yang di ijinkan di antaranya ada “TRACE”, dengan
menggunakan Request Method “TRACE”, penyusup dapat meng- capture cookies dari client
yang aktif (dampaknya sama dengan serangan XSS).
Server Header juga merupakan informasi penting yang dibutuhkan oleh penyusup.
Jika beruntung mendapatkan banner dari web server lengkap dengan versinya maka
penyusup dapat memanfaatkan informasi tersebut untuk mencari kelemahan, salah satu nya
jika versi dari banner tersebut masih menggunakan versi lama atau belum di patch maka
berpeluang untuk di serang dengan menggunakan metode DoS.

3. Solusi Pencegahan
Dari penjelasan di atas, kita bisa mengetahui bagaimana cara seorang penyusup
bisa melakukan serangan pada system website kita. Sebenarnya, penyusup dapat
melakukan serangan apabila penyusup telah memiliki informasi yang lengkap. Jika seorang

om

pengaman data telah mengetahui hal itu, maka solusi yang bisa dilakukan adalah menutup

l.c

segala kemungkinan agar penyusup tidak mendapatkan informasi yang dibutuhkan.

gm

ai

Untuk kasus HTTP Protocol ini, informasi yang sangat dibutuhkan oleh penyusup adalah

al
@

mengetahui Request Method yang di ijinkan, terutama “OPTIONS” dan banner dari web
server.

k.

riz

Pertanyaan selanjutnya, bagaimana cara menutup Request Method “OPTIONS” dan banner

ar

dari web server tersebut?

m

Untuk menutup Request Method “OPTIONS” adalah :

l.c
om

&

Misalnya halaman web yang digunakan untuk menyimpan file images, Request Method
“OPTIONS” terbuka. Anggap saja tempat untuk menyimpan file images itu ada di directory

ai

“C:/xampp/htdocs/dvwa/dvwa/images/”, maka langkah-langkah nya adalah seperti dibawah

gm

ini.

in
d

ri.

ca
n

tik

@

Berikut ini setting di httpd.conf yang merupakan vulnerability misconfiguration.
Untuk solusi nya, bisa dilakukan sedikit perubahan terhadap setting nya di file tersebut.

Untuk menutup informasi banner dari web server bisa dilakukan dengan merubah

om

konfigurasi “ServerSignature On” menjadi “ServerSignature Off” pada file httpd.conf.

l.c

4. Informasi untuk pembaca

gm

ai

Tulisan ini dibuat untuk membantu tugas dari para pengaman data, bukan untuk membantu

al
@

tugas dari para penyusup

k.

riz

Mohon maaf, apabila teknik-teknik detil untuk penyusup tidak dibahas pada tulisan ini.

ar

Penulis:

m

- Indri (indri.cantik@gmail.com)

in
d

ri.

ca
n

tik

@

gm

ai

l.c
om

&

- Mark (mark.rizal@gmail.com)

More Related Content

What's hot

Ppt mengakses informasi melalui homepage
Ppt mengakses informasi melalui homepagePpt mengakses informasi melalui homepage
Ppt mengakses informasi melalui homepageAisyah Safitri Hayati
 
Materi Tugas TI 3&4 " Browser dan Search Engine"
Materi Tugas TI 3&4 " Browser dan Search Engine"Materi Tugas TI 3&4 " Browser dan Search Engine"
Materi Tugas TI 3&4 " Browser dan Search Engine"yogi hranggara
 
Fasilitas fasilitas di internet
Fasilitas fasilitas di internetFasilitas fasilitas di internet
Fasilitas fasilitas di internetErreina Saifa
 
Tugas rekweb 2 individu
Tugas rekweb 2 individuTugas rekweb 2 individu
Tugas rekweb 2 individuFani Heryati
 
Tugas atpi arif rohman khakim dan samuel setiado
Tugas atpi arif rohman khakim dan samuel setiadoTugas atpi arif rohman khakim dan samuel setiado
Tugas atpi arif rohman khakim dan samuel setiadoFebriy Y
 
Web hacking-dvwa-publish-130131073605-phpapp01
Web hacking-dvwa-publish-130131073605-phpapp01Web hacking-dvwa-publish-130131073605-phpapp01
Web hacking-dvwa-publish-130131073605-phpapp01Jalil Mashab-Crew
 
Materi kuliah browser
Materi kuliah browserMateri kuliah browser
Materi kuliah browserariesperdana
 
Ta agung pratama XII-TKJ1 smk negeri 4 bandung
Ta agung pratama XII-TKJ1 smk negeri 4 bandungTa agung pratama XII-TKJ1 smk negeri 4 bandung
Ta agung pratama XII-TKJ1 smk negeri 4 bandungagung pratama
 
Budi aplikasi-crud-sederhana-dengan-php-dan-my sql-libre
Budi aplikasi-crud-sederhana-dengan-php-dan-my sql-libreBudi aplikasi-crud-sederhana-dengan-php-dan-my sql-libre
Budi aplikasi-crud-sederhana-dengan-php-dan-my sql-libreUniska Lam
 
Tugas 2 ihsan riadi - 1412511162
Tugas 2   ihsan riadi - 1412511162Tugas 2   ihsan riadi - 1412511162
Tugas 2 ihsan riadi - 1412511162ihsan riadi
 
Tugas atpi protokol http, sindikasi konten, dan layanan
Tugas atpi protokol http, sindikasi konten, dan layananTugas atpi protokol http, sindikasi konten, dan layanan
Tugas atpi protokol http, sindikasi konten, dan layananFebriy Y
 
Presentation web-browser
Presentation web-browserPresentation web-browser
Presentation web-browserTaufik Umar
 

What's hot (19)

HTTP Protokol
HTTP ProtokolHTTP Protokol
HTTP Protokol
 
Ppt mengakses informasi melalui homepage
Ppt mengakses informasi melalui homepagePpt mengakses informasi melalui homepage
Ppt mengakses informasi melalui homepage
 
Materi Tugas TI 3&4 " Browser dan Search Engine"
Materi Tugas TI 3&4 " Browser dan Search Engine"Materi Tugas TI 3&4 " Browser dan Search Engine"
Materi Tugas TI 3&4 " Browser dan Search Engine"
 
Fasilitas fasilitas di internet
Fasilitas fasilitas di internetFasilitas fasilitas di internet
Fasilitas fasilitas di internet
 
Presentation1
Presentation1Presentation1
Presentation1
 
Tugas 2 0317
Tugas 2   0317Tugas 2   0317
Tugas 2 0317
 
Situs web
Situs webSitus web
Situs web
 
Tugas rekweb 2 individu
Tugas rekweb 2 individuTugas rekweb 2 individu
Tugas rekweb 2 individu
 
Tugas atpi arif rohman khakim dan samuel setiado
Tugas atpi arif rohman khakim dan samuel setiadoTugas atpi arif rohman khakim dan samuel setiado
Tugas atpi arif rohman khakim dan samuel setiado
 
1989249
19892491989249
1989249
 
Web hacking-dvwa-publish-130131073605-phpapp01
Web hacking-dvwa-publish-130131073605-phpapp01Web hacking-dvwa-publish-130131073605-phpapp01
Web hacking-dvwa-publish-130131073605-phpapp01
 
Yadi Internet
Yadi InternetYadi Internet
Yadi Internet
 
Materi kuliah browser
Materi kuliah browserMateri kuliah browser
Materi kuliah browser
 
Ta agung pratama XII-TKJ1 smk negeri 4 bandung
Ta agung pratama XII-TKJ1 smk negeri 4 bandungTa agung pratama XII-TKJ1 smk negeri 4 bandung
Ta agung pratama XII-TKJ1 smk negeri 4 bandung
 
Budi aplikasi-crud-sederhana-dengan-php-dan-my sql-libre
Budi aplikasi-crud-sederhana-dengan-php-dan-my sql-libreBudi aplikasi-crud-sederhana-dengan-php-dan-my sql-libre
Budi aplikasi-crud-sederhana-dengan-php-dan-my sql-libre
 
Tugas 2 ihsan riadi - 1412511162
Tugas 2   ihsan riadi - 1412511162Tugas 2   ihsan riadi - 1412511162
Tugas 2 ihsan riadi - 1412511162
 
Situs web
Situs webSitus web
Situs web
 
Tugas atpi protokol http, sindikasi konten, dan layanan
Tugas atpi protokol http, sindikasi konten, dan layananTugas atpi protokol http, sindikasi konten, dan layanan
Tugas atpi protokol http, sindikasi konten, dan layanan
 
Presentation web-browser
Presentation web-browserPresentation web-browser
Presentation web-browser
 

Similar to HTTP Protocol Basic

Tugas 2 0317-dewi apriliani-1412510602
Tugas 2 0317-dewi apriliani-1412510602Tugas 2 0317-dewi apriliani-1412510602
Tugas 2 0317-dewi apriliani-1412510602dewiapril1996
 
Tugas 2 0317-imelda felicia-1412510545
Tugas 2 0317-imelda felicia-1412510545Tugas 2 0317-imelda felicia-1412510545
Tugas 2 0317-imelda felicia-1412510545imeldafelicia
 
Tugas 2 0317-fahreza yozi-1612510832
Tugas 2 0317-fahreza yozi-1612510832Tugas 2 0317-fahreza yozi-1612510832
Tugas 2 0317-fahreza yozi-1612510832fahreza yozi
 
Tugas 2 0317-nurul azmi-1412510587
Tugas 2 0317-nurul azmi-1412510587Tugas 2 0317-nurul azmi-1412510587
Tugas 2 0317-nurul azmi-1412510587nurul azmi
 
Jeni web programming-bab 1-pengenalan pemrograman web
Jeni web programming-bab 1-pengenalan pemrograman webJeni web programming-bab 1-pengenalan pemrograman web
Jeni web programming-bab 1-pengenalan pemrograman webSejahtera Affif
 
Pertemuan 09 client server
Pertemuan 09   client serverPertemuan 09   client server
Pertemuan 09 client serveraingaingaing
 
Asp security dan master page asp.net
Asp security dan master page asp.netAsp security dan master page asp.net
Asp security dan master page asp.netHendra Fillan
 
Makalah web server debian 6 - refzqi
Makalah web server debian 6 - refzqiMakalah web server debian 6 - refzqi
Makalah web server debian 6 - refzqisafei123
 
Jeni Web Programming Bab 1 Pengenalan Pemrograman Web
Jeni Web Programming Bab 1 Pengenalan Pemrograman WebJeni Web Programming Bab 1 Pengenalan Pemrograman Web
Jeni Web Programming Bab 1 Pengenalan Pemrograman WebIndividual Consultants
 
Tugas 2 - 0317-mukhlis abdilah-1411511213
Tugas 2 - 0317-mukhlis abdilah-1411511213Tugas 2 - 0317-mukhlis abdilah-1411511213
Tugas 2 - 0317-mukhlis abdilah-1411511213mukhlis abdilah
 
Tugas2 krisna muktiandika-1511510347
Tugas2 krisna muktiandika-1511510347Tugas2 krisna muktiandika-1511510347
Tugas2 krisna muktiandika-1511510347krisna mukti andika
 
Tugas 2 – 0317 (individu) andrian lesmana
Tugas 2 – 0317 (individu) andrian lesmanaTugas 2 – 0317 (individu) andrian lesmana
Tugas 2 – 0317 (individu) andrian lesmanaAndrian Lesmana
 
Laporan web
Laporan webLaporan web
Laporan webrhizky
 
Laporan tugas besar
Laporan tugas besarLaporan tugas besar
Laporan tugas besar1110651055
 
Panduan refresh-pattern-libre
Panduan refresh-pattern-librePanduan refresh-pattern-libre
Panduan refresh-pattern-libreAbu Fathi
 
Bypass web security dengan menggunakan teknik XST (Cross Sites Tracing)
Bypass web security dengan menggunakan  teknik XST (Cross Sites Tracing)Bypass web security dengan menggunakan  teknik XST (Cross Sites Tracing)
Bypass web security dengan menggunakan teknik XST (Cross Sites Tracing)Mark Thalib
 
Pertemuan 6 pengantar tik (stkip)
Pertemuan 6 pengantar tik (stkip)Pertemuan 6 pengantar tik (stkip)
Pertemuan 6 pengantar tik (stkip)Dede Alamsyah
 

Similar to HTTP Protocol Basic (20)

Tugas 2 0317-dewi apriliani-1412510602
Tugas 2 0317-dewi apriliani-1412510602Tugas 2 0317-dewi apriliani-1412510602
Tugas 2 0317-dewi apriliani-1412510602
 
Tugas 2 0317-imelda felicia-1412510545
Tugas 2 0317-imelda felicia-1412510545Tugas 2 0317-imelda felicia-1412510545
Tugas 2 0317-imelda felicia-1412510545
 
Tugas 2 0317-fahreza yozi-1612510832
Tugas 2 0317-fahreza yozi-1612510832Tugas 2 0317-fahreza yozi-1612510832
Tugas 2 0317-fahreza yozi-1612510832
 
Tugas 2 0317-nurul azmi-1412510587
Tugas 2 0317-nurul azmi-1412510587Tugas 2 0317-nurul azmi-1412510587
Tugas 2 0317-nurul azmi-1412510587
 
Jeni web programming-bab 1-pengenalan pemrograman web
Jeni web programming-bab 1-pengenalan pemrograman webJeni web programming-bab 1-pengenalan pemrograman web
Jeni web programming-bab 1-pengenalan pemrograman web
 
Pertemuan 09 client server
Pertemuan 09   client serverPertemuan 09   client server
Pertemuan 09 client server
 
Asp security dan master page asp.net
Asp security dan master page asp.netAsp security dan master page asp.net
Asp security dan master page asp.net
 
Makalah web server debian 6 - refzqi
Makalah web server debian 6 - refzqiMakalah web server debian 6 - refzqi
Makalah web server debian 6 - refzqi
 
Jeni Web Programming Bab 1 Pengenalan Pemrograman Web
Jeni Web Programming Bab 1 Pengenalan Pemrograman WebJeni Web Programming Bab 1 Pengenalan Pemrograman Web
Jeni Web Programming Bab 1 Pengenalan Pemrograman Web
 
Tugas 2 - 0317-mukhlis abdilah-1411511213
Tugas 2 - 0317-mukhlis abdilah-1411511213Tugas 2 - 0317-mukhlis abdilah-1411511213
Tugas 2 - 0317-mukhlis abdilah-1411511213
 
Tugas2 krisna muktiandika-1511510347
Tugas2 krisna muktiandika-1511510347Tugas2 krisna muktiandika-1511510347
Tugas2 krisna muktiandika-1511510347
 
Tugas 2 – 0317 (individu) andrian lesmana
Tugas 2 – 0317 (individu) andrian lesmanaTugas 2 – 0317 (individu) andrian lesmana
Tugas 2 – 0317 (individu) andrian lesmana
 
Penjelasan Materi Web Server
Penjelasan Materi Web Server Penjelasan Materi Web Server
Penjelasan Materi Web Server
 
Laporan web
Laporan webLaporan web
Laporan web
 
Laporan tugas besar
Laporan tugas besarLaporan tugas besar
Laporan tugas besar
 
Mpw
MpwMpw
Mpw
 
Panduan refresh-pattern-libre
Panduan refresh-pattern-librePanduan refresh-pattern-libre
Panduan refresh-pattern-libre
 
Bypass web security dengan menggunakan teknik XST (Cross Sites Tracing)
Bypass web security dengan menggunakan  teknik XST (Cross Sites Tracing)Bypass web security dengan menggunakan  teknik XST (Cross Sites Tracing)
Bypass web security dengan menggunakan teknik XST (Cross Sites Tracing)
 
Pbw week 01 basics
Pbw week 01   basicsPbw week 01   basics
Pbw week 01 basics
 
Pertemuan 6 pengantar tik (stkip)
Pertemuan 6 pengantar tik (stkip)Pertemuan 6 pengantar tik (stkip)
Pertemuan 6 pengantar tik (stkip)
 

HTTP Protocol Basic

  • 1. HTTP Protocol Basic 23 May 2012 1. Pengertian Dasar Ketika kita membuka sebuah halaman website, sebenarnya ada proses apa saja dibalik terbukanya halaman website tersebut? Pertanyaan itulah yang akan mengarahkan kita kepada salah satu pengetahuan tentang information gathering yang biasanya digunakan oleh para penyusup untuk memasuki sistem suatu website. Seperti yang sudah kami jelaskan pada tulisan sebelumnya bahwa information gathering adalah suatu proses penting om yang tidak akan dilewatkan oleh para penyusup untuk dilakukan sehingga mereka bisa ai l.c mendapatkan lebih banyak informasi tentang sistem yang menjadi target. Sistem target yang gm akan dibahas dalam tulisan ini adalah sebuah website. al @ Sebelum kami membahas lebih jauh tentang informasi apa yang dicari oleh para riz penyusup terhadap suatu website melalui HTTP Protocol Basic, ada baiknya anda k. mengetahui beberapa istilah dibawah ini. ar HTTP adalah sebuah protokol dimana adanya pertukaran pesan antara client dan & m server. Pesan ini terdiri dari dua bagian utama yaitu “Header” dan “Message Body“. Yang l.c om disebut dengan Header adalah seperti tampak pada Gambar 1, sedangkan yang disebut dengan Message Body adalah sorce code yang membentuk halaman website yang sedang gm ai dibuka. HTTP Protocol dibagi menjadi dua yaitu : in d ri. ca n tik @ a. HTTP Request Gambar 1. HTTP Request Header dari www.google.com Ini adalah apa yang terjadi ketika kita membuka browser dan mengetikkan url www.google.com, maka request HTTP ke www.google.com dimulai, apa yang anda lihat pada gambar di atas adalah Header atau yang di sebut HTTP Request Headers. Koneksi ke www.google.com pada port 80 dimulai sebelum mengirimkan perintah HTTP ke web server . Ketika kita melakukan permintaan untuk membuka website www.google.com ada beberapa bagian yg diperlukan, yaitu :
  • 2. a.1. Request Method Ini adalah jenis permintaan yang juga dikenal sebagai HTTP Verb. Tipe Request Method adalah : GET : verb ini digunakan untuk meminta resource yang spesifik, misalnya : ada sebuah website yang meminta anda untuk memasukkan nama anda dan kemudian klik submit, maka pernyataan GET akan terlihat seperti ini : GET /page.php?name=indri HTTP/1.1 POST : verb ini digunakan untuk mengirimkan data ke bentuk html dan argumen berada di body request. PUT : dapat digunakan untuk mengupload file ke server ai l.c OPTIONS : digunakan untuk query web server tentang verb yang digunakan. om DELETE : digunakan untuk menghapus resource / file tertentu dari web server gm a.2. Host Header al @ HTTP Headers memiliki struktur sebagai berikut : ar k. riz Header-name: Header-value m Host header mengijinkan web server untuk host beberapa website pada alamat IP sama. ini & berarti anda harus menentukan website yang anda inginkan di host header. ai l.c om contoh : http://www.google.com gm a.3. Protocol @ Ini adalah versi HTTP protokol dari browser dalam berkomunikasi dengan web server ca n tik (HTTP/1.1). ri. a.4. Path in d Ini adalah alamat file yang anda minta, contoh : /downloads/index.php a.5. Host Value Contoh jika anda ingin menuju ke host : www.google.com host value + path akan menjadi rangkaian URL yang anda minta. a.6. Accept Header Ini digunakan oleh browser untuk menentukan jenis dokumen yang diharapkan sebagai hasil dari permintaan anda.
  • 3. a.7. Host user agent User agent menampilkan versi browser, sistem operasi dan bahasa untuk remote web server. semua web browser memiliki user agent untuk identifikasi mereka sendiri. ini adalah bagaimana website mengenali jenis browser yang digunakan. contoh : user-agent : Mozilla/5.0 (windows; U; Windows NT 6.1; it; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2 GTBDFffGTB7.0 a.8. Header Connection Perbedaan antara HTTP/1.1 dengan HTTP/1.0, yaitu penggunaan hubungan persistent / om kuat. HTTP/1.0 membuka satu koneksi untuk tiap permintaan URI, header = Connection: close.  HTTP/1.1 dapat menggunakan sebuah koneksi TCP untuk beberapa permintaan URI (persistent), gm ai l.c  al @ header = Connection: Keep-Alive riz b. HTTP Response ar k. Menanggapi Permintaan HTTP, web server akan merespon dengan sumber daya yang m diminta sebelumnya oleh sejumlah Headers. Header ini akan digunakan oleh browser web Gambar 2. HTTP Response pada www.google.com in d ri. ca n tik @ gm ai l.c om & untuk menafsirkan isi yang ada dalam Respon content. b.1. Cache headers Header Cache memungkinkan Browser dan Server untuk bertukar informasi tentang cache content. Cache contents menghemat bandwidth karena mencegah browser untuk meminta content yang tidak dimodifikasi ketika sumber daya yang sama akan digunakan. b.2. Server header Header Server berisi banner dari Web Server. Apache dan IIS adalah web server umum. Google menggunakan sebuah banner web server custom yang disebut sebagai “GWS” (Google Web Server).
  • 4. b.3. Via header Via Header hadir ketika sambungan telah melalui proxy. Proxy adalah web server khusus untuk pengiriman cache content agar lebih cepat b.4. Content Ini adalah content dari resource yang diminta. Konten dapat menjadi halaman web html, dokumen atau file binary. Jenis konten terkandung dalam header Content-type 2. Arti penting Information Gathering di HTTP Protrocol Untuk membuka suatu website dibutuhkan Request Method, jika kita bisa om mengetahui Request Method apa saja yang digunakan untuk membuka halaman suatu l.c website, maka besar sekali kemungkinan penyusup dapat memanfaatkannya. Contohnya, gm ai jika penyusup mengetahui bahwa request method yang di ijinkan adalah “OPTIONS”, maka al @ penyusup bisa mengetahui seluruh Request Method yang di ijinkan di halaman tersebut in d ri. ca n tik @ gm ai l.c om & m ar k. riz selain “OPTIONS”, seperti tampak pada Gambar 3. Gambar 3. Request Method yang di ijinkan di halaman website Lalu bagaimana cara penyusup bisa mengetahui Request Method yang di ijinkan ? Sebut saja sebuah tool yang bernama Burp Suite, dengan Burp Suite penyusup hanya perlu memasukkan alamat URL dari suatu halaman website, maka penyusup tersebut dapat mengetahui Request Method yang di ijinkan di halaman web tersebut. Pada Gambar 3, terlihat Request Method yang di ijinkan di antaranya ada “TRACE”, dengan menggunakan Request Method “TRACE”, penyusup dapat meng- capture cookies dari client yang aktif (dampaknya sama dengan serangan XSS).
  • 5. Server Header juga merupakan informasi penting yang dibutuhkan oleh penyusup. Jika beruntung mendapatkan banner dari web server lengkap dengan versinya maka penyusup dapat memanfaatkan informasi tersebut untuk mencari kelemahan, salah satu nya jika versi dari banner tersebut masih menggunakan versi lama atau belum di patch maka berpeluang untuk di serang dengan menggunakan metode DoS. 3. Solusi Pencegahan Dari penjelasan di atas, kita bisa mengetahui bagaimana cara seorang penyusup bisa melakukan serangan pada system website kita. Sebenarnya, penyusup dapat melakukan serangan apabila penyusup telah memiliki informasi yang lengkap. Jika seorang om pengaman data telah mengetahui hal itu, maka solusi yang bisa dilakukan adalah menutup l.c segala kemungkinan agar penyusup tidak mendapatkan informasi yang dibutuhkan. gm ai Untuk kasus HTTP Protocol ini, informasi yang sangat dibutuhkan oleh penyusup adalah al @ mengetahui Request Method yang di ijinkan, terutama “OPTIONS” dan banner dari web server. k. riz Pertanyaan selanjutnya, bagaimana cara menutup Request Method “OPTIONS” dan banner ar dari web server tersebut? m Untuk menutup Request Method “OPTIONS” adalah : l.c om & Misalnya halaman web yang digunakan untuk menyimpan file images, Request Method “OPTIONS” terbuka. Anggap saja tempat untuk menyimpan file images itu ada di directory ai “C:/xampp/htdocs/dvwa/dvwa/images/”, maka langkah-langkah nya adalah seperti dibawah gm ini. in d ri. ca n tik @ Berikut ini setting di httpd.conf yang merupakan vulnerability misconfiguration.
  • 6. Untuk solusi nya, bisa dilakukan sedikit perubahan terhadap setting nya di file tersebut. Untuk menutup informasi banner dari web server bisa dilakukan dengan merubah om konfigurasi “ServerSignature On” menjadi “ServerSignature Off” pada file httpd.conf. l.c 4. Informasi untuk pembaca gm ai Tulisan ini dibuat untuk membantu tugas dari para pengaman data, bukan untuk membantu al @ tugas dari para penyusup k. riz Mohon maaf, apabila teknik-teknik detil untuk penyusup tidak dibahas pada tulisan ini. ar Penulis: m - Indri (indri.cantik@gmail.com) in d ri. ca n tik @ gm ai l.c om & - Mark (mark.rizal@gmail.com)