Keamanan OJS 3 [PDF]

  • 0 0 0
  • Suka dengan makalah ini dan mengunduhnya? Anda bisa menerbitkan file PDF Anda sendiri secara online secara gratis dalam beberapa menit saja! Sign Up
File loading please wait...
Citation preview

Keamanan Pada Open Journal System 3 1.



Masalah upload file wizard. Open Joural System secara default memperbolehkan semua ekstensi file bisa terupload. Untuk membatasi ektensi file yang di upload : −



Buka file PKPFileUploadWIzardHandler.inc.php (lib/pkp/controllers/wizard/fileUpload/PKPFileUploadWIzardHandler.inc.ph p).







Pada function uploadFile, baris 288.







Tambahkan potongan kode berikut : $filename = $_FILES['uploadedFile']['name']; $ex = pathinfo($filename, PATHINFO_EXTENSION); if($ex != 'pdf' && $ex != 'doc' && $ex != 'docx'){ return new JSONMessage(false, "File Extension Error "); }







2.



Kode diatas hanya memperbolehkan file dengan ekstensi pdf, doc, dan docx.



Masalah folder permission, untuk semua folder, yang ada pada folder public, ubah permission menjadi 0571, supaya orang tidak bisa membaca isi dari folder.



3.



Supaya folder yang dibuat ketika upload file submission juga terset permission 0571, maka : −



Buka file FileManager.inc.php (lib/pkp/classes/file/FileManager.inc.php).







Pada baris 24, “define('DIRECTORY_MODE_MASK', 0777);”.







Ganti menjadi “define('DIRECTORY_MODE_MASK', 0751);”.



4.



Untuk merubah format file dianggap berbahaya, contoh format .php, .phtml, .html dsb menjadi format .txt. Contoh x.php menjadi x.txt. Untuk lebih mengamankan jika ternyata file php atau file berbahaya lainnya masih bisa terupload.







Buka file FileManager.inc.php (lib/pkp/classes/file/FileManager.inc.php).







Pada function parseFileExtension. Baris kode berikut : // FIXME Check for evil if (!isset($fileExtension) || stristr($fileExtension, 'php') || strlen($fileExtension) > 6 || !preg_match('/^\w+$/', $fileExtension)) { $fileExtension = 'txt'; }







Jika ingin menambah kondisi yang dibutuhkan, cukup merubah kode pada statement if.