Modul Ksi 2015
Modul Ksi 2015
1.
2.
3.
4.
5.
6.
7.
8.
9.
| 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.
| iii
| 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.
B.
C.
Firewall ....................................................................................................................................... 2
PRAKTIKUM ................................................................................................................................................ 3
MODUL 2 Information Gathering & Report ......................................................................................... 17
TUJUAN PRAKTIKUM............................................................................................................................. 17
ALAT DAN BAHAN .................................................................................................................................. 17
LANDASAN TEORI................................................................................................................................... 17
A.
B.
A.
Wireshark................................................................................................................................ 20
PRAKTIKUM .............................................................................................................................................. 21
MODUL 3 Web Security with DVWA ...................................................................................................... 24
TUJUAN PRAKTIKUM............................................................................................................................. 24
ALAT DAN BAHAN .................................................................................................................................. 24
LANDASAN TEORI................................................................................................................................... 24
A.
|v
B.
C.
DVWA ......................................................................................................................................... 27
D.
E.
F.
PRAKTIKUM .............................................................................................................................................. 31
MODUL 4 CISCO Access Control List..................................................................................................... 54
TUJUAN PRAKTIKUM............................................................................................................................. 54
ALAT DAN BAHAN .................................................................................................................................. 54
LANDASAN TEORI................................................................................................................................... 54
A.
B.
C.
D.
PRAKTIKUM .............................................................................................................................................. 60
MODUL 5 Proxy Server ............................................................................................................................... 68
TUJUAN PRAKTIKUM............................................................................................................................. 68
ALAT DAN BAHAN .................................................................................................................................. 68
LANDASAN TEORI................................................................................................................................... 68
A.
B.
C.
D.
E.
F.
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.
C.
Metasploitable OS ................................................................................................................ 90
D.
E.
Nmap .......................................................................................................................................... 95
| vii
MODUL 1
Windows Firewall
TUJUAN PRAKTIKUM
Komputer
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
|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
|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.
|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
|5
|6
|7
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
|8
|9
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
| 10
g. Beri checklist pada domain, private, dan public. Kemudian pilih next, maka akan
muncul pada kolom inbound rules.
| 11
h. Kemudian kita coba akses google.com. jika google.com dapat diakses maka
konfigurasi yang sudah dilakukan berhasil.
| 12
| 13
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
| 14
g. Beri chekclist pada domain, private, dan public. Kemudian pilih next, maka
akan muncul pada kolom inbound rules.
| 15
h. Kemudian kita coba akses google.com. jika google.com tidak dapat diakses
maka konfigurasi yang sudah dilakukan berhasil.
| 16
MODUL 2
Information Gathering & Report
TUJUAN PRAKTIKUM
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.
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].
| 17
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.
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).
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.
Portscanners
Sebuah program untuk menjalankan scan ke seluruh sistem untuk
menemukan port yang terbuka. Untuk melakukan port scanners tentukan
| 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.
f)
Nmap
Vulnerability scanners
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
| 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.
| 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:
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)?
Berapa banyak bytes dari isi paket yang dikembalikan kepada browser
anda?
| 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)
| 23
MODUL 3
Web Security with DVWA
TUJUAN PRAKTIKUM
DVWA
Xampp
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.
| 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].
| 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 :
| 26
File-file backup atau file contoh (sample file), file-file script, file konfigurasi yang
tertinggal atau tidak perlu.
Adanya service yang seperti remote administration dan content management yang
masih aktif.
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
SQL Injection
Command Execution
Upload Script
| 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.
| 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.
| 31
| 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.
| 33
e. Pastikan lampp sudah terinstall pada Ubuntu server kemudian jalankan lampp
pada Ubuntu Server dengan perintah
/opt/lampp/lamp start
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
| 35
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
| 36
Lalu coba klik kembali tombol Create / Reset Database. Maka create / reset
database tekah berhasil
i.
| 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.
| 38
| 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
| 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
| 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
| 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() #
| 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 #
| 45
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
| 47
| 48
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.
| 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>
| 50
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
| 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.
| 53
MODUL 4
CISCO Access Control List
TUJUAN PRAKTIKUM
Praktikan mengerti cara kerja Access Cintrol List pada Cisco router
Komputer/Notebook
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.
| 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.
Source IP Address
Destination IP Address
ACL juga dapat membuka/mengekstrak upper layer information yang terdapat pada layer
4 header seperti :
| 55
| 56
| 57
Protocol type
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.
| 58
Harus memiliki satu Access Control List per protokol per arah.
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.
Access Control List berupa IP akan dikirim sebagai pesan ICMP host unreachable
ke pengirim dan akan dibuang.
| 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
| 60
Konfigurasi
1.
Memberikan IP Address PC & Server (PC0, PC1 & DNS Server, Web Server)
2.
| 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
| 62
5.
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
| 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.
7.
Extended ACL
Menghapus konfigurasi standar ACL di R1 :
R1(config)#no access-list 10
| 64
Penulisan konfigurasi :
Router# access-list [100-199] [permit | deny] [protocol] [source
address] [wildcard mask] [destination address] [wildcard mask]
[operator [port]]
Keterangan
eq
gt
lt
neq
Range
Studi Kasus :
Host A tidak boleh mengakses Web server
Host B tidak boleh mengakses FTP server
| 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 Akses Web Server Setelah Implementasi Extended ACL dari PC0
| 66
b.
| 67
MODUL 5
Proxy Server
TUJUAN PRAKTIKUM
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.
| 68
disini
dapat
diartikan
sebagai
penyimpanan
internet
objek
Forward proxy
| 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
| 72
konsumsi bandwidth. Hal ini berguna bagi ISP untuk meningkatkan kecepatan akses para
pelanggannya.
F. Dampak penggunaan proxy
a. Dampak positif
-
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:
| 73
IP client
| 74
web server
d. Pastikan bahwa web server sudah terhubung dengan client, proxy server, dan
juga terhubung ke internet seperti berikut:
| 75
f. Setelah instalasi selesai, kita akan membuat file forward dan file reverse.
Pertama-tama buat terlebih dahulu file forward dan file reverse tersebut.
| 76
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
| 77
Restart bind9
m. Kemudian tambahkan baris berikut pada file /etc/network/interfaces
dengan perintah:
# nano /etc/network/interfaces
| 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:
Nslookup
Laboraturium Sistem Operasi & Jaringan Komputer
| 79
| 80
IP client
| 81
IP proxy server
d. Pastikan bahwa proxy server sudah terhubung dengan client, web server, dan
juga terhubung ke internet seperti berikut:
| 82
Install squid3
f. Lakukan backup file konfigurasi interfaces dan konfigurasi squid dengan
perintah:
| 83
| 84
j.
| 85
l.
Kemudian coba akses url yang tadi akan di blok. Bagaimana hasilnya? Apakah
seperti ini?
| 86
| 87
MODUL 6
Penetration Testing Menggunakan Kali Linux,
Nmap dan Metasploit
TUJUAN PRAKTIKUM
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
Banyak bahasa
j.
| 89
5. Spesifikasi Hardware
Persyaratan minimal yang dibutuhkan untuk Kali Linux :
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
| 90
Hasil ekstrak
Setelah selesai mengekstrak, buka VMWare Workstation. Klik Open, lalu arahkan
kepada folder hasil ekstraksi Metasploitable OS tadi.
| 91
| 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.
ii.
iii.
iv.
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.
| 93
iii.
Post-Exploitation
Post-Exploitation adalah modul yang dijalankan setelah modul lainnya dari
metasploit framework sudah berhasil masuk ke dalam sistem target.
search (string)
| 94
Menentukan payload yang akan dibawa oleh modul exploit. Payload ini
nantinya akan dijalankan setelah eksploitasi berhasil.
iv.
exploit / run
show options
help
ii.
iii.
Free
iv.
2. Kemampuan Nmap
Nmap memiliki kemampuan sebagai berikut [23] :
i.
| 95
ii.
iii.
iv.
v.
vi.
Cek Konektivitas
Setelah terhubung dengan internet, ketikkan apt-get install nmap untuk
melakukan instalasi Nmap seperti gambar dibawah ini
| 96
| 97
| 98
Hasilnya seperti gambar berikut. Dari gambar dibawah ini dapat diketahui
beberapa service yang sedang berjalan dan OS yang sedang digunakan oleh target.
| 99
| 100
PRAKTIKUM
Praktikum dibagi menjadi tiga aktivitas yaitu :
| 101
Maka akan ditampilkan menu Kali Linux Live DVD Boot. Pilih Graphical Install
Pemilihan Bahasa
| 102
Pemilihan Location
| 103
Username
Untuk domain name dikosongkan saja. Clik Continue
Domain
| 104
Pengaturan waktu
| 105
| 106
Pengaturan partisi
| 107
| 108
| 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
| 110
| 111
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.
| 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]:
| 114
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
memungkinkan modifikasi file atau penambahan file ke dalam sistem. Pada aplikasi
Laboraturium Sistem Operasi & Jaringan Komputer
| 115
| 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 :
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
Untuk
membuktikannya
dapat
melalui
mengakses
| 118
Deface berhasil
Sampai disini, percobaan deface tampilan halaman depan dari aplikasi mutillidae
sudah berhasil.
| 119
Daftar Pustaka
[1]
[2]
[3]
[4]
Available:
https://www.owasp.org/index.php/Testing:_Information_Gathering. [Accessed 10
Janurai 2015].
[5]
[6]
[7]
[8]
[9]
| 120
[11] Cisco System, "Cisco Networking Academy," 2014. [Online]. [Accessed 8 January
2015].
[12] Wikipedia,
"Server
proksi,"
2014.
[Online].
Available:
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].
| 121
https://www.indonesianbacktrack.or.id/dasar-dasar-penggunaan-
| 122