Anda di halaman 1dari 129

Penyusun

1.
2.
3.
4.
5.
6.
7.
8.
9.

I Gede Iswara Darmawan [SOP]


Ida Bagus Krisna Wedanta [KWP]
Sufyan Sauri [SYN]
Irma Angraeini [IAG]
Fadly Muhammad [FDL]
Ganang Afif Rijazim [GAN]
Okta Puspita Dwi Anggorowati [OKT]
Arif Nurfajar [RIP]
Tegar Pamungkas [GAR]

Laboraturium Sistem Operasi & Jaringan Komputer

| ii

Tata Tertib
Peraturan Praktikum
I.

II.

III.

IV.

Syarat Praktikum
Praktikan wajib menggunakan pakaian seragam sesuai dengan peraturan
kampus yang berlaku yaitu tidak menggunakan celana jeans.
Tidak boleh memakai jaket pada saat praktikum dilaksanakan, kecuali sakit.
Wajib membawa kartu praktikum yang disertai foto formal dg ukuran m x n.
Jika tidak dapat melengkapi peraturan diatas, praktikan dipersilahkan untuk
melengkapi persyaratan tanpa tambahan waktu praktikum.
Kehadiran Praktikum
Praktikan harus menghadiri praktikum tepat waktu
Praktikum harus dihadiri oleh praktikan yang bersangkutan dan tidak boleh
diwakilkan.
Tidak ada waktu tambahan bagi praktikan apabila terlambat mengikuti
praktikum.
Ketentuan Praktikum
Praktikan wajib menjaga etika saat praktikum.
Praktikan wajib menjaga ketertiban dan kebersihan lab.
Praktikan wajib menjaga dan bertanggung jawab atas seluruh fasilitas
praktikum yang digunakan.
Alat komunikasi harap dikondisikan (dinonaktifkan / disilent) saat praktikum
berlangsung
Kejujuran adalah yang utama.
Segala Bentuk Kecurangan akan mendapat sanksi berupa nilai E untuk modul
bersangkutan.
Peraturan Pra-Praktikum
Menggunakan Seragam, No Jeans.
Telat 10 Menit, Membuat Resume tentang informasi yang disampaikan saat
Runmod tulis tangan. dan dikumpulkan sehari setelah Pra Praktikum pukul
20.00 Di Lab Sisjar (c205)
Hadir Tepat Waktu.

Jika tidak menghadiri pra-praktikum (Running Modul) akan mendapatkan sanksi


berupa :
1. Tidak boleh mengajukan protes atas peraturan dan ketentuan yang telah dibuat
oleh laboratorium SI terkait praktikum selama 1 semester
2. Membuat Resume tentang informasi yang disampaikan saat Pra Praktikum tulis
tangan. dan dikumpulkan sehari setelah Pra Praktikum pukul 20.00 Di Lab Sisjar
(c205) beserta Tanda Tangan Seluruh Assisten Lab Sisjar (22 asisten) yang
terlampir dengan Resume.
3. Nilai modul 1 maksimal 75% jika tidak mengerjakan tugas.
Laboraturium Sistem Operasi & Jaringan Komputer

| iii

4. Sakit, ijin, diperbolehkan tidak mengikuti pra-praktikum dengan syarat harus


menyerahkan surat keterangan ke Lab Sisjar (C205) maksimal 6 jam sebelum pra
praktikum dimulai.

Laboraturium Sistem Operasi & Jaringan Komputer

| iv

Daftar Isi
Penyusun ........................................................................................................................................................... ii
Tata Tertib ....................................................................................................................................................... iii
Daftar Isi .............................................................................................................................................................v
MODUL 1 Windows Firewall ..................................................................................................................... 1
TUJUAN PRAKTIKUM............................................................................................................................... 1
ALAT DAN BAHAN .................................................................................................................................... 1
LANDASAN TEORI..................................................................................................................................... 1
A.

Sistem Operasi ........................................................................................................................ 1

B.

Keamanan Sistem Operasi ................................................................................................ 1

C.

Firewall ....................................................................................................................................... 2

PRAKTIKUM ................................................................................................................................................ 3
MODUL 2 Information Gathering & Report ......................................................................................... 17
TUJUAN PRAKTIKUM............................................................................................................................. 17
ALAT DAN BAHAN .................................................................................................................................. 17
LANDASAN TEORI................................................................................................................................... 17
A.

Information Gathering ...................................................................................................... 17

B.

Packet Analysis. .................................................................................................................... 19

A.

Wireshark................................................................................................................................ 20

PRAKTIKUM .............................................................................................................................................. 21
MODUL 3 Web Security with DVWA ...................................................................................................... 24
TUJUAN PRAKTIKUM............................................................................................................................. 24
ALAT DAN BAHAN .................................................................................................................................. 24
LANDASAN TEORI................................................................................................................................... 24
A.

Web Application Security ................................................................................................. 24

Laboraturium Sistem Operasi & Jaringan Komputer

|v

B.

Celah Keamanan Aplikasi Web ..................................................................................... 25

C.

DVWA ......................................................................................................................................... 27

D.

Jenis Jenis Penyerangan pada Web Application ............................................... 28

E.

MD5 Encryption .................................................................................................................... 31

F.

John The Ripper ..................................................................................................................... 31

PRAKTIKUM .............................................................................................................................................. 31
MODUL 4 CISCO Access Control List..................................................................................................... 54
TUJUAN PRAKTIKUM............................................................................................................................. 54
ALAT DAN BAHAN .................................................................................................................................. 54
LANDASAN TEORI................................................................................................................................... 54
A.

Access Control List .............................................................................................................. 54

B.

Manfaat Access Control List ........................................................................................... 57

C.

Tipe Access Control List ................................................................................................... 58

D.

Aturan Pembuatan Access Control List ................................................................... 59

PRAKTIKUM .............................................................................................................................................. 60
MODUL 5 Proxy Server ............................................................................................................................... 68
TUJUAN PRAKTIKUM............................................................................................................................. 68
ALAT DAN BAHAN .................................................................................................................................. 68
LANDASAN TEORI................................................................................................................................... 68
A.

Pengertian proxy server .................................................................................................. 68

B.

Fungsi proxy .......................................................................................................................... 69

C.

Jenis-jenis proxy ................................................................................................................... 69

D.

Macam-macam software proxy server ..................................................................... 70

E.

Web proxy ............................................................................................................................... 72

F.

Dampak penggunaan proxy ............................................................................................ 73

PRAKTIKUM .............................................................................................................................................. 73
MODUL 6 Penetration Testing Menggunakan Kali Linux, Nmap dan Metasploit................ 88
Laboraturium Sistem Operasi & Jaringan Komputer

| vi

TUJUAN PRAKTIKUM............................................................................................................................. 88
ALAT DAN BAHAN .................................................................................................................................. 88
LANDASAN TEORI................................................................................................................................... 88
A.

Penetration Testing............................................................................................................ 88

B.

Kali Linux ................................................................................................................................. 88

C.

Metasploitable OS ................................................................................................................ 90

D.

Metasploit Framework ...................................................................................................... 93

E.

Nmap .......................................................................................................................................... 95

PRAKTIKUM ........................................................................................................................................... 101


Daftar Pustaka ............................................................................................................................................ 120

Laboraturium Sistem Operasi & Jaringan Komputer

| vii

MODUL 1
Windows Firewall
TUJUAN PRAKTIKUM

Praktikan memahami konsep Keamanan Sistem Operasi

Praktikan memahami cara kerja firewall

Praktikan mampu melakukan konfigurasi Windows firewall

ALAT DAN BAHAN

Modul Praktikum Sisjar

Komputer

Sistem Operasi Windows 8

LANDASAN TEORI
A. Sistem Operasi
Sistem operasi merupakan sperangkat lunak yang berguna untuk menjembatani antara
aplikasi dan perangkat keras dimana aplikasi dijalankan. Sistem Operasi komputer juga
melakukan semua perintah perintah penting dalam komputer, serta menjamin
aplikasi-aplikasi yang berbeda fungsinya dapat berjalan lancer secara bersamaan
tanpa hambatan. Jika beberapa aplikasi berjalan secara bersamaan, maka Sistem
Operasi Komputer akan mengatur jadwal yang tepat, sehingga sebisa mungkin semua
proses pada komputer yang berjalan mendapatkan waktu yang cukup untuk
menggunakan CPU dan tidak saling mengganggu dengan perangkat yang lain.
Beberapa sistem operasi yang sudah mendunia yaitu Windows NT, Linux, BSD, MacOS X
dan SunOS. [1]
B. Keamanan Sistem Operasi
Keamanan pada sistem operasi merupakan kebutuhan yang sangat utama dan penting,
bayangkan jika sebuah sistem operasi tidak dilengkapi dengan keamanan yang
mumpuni,maka sistem operasi yang ada pada computer tersebut akan selalu mendapat
serangan dari virus, spam, worm, dan lain-lain. Keamanan sistem operasi dapat dilakukan
dengan menggunakan protocol user, proaktif password,

firewall,

enkripsi

yang

mendukung, logging, mendeteksi penyusup, dan keamanan sistem file. Pada

Laboraturium Sistem Operasi & Jaringan Komputer

|1

praktikum kali ini kita akan melakukan konfigurasi firewall untuk menjaga keamanan
sistem operasi.
C. Firewall
Firewall adalah sistem keamanan jaringan komputer yang digunakan untuk
melindungi komputer dari beberapa jenis serangan dari komputer luar. Firewall yang
dimaksudkan diatas adalah sistem atau perangkat yang memberi otorisasi pada lalu
lintas jaringan komuputer yang dianggapnya aman untuk melaluinya dan melakukan
pencegahan terhadap jaringan yang dianggap tidak aman. Perlindungan firewall
diperlukan untuk komputasi perangkat seperti komputer yang diaktifkan dengan
koneksi internet.
Firewall adalah tidak sama seperti antivirus atau aplikasi antimalware. Firewall
membantu melindungi terhadap worm dan hacker, aplikasi antivirus membantu
melindungi terhadap virus, dan aplikasi antimalware membantu melindungi terhadap
malware.
Berikut Cara Kerja Firewall
Firewall pada dasarnya merupakan sebuah penghalang antara komputer (jaringan)
dengan internet. Firewall dapat diumpamakan seperti seorang penjaga keamanan yang
berdiri di pintu masuk rumah dan menyaring pengunjung yang datang ke rumah. Penjaga
rumah mungkin mengizinkan beberapa pengunjung untuk masuk sementara
menyangkal orang lain yang ia sangka penyusup. Demikian pula firewall adalah sebuah
program perangkat lunak atau perangkat keras yang menyaring informasi (paket)
yang datang melalui internet ke komputer pribadi atau jaringan komputer

Laboraturium Sistem Operasi & Jaringan Komputer

|2

Apabila firewall menemukan data yang dicurigai membawa hal berbahaya dan dapat
merusak, seperti virus, spyware, dan trojan, firewall akan melarangnya untuk keluar
atau masuk ke dalam jaringan. Dalam mengontrol lalu lintas keluar masuk data dalam
jaringan, firewall menggunakan salah satu atau ketiga metode berikut ini :
1. Packet Filtering Paket data diperiksa menggunakan seperangkat aturan
penyaringan. Paket yang lulus proses penyaringan diizinkan untuk meneruskan
perjalanannya, sedangkan yang tidak lulus penyaringan akan dihapus.
2. Proxy Service Data yang berasal dari Internet diterima oleh firewall
kemudian diteruskan kepada komputer yang me-request-nya, begitu juga
sebaliknya.
3. Stateful Inspection Metode membandingkan bagian kunci dari paket data
tersebut dengan database data-data terpercaya. Data yang keluar dari firewall
ditandai dengan ciri-ciri khusus, selanjutnya data yang masuk akan
dibandingkan dengan ciri-ciri khusus tersebut. Jika dalam proses perbandingan
terdapat kecocokan, data diizinkan masuk. Jika terdapat ketidakcocokan, firewall
akan menghapus data tersebut.

PRAKTIKUM
Berikut merupakan langkah-langkah konfigurasi Windows Firewall pada Sistem Operasi
Windows 8.
A. Buka Control Panel pada Windows 8 untuk mulai konfigurasi Windows Firewall.

Laboraturium Sistem Operasi & Jaringan Komputer

|3

B. Klik Windows Firewall, kemudian akan muncul tampilan seperti dibawah ini.

C. Turn Windows Firewall ON or OFF adalah settingan untuk mengatur aktif dan
non aktif dari windows firewall.
D. Pada tampilan windows firewall terdapat 3 jenis profil, yaitu:
a. Home or work (private) network adalah pengaturan windows firewall yang
dapat membuat Homegroup dimana network discovery akan dihidupkan.
Sehingga dapat melihat komputer lain yang terhubung dengan network
yang sama dengan network komputer anda
b. Work (private) network adalah settingan windows firewall yang network
discovery akan ON sehingga secara default akan membuat atau bergabung
ke dalam Homegroup. Profile ini bila bergabung ke domain windows dan
berhasil diautentikasi, maka secara otomatis windows firewall akan
mengenalinya dan mengklasifikasikan sebagai domain network.
c. Public Network adalah settingan windows firewall yang akan aktif apabila
komputer anda mengakses jaringan internet di area public. Profile ini
membuat settingan Network Discovery off sehingga komputer lain di jaringan
tidak dapat melihat keberadaa anda.
Laboraturium Sistem Operasi & Jaringan Komputer

|4

E. Kita dapat melakukan melakukan Allow a program or feature through Windows


Firewall untuk membolehkan program atau fitur yang kita inginkan untuk
melewati Windows Firewall [2]. Berikut langkah-langkahnya:
a. Klik Allow a program or feature through Windows Firewall

b. Klik Change settings pada Allowed Programs window.


c. Kemudian pilih sendiri program yang ingin anda buka di Private, Public, atau
kedua-duanya.
d. Klik OK untuk menyimpan pengaturan yang telah dibuat.

Laboraturium Sistem Operasi & Jaringan Komputer

|5

F. Advanced Setting juga dapat menjadi pilihan dalam konfigurasi Windows


Firewall. Berikut langkah-langkah untuk Advanced Setting :
a. Klik advanced Setting

Laboraturium Sistem Operasi & Jaringan Komputer

|6

b. Klik Properties, untuk melakukan konfigurasi awal pada Advanced setting.


Sehingga muncul tampilan berikut:

Pada kolom windows firewall properties kita dapat lakukan beberapa


konfigurasi, yaitu :
-

ON/OFF status windows firewall

Koneksi yang masuk ke komputer (inbound connections) dimana terdapat


beberapa settingan, yaitu: block, block all connections, allow.

Koneksi yang keluar dari komputer (outbound connections) dimana


terdapat beberapa settingan, yaitu: allow, block.

Laboraturium Sistem Operasi & Jaringan Komputer

|7

c. Kemudian pada pilhan Setting, klik tombol customize

Terdapat beberapa pengaturan yaitu :


-

Notifikasi bila terdapat program yang diblokir (Display a notification)

Memperbolehkan unicast response atau broadcast response (allow unicast


response)

G. Konfigurasi Windows Firewall inbound rules Pada Windows 8 untuk Allow suatu
program [3]. Berikut langkah-langkahnya.
a. Klik Advanced Setting
b. Kemudian klik inbound Rules

Laboraturium Sistem Operasi & Jaringan Komputer

|8

c. Kemudian pilih New Rule

Laboraturium Sistem Operasi & Jaringan Komputer

|9

d. Karena kita akan mengkonfigurasi program maka, klik Program

e. Terdapat dua pilihan yaitu All programs dan This Program Path. Pilih This
Program Path, lalu browse .exe program yang akan di konfigurasikan, lalu klik
next

Laboraturium Sistem Operasi & Jaringan Komputer

| 10

f. Pada tampilan di atas terdapat beberapa pengaturan, yaitu:


-

Allow the connection

Allow the connection if it is secure

Block the connection

Kita pilih Allow the connection, klik next.

g. Beri checklist pada domain, private, dan public. Kemudian pilih next, maka akan
muncul pada kolom inbound rules.

Laboraturium Sistem Operasi & Jaringan Komputer

| 11

h. Kemudian kita coba akses google.com. jika google.com dapat diakses maka
konfigurasi yang sudah dilakukan berhasil.

H. Konfigurasi Windows Firewall outbound rules Pada Windows 8 untuk Blocking


suatu program. Berikut langkah-langkahnya.

Laboraturium Sistem Operasi & Jaringan Komputer

| 12

a. Klik advanced Setting


b. Klik Outbound Rules

c. Klik New Rule

Laboraturium Sistem Operasi & Jaringan Komputer

| 13

d. Klik Program, lalu next

e. Terdapat dua pilihan yaitu All programs dan This Program Path. Pilih This
Program Path, lalu browse .exe program yang akan di konfigurasikan, lalu klik
next

Laboraturium Sistem Operasi & Jaringan Komputer

| 14

f. Pada tampilan di atas terdapat beberapa settingan, yaitu:


-

Allow the connection

Allow the connection if it is secure

Block the connection

Kita pilih Block Connection

g. Beri chekclist pada domain, private, dan public. Kemudian pilih next, maka
akan muncul pada kolom inbound rules.

Laboraturium Sistem Operasi & Jaringan Komputer

| 15

h. Kemudian kita coba akses google.com. jika google.com tidak dapat diakses
maka konfigurasi yang sudah dilakukan berhasil.

Laboraturium Sistem Operasi & Jaringan Komputer

| 16

MODUL 2
Information Gathering & Report
TUJUAN PRAKTIKUM

Praktikan memahami definisi dari information gathering.

Praktikan mampu menggunakan aplikasi Wireshark untuk menganalisa traffic


jaringan.

Praktikan mampu mengetahui aliran paket dan melakukan analisa paket pada
suatu traffic jaringan.

Praktikan mampu membuat dokumentasi hasil analisis dari traffic jaringan yang
telah di analisa.

ALAT DAN BAHAN

OS Windows 7

Wireshark

LANDASAN TEORI
A. Information Gathering
Tahap pertama dalam melakukan security assessment adalah mengumpulkan informasi
sebanyak mungkin dari target yang telah ditentukan [4]. Pengumpulan informasi
(Information Gathering) merupakan salah satu tahap penting ketika akan melakukan
sebuah penetration testing pada suatu aplikasi atau jaringan yang sedang berjalan.
Tujuan dari information gathering pada keamanan sistem informasi salah satunya adalah
mengurangi potensi untuk terkena serangan dan mengetahui titik atau celah keamanan
pada sistem yang memungkinkan untuk diserang. Ketika seorang penyerang telah
mendapatkan informasi tentang suatu sistem yang berjalan seperti detail jaringan yang
digunakan dan versi sistem operasi, maka sistem tersebut akan mudah untuk diserang
dan dieksploit oleh penyerang.
Berikut ini adalah tujuh tahap dasar dan beberapa tools untuk melakukan pengumpulan
informasi pada target [5].

Laboraturium Sistem Operasi & Jaringan Komputer

| 17

a) Melakukan pencarian informasi dasar:

Open Source
Informasi umum yang dimiliki oleh suatu perusahaan dan diketahui oleh
klien dapat menjadi informasi yang berguna bagi penyerang. Informasi
tersebut seperti versi sistem operasi, perangkat jaringan, maupun perangkat
keras apa saja yang digunakan.

Nslookup
Sebuah command atau perintah yang dijalankan pada command prompt
untuk mengetahui alamat IP dari suatu domain maupun host pada sebuah
jaringan.

b) Melakukan pencarian range alamat jaringan:

Traceroute
Sebuah command atau perintah yang dijalankan pada command prompt
untuk menentukan jalur yang dilalui paket pada suatu jaringan. Traceroute
akan mengirimkan paket dengan TTL (Time To Live) mulai dari satu, dua,
tiga, dan seterusnya hingga mencapai tujuan (destination). Tujuannya adalah
untuk melacak setiap hop yang dilalui paket dari sumber (source) sampai
tujuan (destination).

c) Melakukan pencarian mesin yang aktif:

Ping
Sebuah command atau perintah yang dijalankan pada command prompt
untuk mencari mesin yang aktif pada jaringan. Ping menggunakan protokol
ICMP dan mengirimkan pesan echo request ke host. Ketika host tersebut
tidak aktif, maka tidak akan menerima balasan dan terjadi times out. Apabila
host tersebut aktif, maka host akan mengirimkan kembali echo reply ke
yang mengirimkan pesan.

d) Melakukan pencarian port yang terbuka atau access points:

Portscanners
Sebuah program untuk menjalankan scan ke seluruh sistem untuk
menemukan port yang terbuka. Untuk melakukan port scanners tentukan

Laboraturium Sistem Operasi & Jaringan Komputer

| 18

range addresses dan range port yang akan dilakukan pemindaian (scanning).
Pada umumnya port scanner akan melakukan scan pada port 1 hingga 1024
atau port yang umum diketahui. Sementara seorang attacker akan
menggunakan port yang lebih nilainya lebih tinggi seperti 40.000 untuk
menyimpan sebuah backdoor. Port pada sebuah mesin mempunyai range
dari 1 sampai 65.545 port.

Nmap
Nmap atau Network Mapper merupakan sebuah tool untuk melakukan
menemukan hosts dan services pada jaringan komputer dan membuat
sebuah peta dari jaringan tersebut.

e) Mengetahui sistem operasi yang digunakan:

f)

Nmap

Mengetahui service apa saja yang berjalan di setiap port:

Default port dan OS

Vulnerability scanners

g) Melakukan pemetaan terhadap jaringan yang berjalan:

Traceroute

B. Packet Analysis.
Packet analysis atau packet sniffing merupakan sebuah proses untuk menangkap dan
menafsirkan data yang didapatkan secara live pada sebuah jaringan untuk mengetahui
tentang cara kerja jaringan [6]. Packet analysis mempunyai beberapa fungsi yaitu sebagai
berikut [6].
a) Membantu memahami karakteristik sebuah jaringan.
b) Mengetahui user yang berada dalam jaringan.
c) Menentukan siapa atau apa yang sedang menggunakan bandwidth.
d) Identifikasi waktu sibuk penggunaan jaringan.
e) Identifikasi kemungkinan serangan atau aktifitas berbahaya.
f) Menemukan aplikasi yang tidak aman dan menggunakan memory lebih.
Cara kerja packet sniffing meliputi tiga langkah yaitu collection, conversion, dan analysis
[6]. Pada tahap collection, packet sniffer akan mengumpulkan raw binary data dari
jaringan. Tahap ini dilakukan dengan mengubah network interface yang dipilih kedalam
Laboraturium Sistem Operasi & Jaringan Komputer

| 19

promiscuous mode. Mode ini memungkinkan kartu jaringan untuk mendengarkan


seluruh lalu lintas pada suatu segmen jaringan bukan alamat tertentu saja. Tahap
conversion merupakan tahap pengubahan atau konversi binary data yang telah
ditangkap menjadi bentuk yang dapat dibaca. Pada tahap terakhir yaitu tahap analysis,
packet sniffer akan mengambil data jaringan kemudian menganalisa informasi
berdasarkan protokol yang didapat.
A. Wireshark.
Wireshark merupakan sebuah aplikasi yang berfungsi untuk menganalisa paket jaringan.
Aplikasi tersebut akan menangkap paket jaringan dan kemudian menampilkan data yang
ada didalam paket secara detail [7]. Wireshark dapat menangkap informasi dalam
berbagai protokol yang ada didalam paket data pada sebuah jaringan. Pada umumnya
aplikasi ini digunakan untuk mendapatkan informasi-informasi penting dalam sebuah
jaringan seperti password ataupun sebagai alat untuk menemukan bukti dari ataupun
sebagai alat untuk menemukan bukti dari cyber crime. Aplikasi ini bersifat open source
atau tidak berbayar dan tanpa lisensi apapun. Penggunaannya yang mudah dipahami
akrena menggunakan Graphical User Interface (GUI) membuat aplikasi ini sering
digunakan untuk menangkap dan melakukan analisa paket jaringan.

Laboraturium Sistem Operasi & Jaringan Komputer

| 20

Wireshark memiliki beberapa fitur dalam penggunaannya. Berikut ini adalah beberapa
fitur yang disediakan oleh wireshark.
a. Dapat digunakan pada OS Windows atau Linux.
b. Dapat menangkap paket data secara langsung dari network interface.
c. Membuka file yang berisi data paket yang diambil oleh tcpdump/WinDump,
Wireshark, dan program lain yang dapat menangkap paket data.
d. Menyimpan paket data yang telah ditangkap.
e. Dapat melakukan pencarian dan filter paket data dalam berbagai kriteria.

PRAKTIKUM
Praktikum modul 2 ini merupakan praktikum online. Video tutorial untuk membantu
pengerjaan studi kasus praktikum dapat di download pada link di bawah ini:
http://www.mediafire.com/download/37obrrh61jhnuxw/Video_Modul_2.zip

Langkah-langkah praktikum.
A. Install wireshark.
B. Membuat akun pada website www.indowebster.com
C. Studi kasus 1.

Laboraturium Sistem Operasi & Jaringan Komputer

| 21

Pada kasus pertama, yang akan menjadi target dari aktifitas sniffing yang kita
lakukan ini adalah www.indowebster.com. Namun pada studi kasus yang pertama ini
informasi yang akan kita cari masih informasi secara umum dari sebuah lalu lintas
pada suatu jaringan computer. Informasi yang ingin diketahui dalam studi kasus
pertama ini adalah:

Berapakah IP address dari komputer anda dan berapakah IP address dari


www.indowebster.com?

Daftar protokol-protokol yang berbeda yang muncul pada kolom protokol di


jendela daftar paket sebelum dilakukan penyaringan (filtering process).

Seberapa lamakah waktu yang dibutuhkan ketika pesan HTTP GET dari
computer anda terkirim ke www.indowebster.com sampai HTTP OK dari
www.indowebster.com diterima oleh komputer anda.

Apakah browser anda menjalankan HTTP versi 1.0 atau 1.1? HTTP versi
apakah yang berjalan pada server www.indowebster.com?

Print kedua pesan HTTP yang didapat (HTTP GET dan HTTP OK) untuk untuk
dijadikan laporan dengan cara : Pilih paket data yang akan di print klik kanan
pada paket yang terpilih Print Mark output to file (tentukan direktori
penyimpana file) Selected Packet Only Print.

D. Studi kasus 2.
Setelah melakukan sniffing paket data pada lalu lintas jaringan anda dan
mendapatkan informasi yang umum, kali ini pada studi kasus yang kedua kita akan
fokus pada pencarian informasi yang lebih khusus dan akan mengembangkan proses
sniffing paket data yang kita lakukan ketika mengakses situs www.indowebster.com.
Beberapa informasi yang kita butuhkan adalah :

Bahasa apa yang browser anda gunakan yang dapat diterima oleh server
(www.indowebster.com)?

Status code apa yang dikembalikan dari server (www.indowebster.com)


kepada browser anda?

Berapa banyak bytes dari isi paket yang dikembalikan kepada browser
anda?

Laboraturium Sistem Operasi & Jaringan Komputer

| 22

Identifikasi isi paket yang di kirimkan server pada browser anda! Apakah
server benar-benar memberikan isi dari paket yang dikembalikan?
Bagaimana anda menjelaskannya?

Pada HTTP GET yang kedua, Apa status code HTTP dari server
(www.indowebster.com) yang di kembalikan kepada browser anda? Apakah
server benar-benar memberikan isi dari file yang dikembalikan? Jelaskan!

Coba

cari

tau

informasi

akun

(username

dan

password)

www.indowebster.com anda melalui informasi yang didapat ketika sniffing


menggunakan wireshark.
Print informasi yang sudah didapat. Di www.login.indowebster.com (HTTP POST).
Simpan di direktori yang sama dengan hasil print studi kasus yang pertama

Laboraturium Sistem Operasi & Jaringan Komputer

| 23

MODUL 3
Web Security with DVWA
TUJUAN PRAKTIKUM

Praktikan dapat memahami konsep Web Application Security.

Praktikan dapat mengetahui jenis jenis vulnerability pada Web Application.

Praktikan dapat memahami jenis penyerangan web application (Command


Execution, SQL Injection, dan XSS Stored).

Praktikan dapat mengetahui dan mengaplikasikan DVWA dalam Web Application


Security.

Praktikan dapat mengetahui dan menggunakan metode enkripsi MD5.

ALAT DAN BAHAN

Virtual Box (Ubuntu Server)

DVWA

Xampp

MD5 Tools (John The Ripper)

LANDASAN TEORI
A. Web Application Security
Sebelum kita mengenal Web Application Security terlebih dahulu kita mengetahui
pengertian website. Website atau situs adalah kumpulan halaman yang menampilkan
informasi data teks, data gambar diam atau gerak, data animasi, suara, video dan atau
gabungan dari semuanya, baik yang bersifat statis maupun dinamis yang membentuk
satu rangkaian bangunan yang saling terkait dimana masing-masing dihubungkan
dengan jaringan-jaringan halaman (hyperlink), sebuah situs web biasanya ditempatkan
pada sebuah server web yang diakses melalui jaringan internet melalui domain atau
alamat dikenali sebagai URL. Sedangkan server merupakan sebuah sistem komputer yang
menyediakan jenis layanan tertentu dalam sebuah jaringan komputer. Server didukung
dengan prosesor yang bersifat scalable dan RAM yang besar, juga dilengkapi dengan
sistem operasi khusus, yang disebut sebagai sistem operasi jaringan.

Laboraturium Sistem Operasi & Jaringan Komputer

| 24

Terdapat dua jenis website yaitu website statis adalah situs web yang memiliki isi tidak
dimaksudkan untuk diperbaharui secara berkala sehingga pengaturan ataupun
pemutakhiran isi atas situs web tersebut dilakukan secara manual. Dan website dinamis
adalah situs web yang secara spesifik didesain agar isi yang terdapat dalam situs tersebut
dapat diperbaharui secara berkala dengan mudah, namun dalam penggunaannya website
dinamis sangat rentan akan penyusupan dan gangguan dari hacker karena fungsi tertentu
dari website dinamis tersebut. Oleh karena itu diperlukan adanya pengamanan pada
website.
Web Application Security adalah cabang keamanan informasi yang secara khusus
menangani keamanan situs web, aplikasi web dan layanan web. Keamanan aplikasi web
mengacu pada prinsip prinsip keamanan aplikasi, tetapi dikhususkan pada web sistem
dan internet. Biasanya aplikasi web yang dikembangkan adalah dengan menggunakan
bahasa pemograman seperti PHP, Java EE, Java, Phyton, Ruby, ASP .NET, C#, VB.NET atau
ASP Classic [1].

B. Celah Keamanan Aplikasi Web


Adapun celah celah keamanan pada aplikasi web yang seringkali digunakan sebagai
jalur masuk untuk mengeksploitasi website.
1. Unvalidated Input
Semua aplikasi web menampikan data dari HTTP request yang dibuat oleh user dan
menggunakan data tersebut untuk melakukan operasinya. Hacker dapat memanipulasi
bagian-bagian pada request (query string, cookle information, header) untuk mem-bypass
mekanisme keamanan. Berikut ini tiga jenis penyerangan yang berhubungan dengan
masalah ini yaitu : Cross site scripting, Buffer overflow dan Injection flaws
2. Broken Access Control
Banyak aplikasi yang mengkategorikan penggunanya ke dalam role yang berbeda dan
level yang berbeda untuk berinteraksi dengan content yang dibedakan dari kategori kategori tersebut, salah satu contohnya, banyak aplikasi yang terdapat user role dan
admin role, dengan ketentuan: hanya admin role yang dijinkan untuk mengakses halaman
khusus atau melakukan action melakukan pengaturan administrator.

Laboraturium Sistem Operasi & Jaringan Komputer

| 25

Masalahnya adalah beberapa aplikasi tidak efektif untuk memaksa agar admin role
bekerja. Masalah lain yang berhubungan dengan access control adalah :

Insecure Ids (Id Tidak aman) beberapa site menggunakan id atau kunci yang
menunjukan kepada user atau fungsi. ID dapat juga ditebak, dan jika hacker dapat
mudah menebak ID dari user yang ter-autorisasi, maka site akan mudah diserang.

File permissions- kebanyakan web dan aplikasi server percaya kepada external file
yang menyimpan daftar dari user yang terotorisasi dan resources mana saja yang
dapat dan/atau tidak dapat di akses. Apabila file ini dapat di baca dari luar, maka
hacker dapat memodifikasi dengan mudah untuk menambahkan dirinya pada
daftar user yang diijinkan.

3. Buffer Overflow
Kelemahan Buffer overflow adalah salah satu dari banyak kelemahan dari keamanan
komputer. Kelemahan jenis ini dapat digunakan pada remote acces atau local acces,
karena dapat memberikan si Attacker kesempatan untuk melancarkan seragan dengan
coding di komputer target. Serangan Buffer overflow terjadi ketika si attacker
memberikan input yang berlebihan pada program yang di jalankan, sehingga program
mengalami kelebihan muatan dan memory tidak dapat mengalokasikannya. Ini
memberikan kesempatan kepada Attacker untuk menindih data pada program dan mentake over kontrol porgram yang dieksekusi attacker. Buffer over flow hasil dari
kelemahan bahasa pemograman c, c++, fontran, dan assembly, yang tidak secara otomatis
melakukan pengecekan batas input ketika program dieksekusi. Sebagai akibat dari Buffer
overflow dapat menyebatkan crash pada program, atau mempersilahkan si Attacker
untuk mengesekusi perintah atau coding jahatnya untuk menguasai sistem target, seperti
tujuan mengambil alih akun root menggunakan metode buffer overflow.
4. Insecure Storage
Aplikasi web biasanya perlu menyimpan informasi yang sensitif seperti password,
informasi kartu kredit, dan yang lain. Dikarenakan item-item tersebut bersifat sensitif
item-item tersebut perlu dienkripsi untuk menghindari pengaksesan secara langsung.
Akan tetapi beberapa metode enkrips lemah dan masih bisa diserang. Berikut ini
beberapa kesalahan yang sering terjadi :

Kesalahan untuk mengenkripsi data penting.

Laboraturium Sistem Operasi & Jaringan Komputer

| 26

Tidak amannya kunci, certificate, dan password

Kurang amannya tempat penyimpanan data

Kurangnya perhitungan dari rekomendasi

Kesalahan pemilihan algoritma

Mencoba untuk menciptakan algoritma enkripsi yang baru.

5. Insecure Configuration Management


Biasanya kelompok (group) yang mengembangkan aplikasi berbeda dengan kelompok
yang mengatur hosting dari aplikasi. Hal ini bisa menjadi berbahaya, dikarenakan
keamanan yang diandalkan hanya dari segi aplikasi : sedangkan dari segi server juga
memiliki aspek keamanan yang perlu diperhatian, Adanya kesalahan dari konfigurasi
server dapat melewati aspek keamanan dari segi aplikasi. Berikut ini adalah kesalahan
konfigurasi server yang bisa menimbulkan masalah :

File-file backup atau file contoh (sample file), file-file script, file konfigurasi yang
tertinggal atau tidak perlu.

Hak akses atau file yang salah.

Adanya service yang seperti remote administration dan content management yang
masih aktif.

Penggunaan default account dan default password.

Fungsi administratif atau fungsi debug yang bisa diakses.

Adanya pesan error yang informatif dari segi teknis.

Kesalahan konfigurasi SSL certificate dan setting enkripsi.

Penggunaan self-signet certificates untuk melakukan autentikasi.

Penggunaan default certificate.

Kesalahan autentifikasi dengan sistem eksternal [8].

C. DVWA
D**n Vulnerable Website Application (DVWA) adalah sebuah aplikasi website berbasis
PHP/MySQL yang memiliki banyak celah keamanan (vulnerability). Tujuan utama dari
aplikasi ini adalah untuk membantu para profesional bidang keamanan dalam menguji
keahlian dan peralatan mereka pada lingkungan yang legal, membantu web developer
dalam memahami lebih baik proses pengamanan aplikasi website, dan membantu
memahami web application security pada proses belajar mengajar.
Laboraturium Sistem Operasi & Jaringan Komputer

| 27

DVWA menyertakan beberapa tool web hacking seperti:

SQL Injection

XSS (Cross Site Scripting)

LFI (Local File Inclusion)

RFI (Remote File Inclusion)

Command Execution

Upload Script

Login Brute Force [9]

D. Jenis Jenis Penyerangan pada Web Application


1. Command Execution
Tujuan utama dari serangan command injection adalah untuk menyisipkan dan
menjalankan beberapa perintah khusus oleh seorang attacker pada aplikasi yang
memiliki celah keamanan. Pada situasi ini, aplikasi akan menjalankan perintah
yang tidak diinginkan pada sistem dan tidak terdeteksi yang membuat seorang
attacker menggunakannya seolah sebagai pengguna sistem yang sah. Perintah
yang dijalankan memiliki tingkat akses dan lingkungan yang sama dengan
aplikasi. Serangan command injection adalah jenis serangan yang mungkin
digunakan pada sebagian besar kasus dikarenakan buruknya validasi input data

Laboraturium Sistem Operasi & Jaringan Komputer

| 28

yang dimana dapat dimanipulasi oleh penyerang (contoh: forms, cookies, HTTP
headers etc.)
Ada beberapa jenis serangan code injection, yang membedakan adalah sang
penyerang menambahkan baris kode yang dia buat pada baris kode eksisting.
Dengan hal ini, penyerang akan menambahkan fungsi default aplikasi tanpa harus
mengakses perintah pada sistem. Kode yang telah disisipkan akan dijalankan
dengan hak akses dan lingkungan yang sama dengan aplikasi. Serangan
penyisipan perintah sistem operasi akan berjalan ketika penyerang berusaha
menjalankan perintah level sistem melalui aplikasi yang memiliki celah
keamanan. Aplikasi dikatakan lemah apabila pengguna sistem melakukan input
pada level perintah sistem.
2. SQL Injection
SQL Injection adalah jenis penyerangan dengan mencoba melakukan perintah SQL
melalui aplikasi web yang akan dijalankan pada database back-end. Apabila tidak
diamankan dengan baik, aplikasi website yang dimiliki akan memberikan jalur
akses untuk penyerang dalam melihat informasi dari database dan/atau bahkan
menghapus semuanya. SQL Injection juga merupakan jenis serangan yang
memungkinkan penyerang untuk memanipulasi perintah SQL melalui URL atau
isian form yang dikirimkan oleh aplikasi web ke server. Salah satu bentuk serangan
ini dilakukan dengan menyusun perintah SQL yang memungkinkan dilakukannya
login tanpa memiliki akun yang valid. Dalam serangan SQL Injection, penyerang
mencoba memasukkan query baik melalui field atau URL yang menyebabkan
database server menghasilkan query SQL yang salah. Teknik SQL Injection
merupakan teknik penyerangan yang sangat sederhana, namun justru hal inilah
yang sering diabaikan oleh para pengembang aplikasi web. SQL Injection dapat
disebabkan karena penanganan yang buruk terhadap karakter tanda (petik satu),
karakter -- (double minus), maupun karakter-karakter lain yang menyebabkan
suatu aplikasi dapat disisipi dengan perintah SQL. Hal ini bisa mengakibatkan
seorang penyerang menyisipkan perintah SQL kedalam suatu parameter maupun
suatu form.
Beberapa fitur seperti halaman login, form feedback, halaman pencarian, dan
halaman lainnya yang mengakses database dalam berhubungan dengan data
Laboraturium Sistem Operasi & Jaringan Komputer

| 29

websitenya akan dapat dieksploitasi oleh serangan SQL Injection karena field input
oleh pengguna akan menjalankan fungsi perintah SQL dalam mengakses dan
mencari pada database secara langsung. Firewall dan mekanisme deteksi jalur
masuk akan memberikan sedikit pertahanan dengan serangan website
keseluruhan. Karena website yang dibuat akan diakses oleh public, mekanisme
keamanan akan mengizinkan traffic umum berkomunikasi dengan server
database melalui aplikasi website. Melakukan update server, database, bahasa
pemrograman dan sistem operasi sangat penting namun tidak akan bisa menjadi
jalan terbaik dalam menghalangi serangan SQL Injection.
3. XSS
Cross Site Script atau kependekannya XSS merupakan salah satu serangan injeksi
code (code injection attack). XSS dilakukan oleh penyerang dengan cara
memasukan kode HTML (HyperText Markup Language) atau client script code
lainnya kesuatu situs. Serangan ini akan seolah-olah datang dari situs tersebut
akibat serangan ini antara lain penyerang dapat mem-bypass keamanan disisi
klien, mendapat informsi sensitif, atau menyimpan aplikasi berbahaya. Serangan
Cross-Site Scripting (XSS) terjadi ketika:
a. Data masuk ke aplikasi website melalui sumber yang tidak terpercaya.
b. Data termasuk dalam konten dinamis yang terkirim oleh pengguna website
tanpa dilakukan validasi script berbahaya.
Cross site Scripting atau XSS memiliki Tipe XSS antara lain:
1. Reflected XSS atau non persistent
Reflected XSS merupakan tipe XSS yang paling umum dan yang paling
mudah dilakukan oleh penyerang. Penyerang menggunakan social
engineering agar tautan dengan kode berbahaya ini diklik oleh pengguna.
Dengan cara ini penyerang bisa mendapatkan cookie pengguna yang bisa
digunakan selanjutnya untuk membajak session pengguna. Mekanisme
pertahanan menghadapi serangan ini adalah dengan melakukan validasi
input sebelum menampilkan data apapun yang di-generate oleh pengguna.
Jangan percaya apapun data yag dikirim oleh pengguna.

Laboraturium Sistem Operasi & Jaringan Komputer

| 30

2. Stored XSS
Stored XSS lebih jarang ditemui dan dampak serangannya lebih besar.
Sebuah serangan stored XSS dapat berakibat pada seluruh pengguna.
Stored XSS terjadi saat pengguna diizinkan untuk memasukan data yang
akan ditampilkan kembali. Contohnya adalah pada message board, buku
tamu, dll. Penyerang memasukkan kode HTML atau client script code
lainnnya pada posting mereka. Serangan ini lebih menakutkan. Mekanisme
pertahanannya sama dengan reflected XSS: jika pengguna diizinkan untuk
memasukkan data, lakukan validasi sebelum disimpan pada aplikasi [10].

E. MD5 Encryption
MD5 merupakan tipe enkripsi yang didesain oleh Ronald RIvest pada tahun 1991 untuk
menggantikan hash function sebelumnya, MD4. Panjangnya 16 bytes (32 karakter) . MD5
merupakan fungsi hash kriptografik yang digunakan secara luas dengan hash value 128bit. Pada standart Internet (RFC 1321), MD5 telah dimanfaatkan secara bermacammacam pada aplikasi keamanan, dan MD5 juga umum digunakan untuk melakukan
pengujian integritas sebuah berkas.
F. John The Ripper
John The Ripper adalah suatu cracker password yang cepat yang tersedia pada banyak
platfom, antara lain UNIX, Windows, DOS, BeOS dan OpenVMS. Tujuan utama dari John
The Ripper adalah untuk mendeteksi kelemahan password pada sistem UNIX (termasuk
Linux). John The Ripper merupakan program yang dapat membantu administrator
menentukan kelayakan suatu password. Namun John The Ripper juga digunakan oleh
pihak-pihak yang tidak berkepentigan untuk mendapatkan password seorang user.

PRAKTIKUM
A. Instalasi DVWA
Pada praktikum kali ini kita menggunakan Ubuntu Server sebangai web server yang
akan kita tanamkan DVWA. Langkah langkahnya adalah sebagai berikut :
a.

Jalankan Ubuntu Server yang sudah terinstall pada VMWare.

Laboraturium Sistem Operasi & Jaringan Komputer

| 31

b. Pastikan OS virtual telah terhubung dengan OS komputer.


Pada praktikum kali ini, ip address pada OS komputer adalah 192.168.255.1 dan
ip address pada OS virtual adalah 192.168.255.131
Uji koneksi ke OS Virtual

Uji koneksi ke OS Komputer

c. Download DVWA dengan mengetikkan perintah :


wget https://github.com/RandomStorm/DVWA/archive/v1.0.8.zip

Pastikan OS Virtual dapat mengakses internet


Laboraturium Sistem Operasi & Jaringan Komputer

| 32

d. Atau dengan meng-Copy file DVWA-1.0.8 kedalam Ubuntu server yang telah
didownload, melalui WinSCP. Pastikan anda sudah menjankan ssh pada Ubuntu
Server
Login melalui WinSCP yang sudah terinstall pada komputer/laptop anda
dengan mengetikkan IP address Ubuntu Server, port ssh (default 22) ,
username Ubuntu Server dan password Ubuntu Server, kemudian Login.

Laboraturium Sistem Operasi & Jaringan Komputer

| 33

Kemudian copy file DVWA-1.0.8

e. Pastikan lampp sudah terinstall pada Ubuntu server kemudian jalankan lampp
pada Ubuntu Server dengan perintah
/opt/lampp/lamp start

f. Copy file DVWA-1.0.8 kedalam folder /opt/lampp/htdocs


cp DVWA-1.0.8 /opt/lampp/htdocs

kemudian ekstrak file DVWA-1.0.8


unzip DVWA-1.0.8.zip

lalu copy folder DVWA-1.0.8 dengan nama DVWA


cp R DVWA-1.0.8 DVWA

maka terlihat isi folder /opt/lampp/htdocs seperti berikut

g. Kemudian buka browser pada OS komputer anda, dan masukkan url ip address
web server/DVWA, web server pada OS virtual. Pada praktikum ini URL yang
Laboraturium Sistem Operasi & Jaringan Komputer

| 34

digunakan adalah 192.168.255.131/DVWA hingga muncul tampilan seperti


dibawah. Abaikan tampilan error database

h. Kemudian kita akan melakukan pengaturan pada DVWA. Masukkan URL


192.168.255.131/DVWA/setup.php . Kemudian klik Create / Reset Database

Laboraturium Sistem Operasi & Jaringan Komputer

| 35

Jika sukses akan muncul tampilan seperti dibawah ini :

Jika tampilan yang keluar seperti dibawah ini, maka itu error dalam membuat
database.

Solusinya ialah buka kembali Ubuntu Server pada pada VMWare anda kemudian
cek

kembali

pada

file

config.inc.php

pada

folder

/opt/lampp/htdocs/DVWA/config/ . Edit file tersebut


Laboraturium Sistem Operasi & Jaringan Komputer

| 36

Kemudian kosongkan password seperti tampilan dibawah ini

Setelah itu, restart kembali XAMPP

Lalu coba klik kembali tombol Create / Reset Database. Maka create / reset
database tekah berhasil
i.

Kemudian kembali lagi ke URL 192.168.255.131/DVWA. Jika sukses, maka index


akan berubah menjadi tampilan login seperti di bawah. Masukkan username :
admin dan password : password

Laboraturium Sistem Operasi & Jaringan Komputer

| 37

Setelah klik Login, maka akan tampil halaman seperti dibawah ini

Kemudian pada praktikum kali ini, ubah DVWA Security menjadi Low. Sesuai
dengan kemampuan administrator untuk mempelajari keamanan pada web
application.

Laboraturium Sistem Operasi & Jaringan Komputer

| 38

B. Jenis Jenis Vulnerability pada DVWA (penjelasan penggunaannya)


Command Execution
a. Pilih tab command execution

Laboraturium Sistem Operasi & Jaringan Komputer

| 39

b. Coba lakukan tes ping ke alamat yang ada di local network. Dalam praktikum ini,
kita coba ping ke alamat IP Address pada OS Virtual, yaitu 192.168.255.131

c. Sekarang tambahkan command && date setelah alamat IP yang kita ping tadi.

Lihat pada bagian yang dikotak hitam, kita bisa mengetahui waktu yang ada di
komputer victim

Laboraturium Sistem Operasi & Jaringan Komputer

| 40

d. Sekarang tambahkan command && df setelah alamat IP yang kita ping tadi.

Lihat pada bagian paling bawah, kita bisa mengetahui free disk space dari
komputer yang kita serang.
e. Sekarang tambahkan command && who setelah alamat local yang tadi kita ping.

Lihat pada bagian paling bawah, kita bisa mengetahui username yang sedang login
dari komputer yang kita serang.
Kesimpulan, vulnerability command execution ini dapat menjadi celah bagi kita untuk
mendapatkan data-data dan bahkan mengambil alih komputer korban, seperti membuat
Laboraturium Sistem Operasi & Jaringan Komputer

| 41

user baru, mengubah password, dll. Command diatas hanya beberapa contoh yang bisa
dipakai untuk menyerang komputer dengan Linux, jadi kalau komputer yang kita serang
menggunakan platform lain seperti Windows, jelas command yang dipakai adalah
command yang biasa dijalankan di Windows. Untuk command apa saja yang bisa
digunakan pada command execution silahkan browsing untuk lebih mendalami.

SQL Injection
a. Pilih tab SQL Injection

b. Coba ketikkan angka 1

Laboraturium Sistem Operasi & Jaringan Komputer

| 42

Mengapa bisa muncul first name dan surname admin, coba kita cek source codenya, klik tombol view source yang berada di pojok kanan bawah.

Angka 1 yang kita masukan tadi menjadi parameter id dan pada source code ini
dilakukan pemanggilan data dari database dan menampilkan first_name sebagai
First name dan last_name sebagai Surname.
c. Coba ketik 0=0 lalu submit

Laboraturium Sistem Operasi & Jaringan Komputer

| 43

Mengapa muncul semua firstname dan surename pada semua id? Karena inputan
yang kita masukan tadi bernilai true ( 0 akan selalu sama dengan 0 ) sehingga
semua isi first_name dan last_name yang ada pada database akan ditampilkan.
d. Lihat nama user database dengan mengetikan command
union select null, user() #

e. Lihat versi database dengan mengetikan command


union select null, version() #

f. Lihat nama database dengan mengetikan


union select null, database() #

Laboraturium Sistem Operasi & Jaringan Komputer

| 44

g. Sekarang kita akan mencoba untuk melihat tabel apa saja yang ada pada database,
ketikan command
union select null, table_name from information_schema.tables #

Information_schema pada command diatas adalah database yang ter-create secara


otomatis, dan biasanya berisikan semua tabel yang ada pada semua database yang
dibuat.
h. Sekarang kita akan mencari database yang berisikan tabel dengan nama yang
mengandung kata user, ketikan command

Laboraturium Sistem Operasi & Jaringan Komputer

| 45

union select null, table_name from information_schema.tables


where table_name like user% #

i. Dari semua tabel diatas yang terdapat kata user kita coba satu persatu untuk
mencari mana tabel yang mengandung informasi tentang user. Pada praktikum
kali ini tabel yang berisikan informasi tentang user adalah table users.
j. Lalu ketikan command berikut untuk melihat isi kolom yang ada pada table users.
union select null, concat (column_name) from
information_schema.columns where table_name = users #

k. Setelah kita dapatkan informasi dari table users seperti gambar diatas, barulah
kita bisa menentukan data apa saja yang mau kita ambil.
Laboraturium Sistem Operasi & Jaringan Komputer

| 46

l. Ketikan command berikut


union select null, concat (first_name, 0x0a, last_name, 0x0a,
user, 0x0a, password) from users #

lalu kita akan mendapatkan informasi yang berisikan firstname, lastname,


username, dan password.

m. Password yang kita dapatkan diatas di enkripsi, untuk meng-crack password


tersebut kita akan menggunakan john the ripper.
n. Pertama save dahulu username dan password pada notepad dengan format seperti
gambar berikut

Laboraturium Sistem Operasi & Jaringan Komputer

| 47

Simpan dengan nama dvwa_password.txt pada folder dimana kita meletakan


aplikasi john the ripper, dan masukan pada folder run.
o. Setelah itu buka command prompt

p. Pindah ke folder dimana kita meletakan aplikasi john the ripper

q. Lalu ketikan perintah


john format=raw-md5 dvwa_password.txt

Laboraturium Sistem Operasi & Jaringan Komputer

| 48

maka hasilnya seperti pada gambar ini

Maka akan kita dapatkan hasil crack password yang kita simpan tadi.
r. Jika kita sudah men-crack sebuah password, john the ripper tidak akan melakukan
crack untuk kedua kalinya, namun kita bisa melakukannya lagi dengan
menghapus terlebih dahulu file john.pot.
s. Setelah itu coba login dengan username dan password baru yang telah berhasil kita
dapatkan.
Kesimpulan, SQL injection merupakan metode umum yang digunakan untuk
mendapatkan informasi dari sebuah website yang langsung mengakses ke database
website. Pada praktikum kali ini kita menggunakan security dengan tingkat keamanan
low, jadi lebih mudah untuk ditembus, oleh karena itu command yang ada diatas belum
tentu bisa digunakan untuk website yang menggunkanan code php yang sudah lebih baik.
Untuk informasi tambahan mengenai SQL injection silahkan browsing.

Laboraturium Sistem Operasi & Jaringan Komputer

| 49

XSS Stored
a. Pilih tab XSS stored

b. Kita akan melakukan basic XSS test, pada kolom Name isi dengan test 1 dan pada
kolom Message ketikkan command
<script>alert("Basic XSS")</script>

Lalu, klik Sign Guestbook

Laboraturium Sistem Operasi & Jaringan Komputer

| 50

c. Maka akan muncul kotak baru dibawahnya

Sekarang coba klik ulang tab XSS stored, apa yang terjadi? Exploit ini bisa
digunakan untuk meng-capture informasi session/cookie.
d. Sekarang pilih tab Setup, lalu klik Create/Reset Database.

Hal ini kita lakukan untuk menghapus exploit yang tadi telah kita lakukan.
Laboraturium Sistem Operasi & Jaringan Komputer

| 51

e. Selanjutnya coba masukkan command


<script>alert(document.cookie)</script>

Gambar diatas menunjukan window yang berisikan session/cookie yang sedang


terjadi pada browser. Bayangkan jika ini adalah website sebuah bank yang session
nya diarahkan kesebuah remote location setiap kali ada user yang memasukan
session/cookie mereka.
f. Pilih lagi tab setup dan klik lagi tombol create/reset database. Selanjutnya coba
ketikkan
<iframe src="http://www.google.com"></iframe>

Laboraturium Sistem Operasi & Jaringan Komputer

| 52

Exploit satu ini cukup ampuh, penggunanya bisa saja menggunakan SET (social
engineering toolkit) untuk menciptakan sebuah malicious web dan menaruhnya
disana.
Kesimpulan, XSS stored ini merupakan metode yang bisa digunakan untuk mengambil
informasi dari pengguna lain yang mengunjungi website yang telah terpasang XSS.
Dampak dari exploit ini cukup berbahaya jika informasi yang didapat berisikan informasi
seperti akun bank dll. Jika ingin mengetahui lebih jauh tentang XSS silahkan browsing.

Laboraturium Sistem Operasi & Jaringan Komputer

| 53

MODUL 4
CISCO Access Control List
TUJUAN PRAKTIKUM

Praktikan mengerti definisi Access Control List

Praktikan mengerti cara kerja Access Cintrol List pada Cisco router

Praktikan mengetahui kemampuan filtering pada Cisco router

Praktikan mampu mengkonfigurasi Access Control List menggunakan network


simulator Cisco Packet Tracer 6.1

Praktikan memahami manfaat penggunaan Access Control List

ALAT DAN BAHAN

Komputer/Notebook

Cisco Packet Tracer 6.1

LANDASAN TEORI
A. Access Control List
Access Control List atau disingkat dengan ACL adalah seri dari IOS command yang
berfungsi untuk mengontrol router ketika meneruskan atau membuat packet
berdasarkan informasi yang ditemukan pada packet header.

Ilustrasi Cisco Access Control List [1]

Laboraturium Sistem Operasi & Jaringan Komputer

| 54

Paket filtering biasanya disebut juga dengan static packet filtering yaitu untuk
mengontrol akses dalam jaringan dengan menganalisa paket datang (incoming packet)
dan paket keluar (outgoing packet) dan meneruskan atau membuang paket berdasarkan
kriteria, seperti Source IP Address, Destinantion IP Address, Protocol yang membawa
paket.

Packet Filtering pada OSI Layer [1]


Untuk mengevaluasi network traffic, ACL mengekstrak beberapa informasi yang terdapat
dalam layer 3 packet header :

Source IP Address

Destination IP Address

ICMP message type

ACL juga dapat membuka/mengekstrak upper layer information yang terdapat pada layer
4 header seperti :

TCP/UDP source port

TCP/UDP destination port

Ports Number [1]

Laboraturium Sistem Operasi & Jaringan Komputer

| 55

TCP Ports [1]

UDP Ports [1]

TCP/UDP Common Ports [1]


Dibawah ini adalah contoh skenario paket filtering, jika packet berasal dari Network A
menggunakan port 80 maka diberikan akses (allow), dan jika packet dari Network B
menggunakan port 80 maka akses akan diblokir (deny). Skenario diatasa dapat
diilustrasikan pada gambar dibawah ini.

Laboraturium Sistem Operasi & Jaringan Komputer

| 56

Contoh Paket Filtering [1]


ACL dikonfigurasi pada inbound traffic (inbound interface) atau pada outbond traffic
(outbond interface).

Inbound dan Outbound ACL [1]


B. Manfaat Access Control List
Beberapa manfaat menerapkan Access Control List adalah:

Membatasi network traffic untuk meningkatkan performansi jaringan

Menangani traffic flow control

Memberikan basic level security pada network akses

Filter traffic berdasarkan traffic type

Memberikan akses atau deny akses terhadap network service

Laboraturium Sistem Operasi & Jaringan Komputer

| 57

C. Tipe Access Control List


1. Standar ACL
Standar ACL dapat digunakan untuk permit atau deny traffic hanya dari IPv4 source
address. Parameter destination IPv4 address dan port tidak digunakan sebagai parameter
di dalam standar ACL. Contoh, gambar dibawah ini akan allow traffic pada jaringan
192.168.30.0/24 dan akan memblokir (deny) yang berasal dari jaringan yang lain.
Standar ACL dikonfigurasi pada Global Configuration Mode [Router (config)#]

Standard ACL [1]


2. Extended ACL
Extended ACL melakukan filter IPv4 packet berdasarkan beberapa atribut:

Protocol type

Source IPv4 address

Destination IPv4 address

Source TCP atau UDP ports

Destination TCP atau UDP ports

Optional protocol type information for finer control

Gambar di bawah ini adalah ilustrasi dari extended ACL, ACL 103 mengijinkan (permit)
traffic yang berasal dari address yang berada pada network 192.168.30.0/24 dan tujuan
host port adalah 80 (HTTP). Sama seperti standar ACL, extended ACL dikonfigurasi pada
Global Configuration Mode.

Extended ACL [1]

Laboraturium Sistem Operasi & Jaringan Komputer

| 58

Penempatan Standar ACL dan Extended ACL [1]


D. Aturan Pembuatan Access Control List [11]

Harus memiliki satu Access Control List per protokol per arah.

Standard Access Control List harus diaplikasikan ke tujuan terdekat.

Extended Access Control List harus harus diaplikasikan ke asal terdekat.

Inbound dan outbound interface harus dilihat dari port arah masuk router.

Pernyataan akses diproses secara sequencial dari atas ke bawah sampai ada yang
tepat. Jika tidak ada yang tepat maka paket ditolak dan dibuang.

Terdapat pernyataan deny any pada akhir Access Control List. Dan tidak kelihatan
di konfigurasi.

Access Control List yang dimasukkan harus difilter dengan urutan spesifik ke
umum. Host tertentu harus ditolak dulu dan grup atau umum kemudian.

Kondisi benar/tepat dijalankan dulu. Diijinkan atau ditolak dijalankan jika ada
pernyataan yang tepat.

Tidak pernah bekerja dengan Access Control List yang dalam kondisi aktif.

Teks editor harus digunakan untuk membuat komentar.

Baris baru selalu ditambahkan di akhir access list. Perintah no access-list x


akan menghapus semua daftar.

Access Control List berupa IP akan dikirim sebagai pesan ICMP host unreachable
ke pengirim dan akan dibuang.

Laboraturium Sistem Operasi & Jaringan Komputer

| 59

Acces contol list harus dihapus dengan hati-hati. Beberapa versi IOS akan
mengaplikasikan default deny any ke interface dan semua trafik akan berhenti.

Outbound filter tidak akan mempengaruhi traffic yang asli berasal dari router
lokal.

PRAKTIKUM
Cisco Access Control List
Topologi

IP Addressing
Device

Interface

IP Address

Subnet Mask

Default Gateway

PC0
PC1
DNS Server
Web Server

Fa0
Fa0
Fa0
Fa0
Fa0/0
Fa0/1
Fa0/0
Fa0/1

172.16.100.2
172.16.100.3
172.16.10.2
172.16.10.3
172.16.100.1
10.10.10.1
172.16.10.1
10.10.10.2

255.255.255.0
255.255.255.0
255.255.255.0
255.255.255.0
255.255.255.0
255.255.255.252
255.255.255.0
255.255.255.252

172.16.100.1

R0
R1

172.16.10.1

NA

Tambahkan DNS Server 172.16.10.2 pada PC0. PC1, DNS Server, dan Web Server

Laboraturium Sistem Operasi & Jaringan Komputer

| 60

Konfigurasi
1.

Memberikan IP Address PC & Server (PC0, PC1 & DNS Server, Web Server)

2.

Konfigurasi DNS Server

Laboraturium Sistem Operasi & Jaringan Komputer

| 61

3.

Konfigurasi R0
Router>en
Router#conf t
Router(config)#hostname R0
R0(config)#int f0/0
R0(config-if)#ip add 172.16.100.1 255.255.255.0
R0(config-if)#no sh
R0(config-if)#int f0/1
R0(config-if)#ip add 10.10.10.1 255.255.255.252
R0(config-if)#no sh
R0(config)#router rip
R0(config-router)#version 2
R0(config-router)#network 10.10.10.0
R0(config-router)#network 172.16.100.0

4.

Konfigurasi R1
Router>en
Router#conf t
Router(config)#hostname R1
R1(config)#int f0/0
R1(config-if)#ip add 172.16.10.1 255.255.255.0
R1(config-if)#no sh
R1(config-if)#int f0/1
R1(config-if)#ip add 10.10.10.2 255.255.255.252
R1(config-if)#no sh
R1(config-if)#exit
R1(config)#router rip
R1(config-router)#version 2
R1(config-router)#network 10.10.10.0
R1(config-router)#network 172.16.10.0

Laboraturium Sistem Operasi & Jaringan Komputer

| 62

5.

Verifikasi dari setiap Host (PC0, PC1) ke DNS Server

6.

Standard ACL
Penulisan Konfigurasi :
Router# access-list [1-99] [permit | deny] [source address]
[wildcard mask]

Studi Kasus :
Network 172.16.100.0/24 tidak diperbolehkan untuk mengakses network
172.16.10.0/24, sehingga PC0 dan PC1 tidak dapat mengakses Web Server & DNS
Server.

Konfigurasi di R1 :
R1(config)#access-list 10 deny 172.16.100.0 0.0.0.255
R1(config)#access-list 10 permit any
R1(config)#int f0/1
R1(config-if)#ip access-group 10 in

Laboraturium Sistem Operasi & Jaringan Komputer

| 63

Penjelasan :

Baris I, wildcard mask 0.0.0.255 berfungsi untuk memblok semua akses dari
host pada jaringan 172.16.100.0/24.

Baris II, permit any berfungi untuk menerima akses dari host yang lain atau
selain jaringan 172.16.100.0/24.

Baris III, memasukkan ACL kedalam interface yang mengarah ke client/host


(PC0/PC1).

Verifikasi dari PC0/PC1 Setelah Implementasi standard ACL :

Test Ping Setelah Impementasi Standard ACL


Verifikasi Standar ACL pada Router R1 :
R1(config-if)#do sh ip access-list
Standard IP access list 10
deny 172.16.100.0 0.0.0.255
permit any (1 match(es))

7.

Extended ACL
Menghapus konfigurasi standar ACL di R1 :
R1(config)#no access-list 10

Laboraturium Sistem Operasi & Jaringan Komputer

| 64

Penulisan konfigurasi :
Router# access-list [100-199] [permit | deny] [protocol] [source
address] [wildcard mask] [destination address] [wildcard mask]
[operator [port]]

Macam-macam penulisan operator pada comand extended ACL :


Operator

Keterangan

eq

Penggunaan dengan port spesifik

gt

Penggunaan dengan port yang lebih besar dari port spesifik

lt

Penggunaan dengan port yang lebih kecil dari port spesifik

neq

Penggunaan dengan port yang tidak sama dengan port spesifik

Range

Penggunaan dengan port yang sesuai dengan range port

Studi Kasus :
Host A tidak boleh mengakses Web server
Host B tidak boleh mengakses FTP server

Verifikasi dari PC0/PC1 mengakses FTP Server menggunakan username dan


password default dari Cisco Packet Tracer (Username : cisco , Password : cisco) :

Verifikasi Akses FTP dari PC0/PC1


Laboraturium Sistem Operasi & Jaringan Komputer

| 65

Konfigurasi di R1
R1(config)#access-list 110 deny tcp host 172.16.100.2 host
172.16.10.3 eq 80
R1(config)#access-list 110 deny tcp host 172.16.100.3 host
172.16.10.3 eq 21
R1(config)#access-list 110 permit ip any any
R1(config)#int f0/1
R1(config-if)#ip access-group 110 in

Verifikasi Extended ACL :


a.

Host PC0 tidak dapat mengakses Web Server.

Verifikasi Akses Web Server Setelah Implementasi Extended ACL dari PC0

Laboraturium Sistem Operasi & Jaringan Komputer

| 66

b.

Host PC1 tidak dapat mengakses FTP ke 172.16.10.3

Verifikasi Akses FTP dari PC1 ke 172.16.10.3

Laboraturium Sistem Operasi & Jaringan Komputer

| 67

MODUL 5
Proxy Server
TUJUAN PRAKTIKUM

Praktikan memahami prinsip kerja proxy

Praktikan memahami kegunaan proxy dan pengimplementasiannya untuk


filtering content

ALAT DAN BAHAN

OS Windows

Virtual machine

OS Ubuntu virtual

LANDASAN TEORI
A. Pengertian proxy server [12]
Proxy server adalah sebuah komputer server atau program komputer yang dapat
bertindak sebagai komputer lainnya untuk melakukan request terhadap content dari
internet maupun intranet. Proxy Server bertindak sebagai perantara setiap komputer
client dengan dunia internet. Proxy server tidak terlihat oleh komputer client. Seorang
pengguna yang berinteraksi dengan internet melalui sebuah proxy server tidak akan
mengetahui bahwa sebuah proxy server sedang menangani request yang dilakukannya.
Web server yang menerima request dari proxy server akan menginterpretasikan requestrequest tersebut seolah-olah request itu datang secara langsung dari komputer client,
bukan dari proxy server. Proxy pada umumnya digunakan untuk kegiatan
menyembunyikan identitas atau untuk menghindari pemblokiran akses ke suatu server.

Proxy server (http://proxy.lc/)

Laboraturium Sistem Operasi & Jaringan Komputer

| 68

B. Fungsi proxy [13]


a. Connection sharing
Disini proxy bertindak sebagai penghubung atau perantara pengambilan data
dengan cara mengakses jaringan internet secara bersama-sama dengan
menggunakan satu IP public.
b. Filtering
Dalam OSI layer, proxy bekerja pada layer aplikasi sehingga bisa bertindak
sebagai firewall. Proxy web server dapat mengecek URL dari outgoing request
(permintaan akses keluar) untuk halaman web. Dengan kemampuan tersebut,
administrator dapat mengizinkan atau melarang akses ke domain tertentu.
c. Caching
Caching

disini

dapat

diartikan

sebagai

penyimpanan

internet

objek

(gambar/halaman) dari suatu website yang sudah pernah diakses sehingga


apabila akan mengakses objek yang sama cukup mengambil dari penggunaan
proxy sebelumnya. Bandwidth yang dipakai pun akan lebih hemat dan dapat
mempercepat akses ke website.
C. Jenis-jenis proxy
a. Transparent proxy
Merupakan suatu proxy yang dibuat transparan dari sisi user. Proxy ini biasanya
digunakan untuk website cache dikarenakan dari sisi web browser, user tidak
perlu melakukan Setting proxy. Jadi tanpa sengetahuan user, sebenarnya mereka
telah diarahkan ke server proxy.
b. Forward proxy
Merupakan proxy yang bertugas meneruskan permintaan dari client ke server
yang dikehendaki oleh client. Forward proxy memiliki kemampuan untuk
mengakses content-content kemana saja.

Forward proxy

Laboraturium Sistem Operasi & Jaringan Komputer

| 69

c. Reverse proxy
Reverse proxy atau Surrogate adalah sebuah proxy server yang muncul ke client
sebagai sebuah server yang tidak biasa, request dari client akan diteruskan ke
satu atau lebih server yang nantinya akan memproses request tersebut. Respon
dari sebuah reverse proxy seakan-akan seperti datang dari server sebenarnya
yang menangani request tersebut.

Reverse proxy
D. Macam-macam software proxy server [14]
a. Squid
Squid yang dibuat oleh komunitas Internet yang dipimpin oleh Duane Wessel
dari National Laboratory for Applied Network Research, merupakan proxy server
yang terkenal akan kestabilan dan kemampuannya dalam menangani beban
yang besar. Beberapa fitur yang dimiliki oleh Squid diantaranya adalah
kemampuan melakukan caching dengan baik, autentifikasi modul yang beragam
(PAM, MySQL, NTLM, LDAP), banyaknya program redirector untuk squid, ACL
yang beragam jenis (time, user, web, keyword), management bandwidth,
transparant proxy, monitoring software, dan masih banyak lagi. Catatan yang
cukup penting dari squid adalah proxy ini membutuh source memori yang cukup
besar dikarenakan banyaknya fungsi yang dapat dilakukan oleh squid.
b. OOPS
OOPS merupakan proxy server buatan orang Rusia bernama Igor. Salah satu misi
utama dibuatnya OOPS adalah kecepatan akses pada cache objek. Beberapa
perbedaan yang tampak antara OOPS dan Squid adalah Squid meletakkan
seluruh objek dalam file terpisah-pisah dalam direktori yang bertingkat,
sedangkan OOPS meletakkan seluruh objeknya pada beberapa file besar. Untuk
fitur lainnya, kemampuan OOPS hampir sama dengan yang dimiliki proxy server
pada umumnya. Seperti kemampuan menangani cache objek, support protocol
HTTP dan FTP, ACL yang beragam, bandwidth management, modul autentifikasi,
Laboraturium Sistem Operasi & Jaringan Komputer

| 70

full compatibility for regex, dan sebagainya. Namun terdapat satu hal yang masih
kurang dari OOPS yaitu dukungan third party software, seperti halnya yang
dimiliki oleh Squid. Selain itu, OOPS juga tidak memiliki banyak dokumentasi,
sehingga agak sulit untuk memahami konfigurasi. Hal ini mungkin disebabkan
karena tidak banyaknya developer yang ikut serta dalam mengembangkan
project OOPS.
c. Privoxy
Privoxy dibuat berdasarkan Internet Junk Buster yang sudah tidak aktif lagi.
Tujuan utama privoxy adalah membuat kegiatan browsing di Internet menjadi
lebih menyenangkan. Kemampuan privoxy di antaranya adalah content filter
(menghilangkan banner berdasarkan ukuran, bugs yang tidak tampak,
menghilangkan pop-up), memiliki authentification modul, support Regex,
peningkatan terhadap management cookie, multi-thread, ACL yang beragam, user
dapat mengganti template HTML untuk semua halaman yang proxy tampilkan,
GIF deanimation, content script control, dan sebagainya. Seperti middleman,
privoxy juga dapat dikonfigurasi via web. User hanya perlu mengkonfigurasikan
IP dan port yang digunakan menjadi 8118 (default port) di Setting web browser.
Selain itu user juga dapat mengedit file konfigurasinya secara langsung dengan
menggunakan text editor. Untuk mempermudah penggunaan privoxy, user
tinggal membaca dokumentasi yang terdapat di paket privoxy.
d. Safe squid
Software buatan OEIPL ini memiliki fungsi yang hampir sama dengan yang
dimiliki Squid. Tetapi software ini tidak open source, melainkan hanya dapat
mencoba versi free dari Safe Squid atau membeli versi komersial dengan
tambahan fitur. Safe Squid memiliki kemampuan yang cukup baik seperti
melakukan content caching, terdapatnya autentifikasi modul, ACL yang beragam
(time, user network, website), dan sebagainya. Dokumentasi yang diberikan juga
sangat lengkap untuk dijadikan panduan penggunaan. Selain itu, untuk
melakukan konfigurasi Safe Squid, user dapat melakukan konfigurasi via
browser.
e. Middleman
Kemampuan yang dimiliki Middleman untuk bersaing dengan proxy server
lainnya sudah cukup baik. Middleman dapat melakukan content caching, support
Laboraturium Sistem Operasi & Jaringan Komputer

| 71

protokol HTTP dan FTP, transparant proxy, ACL yang beragam (user/network
based policies, web sitebased policies, time-based policies), autentification modul,
dan sebagainya. Fitur menarik lainnya adalah file konfigurasinya diletakkan
dalam format XML. Middleman juga menyediakan tampilan manajemen
konfigurasi berbasiskan web sehingga user dapat memilih melakukan
konfigurasi dengan mngubah file XML atau via web. Untuk dapat melakukan
Setting via web, user harus men-Setting IP dan port di browser terlebih dahulu,
lalu ketikkan http://mman, maka tampilan konfigurasinya akan muncul. Untuk
mempermudah penggunaan, file dokumentasi yang disertakan sudah cukup
menjadi panduan. Secara umum, Middleman juga sudah cukup dijadikan sebuah
proxy server alternatif.
f. Tiny proxy
Dilihat dari namanya proxy ini pasti kecil. Memang Tiny Proxy tidaklah
selengkap dan sekompleks Squid karena tujuan utama dibuatnya Tiny proxy
adalah menciptakan proxy yang kecil, efisien, dan tidak memerlukan banyak
resource hardware. Jika untuk menjalankan squid, spesifikasi hardware yang
dimiliki harus tinggi agar mendapatkan hasil yang maksimal, Tiny Proxy hanya
memerlukan PC sekelas 486 untuk operasinya. Fitur yang dimiliki Tiny Proxy, di
antaranya support HTTP request, transparent proxy, dan ACL berdasarkan nama
situs. Secara default, Tiny Proxy tidak dapat memblok web, user harus membuat
sebuah file dahulu dengan nama filter, untuk memblok beberapa situs. Tiny
Proxy juga dapat bertindak sebagai gateway, memblok user mana saja yang tidak
berhak untuk mendapatkan koneksi Internet. Intinya, Tiny Proxy hanya cocok
digunakan untuk jaringan kecil dengan tujuan hanya untuk melakukan sharing
Internet dan menerapkan beberapa aturan dalam kegiatan internet yang tidak
terlalu kompleks.

E. Web proxy
Caching merupakan sebuah cara untuk menyimpan objek-objek Internet yang diminta
atau diakses melalui HTTP, FTP dan Gopher di dalam sebuah sistem yang lebih dekat
dengan situs yang memintanya. Beberapa pengguna web dapat menggunakan cache
Squid lokal sebagai server proxy HTTP sehingga dapat mengurangi waktu akses dan

Laboraturium Sistem Operasi & Jaringan Komputer

| 72

konsumsi bandwidth. Hal ini berguna bagi ISP untuk meningkatkan kecepatan akses para
pelanggannya.
F. Dampak penggunaan proxy
a. Dampak positif
-

Menyembunyikan identitas IP user

Mempercepat akses ke suatu website (cache)

Dapat digunakan untuk memblokir akses ke suatu website atau IP

Dapat digunakan untuk mengakses suatu website atau IP yang diblokir oleh ISP

b. Dampak negative
-

Pintu keluar menuju internet hanya melalui proxy sehingga ketika terjadi
overload, akses internet menjadi lambat.

User dapat melihat file yang kadaluarsa jika cache expire timenya terlalu lama
sehingga meskipun website file tersebut berubah, user masih dapat melihat file
yang tersimpan di dalam cache memory.

PRAKTIKUM
A. Konfigurasi web server [1]
a. Ubah adapter pada web server menjadi bridge seperti gambar berikut:

Network adapter bridge


Laboraturium Sistem Operasi & Jaringan Komputer

| 73

b. Cek IP pada koneksi internet kemudian pastikan laptop (client) sudah


terhubung dengan internet (dalam kasus ini menggunakan koneksi internal
Universitas Telkom), lakukan pengecekan seperti berikut:

IP client

Tes ping ke internet


c. Kemudian masukkan IP web server dengan perintah:
# nano /etc/network/interfaces

lalu sesuaikan seperti berikut:

Laboraturium Sistem Operasi & Jaringan Komputer

| 74

Setting IP web server

Pengaturan diatas, menunjukkan bahwa IP dari web server akan mengambil IP


wireless yang terhubung dengan client sehingga IP dari web server menjadi:

web server
d. Pastikan bahwa web server sudah terhubung dengan client, proxy server, dan
juga terhubung ke internet seperti berikut:

Tes ping dari web server ke client

Laboraturium Sistem Operasi & Jaringan Komputer

| 75

Tes ping dari web server ke proxy server

Tes ping dari web server ke internet


e. Lakukan instalasi dns server dengan perintah:
# apt-get install bind9

f. Setelah instalasi selesai, kita akan membuat file forward dan file reverse.
Pertama-tama buat terlebih dahulu file forward dan file reverse tersebut.

Membuat file forward dan file reverse


g. Copy file db.local dan db.127 ke dalam direktori yang sama dengan
db.sisjar1.com dan db.sisjar2.com

Copy file db.local dan db.127


h. Kemudian edit file db.sisjar1.com dengan perintah
# nano /etc/bind/db.sisjar1.com

Seperti pada gambar di bawah ini:

Laboraturium Sistem Operasi & Jaringan Komputer

| 76

Edit file db.sisjar1.com


i.

Lalu edit juga file db.sisjar2.com dengan perintah


# nano /etc/bind/db.sisjar2.com

Seperti pada gambar di bawah ini:

Edit file db.sisjar2.com


j.

Setelah itu, akan ditentukan nama untuk domain dari server Ubuntu. Untuk
melakukan penentuan nama domain dan sever, edit dan tambahkan
konfigurasi untuk forward dan reverse pada file named.conf dengan
mengetikkan perintah berikut ini:
# nano /etc/bind/named.conf.local

Tambahkan baris seperti gambar berikut:


Laboraturium Sistem Operasi & Jaringan Komputer

| 77

Edit file named.conf.local


k. Cek file resolv.conf dengan perintah
# nano /etc/resolv.conf

Sesuaikan isinya dengan gambar berikut:

resolv.conf pada web server


l.

Restart service dari bind9 dengan perintah:


# /etc/init.d/bind9 restart

Restart bind9
m. Kemudian tambahkan baris berikut pada file /etc/network/interfaces
dengan perintah:
# nano /etc/network/interfaces

Laboraturium Sistem Operasi & Jaringan Komputer

| 78

DNS-nameservers
Kemudian restart dengan perintah:
# /etc/init.d/networking restart

n. Lakukan tes ping ke domain sisjar.com dan apabila berhasil maka akan
terlihat seperti berikut:

Tes ping ke domain sisjar.com


o. Kemudian pastikan IP server DNS sudah berubah sesuai dengan yang telah
ditentukan diatas dengan perintah:
# nslookup sisjar.com
# nslookup 10.3.71.12

Nslookup
Laboraturium Sistem Operasi & Jaringan Komputer

| 79

B. Konfigurasi proxy sever


a. Ubah adapter pada proxy server menjadi bridge seperti gambar berikut:

Network adapter bridge


b. Cek IP pada koneksi internet kemudian pastikan laptop (client) sudah
terhubung dengan internet (dalam kasus ini menggunakan koneksi internal
Universitas Telkom), lakukan pengecekan seperti berikut:

Laboraturium Sistem Operasi & Jaringan Komputer

| 80

IP client

Tes ping ke internet


c. Kemudian masukkan IP proxy server dengan perintah:
# nano /etc/network/interfaces

lalu sesuaikan seperti berikut:

Setting IP proxy server


Laboraturium Sistem Operasi & Jaringan Komputer

| 81

Pengaturan diatas, menunjukkan bahwa IP dari proxy server akan mengambil


IP wireless yang terhubung dengan client sehingga IP dari proxy server
menjadi:

IP proxy server
d. Pastikan bahwa proxy server sudah terhubung dengan client, web server, dan
juga terhubung ke internet seperti berikut:

Tes ping dari proxy server ke client

Tes ping dari proxy server ke web server

Laboraturium Sistem Operasi & Jaringan Komputer

| 82

Tes ping ke internet


e. Lakukan instalasi squid3 dengan perintah:
# apt-get install squid3

Install squid3
f. Lakukan backup file konfigurasi interfaces dan konfigurasi squid dengan
perintah:

Backup file konfigurasi interfaces dan squid


g. Proxy server dapat melakukan filter pada url website yang diketikkan pada
browser, baik malakukan block akses maupun allow akses ke suatu url website.
Untuk dapat menentukan url apa saja yang ingin di block aksesnya, dibuat
terlebih dahulu file yang menyimpan data nama-nama url yang akan di block
dengan perintah:
# nano /etc/squid3/web.block

Kemudian isikan url yang ingin di block aksesnya seperti berikut:


Laboraturium Sistem Operasi & Jaringan Komputer

| 83

Menentukan url yang akan di block


h. Lakukan konfigurasi squid dengan perintah:
# nano /etc/squid3/squid.conf

Hapus seluruh isinya, kemudian isikan dengan konfigurasi berikut:

Ubah isi file squid.conf


Penjelasannya adalah sebagai berikut:
http_port 8888 -> merupakan port untuk proxy
acl block url_regex /etc/squid3/web.block -> untuk memanggil file yang
berisi daftar url yang akan diblock
acl lan src -> access control list untuk client pada LAN
http_access -> untuk mengatur hak aksesnya apakah allow atau deny
i.

Lakukan restart service squid dengan perintah:


# service squid3 restart

Restart service squid3

Laboraturium Sistem Operasi & Jaringan Komputer

| 84

j.

Periksa file resolv.conf dan sesuaikan seperti berikut:

Cek isi file resolv.conf


k. Selanjutnya lakukan konfigurasi pada browser (Mozilla Firefox) untuk Setting
proxy nya, sebagai berikut:

konfigurasi proxy pada Mozilla Firefox (1)

Laboraturium Sistem Operasi & Jaringan Komputer

| 85

l.

Kemudian coba akses url yang tadi akan di blok. Bagaimana hasilnya? Apakah
seperti ini?

Hasil mengakses url yang di block


Coba buka url lain yang tidak terdapat dalam daftar url yang di blok.
Bagaimana hasilnya?
m. Lakukan perubahan pada file squid.conf dengan perintah:
# nano /etc/squid3/squid.conf

Kemudian ubah isinya menjadi seperti berikut: [15] [16]

Laboraturium Sistem Operasi & Jaringan Komputer

| 86

Ubah isi squid.conf


Kemudian lakukan restart pada service squid3.
n. Ubah konfigurasi pada browser (Mozilla Firefox) untuk Setting proxy nya,
menjadi seperti berikut:

Ubah pengaturan proxy pada Mozilla Firefox (2)


Coba akses ketiga website di atas. Apa yang terjadi?
Laboraturium Sistem Operasi & Jaringan Komputer

| 87

MODUL 6
Penetration Testing Menggunakan Kali Linux,
Nmap dan Metasploit
TUJUAN PRAKTIKUM

Praktikan mampu mengoperasikan sistem operasi Kali Linux

Praktikan mampu melakukan dasar penetration testing menggunakan tool Nmap


dan Metasploit

ALAT DAN BAHAN

Komputer yang terinstal VMWare

Image sistem operasi Kali Linux, Windows XP dan Metasploitable OS

LANDASAN TEORI
A. Penetration Testing
Penetration testing adalah percobaan penyerangan terhadap sistem (dalam hal ini Sistem
IT) dengan cara yang sama seperti peretas lakukan untuk mengidentifikasi kelemahan
sistem tersebut. Penetration testing berbeda dengan cracking karena penetration tester
sudah memperoleh ijin dari pemilik sistem sebelumnya, sedangkan cracking tidak [17].
B. Kali Linux
1. Pengertian Kali Linux
Kali Linux adalah salah satu distribusi Linux tingkat lanjut untuk Penetration
Testing dan audit keamanan. Kali Linux merupakan pembangunan kembali
BackTrack Linux secara sempurna, mengikuti standar pengembangan Debian.
2. Fitur fitur Kali Linux
a. Lebih dari 300 tools penetration testing
b. Gratis
c. Open source Git tree
d. Mengikuti FHS (Filesystem Hierarchy Standard) compliant
e. Dukungan perangkat wireless yang luas
f. Modifikasi kernel yang sudah di patch untuk injection
g. Lingkungan pengembangan yang aman
Laboraturium Sistem Operasi & Jaringan Komputer

| 88

h. GPG menandai beberapa paket dan repo


i.

Banyak bahasa

j.

Dapat dirubah sepenuhnya

k. Mendukung ARMEL dan ARMHF


3. Perbedaan BackTrack dengan Kali Linux
Berbeda dengan Bactrack yang base-nya menggunakan Ubuntu 10.04 (Lucid
Lynx), untuk Kali Linux sendiri base-nya menggunakan Debian Wheezy. Maka
repository-nya telah sinkron dengan repository Debian. Jika Debian mengupdate
package-nya, jadi otomatis Kali Linux juga mengupdate package-nya
4. Menjalankan Kali Linux
Sama seperti BackTrack, Kali Linux yang merupakan sistem operasi penerus
BackTrack ini adalah sistem operasi yang sangat fleksibel. Ada 2 cara yang dapat
digunakan untuk menjalankan Kali Linux yaitu :

Menjalankan Kali Linux dari Live CD/DVD


Menjalankan sistem operasi langsung dari CD ataupun DVD memiliki banyak
keuntungan karena fleksibilitas yang didapatkan. Tidak perlu melakukan
instalasi sama sekali karena sistem operasi akan langsung dan siap dijalankan
melalui DVD dan tidak perlu khawatir virus atau worm akan merusak sistem
operasi. Karena sifatnya yang Read Only, data yang ada didalam DVD tidak akan
bisa dirubah oleh malware.
Kekurangan dalam menjalankan sistem operasi dari DVD adalah karena sistem
perlu membaca dan mengakses ke DVD untuk menjalankan aplikasi dan sistem
operasi yang mengakibatkan sistem menjadi lambat bila dibandingkan dengan
menjalankan sistem operasi dari harddisk. Selain itu, perubahan yang telah
dilakukan pada sistem tidak bisa disimpan kedalam DVD, perubahan yang
dilakukan akan hilang ketika merestart komputer.

Menjalankan Kali Linux dari Harddisk


Menjalankan Kali linux langsung dari harddisk komputer merupakan cara yang
direkomendasikan jika banyak bekerja dengan Kali Linux. Dengan cara ini,
maka sistem operasi yang digunakan akan digantikan dengan menggunakan
Kali Linux.

Laboraturium Sistem Operasi & Jaringan Komputer

| 89

5. Spesifikasi Hardware
Persyaratan minimal yang dibutuhkan untuk Kali Linux :

Minimal space harddisk 8 GB

Untuk i386 dan amd64, minimal RAM 512 MB

CD-DVD Drive / USB boot support

C. Metasploitable OS
1. Apa itu Metasploitable OS
Metasploitable OS adalah Virtual Machine yang didesain memiliki celah pada sistem
operasinya. Metasploitable OS adalah sistem operasi yang berdasarkan kepada
Ubuntu Linux. Metasploitable OS adalah OS yang dikhususkan untuk pengujian
keamanan sistem [18].
2. Servis pada Metasploitable OS
Servis umum yang berjalan pada Metasploitable OS antara lain : FTP, SSH, Telnet,
SMTP, DNS, HTTP, NFS, Database (MySQL dan PostgreSQL), Proxy, VNC, dan IRC.
Semua servis yang berjalan ini memiliki celah kerentanan yang dapat berdampak
buruk terhadap sistem [18].
3. Instalasi
Instalasi Metasploitable OS sangatlah mudah. Langkah pertama ialah mengunduh
virtual

machine

dari

Metasploitable

OS

ini

di

alamat

http://information.rapid7.com/download-metasploitable.html?LS=1631875&CS=web

Laboraturium Sistem Operasi & Jaringan Komputer

| 90

Laman Unduh Metasploitable OS


Setelah selesai mengunduh, ekstrak file unduhan tadi hingga mendapatkan hasil
seperti berikut

Hasil ekstrak
Setelah selesai mengekstrak, buka VMWare Workstation. Klik Open, lalu arahkan
kepada folder hasil ekstraksi Metasploitable OS tadi.

Laboraturium Sistem Operasi & Jaringan Komputer

| 91

Kotak Dialog Open VM


Jika berhasil, maka akan muncul Metasploitable OS di list VM

Metasploitable OS muncul di list

Laboraturium Sistem Operasi & Jaringan Komputer

| 92

D. Metasploit Framework
1. Apa itu Metasploit Framework
Metasploit adalah open source platform untuk melakukan penetration testing.
Metasploit framework dibuat oleh Rapid7 [19]. Metasploit framework dapat juga
disebut sebagai platform untuk pengembangan tool-tool keamanan sistem dan
eksploitasi sistem. Kebanyakan tool atau modil di dalam metasploit dibuat dalam
bahasa ruby [19] [20].
2. Fungsi Metasploit Framework
Fungsi dari metasploit framework adalah menghimpun modul modul yang
digunakan untuk eksploitasi sistem, membiarkan pengguna untuk melakukan
konfigurasi yang diperlukan terhadap modul dan menjalankannya pada target yang
dituju [19]. Modul modul eksploitasi pada metasploit framework bekerja dengan
cara mengirimkan exploit yang berisi payload. Payload sendiri ialah sesuatu yang
akan dijalankan setelah modul exploit berhasil mengeksploitasi sistem. Salah satu
contoh payload adalah linux/x86/shell_reverse_tcp [21]. Payload ini
memungkinkan penyerang yang melancarkan eksploitasi memperoleh shell dari
target setelah berhasil mengeksploitasi sistem. Secara singkat, kegunaan dari
metasploit framework adalah [20] :
i.

Percobaan penetrasi kepada sistem pada jaringan untuk eksploitasi


ataupun untuk menguji kerentanan sistem saja

ii.

Verfikasi instalasi patch atau update pada sistem

iii.

Riset keamanan sistem

iv.

Pemahaman pola atau cara kerja serangan

3. Jenis Modul pada Metasploit Framework


Secara garis besar, modul pada metasploit framework dibagi menjadi tiga, yaitu :
i.

Exploit
Exploit adalah modul yang ditujukan untuk mengeksploitasi celah pada
sistem atau celah yang ditemukan oleh tool pemindai celah.

ii.

Auxiliary
Auxiliary adalah modul yang melakukan pekerjaan selain eksploitasi,
seperti : memindai celah dan fuzzing.

Laboraturium Sistem Operasi & Jaringan Komputer

| 93

iii.

Post-Exploitation
Post-Exploitation adalah modul yang dijalankan setelah modul lainnya dari
metasploit framework sudah berhasil masuk ke dalam sistem target.

4. Cara Menggunakan Metasploit Framework


Untuk menjalankan Metasploit Framework ada beberapa cara. Cara termudah
adalah dengan menjalankan terminal lalu mengetikkan msfconsole [19].

Tampilan Awal Metasploit Framework


Setelah terminal menampilkan tampilan seperti diatas, pengguna sudah dapat
memasukkan perintah perintah yang digunakan dalam metasploit. Perintah
perintah yang sering digunakan pada metasploit ialah [19] :
i.

use (nama modul)

Digunakan untuk memilih modul yang akan digunakan pada metasploit


framework
ii.

search (string)

Laboraturium Sistem Operasi & Jaringan Komputer

| 94

Digunakan untuk melakukan pencarian modul yang terdapat di dalam


database metasploit framework
iii.

set payload (nama payload)

Menentukan payload yang akan dibawa oleh modul exploit. Payload ini
nantinya akan dijalankan setelah eksploitasi berhasil.
iv.

set rport (nomor port target)

Menetapkan nomer port target yang akan digunakan untuk eksploitasi.


v.

set lport (nomor port lokal penyerang)

Menetapkan nomer port yang digunakan oleh komputer lokal penyerang.


vi.

exploit / run

Menjalankan modul eksploitasi.


vii.

show options

Melihat keseluruhan opsi yang terdapat pada modul yang digunakan.


viii.

help

Menampilkan informasi menyeluruh tentang penggunaan metasploit


framework.
E. Nmap
1. Apa itu Nmap
Nmap atau Network Mapper adalah sebuah aplikasi yang free dan bersifat open
source yang berfungsi untuk melakukan port scanning dan digunakan untuk audit
keamanan. Dengan menggunakan Nmap dapat melihat host yang aktif, port yang
terbuka, sistem operasi yang digunakan, dan feature-feature scanning lainnya [22].
Kelebihan Nmap :
i.

Fleksibel : Nmap mendukung teknik-teknik yang digunakan untuk


memetakan jaringan

ii.

Powerful : Nmap dapat digunakan untuk memindai jaringan yang besar

iii.

Free

iv.

Populer : Nmap telah digunakan oleh ribuan orang

2. Kemampuan Nmap
Nmap memiliki kemampuan sebagai berikut [23] :
i.

Mengumpulkan informasi setiap host atau komputer yang aktif pada


jaringan lokal

Laboraturium Sistem Operasi & Jaringan Komputer

| 95

ii.

Mengumpulkan informasi setiap ip address pada jaringan lokal

iii.

Mengumpulkan informasi setiap sistem operasi pada host maupun seluruh


host pada target jaringan

iv.

Menemukan setiap port yang terbuka dari host target

v.

Menemukan adanya infeksi dari virus maupun malware

vi.

Mengumpulkan informasi mengenai layanan-layanan pada host target dan


server pada jaringan target

3. Instalasi dan Penggunaan


Sebelum melakukan instalasi Nmap pastikan sudah terhubung dengan internet.
Cara mengecek konektivitas adalah dengan melakukan ping ke google.com

Cek Konektivitas
Setelah terhubung dengan internet, ketikkan apt-get install nmap untuk
melakukan instalasi Nmap seperti gambar dibawah ini

Ketik apt-get install nmap untuk melakukan instalasi Nmap

Laboraturium Sistem Operasi & Jaringan Komputer

| 96

Proses Instalasi Nmap

Instalasi Nmap selesai


Penggunaan Nmap cukup mudah, hanya perlu membuka terminal lalu
mengetikkan command nmap maka akan muncul hasil seperti berikut :

Laboraturium Sistem Operasi & Jaringan Komputer

| 97

Tampilan command nmap


Untuk melihat informasi host yang sedang dalam keadaan up pada satu subnet
gunakan perintah nmap n sn (network target) . Hasilnya seperti gambar
berikut

Nmap dengan opsi -n -sn


Jika ingin melakukan scanning pada satu ip address gunakan perintah nmap (ip
address target) . Hasilnya seperti gambar berikut

Laboraturium Sistem Operasi & Jaringan Komputer

| 98

Nmap untuk scanning satu IP address


Untuk mendeteksi sistem operasi dan layanan gunakan perintah sebagai berikut
nmap A (ip address target)

Hasilnya seperti gambar berikut. Dari gambar dibawah ini dapat diketahui
beberapa service yang sedang berjalan dan OS yang sedang digunakan oleh target.

Hasil nmap dengan opsi -A

Laboraturium Sistem Operasi & Jaringan Komputer

| 99

Hasil nmap dengan opsi -A


Untuk mendeteksi layanan dan device yang sedang up pada satu jaringan/subnet
tertentu gunakan perintah berikut :
nmap sP (ip network target)

Hasilnya seperti gambar berikut

Hasil nmap dengan opsi -sP

Laboraturium Sistem Operasi & Jaringan Komputer

| 100

Untuk mendeteksi beberapa versi layanan pada target gunakan opsi sV

Hasil nmap dengan opsi -sV

PRAKTIKUM
Praktikum dibagi menjadi tiga aktivitas yaitu :

Instalasi Kali Linux

Eksploitasi FTP (vsftpd) pada Metasploitable OS

Deface Sederhana halaman web menggunakan command execution pada


Mutillidae.

A. Instalasi Kali Linux


Buka VMWare dan klik pada Create a New Virtual Machine dengan spesifikasi
hardware sebagai berikut. Klik Finish untuk mulai melakukan instalasi

Pembuatan Virtual Machine Baru


Laboraturium Sistem Operasi & Jaringan Komputer

| 101

Maka akan ditampilkan menu Kali Linux Live DVD Boot. Pilih Graphical Install

Boot Menu Installer Kali Linux


Selanjutnya lakukan langkah-langkah instalasi Kali Linux berikut

Pemilihan Bahasa

Laboraturium Sistem Operasi & Jaringan Komputer

| 102

Pemilihan Location

Pemilihan Konfigurasi Keyboard

Laboraturium Sistem Operasi & Jaringan Komputer

| 103

Masukkan username, contohnya Kali. Click Continue

Username
Untuk domain name dikosongkan saja. Clik Continue

Domain

Laboraturium Sistem Operasi & Jaringan Komputer

| 104

Masukkan password untuk root. Contohnya sisjar

Pengaturan password root

Pengaturan waktu

Laboraturium Sistem Operasi & Jaringan Komputer

| 105

Laboraturium Sistem Operasi & Jaringan Komputer

| 106

Pengaturan partisi

Laboraturium Sistem Operasi & Jaringan Komputer

| 107

Untuk HTTP Proxy page dikosongkan dan klik Continue

Pengaturan Package Manager

Laboraturium Sistem Operasi & Jaringan Komputer

| 108

Laboraturium Sistem Operasi & Jaringan Komputer

| 109

Instalasi Selesai
Setelah instalasi selesai maka akan muncul tampilan login seperti dibawah ini.
Masukkan username root dan masukkan password sesuai yang sudah dibuat
sebelumnya, contoh dalam kasus ini sisjar

Tampilan Login Kali Linux

Laboraturium Sistem Operasi & Jaringan Komputer

| 110

Jika berhasil login maka tampilan sebagai berikut

Tampilan Desktop Kali Linux


B. Eksploitasi service FTP
Metasploitable OS menjalankan service FTP menggunakan aplikasi vsFTPd versi
2.3.4 yang ternyata di dalamnya terdapat backdoor. Eksploitasi backdoor ini akan
memberikan penyerang hak akses sebagai root [24]. Untuk melakukan
eksploitasi, ada dua cara yang dapat digunakan. Yang pertama adalah melalui
aplikasi FTP dan netcat bawaan Kali Linux. Yang kedua menggunakan Metasploit.
Eksploitasi pertama adalah menggunakan aplikasi FTP dan netcat bawaan Kali
Linux. Langkah pertama adalah memindai servis yang berjalan pada target
menggunakan Nmap. Perintahnya adalah nmap sV v (ip target) . Setelah
itu akan didapat hasil sebagai berikut

Laboraturium Sistem Operasi & Jaringan Komputer

| 111

Hasil scan Nmap


Terlihat dari hasil Nmap bahwa target menggunakan vsFTPd versi 2.3.4. Setelah
itu kita lakukan eksploitasi dengan menggunakan aplikasi FTP dan netcat bawaan
Kali Linux. Penggunaan netcat disini didasari pada cara kerja backdoor yang
membuka shell pada port TCP 6200 saat user menambahkan smiley (tanda : ) )
pada username yang dimasukkan (misal : anonymous:) ) [25]. Jadi, diperlukan
netcat untuk mengakses shell yang dibuka oleh backdoor tadi. Langkah eksploitasi
pertama adalah membuka aplikasi ftp pada kali linux dengan cara mengetikkan
ftp (ip address target)

Akses FTP target


Sistem akan menanyakan name (name disini adalah username). Masukkan dengan
anonymous:) (tanpa tanda kutip) lalu tekan enter. Setelah itu akan ditanyakan
password, masukkan sembarang lalu tekan enter.

Password
Laboraturium Sistem Operasi & Jaringan Komputer

| 112

Setelah itu seperti tidak ada respon lagi dari sistem. Sebenarnya, setelah
melakukan langkah diatas backdoor sudah terbuka. Untuk mengaksesnya, buka
terminal baru lalu ketikkan nc (ip address target) 6200.

Mengakses backdoor menggunakan Netcat


Seolah tidak terjadi apa-apa. Tapi, ketika kita ketikkan command whoami atau id
. Maka akan keluar hasil seperti berikut :

Percobaan menjalankan command whoami dan id


Ternyata sistem merespon dengan jawaban root . Sampai disini kita sudah
berhasil mengeksploitasi service ftp target dan mendapatkan hak akses sebagai
root. Untuk mengamankan akses kedepannya , bisa dengan cara membuat user
baru dan menjadikannya setingkat root dengan perintah adduser namauser dan
adduser namauser admin.

Cara kedua adalah dengan menggunakan metasploit. Langkah pertama sama


seperti cara pertama, yaitu melakukan pemindaian menggunakan Nmap. Setelah
itu pada terminal kali linux ketikkan msfconsole. Tunggu sebentar hingga
muncul tampilan seperti berikut :

Laboraturium Sistem Operasi & Jaringan Komputer

| 113

Tampilan Metasploit
Setelah itu ketikkan search vsftpd lalu tekan enter dan tunggu hingga keluar
tampilan seperti berikut :

Tampilan search
Setelah itu ketikkan use exploit/unix/ftp/vsftpd_234_backdoor (sesuai
hasil pencarian) lalu tekan enter. Akan muncul hasil seperti berikut [25]:

tampilan exploit vsftpd_234_backdoor


Untuk mengetahui parameter apa saja yang perlu diubah untuk menjalankan
exploit, ketik show options .

Laboraturium Sistem Operasi & Jaringan Komputer

| 114

Tampilan show options


Seperti yang terlihat pada gambar, hanya perlu dilakukan pengubahan pada
RHOST yaitu diisi dengan IP Target. Cara mengisinya adalah dengan perintah set
RHOST (ip target). Setelah itu ketik exploit. Tanda exploit berhasil adalah

muncul tampilan seperti berikut :

Exploit berhasil
Sampai disini, eksploitasi service FTP pada metasploitable OS sudah berhasil
dilakukan.
C. Deface Sederhana
Mutillidae adalah aplikasi web bawaan Metasploitable yang mempunyai banyak celah
atau kerentanan. Mutillidae ini sendiri mirip seperti DVWA yang sudah dibahas pada
modul 3. Untuk melakukan deface sederhana pada aplikasi web bawaan Metasploitable
OS (Mutillidae) sebenarnya cukup mudah. Untuk melakukan deface, penyusup atau
penyerang hanya perlu menemukan tempat

yang bisa dieksploitasi yang

memungkinkan modifikasi file atau penambahan file ke dalam sistem. Pada aplikasi
Laboraturium Sistem Operasi & Jaringan Komputer

| 115

web mutillidae ini, dimungkinkan untuk melakukan injeksi perintah yang


memungkinkan dijalankannya perintah berbahaya sistem, seperti menghapus file
sistem, merename file dsb melalui fitur DNS lookup. Fitur tersebut terletak pada
OWASP Top 10 -> A1. Injection -> Command Injection -> DNS lookup. Untuk lebih
jelasnya perhatikan gambar berikut :

Letak fitur DNS Lookup


Untuk menggunakannya, tinggal masukkan alamat DNS server yang ingin anda
lookup, contohnya seperti dibawah ini :

Penggunaan fitur DNS Lookup


Seperti terlihat pada gambar, saat dimasukkan IP address dari DNS server maka
sistem akan menjawabnya dengan Informasi mengenai DNS tersebut. Sekarang

Laboraturium Sistem Operasi & Jaringan Komputer

| 116

mari melakukan percobaan apakah kotak masukan / input dapat menerima input
selain IP address?

Modifikasi Input
Ternyata sistem mampu memproses input selain IP address. Saat diberikan input
IP address yang ditambahi pipe (tanda |) serta command standar pada OS linux
(command pwd ; untuk mengecek direktori tempat kita bekerja) , sistem
memberikan jawaban dari command linux tersebut. Hal ini tentunya sangat
berbahaya karena bisa saja digunakan untuk memodifikasi file yang berada dalam
sistem operasi yang menaungi aplikasi web tersebut. Untuk memastikan
kelemahan itu berbahaya atau tidak, dicoba untuk membuat file dengan cara
seperti berikut :

Percobaan Pembuatan File

Menggunakan command seperti percobaan sebelumnya namun diganti dengan


touch namafile dan ls la | grep namafile ternyata membuahkan hasil

bahwa file yang dicoba dibuat menggunakan perintah touch rupanya benar benar
dibuat oleh sistem. Dari sini dapat disimpulkan bahwa kelemahan ini sangat
berbahaya dan penyerang dapat melakukan deface pada halaman web
menggunakan fitur DNS lookup ini.
Laboraturium Sistem Operasi & Jaringan Komputer

| 117

Untuk melakukan deface, pertama kali harus ditentukan dahulu halaman mana
yang akan dideface, contoh saja kita akan mengubah halaman depan mutillidae
dengan

cara

membuat

http://(ipaddress)/mutillidae.

file
Cara

index.html
membuatnya

pada

alamat

adalah

dengan

menggunakan command touch index.html.

Pembuatan file index.html


Seperti yang diketahui, command touch berfungsi untuk menciptakan file baru.
Setelah itu cek apakah file baru tersebut benar benar ada dengan menggunakan
command ls la | grep index.html.

Pengecekan apakah file index.html ada atau tidak


Ternyata file index.html ada. Hal ini menandakan bahwa command touch diatas
berhasil.

Untuk

membuktikannya

dapat

melalui

mengakses

http://(ipaddress)/mutillidae/index.html. Apabila muncul halaman

kosong berarti apa yang kita kerjakan sudah benar.

Laboraturium Sistem Operasi & Jaringan Komputer

| 118

Gambar 1 Tampilan index.html

Untuk mempercantik pekerjaan, dapat menambahkan teks pada file index.html.


Dikarenakan kita tidak bisa melakukan penyuntingan secara langsung, maka
dapat dilakukan dengan perintah echo teks yang ingin dimasukkan >
index.html. Contohnya seperti berikut :

Penambahan teks kedalam index.html


Untuk mengecek hasilnya dapat dengan mereload halaman index.html tadi.

Deface berhasil
Sampai disini, percobaan deface tampilan halaman depan dari aplikasi mutillidae
sudah berhasil.

Laboraturium Sistem Operasi & Jaringan Komputer

| 119

Daftar Pustaka
[1]

Laboraturium Sistem Operasi dan Jaringan , Modul Praktikum Keamanan Sistem


informasi, Bandung , 2014.

[2]

V.laurie, "How to Allow Connections Through the Windows 7 Firewall," 13 January


2012 . [Online]. Available: http://www.techsupportalert.com/content/how-allowconnections-through-windows-7-firewall.htm.. [Accessed 9 January 2015].

[3]

Microsoft Corporation, "Windows Firewall from start to finish," 12 January 2014.


[Online]. Available: http://windows.microsoft.com/en-us/windows-8/windowsfirewall-from-start-to-finish. [Accessed 8 January 2015].

[4]

Open Web Application Security Project (OWASP), "Testing: Information Gathering,"


[Online].

Available:

https://www.owasp.org/index.php/Testing:_Information_Gathering. [Accessed 10
Janurai 2015].
[5]

Infonet, Hacker Beware, 2015.

[6]

C. Sanders, Practical Packet Analysis Using Wireshark To Solve Real-World Network


Problems, Canada, 2011.

[7]

Wireshark, "What is Wireshark?," Wireshark Introduction, [Online]. Available:


https://www.wireshark.org/docs/wsug_html_chunked/ChapterIntroduction.html.
[Accessed Januari 2015].

[8]

W. Purnamasari, "Celah Keamanan pada Aplikasi Web," [Online]. Available:


http://wswaa126a23.blogspot.com/p/blog-page_21.html.

[9]

M. Riadi, "Web Hacking dengan DVWA," 28 Oktober 2009. [Online]. Available:


http://idecapung.blogspot.com/2009/10/web-hacking-dengan-dvwa.html.

[10] A. M. S. B. A. P. M. C. Kesuma, "Pencari Celah Keamanan pada Aplikasi Web," vol. 2,


p. p.

Laboraturium Sistem Operasi & Jaringan Komputer

| 120

[11] Cisco System, "Cisco Networking Academy," 2014. [Online]. [Accessed 8 January
2015].
[12] Wikipedia,

"Server

proksi,"

2014.

[Online].

Available:

http://id.wikipedia.org/wiki/Server_proksi. [Accessed 2 January 2015].


[13] "Internetan

dan

Browsing

memakai

Proxy,"

2009.

[Online].

http://www.esc-creation.com/tag/fungsi-dan-kegunaan-proxy/.

Available:

[Accessed

14

January 2015].
[14] Supriyanto, "Adu 6 Software Proxy Server," 2005. [Online]. Available:
http://infolinux.web.id/. [Accessed 5 January 2015].
[15] A. Jeffries, "Redirection Helpers," 2011. [Online]. Available: http://wiki.squidcache.org/Features/Redirectors.. [Accessed 14 Januari 2015].
[16] gsnm4u, "Redirect URL In Squid Proxy Server," 2013. [Online]. Available:
https://www.youtube.com/watch?v=9sdG3qzYIX8. [Accessed 13 Januari 2015].
[17] Rapid7, "Introduction to Penetration Testing," 6 Mei 2014. [Online]. Available:
https://community.rapid7.com/docs/DOC-2248.. [Accessed 14 Januari 2015].
[18] Rapid7, "Metasploitable 2 Exploitability Guide," 13 Desember 2013. [Online].
Available: https://community.rapid7.com/docs/DOC-1875.. [Accessed 12 Januari
2015].
[19] Rapid7, "Metasploit Community User Guide," 21 Maret 2014. [Online]. Available:
https://community.rapid7.com/servlet/JiveServlet/downloadBody/1563-102-146126/community-user-guide.pdf.. [Accessed 10 Januari 2015].
[20] Laboratorium Sisjar, Modul Praktikum Keamanan Sistem Informasi, Bandung:
Laboratorium Sisjar, 2013.
[21] Rapid7, "How to Use A Reverse Shell in Metasploit," 28 Oktober 2014. [Online].
Available: https://github.com/rapid7/metasploit-framework/wiki/How-to-use-areverse-shell-in-Metasploit. [Accessed 11 Januari 2015].
[22] Insecure Corp., "Nmap - Free Security Scanner for Network Exploration and Security
Audits," [Online]. Available: http://www.nmap.org.. [Accessed 11 Januari 2015].

Laboraturium Sistem Operasi & Jaringan Komputer

| 121

[23] I. B. Team, "Dasar - Dasar Penggunaan Nmap," 13 November 2013. [Online].


Available:

https://www.indonesianbacktrack.or.id/dasar-dasar-penggunaan-

nmap/. [Accessed 12 Januari 2015].


[24] Rapid7, "vsFTPd 2.3.4 Backdoor Command Execution," 1 July 2011. [Online].
Available:
http://www.rapid7.com/db/modules/exploit/unix/ftp/vsftpd_234_backdoor.
[Accessed 10 January 2015].
[25] Rapid7, "vsFTPd 2.3.4 Backdoor Command Execution," 1 Juli 2011. [Online].
Available:
http://www.rapid7.com/db/modules/exploit/unix/ftp/vsftpd_234_backdoor.
[Accessed 10 Januari 2015].

Laboraturium Sistem Operasi & Jaringan Komputer

| 122

Anda mungkin juga menyukai