• Tidak ada hasil yang ditemukan

MENINGKATKAN KEAMANAN PORT SSH DENGAN METODE PORT KNOCKING MENGGUNAKAN SHOREWALL PADA SISTEM OPERASI LINUX NASKAH PUBLIKASI

N/A
N/A
Protected

Academic year: 2021

Membagikan "MENINGKATKAN KEAMANAN PORT SSH DENGAN METODE PORT KNOCKING MENGGUNAKAN SHOREWALL PADA SISTEM OPERASI LINUX NASKAH PUBLIKASI"

Copied!
17
0
0

Teks penuh

(1)

MENINGKATKAN KEAMANAN PORT SSH DENGAN METODE PORT

KNOCKING MENGGUNAKAN SHOREWALL

PADA SISTEM OPERASI LINUX

NASKAH PUBLIKASI

diajukan oleh

Edy Haryanto

09.11.3317

kepada

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER

AMIKOM YOGYAKARTA

YOGYAKARTA

2013

(2)
(3)

INCREASE SSH PORT SECURITY WITH PORT KNOCKING METHOD USING SHOREWALL ON LINUX OPERATING SYSTEM

MENINGKATKAN KEAMANAN PORT SSH DENGAN METODE PORT KNOCKING MENGGUNAKAN SHOREWALL

PADA SISTEM OPERASI LINUX

Edy Haryanto Melwin Syafrizal Jurusan Teknik Informatika STMIK AMIKOM YOGYAKARTA

ABSTRACT

Remote logins are generally provided by linux system administrator on server computer that they manage is SSH. SSH can simplify their work in administering the system they run wherever they are.

SSH service is ussually to be one of attacks target by hackers because these services are generally provided by linux system administrator on their servers. Hackers will do a port scan on the server to determine the port number of the SSH service running and then perform an attack on these port. Although SSH remote login service is the most secure today because not only encrypted sessions but also authentication is required to access this service, but this service can still be attacked with brute-force attack techniques. Brute-force attack is attempted attack that tries to automatically log in using a username and password combination list that already exists.

Based on the description above, SSH service need an additional security system so that service is not easily tracked or accessed by others and resistant against a brute-force attack. The solution can be applied is using the knock on the door (port knocking). The main purpose of port knocking is to prevent an attacker from scanner systems such as SSH to perform port scanning. If an attacker sends a wrong connection sequence, the protected ports will not show up or open.

Keyword : Port SSH Security, Port Knocking, Port Scanning, Brute-Force Attack, Linux Operating System.f

(4)

1. Pendahuluan

SSH merupakan service remote login yang cukup aman, bukan hanya sesi yang terenkripsi tapi juga adanya fasilitas otentikasi, sehingga untuk mengakses service ini dibutuhkan login, tapi service ini masih bisa diserang dengan teknik brute-force attack. Brute-force attack adalah suatu upaya serangan yang mencoba melakukan login secara otomatis dengan cara mencoba satu-persatu kemungkinan username dan password menggunakan daftar kombinasi user dan password yang sudah ada.

Salah satu kasus penyerangan service SSH terjadi seperti yang dijelaskan pada situs http://www.shellperson.com, bahwa pada tanggal 10 april 2010 servernya telah berhasil dibobol melalui service SSH dengan cara melancarkan serangan brute-force attack. Serangan brute-force attack ini teridentifikasi ketika sang admin melihat log otentikasi. penyerang meninggalkan jejak berupa ribuan percobaan login yang tercatat di file /var/log.auth.log.1 seperti yang dijelaskan pada website tersebut.

Hal ini yang melatar belakangi mengapa “Meningkatkan Keamana Port SSH dengan Metode Port knocking Menggunakan Shorewall pada Sistem Operasi Linux” diangkat sebagai judul skripsi karena berdasarkan pengamatan penulis jika penyerang mengirimkan ketukan koneksi yang salah maka port SSH yang dilindungi oleh port knocking tadi tidak akan muncul atau terbuka.

2. Landasan Teori 2.1 Tinjauan Pustaka

Artikel yang ditulis oleh Henry Saptono yang berjudul “Metode Port knocking dengan Ip Tables untuk Membuka Port SSH” pada majalah InfoLinux edisi 05/2011 membahas tentang implementasi port knocking menggunakan ip tables untuk mengamankan port SSH menggunakan sistem operasi Ubuntu 10.04. Pada implementasi port knocking tersebut juga dilengkapi dengan fitur limit per-ip connection rate untuk membatasi jumlah percobaan koneksi per satuan waktu, yaitu 3 kali percobaan koneksi dalam interval waktu 10 detik.

Fitur limit per ip connection rate yang diimplementasikan masih belum sempurna, karena ketika terjadi percobaan koneksi melebihi interval yang telah ditentukan, koneksi tersebut masih tetap diterima.

Berdasarkan artikel diatas penelitian ini akan membahas tentang implementasi port knocking menggunakan shorewall dan akan menyempurnakan fitur limit per ip connection rate sehingga percobaan koneksi akan diterima hanya ketika pengguna melakukan percobaan koneksi sebanyak yang sudah ditentukan, tidak kurang dan tidak lebih, dan juga tambahan fitur dimana pengguna yang sudah berhasil melakukan koneksi kemudian mengahiri sesi koneksinya, pengguna tersebut tidak akan bisa melakukan

(5)

koneksi kembali sebelum melakukan percobaan koneksi pada port yang sudah ditentukan.

2.2 Tinjauan Umum

Salah satu service remote login yang umumnya disediakan oleh para administrator linux untuk mempermudah administrasi sistem pada servernya adalah SSH. Namum service ini sering menjadi sasaran serangan para hacker jahat guna mendapat akses shell pada server.

Umunya para hacker akan melakukan scanning port guna mengetahui port yang terbuka dan service yang berjalan pada port tersebut. Setelah mengetahui pada port berapa service SSH berjalan, para hacker akan melancarkan serangan brute-force attack pada port tersebut guna mendapatkan password yang valid. Dengan password tersebut, hacker melakukan login dan mendapatkan akses full terhadap komputer korban dan dapat melakukan hal-hal yang merugikan seperti gambar 3.1 dibawah ini.

Gambar 2.1 Serangan Bute-Force Attack pada Service SSH

(6)

Setelah melihat kenyataan tersebut maka sangat diperlukannya sistem keamanan tambahan untuk menanggulangi serangan yang terjadi. Oleh karena itu penulis akan membangun serta mengimplementasikan port knocking pada port SSH guna memberikan keamanan ekstra.

2.3 Service SSH

SSH yang merupakan singkatan dari Secure Shell adalah protokol jaringan yang memungkinkan pertukaran data melalui saluran aman antara dua perangkat jaringan yang banyak digunakan pada sistem berbasis linux dan unix.

SSH dirancang sebagai pengganti telnet dan remote shell tak aman lainnya, yang mengirim informasi, terutama kata sandi, dalam bentuk teks sederhana yang membuatnya mudah untuk dicegat.

SSH menggunakan metode public-key cryptography untuk mengenkripsi komunikasi antara dua host, demikian pula untuk otentikasi pemakai. Dengan metode ini, kita akan memerlukan 2 buah kunci berbeda yang digunakan baik untuk melakukan enkripsi dan deskripsi. Dua buah kunci tersebut masing-masing disebut public key (dipublikasikan ke publik/orang lain) dan private key (dirahasiakan/hanya pemiliknya yang tahu).

Ada dua pilihan Software SSH server untuk mengimplementasikan protokol SSH pada sistem operasi linux 1

1. SSH

Program SSH original bersifat komersial atau berbayar, biasanya diimplementasikan pada perusahaan atau organisasi dan tersedia di situs

http://www.SSH.com. 2. OpenSSH

OpenSSH adalah implementasi open soruce dari SSH yang dikembangkan oleh OpenBSD projek. Situs resminya terdapat di http://www.openSSH.com. OpenSSH adalah server SSH yang paling popular dan sering digunakan di sistem berbasis linux.

2.4 Brute-Force Attack

Brute-force attack adalah sebuah teknik serangan terhadap sebuah sistem keamanan komputer yang menggunakan percobaan terhadap semua kunci yang mungkin untuk memecahkan password, kunci, kode, atau sebuah kombinasi.

Dalam proses penebakan password, Brute-force attack dapat diimplementasikan dengan metode sebagai berikut :

1

Smith W, Roderick. 2003. FreeBSD: The Complete Reference. United Kingdom: The Dryden Press

.

(7)

1. Brute Force Attack

Metode ini diimplementasikan dengan cara menentukan range of character set dan mengkomputasikan setiap kemungkinan kombinasi karakter yang ada. Metode ini umumnya menggunakan kombinasi karakter yang terdiri dari huruf saja, huruf angka, huruf angka atau special character atau setiap karakter pada table ASCII.

2. Brute Force Attack with Dictionary

Metode Dictionary Attack atau biasa disebut serangan kamus ini diimplementasikan dengan mengkomputasi secara berangsur-angsur setiap kata tunggal atau modifikasi kata dari sebuah kamus dan dicocokan dengan password pengguna tertentu.

Gambar 2.1 Serangan Bute-Force Attack pada Service SSH

2.5 NMAP

Nmap merupakan utilitas berlisensi open source yang berfungsi untuk discovery jaringan dan audit keamanan. Nmap menggunakan raw IP paket untuk menentukan apakah host tersedia pada jaringan, service apa (nama service dan versi) yang berjalan di host, apa sistem operasi (versi OS) yang host jalankan, jenis firewall yang sedang dijalankan dan banyak karakteristik lainnya. Nmap dirancang untuk memindai jaringan besar secara cepat, tetapi bekerja baik juga untuk host tunggal.

(8)

Nmap mengirimkan paket SYN kepada target pada proses port scanning untuk menemukan port mana yang terbuka. Jika port korban berbuka, maka nmap akan mendapatkan paket balasan berupa paket SYN dan ACK, bila port tertutup maka nmap akan menerima pake RST seperti gambar 2.2 berikut :

Gambar 2.3 Nmap Port Scanning

2.6 THC-Hydra

Hydra adalah sebuah proyek software yang dikembangkan oleh “The Hacker’s Choice” (THC) yang menggunakan serangan kamus untuk menguji password yang lemah atau sederhana pada suatu remote host yang menjalankan berbagai layanan yang berbeda. Tool ini dirancang sebagai utilitas proof-of-concep untuk menunjukan kemudahan dalam pembobolan password yang lemah. Thc-Hydra berlisensi General Publick Licence versi 3.0 dengan ketentuan tambahan bahwa perangakat lunak ini tidak boleh digunakan untuk tujuan illegal, dan setiap layanan komersial atau program yang menggunakan Hydra harus memberikan kredit kepada THC.

(9)

2.7 Shorewall

Shorewall (Shoreline Firewall) merupakan tool firewall berbasis open source pada sistem operasi linux. Shorewall didirikan berdasarkan sistem Netfilter (iptables/ipchains) yang dibangun ke dalam kernel linux, sehingga lebih mudah untuk mengelola skema konfigurasi yang lebih kompleks. Dengan mendeskripsikan rule firewall/gateway pada file konfigurasi, shorewall akan menjalankan rule tersebut dengan bantuan iptables, iptables-restore, utilitas ip, konfigurasi netfilter, dan subsistem jaringan linux.

Shorewall bukanlah demon karena tidak berjalan secara terus menerus, melainkan sebuah rules konfigurasi pada kernel yang mengizinkan atau tidak mengizinkan sebuah trafik melewati sistem.

Shorewall dikonfigurasi melalui file-file konfigurasi plain-tex (text mode) karena tidak memiliki GUI (graphical user interface), walaupun modul Webmin tersedia secara terpisah. Sebuah utilitas monitoring juga dikemas dalam Shorewall yang berfungsi untuk memantau status sistem.

2.8 Port Knocking

Port knocking adalah sebuah metode membuka port secara eksternal melalui firewall dengan cara melakukan usaha koneksi pada suatu port yang tertutup dengan urutan upaya koneksi yang telah ditentukan. Dengan kata lain port knocking adalah sebuah metode untuk membangun sebuah komunikasi host-to-host dengan perangkat komputer yang tidak membuka port komunikasi apapun secara bebas.

Port knocking diimplementasikan dengan mengkonfigurasi Sebuah program kecil yang disebut daemon guna memonitor log firewall untuk permintaan koneksi dan menentukan apakah klien terdaftar pada alamat IP yang disetujui dan telah melakukan urutan ketukan yang benar. Jika jawabannya adalah ya, firewall akan membuka port yang terkait secara dinamis.

Tujuan utama dari port knocking adalah mencegah penyerang dari pemindai sistem seperti SSH dengan melakukan port scanning. Jika penyerang mengirimkan urutan ketukan yang salah, port yang dilindungi tidak akan muncul atau terbuka seperti pada gambar 2.3 dan 2.4 berikut :

(10)

Gambar 2.4 Port knocking Blok koneksi

Gambar 2.5 Port knocking izinkan Koneksi

3. Analisis

3.1 Analisis Port Scanning

Hacker pada umumnya akan mencari informasi tentang korbannya terlebih dahulu sebelum melakukan serangan, mencari celah-celah yang mungkin bisa dimasuki

(11)

dan mencari kelemahan-kelemahan yang mungkin untuk diekploitasi melalui proses scanning. Tool scanning yang sering digunakan salah satunya adalah nmap.

Gambar 3.1 Nmap Port Scanning

3.2 Analisis serangan Brute-Force Attack

Langkah selanjutnya setelah mengetahui port SSH yang terbuka adalah melancarkan serangan brute-force attack. banyak tool yang bisa digunakan, salah satunya adalah hydra.

Gambar 3.2 Hydra Login Cracker

(12)

Gambar 3.3 Hydra Finish Attacking

3.3 Konfigurasi Topologi Jaringan

1. Forward ip publick Speedy dengan ip 110.136.181.131 menuju ip private server dengan ip 192.168.1.2

2. Konfigurasi ip address static server menjadi 192.168.1.2 dengan mengedit file “/etc/network/interfaces”

3. Ganti default port SSH yang berada pada port 22 menjadi 33 dengan mengedit file “/etc/ssh/sshd-config”.

4. Konfigurasi port forwarding dari ip publick Speedy menuju ip private server dengan cara login sebagai admin pada modem ADSL Speedy kemudian pilih menu Advance Setup -> NAT kemudian pilih Virtual Sverver kemudian forward layanan-layanan yang diinginkan

3.4 Instalasi dan Konfigurasi Shorewall

1. Instalasi shorewall mengunakan Advance Paket Tool (APT) secara online dengan perintah “sudo apt-get install shorewall”

2. Salin file konfigurasi daras shorewall dari direktori

“/usr/share/doc/shorewall/default-config” menuju “/etc/shorewall”

(13)

3. Definisikan zona jaringan yang digunakan dengan ipv4 dengan mengedit file “/etc/shorewall/zones”

4. Mendefinisikan “eth0” sebagai perangkat jaringan yang digunakan dengan cara mengedit file “/etc/shorewall/interfaces”

5. Definisikan kebijakan default firewall dimana semua koneksi dari luar menuju server ditolak dan koneksi dari server ke luar diizinkan dengan cara mengedit file /etc/shorewall/policy

6. Mendefinisikan nama Actions shorewall dengan nama “portknock” 7. buat file kosong dengan nama file “action.portknock” dimana ekstensi

portknock adalah nama yang sesuai dengan nama action yang sudah didefinisikan pada file /etc/shorewall/actions

8. buat file /etc/shorewall/portknock dan isikan dengan skrip port knocking seperti yang sudah dijelaskan pada bab 4.

9. Definisikan port dan rule spesifik untuk implementasi port knocking 10. Setelah semua konfigurasi dilaukan, jalankan shorewall

4. Hasil Penelitian dan Pembahasan 4.1 Pengujian Port Scanning

Pengujian port scanning dilakukan untuk menguji sistem port knocking dari pemindai sistem menggunakan tool nmap, zenmap, dan knocker. Ketiga tools tersebut tidak dapat menemukan port SSH yang berjalan sehingga dapat disimpulkan metode port knocking ini dapat mencegah penyerang dari pemindai sistem sehingga tidak mudah dilacak.

Gambar 4.1 Nmap pada Sistem Port knocking

(14)

Gambar 4.2 Zenmap pada Sistem Port knocking

Gambar 4.3 Knocker pada Sistem Port knocking

4.2 Pengujian Brute-Force Attack

Pengujian serangan brute-force attack dilakukan pada service SSH yang berjalan di port 33 menggunakan hydra. Tools ini tidak dapat melakukan serangan terhadap service SSH karena port SSH tersebut dilindungi port knocking.

(15)

Gambar 4.4 Brute Force Sistem Port knocking

4.3 Pengujian Koneksi

Pengujian koneksi dilakukan untuk mengetahui apakah sistem port knocking berjalan lancar seperti rule yang sudah ditetapkan.

4.3.1 Pengujian Koneksi Langsung

Pengujian pertama dilakukan dengan cara langsung melakukan percobaan koneksi SSH ke server. Koneksi ditolak karena dibutuhkan sebuah urutan ketukan rah

4.3.2 Pengujian Koneksi Dengan Ketukan yang Salah

Penyempurnaan sistem yang dilakukan pada bahasan ini adalah dimana bila ketukan yang dilakukan client melebihi atau kurang dari jumlah ketukan yang telah ditetapkan, maka client tidak diizinkan melakukan koneksi SSH, misalnya client melakukan ketukan sebanyak 4 kali sedangkan aturan portk knocking hanya mengizinkan ketukan sebanyak 3 kali sehingga koneksi client tidak diizinkan

(16)

4.3.3 Pegujian Koneksi dengan Aturan

Pengujian kedua dilakukan dengan percobaan koneksi SSH menggunakan aturan yang sudah ditentukan, yaitu melakukan percobaan koneksi menuju port 1234 dengan percobaan koneksi sebanyak 3 kali dalam interval waktu 10 detik sehingga Koneksi diizinkan.

4.3.4 Pengujian Koneksi Kembali

Implementasi port knocking pada bahasan ini terdapat sebuah fitur dimana bila klien yang sudah berhasil melakukan koneksi SSH ke server dan mengahiri sesi koneksinya, klien tersebut tidak dapat melakukan koneksi SSH kembali sebelum melakukan penghapusan list.

5. Kesimpulan

Berdasarkan hasil penelitian metode port knocking menggunakan shorewall yang telah dijelaskan dan diuraikan pada bab-bab sebelumnya dalam skripsi ini, dapat disimpulkan bahwa :

1. Service SSH mempunyai tingkat keamanan yang lumayan tinggi, tapi tetap saja service ini masih rentan terhadap serangan brute-force attack dan pemindai sistem sehingga dibutuhkan keamanan tambahan untuk service ini. 2. Port knocking dapat mencegah penyerang dari pemindai sistem seperti

service SSH dengan melakukan port scanning, sehingga service SSH tidak mudah dilacak dan diakses orang lain.

3. Metode port knocking menggunakan shorewall ini dapat meningkatkan keaman service SSH dari serangan brute-force attack.

4. Kelebihan penerapan port knocking menggunakan shorewall adalah tidak perlu lagi menggunakan demon yang berjalan secara terus menerus.

5. Metode port knocking untuk meningkatkan keaman port SSH dapat dibangun menggunakan software free atau gratis yaitu shorewall tanpa harus mengeluarkan biaya mahal dalam implementasinya terhadap sistem.

(17)

14

DAFTAR PUSTAKA

Anonim. 2007. SSH Tutorial for Linux. http://support.suso.com/supki/ SSH_Tutorial_for_Linux. diakses tanggal 20 desember 2012

Anonim. 2008. Presentation: Nmap and Asynchronous Programing,

http://blogger.popcnt.org/2008/08/presentation-nmap-and asynchronous.html,

diakses 20 januari 2013

Anonim. 2008. Add Port Knocking to SSH for Exstra Security. http://www.marksanborn.net/linux/add-port-knocking-to-ssh-for-extra-security

Hauser, V. 2012. Comparation of Features and Services Coverage. http://www.thc.org/thc-hydra/network_password_cracker_comparison.html, diakses tanggal 8 desember 2012.

Saptono, Henry. 2011. Metode Port Knocking dengan Shorewall untuk Membuka Port SSH. Jakarta: InfoLinux

Saptono, Henry. 2011. Metode Port knocking dengan Iptables untuk Membuka Port SSH. Jakarta: InfoLinux.

Smith W, Roderick. 2003. FreeBSD: The Complete Reference. United Kingdom: The Dryden Press.

Thomas M. Estep. 2009. Port knocking and Other Uses of ‘Recent Match’. http://www.shorewall.net/PortKnocking.html, diakses 2 desember 2012

Thomas M. Estep. 2009. Standalone Firewall. http://www.shorewall.net/ standalone.html, diakses 19 januari 2013

Gambar

Gambar 2.1 Serangan Bute-Force Attack pada Service SSH
Gambar 2.1 Serangan Bute-Force Attack pada Service SSH
Gambar 2.3 Nmap Port Scanning
Gambar 2.4 Port knocking Blok koneksi
+6

Referensi

Dokumen terkait

Berdasarkan pada hal tersebut diatas dapat ditetapkan tujuan penelitian adalah untuk meningkatkan pemahaman matematika operasi hitung campuran dengan

Maka penulis melakukan kegiatan Penelitian Tindakan Kelas dengan judul “ Upaya Meningkatkan Keaktifan Siswa Belajar Ilmu Pengetahuan Alam Melalui Metode Demonstrasi

Secara umum, ada tiga (3) metode untuk mengembangkan sistem operasi berbasis linux yaitu:.. - Turunan, yaitu teknik untuk membuat turunan linux dari linux yang sudah

Dengan ini saya menyatakan bahwa skripsi dengan judul “Penggunaan Metode Make A-Match Untuk Meningkatkan Kemampuan Operasi Hitung Penjumlahan. Bilangan Bulat Pada

Dengan ini menyatakan bahwa s kripsi dengan judul “ Pengaruh Perbedaan Individu Terhadap Keputusan Menggunakan Sistem Operasi Linux (Survei pada Pengguna Sistem

Dengan memperhatikan rumusan masalah maka penelitian tindakan kelas ini ditujukan untuk meningkatkan keberhasilan belajar operasi hitung campuran melalui metode mnemonic

Pada penelitian dengan judul Malware Analysis Pada Sistem Operasi Windows untuk Mendeteksi Trojan [2], jurnal tersebut menggunakan metode Static dan metode Dynamic

Pada penelitian dengan judul Malware Analysis Pada Sistem Operasi Windows untuk Mendeteksi Trojan [2], jurnal tersebut menggunakan metode Static dan metode Dynamic