Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Cara Melindungi Upload File dengan Pemindaian Malware di PHP

Posted on May 14, 2024

Unggahan file berbahaya dapat melewati deteksi antivirus tradisional. Artikel ini membahas cara menggunakan API gratis untuk memindai file upload pada formulir PHP dari ancaman malware.

Pemindaian Malware Gratis

Dengan API gratis, kita dapat melakukan pemindaian tanda tangan malware dan pemindaian ancaman deterministik pada file yang diunggah. API ini mencakup lebih dari 17 juta ancaman virus dan malware, serta memungkinkan penetapan aturan khusus untuk memblokir kode berbahaya seperti skrip, makro, dan lainnya.

Mulai dengan API Key Gratis

API menyediakan key gratis dengan batasan 800 panggilan per bulan. Kita dapat menggunakan contoh kode di bawah ini untuk menyusun panggilan API:

Instalasi Perangkat Klien PHP

Pertama, kita perlu instal perangkat klien PHP menggunakan Composer:

composer require cloudmersive/cloudmersive_virusscan_api_client

Memanggil Fungsi Pemindaian

Selanjutnya, kita dapat memanggil fungsi pemindaian dengan penyesuaian aturan sesuai kebutuhan:

<?php
require_once(__DIR__ . '/vendor/autoload.php');

// Konfigurasi API key
$config = Swagger\Client\Configuration::getDefaultConfiguration()->setApiKey('Apikey', 'YOUR_API_KEY');

$apiInstance = new Swagger\Client\Api\ScanApi(
    
    
    new GuzzleHttp\Client(),
    $config
);

$input_file = "/path/to/inputfile"; // File yang akan dipindai
$allow_executables = true; // Izinkan file yang dapat dieksekusi (tidak disarankan)
$allow_invalid_files = true; // Izinkan file tidak valid (tidak disarankan)
$allow_scripts = true; // Izinkan file skrip (tidak disarankan)
$allow_password_protected_files = true; // Izinkan file terenkripsi (tidak disarankan)
$allow_macros = true; // Izinkan file dengan makro (tidak disarankan)
$allow_xml_external_entities = true; // Izinkan Entitas Eksternal XML (tidak disarankan)
$allow_insecure_deserialization = true; // Izinkan Deserialisasi Tidak Aman (tidak disarankan)
$allow_html = true; // Izinkan file HTML (tidak disarankan)
$restrict_file_types = "restrict_file_types_example"; // Batasi jenis file yang diizinkan

try {
    $result = $apiInstance->scanFileAdvanced($input_file, $allow_executables, $allow_invalid_files, $allow_scripts, $allow_password_protected_files, $allow_macros, $allow_xml_external_entities, $allow_insecure_deserialization, $allow_html, $restrict_file_types);
    print_r($result);
} catch (Exception $e) {
    echo 'Exception saat pemindaian: ', $e->getMessage(), PHP_EOL;
}
?>

Kesimpulan

Dengan pemindaian ini, kita dapat memblokir file yang mencurigakan secara kategoris tanpa bergantung sepenuhnya pada antivirus. Namun perlu dicatat bahwa pengaturan tertentu (tidak disarankan) meningkatkan risiko keamanan.

Terbaru

  • Ini Alasan Pohon adalah Mahluk Hidup Terbesar di Dunia
  • Sempat Panas! Kronologi Perseteruan Cak Ji vs Madas di Surabaya, Gini Endingnya
  • Gila! Norwegia Bikin Terowongan Melayang di Bawah Laut
  • Cuma Terpisah 20 Mil, Kenapa Hewan di Bali dan Lombok Beda Total? Ternyata Ini Alasannya
  • Heboh Video Umari Viral 7 Menit 11 Detik dari Pakistan, Isinya Beneran Ada atau Cuma Jebakan Link? Cek Faktanya!
  • Tertipu Online atau HP Hilang? Ini Cara Melacak Nomor HP yang Nggak Tipu-Tipu!
  • Apakah Aplikasi Labora Bisa Hasilkan Uang Jutaan atau Cuma Tipu-Tipu?
  • Apakah APK Cashcash Pro Penipu? Cek Reviewnya Dulu
  • Google Kliks Communicator: Pengalaman Awal yang Mengejutkan – Apa yang Kami Rasakan?
  • Belum Tahu? Ini Ukuran Banner YouTube yang Pas Biar Channel Kalian Makin Kece!
  • Inilah Rencana Gila China Balap AS ke Bulan Sebelum 2030
  • Inilah Spesifikasi Resmi Macbook Pro M5 yang Masuk Indonesia
  • Nonton Drama Bisa Dapat Cuan? Simak Cara Main Yudia APK Biar Nggak Salah Langkah!
  • Cuma Nonton Drama Pendek Bisa Cair Saldo DANA? Cobain Aplikasi Melolo, Begini Caranya!
  • Nonton Drama Bisa Dapat Cuan? Jangan Senang Dulu, Simak Fakta Mengejutkan Aplikasi Cash Drama Ini!
  • Ini Video Asli Bocil Block Blast 1 VS 3 di TikTok, Awas Jangan Asal Klik Link Sembarangan!
  • Instapop Terbukti Membayar atau Cuma Tipuan? Cek Faktanya Sebelum Kalian Buang Waktu Main Game!
  • Geger Video Botol Coca Cola 24 Detik di TikTok, Jangan Asal Klik! Ini Fakta Sebenarnya
  • Apa itu Video Botol Makarizo Viral? Ini Faktanya
  • Apa itu Merge Fruit Master? Ini Pengertian dan Cara Main Game yang Katanya Bisa Menghasilkan Saldo
  • Apa itu Shortbox? Ini Pengertian dan Cara Menghasilkan Uang di Aplikasinya
  • Masih Bingung Bedanya CRM dan ERP? Ini Tips Cari Software CRM dan ERP Terbaik
  • Begini Cara Hapus Akun DANA Premium Secara Permanen!
  • Bukan Cuma Mitos! Ternyata Dinasti Song Punya Tempat Nongkrong Mirip PIK, Begini Isinya
  • Bukan Fiksi! Ini Bukti Manusia Punya ‘Kekuatan Super’ Akibat Mutasi Genetik dan Lingkungan
  • Dikelilingi Cincin Api, Kok Kalimantan Malah Nggak Punya Gunung Berapi? Ini Jawabannya!
  • Misteri Newgrange: Kuburan Batu 5.000 Tahun yang Menyimpan Peta Galaksi, Kok Bisa?
  • Transformasi Ekstrem Pesawat IL-96: Ganti 4 Mesin Jadi 2 Mesin Raksasa PD-35, Emang Bisa?
  • Apakah Aplikasi Cash Reels Penipu?
  • Ini Daftar Kode Redeem Fish It Roblox Terbaru Januari 2026 buat Panen Hadiah!
  • Apa itu Cosmic Desktop: Pengertian dan Cara Pasangnya di Ubuntu 26.04?
  • Apa Itu Auvidea X242? Pengertian Carrier Board Jetson T5000 dengan Dual 10Gbe
  • Elementary OS 8.1 Resmi Rilis: Kini Pakai Wayland Secara Standar!
  • Apa Itu Raspberry Pi Imager? Pengertian dan Pembaruan Versi 2.0.3 yang Wajib Kalian Tahu
  • Performa Maksimal! Ini Cara Manual Update Ubuntu ke Linux Kernel 6.18 LTS
  • Tutorial Optimasi LangGraph dengan Node-Level Caching untuk Performa Lebih Cepat
  • Tutorial Membuat Game Dengan LangChain
  • X Terancam Sanksi Eropa Gara-Gara AI Grok Bikin Deepfake Anak Kecil
  • Nano Banana 2 Flash Itu Apa Sih? Ini Penjelasan Lengkapnya
  • Inilah Cara Install dan Pakai ChatGPT Atlas Browser, Pesaing Baru di Dunia Web
  • Apa Itu Integrasi Criminal IP dan Cortex XSOAR? Ini Definisinya
  • Gawat! VVS Stealer Cuma Seharga Makan Siang Tapi Bisa Habisi Akun Discord Kalian
  • Jadi Subscriber OnlyFans? Ini Risiko Fatal yang Mengintai Kalian!
  • Apa Itu CVE-2025-14733? Ini Pengertian Vulnerability Kritis di WatchGuard Firebox
  • Apa itu CVE-2020-12812? Ini Pengertian dan Bahaya Bug 2FA Bypass di Fortinet
Beli Pemotong Rumput dengan Baterai IRONHOOF 588V Mesin Potong Rumput 88V disini https://s.shopee.co.id/70DBGTHtuJ
Beli Morning Star Kursi Gaming/Kantor disini: https://s.shopee.co.id/805iTUOPRV

©2026 emka.web.id | Design: Newspaperly WordPress Theme