Apa itu FTP ? fungsi, cara kerja, dan cara mengamankan FTP

Diposting pada
Ilustrasi FTP

Didalam jaringan FTP berperan penting sebagai pertukaran data dan informasi. Lantas apa sih sebenarnya FTP itu ? untuk apa sih fungsi nya ? bagaimana sih cara kerjanya ? dan bagaimana sih agar menggunakan FTP dengan aman ? diartikel ini akan admin bahas utas dari akar – akarnya singga kebuah – buahnya.

1. Pengertian FTP 

File Transfer Protocol adalah metode standar untuk mentransfer file dari satu sistem ke sistem lainnya.
Tujuannya diatur dalam RFC 0765:
  • untuk mempromosikan berbagi file (program komputer dan / atau data), 
  • untuk mendorong penggunaan komputer jarak jauh secara tidak langsung atau implisit
  • melindungi pengguna dari variasi dalam sistem penyimpanan file di antara Host, dan 
  • untuk mentransfer data andal dan efisien.
Dalam tugas ini, FTP unggul. Namun, FTP memiliki beberapa kekurangan keamanan kritis:
  • FTP menggunakan otentikasi nama pengguna / kata sandi standar. Akibatnya, server tidak dapat memastikan apakah pengguna yang diberikan benar-benar seperti yang ia klaim.
  • Secara default, kata sandi dikirimkan dalam teks biasa. Ini memungkinkan penyerang untuk secara elektronik menguping dan menangkap kata sandi.
  • Sesi FTP tidak dienkripsi dan karenanya tidak menawarkan privasi. Selain itu, FTP memiliki riwayat keamanan yang signifikan. Mari kita bahas secara singkat sekarang.

Baca juga Apa itu ssl ?

2. Riwayat keamanan FTP

Kerentanan historis kepentingan termasuk

2.1.Serangan bouncing FTP

Bounce FTP menyerang mesin target yang dikonfigurasi untuk menolak koneksi dari alamat IP tertentu (atau topeng alamat IP).
Biasanya, alamat IP cracker berada dalam kisaran terbatas, jadi direktori server FTP tidak dapat diakses olehnya. Untuk menghindari hal ini, cracker menggunakan mesin lain (perantara) untuk mengakses target.untuk mengakses target.
Untuk mencapai hal ini, cracker memulai dengan menulis file ke direktori FTP perantara itu berisi perintah untuk terhubung ke target dan mengambil beberapa file di sana. Ketika perantara terhubung ke target, ia datang dari alamatnya sendiri (dan bukan cracker). Karena itu target menghormati permintaan koneksi dan meneruskan file yang ditentukan.
Namun, penyerang juga dapat menentukan port pada mesin pihak ketiga. Ini membuka segala macam kemungkinan. Misalnya, dalam keadaan tertentu, penyerang dapat menggunakan satu host korban untuk memindai layanan yang ada di balik firewall host korban lain. Dalam hal ini, pemindaian port tampaknya berasal dari korban pertama dan bukan dari mesin penyerang.
Baca juga Apa itu vpn ?

2.2. Izin File Salah

Di masa lalu, penyerang telah mendapatkan akses yang lebih besar atau bahkan root dengan mengeksploitasi file yang salah dan izin direktori pada target mereka. Jika Anda menjalankan FTP anonim, periksa izin FTP Anda pada table dibawah untuk menutup kebocoran di sana.
Apa itu FTP ? fungsi, cara kerja, dan cara  mengamankan FTP
Perlu dicatat bahwa FTP anonim harus digunakan hanya sebagai pilihan terakhir untuk transfer file. Sebagian besar pembobolan FTP disebabkan oleh izin FTP yang dikonfigurasi secara tidak tepat, dan eksploitasi lainnya karena akses anonim diaktifkan. Gunakan akses anonim hanya jika itu benar-benar diperlukan dan, jika mungkin, aktifkan hanya selama periode waktu penggunaan aktif.

2.3. Bug SITE EXEC

Versi wu-ftpd awal memungkinkan individu jarak jauh untuk mendapatkan shell dengan memulai sesi telnet ke port 21. Untuk memeriksa lubang ini, memulai sesi telnet ke port 21 dan mengeluarkan perintah SITE EXEC. Jika Anda mendapatkan shell, ada masalah.

Contoh Masalahnya adalah variabel PATH_EXECPATH diatur ke “/ bin” di file konfigurasi src / pathnames.h ketika biner distribusi dibangun. PATH_EXECPATH harus diatur ke “/ bin / ftp-exec” atau direktori serupa yang tidak mengandung shell atau penerjemah perintah, misalnya. Kode sumber yang dikirimkan dengan distribusi Linux berisi nilai yang benar (“/ bin / ftp-exec”) meskipun biner distribusi salah. Anda harus memverifikasi bahwa  PATH_EXECPATH memiliki nilai yang benar sebelum mengkompilasi ulang.
Keamanan FTP umum adalah subjek yang paling baik ditangani dengan mempelajari teknologi FTP pada intinya. Teknologi FTP telah banyak berubah sejak diperkenalkan. Spesifikasi FTP sebenarnya pada awalnya ditetapkan dalam RFC 959, “File Transfer Protocol (FTP),” hampir dua dekade lalu. Sejak saat itu, banyak yang telah dilakukan untuk meningkatkan keamanan aplikasi penting ini.

3.Fitur Keamanan Bawaan FTP 

Ftpd menawarkan fitur keamanan marjinal, termasuk kontrol akses jaringan berbasis host dan pengguna. Anda menerapkan fitur-fitur ini menggunakan tiga file:
  • etc /ftpusers : File Akses Pengguna Terbatas
    /etc /ftpusers adalah file akses pengguna terbatas. Setiap pengguna yang namanya muncul di sini ditolak Akses masuk FTP.
  • /etc/ftpaccess: File Konfigurasi ftpd
    /etc/ftpaccess adalah file konfigurasi inti ftpd. Melalui arahan dalam file ini, Anda mengontrol cara ftpd beroperasi.
  • ftphosts
    ftphosts adalah file akses pengguna / host individu ftpd. File ftphosts digunakan untuk mengizinkan atau menolak akses ke akun tertentu dari berbagai host.

4.Transfer file SSH

Cara terbaik dan termudah untuk menerapkan transfer file keamanan tinggi adalah menginstal distribusi SSH v.2. Setelah SSH diinstal, Anda dapat mentransfer file dengan aman dalam hitungan menit.

4.1.SCP

Metode termudah untuk memindahkan file secara aman adalah dengan menggunakan perintah scp / scp2 Secure Copy, yang secara otomatis diinstal dengan SSH. Tergantung pada versi SSH yang telah Anda instal, sistem Anda mungkin hanya memiliki scp (SSH v.1) atau keduanya scp dan scp2 (SSH v.2) tersedia. Demi konsistensi dan kompatibilitas ke belakang, saya hanya akan merujuk ke scp.
Cara menggunakan scp adalah dengan melihat contoh. Sintaksnya sangat mirip dengan menyalin file secara lokal; satu-satunya perbedaan adalah bahwa nama host / IP harus ditentukan bersama dengan sumber dan tujuan:
scp <source hostname / ip:> from-filename <destination hostname / ip:> ke-filename
Jika sumber atau tujuannya adalah mesin lokal, itu tidak perlu dimasukkan dalam permintaan perintah. Untuk menyalin file dari komputer jarak jauh, prosesnya dibalik, dengan alamat IP komputer sumber yang ditentukan dan tujuan dibiarkan sebagai nama file sederhana. Untuk mendemonstrasikan ini, mari kita lihat bagaimana file yang baru saja saya salin ke 192.168.0.1 dapat disalin kembali ke lokasi aslinya.
Ini adalah cara yang sangat sederhana untuk mentransfer file dengan aman, dan didukung di banyak platform selain Linux. Namun, jika Anda lebih nyaman menggunakan alat FTP, SSH v.2 hadir dengan aplikasi FTP aman sendiri, sftp2.

4.2. SFTP

Bagi mereka yang lebih menyukai FTP, SSH tidak mengecewakan — klien dan server FTP aman dasar adalah bagian dari paket. Setelah menginstal distribusi v.2, periksa file / etc / ssh2 / sshd2_config Anda untuk memastikan bahwa subsistem ftp SSH diaktifkan.
Jika baris sftp-server dikomentari, batalkan komentar itu sekarang dan kemudian restart server sshd. Menggunakan perintah sftp seperti menggunakan klien FTP lainnya. Perbedaannya adalah bahwa tidak seperti FTP, seluruh transmisi dienkripsi menggunakan enkripsi kuat yang sama di SSH.

4.3. Solusi Alternatif: SSLftp dan sftp

SSLftp adalah klien dan server FTP yang mendukung SSL. SSL adalah Secure Sockets Layer, protokol dan API tiga tingkat yang menggunakan otentikasi dan enkripsi RSA dan DES serta pemeriksaan integritas sesi MD5 tambahan. SSLftp didasarkan pada OpenSSL, implementasi SSL terbuka dari Eric Young yang berlokasi di http://www.openssl.org/. Anda bisa mendapatkan SSLftp di ftp://ftp.psy.uq.oz.au/pub/Crypto/SSLapps/.
Jika Anda ingin mencoba pengganti ke server FTP SSH termasuk, ada pengganti lain yang didasarkan pada paket SSH. Server sftp menggunakan terowongan SSH yang aman untuk membuat koneksi FTP dasar. Izin root tidak diperlukan, jadi siapa pun dapat menggunakan ini untuk membuat server yang aman.

Baca juga Apa itu DNS ?

5. Keamanan Aplikasi FFT Khusus

Akhirnya, bagian-bagian berikut ini membahas masalah-masalah khusus aplikasi terkait FTP yang layak disebutkan, termasuk yang mempengaruhi

5.1. ncftp

Paket ncftp dilengkapi dengan server Linux FTP dan klien yang menawarkan setidaknya sesi otomatisasi marginal. Namun, ncftp populer terutama karena mengurangi keseluruhan beban server dan karenanya melayani lebih banyak pengguna.
ncdftp versi 2.0.0 dan 2.4.2 (dan mungkin yang lain) rentan terhadap serangan dari jarak jauh Server FTP. Administrator FTP jarak jauh dapat membuat direktori di servernya yang menyebabkan eksekusi perintah secara jarak jauh, seperti menggema ++ ke file .rhosts. Untuk mengetahui apakah versi Anda rentan, coba kode exploit yang terdapat di http://www2.merton.ox.ac.uk/ ~ security / rootshell / 0016.html. Jika sistem Anda rentan, tingkatkan. ncftp tersedia di http://www.ncftp.com/. Akhirnya, ncftp versi 2.3.4 (libc5) juga rentan terhadap serangan penolakan layanan yang membunuh kemampuan loggingnya. Jika Anda menggunakan 2.3.4 libc5 ncftp.

5.2. Filerunner

Filerunner adalah klien FTP grafis untuk X (umum ke Debian), sebagian didasarkan pada Tk. Ini berfungsi seperti WS_FTP, menawarkan daftar file lokal / jarak jauh layar, penandaan berganda, dan transfer file otomatis.

filerunner sebagian besar bersifat open source, dapat dikembangkan secara luas, dan memiliki banyak fitur yang mudah digunakan, seperti hotlist, histori, penyelesaian baris perintah di shell internal, dan asosiasi file untuk mengotomatiskan peluncuran aplikasi eksternal.

5.3.FTPWatch

Ftpwatch adalah alat yang menonton situs FTP jarak jauh. Paket menginstal sendiri sebagai tugas cron. Setiap minggu, itu terhubung ke daftar situs FTP yang ditentukan pengguna dan menganalisis (dan melaporkan) perubahan yang ditemukan di sana.
Versi awal (pada Debian 1.3 dan mungkin nanti) rentan diserang oleh pengguna lokal yang dapat memperoleh akses root dengan mengeksploitasi kelemahan sederhana. Juga, perhatikan bahwa ftpwatch bergantung pada ncftp, sehingga versi yang rentan berpotensi menurunkan keamanan Anda dalam beberapa cara (ncftp juga memiliki masalah keamanan, tergantung pada versinya). Saya sarankan menghapus ftpwatch atau menghubungi keamanan Debian di security@debian.org untuk informasi lebih lanjut.

5.4. Wu-ftpd

Seperti dibahas sebelumnya, wu-ftpd adalah server FTP default pada sebagian besar distribusi Linux. Versi 2.4.2-academ [BETA-18] memiliki buffer overflow yang dapat memberikan akses root penyerang. Versi 2.6 memiliki masalah yang terpisah, tetapi serupa yang juga dapat memberikan akses root ke penyerang.
wu-ftpd, untuk sebagian besar, server yang sangat mampu dan bermanfaat. Ini sedang dalam pengembangan konstan dan terus mendapatkan fitur baru setiap tahun. Sayangnya, sebagai hasilnya, eksploitasi baru terus tersedia. Anda harus memeriksa dengan vendor Linux Anda secara teratur untuk melihat apakah tambalan tersedia untuk sistem Anda.

6. Cara kerja FTP

FTP bekerja dengan mengandalkan autentikasi standar yang meminta pengguna komputer memasukkan username dan password untuk bisa mengakses data. Setiap kali anda ingin mengunduh, mengunggah, ataupun melakukan aksi lain terhadap data dalam komputer, maka diperlukan akses dari FTP untuk perintah yang anda lakukan. Password dan username itulah yang menjadi kunci aksesmu untuk mengakses data di dalamnya. Dengan password dan username yang diberikan oleh FTP, anda bisa leluasa memindahkan, menyalin, membuat, dan menghapus data yang ada di dalam direktori penyimpanan komputer.
Namun, sebelum terjadi pertukaran data tersebut, FTP client terlebih dahulu harus melakukan permintaan koneksi terhadap FTP server. Jika FTP client terhubung ke FTP server, barulah di situ terjadi aktivitas yang kerap anda lakukan seperti mengunduh data, mengunggah, dan sebagainya.
Itulah pemahasan lengkap mengenai apa itu FTP, mulai dari pengertian, fungsi, cara kerja, dan cara mengamankan FTP.  Jika suka artikel ini silahkan share ketaman – teman kalian.
Ingin liat dan download kumpulan source code aplikasi bisa disini 

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *