File Upload Exploitation - Rian010/Journal GitHub Wiki

File Upload Exploitation

File upload adalah fitur yang umum digunakan pada website untuk mengupload file, seperti gambar atau video. Namun, jika file upload tidak dilakukan dengan baik, maka file upload dapat menjadi pintu gerbang bagi serangan.

Salah satu jenis serangan yang dapat dilakukan pada file upload adalah upload file executable. Misalnya, jika website memungkinkan pengguna untuk mengupload file PHP, maka pengguna dapat mengupload file PHP yang dapat dieksekusi oleh server. Hal ini dapat menjadi ancaman besar, karena pengguna dapat mengambil kontrol penuh atau mengambil data dari server.

Untuk melakukan file upload exploitation, pengguna dapat menggunakan beberapa cara, antara lain:

  1. Upload file executable: Pengguna dapat mengupload file executable, seperti file PHP, Python, atau Ruby. Hal ini dapat dilakukan dengan cara mengubah extensi file atau menggunakan tool untuk mengubah tipe file.
  2. Upload file non-executable: Pengguna dapat mengupload file non-executable, seperti file image atau PDF. Namun, file tersebut dapat diubah menjadi file executable dengan cara menggunakan technique metadata injection. Hal ini dapat dilakukan dengan cara mengubah metadata file image atau PDF.
  3. Upload file terlalu besar: Pengguna dapat mengupload file yang terlalu besar, sehingga server tidak dapat mengelola file tersebut dengan baik. Hal ini dapat menyebabkan overflow buffer atau crash server.

Untuk melindungi dari file upload exploitation, website dapat melakukan beberapa langkah, antara lain:

  1. Validasi file: Website dapat melakukan validasi file yang akan diupload. Misalnya, website dapat membatasi ekstensi file yang dapat diupload, atau memeriksa tipe file dengan menggunakan function magic number.
  2. Limit ukuran file: Website dapat membatasi ukuran file yang dapat diupload. Hal ini dapat mencegah overflow buffer atau crash server.
  3. Sanitize file: Website dapat melakukan sanitize file yang akan diupload. Misalnya, website dapat menghapus tag HTML dari file text atau mengubah tag HTML menjadi comment.
  4. Separate server: Website dapat memisahkan server untuk file upload dan server lainnya. Hal ini dapat mencegah serangan lateral atau compromise server lainnya.

Demikian penjelasan tentang file upload exploitation dan cara melindunginya. Selamat mencoba!