2 Cara Mengamankan Form Upload Dari Serangan Hacker


cybersinc.com - Mengetahui cara mengamankan Form Upload merupakan tugas yang harus di terapkan oleh semua programers terutama developer web, mangapa? Karena dengan adanya form upload yang mempunyai celah vulnerebelitas sangat berkemungkinan hacker bisa saja menyisipkan backdor melalui form upload tersebut.


Maka dari situ pada artikel ini saya akan berbagi tips dan trik untuk mengamankan form upload dari serangan hacker, saya menganggap kalian semua disini sudah mengetahui apa itu shell backdor dan apa dampaknya pada suatu website karena disini saya hanya akan membas bagaimana cara mengamankan form upload dari serangan hacker, tidak usah panjang lebar langsung saja ke tutorialnya sebagai berikut:


Cara Mengamankan Form Upload Dari Serangan Hacker


Untuk cara mengamankan form upload dari serangan hacker disini ada 2 cara yang saya rekomendasikan untuk kamu gunakan yaitu:


1. Menggunakan .htaccess

2. Menggunakan PHP


Mengapa saya merekomendasikan menggunakan 2 cara di atas? Oke disini saya akan menjelaskannya serta berbagi bagaimana caranya silahkan lanjut membaca ya


1.Menggunakan .htaccess

Cara mengamankan bentuk file upload menggunakan htaccess ini untuk melindungi folder di mana file itu di upload menggunakan file .htaccess, singkatnya begini file kegunaan file .htaccess berikut ini untuk membatasi pengguna meng eksekusi file naskah dalam sebuah folder. Silahkan kamu isi file .htaccess dengan code di bawah ini:


AddHandler cgi-script php .php3 .php4 .phtml .pl py .jsp Asp htm .shtml sh cgi Pilihan -ExecCGI

Code Di atas ini merupakan daftar hitam, yang berfungsi untuk memblokir pengopload tan file yang Bereksistensi yang disebut pada script diatas.

Tetapi menurut saya sendiri metode ini kurang aman Karena terkadang Hacker mencari cara untuk membypasn file htaccess ini dan bahayanya jika sang hacker sampai dapat mengganti file .htaccess dengan versinya sendiri dengan mudah. Yang tentu ini memungkinkan Hacker untuk menjalankan scrip - script tertentu yang dapat membantu dia berkompromi Dengan server.

2. Menggunakan PHP
Untuk cara mengamankan form upload dengan PHP ini menurut saya paling aman karena scrypt PHP ini akan memeriksa apakah eksistensi tersebut di ijinkan msuk ke server atau tidak dengan sendirinya, untuk scrypt nya sendirinya bisa kamu lihat di bawah ini:

 // Form Html Nya

<form action ="upload_file.php" metode="post" enctype="multipart/form-data">

<label for="file"> Filename: </label>

<input type="file" name="gambar" id="gambar" />

<br />

<input type="submit" name="upload" value="Submit" />

</form>

//


<?php 

if(isset($_POST['upload'])) {

    date_default_timezone_set('Asia/Jakarta');

    $name = $_POST['gambar'];

    $time = time();

    $nama_gambar = $_FILES['gambar'] ['name']; // Nama Gambar

    $size = $_FILES['gambar'] ['size'];// Size Gambar

    $error = $_FILES['gambar'] ['error'];

    $tipe_video = $_FILES['gambar'] ['type']; //tipe gambar untuk filter

    $folder = "uploads/"; //folder tujuan upload

    $valid = array('jpg','png','gif','jpeg'); //Format File yang di ijinkan Masuk ke server

    

    if(strlen($nama_gambar))


       {   


         // Perintah untuk mengecek format gambar


         list($txt, $ext) = explode(".", $nama_gambar);


         if(in_array($ext,$valid))


         {   


           // Perintah untuk mengecek size file gambar


           if($size<500000)


           {   


             // Perintah untuk mengupload gambar dan memberi nama baru


             $gambarnya = time().substr(str_replace(" ", "_", $txt), 5).".".$ext;

             $gmbr = $folder.$gambarnya;

             

             $tmp = $_FILES['gambar']['tmp_name'];


             if(move_uploaded_file($tmp, $folder.$gambarnya))


             {   

              $mysqli->query("INSERT INTO gallery_gambar(Nama_Gambar`, `DESC_GAMBAR`, `gambar`) VALUES ('$name', '$desc', '$gmbr') ");

              echo '<script>

                  alert("gambar Berhasil di upload");

               </script>';


             }

                else{ // Jika Gambar Gagal Di upload 

            echo '<script>

                  alert("gambar Gagal di upload");

               </script>';

            }

            

           }

           else{ // Jika Gambar melebihi size 

           echo '<script>

                  alert("gambar Terlalu Besar, Max 5MB");

               </script>';  

             }         


         }


         else{ // Jika File Gambar Yang di Upload tidak sesuai eksistensi yang sudah di tetapkan

            echo '<script>

                  alert("Format Gambar Tidak valid , Format Gambar Harus (JPG, Jpeg, gif, png) ");

               </script>';  

             }


       }         


       else{ // Jika Gambar belum di pilih 

        echo '<script>

                  alert("Gambar Belum Di Pilih , Harap Memilih Gambar Dahulu");

               </script>'; 

          }       


       exit;


     }

?>


Mungkin cuma segini untuk artikel kali ini yang membahas cara mengamankan from upload dari serangan hacker.

Note:
Silahkan scrypt di atas kamu ubah sendiri sesuai yang kamu inginkan dan saya berharap kamu juga bisa meningkatkan keamanan scrypt di atas.
Next Post Previous Post
No Comment
Add Comment
comment url