วิธีป้องกันเว็บไซต์ Joomla จากไฟล์อันตรายที่ผู้ใช้ส่งเข้ามา

การป้องกันไฟล์อันตรายใน Joomla ควรเริ่มจากจำกัดชนิดไฟล์ที่อัปโหลดได้ ให้สิทธิ์เฉพาะผู้ใช้ที่จำเป็น และตรวจสอบไฟล์บนเซิร์ฟเวอร์ก่อนนำไปใช้งาน เพราะการตรวจนามสกุลไฟล์จากเบราว์เซอร์เพียงอย่างเดียวไม่เพียงพอ

❶ จำกัดชนิดและขนาดไฟล์ที่อัปโหลดได้

① อนุญาตเฉพาะนามสกุลที่จำเป็น

ใน Media Manager Options ตรวจรายการนามสกุลไฟล์ที่อนุญาตให้ส่งขึ้นเว็บไซต์ เปิดไว้เฉพาะชนิดที่เว็บไซต์ต้องใช้จริง เช่น ไฟล์ภาพหรือเอกสารที่จำเป็น และหลีกเลี่ยงไฟล์สคริปต์หรือไฟล์ที่เซิร์ฟเวอร์อาจเรียกทำงานได้ เช่น .php

ชื่อเมนูและตำแหน่งการตั้งค่าอาจต่างกันตามเวอร์ชัน Joomla และส่วนเสริมที่ใช้รับไฟล์

② ตรวจชนิดไฟล์และ MIME ที่อนุญาต

หากเว็บไซต์ให้ผู้ใช้ส่งไฟล์เอกสาร ให้ตรวจทั้งนามสกุลและ MIME type ที่กำหนดใน Media Manager อย่าอนุญาตไฟล์เพิ่มเพียงเพราะผู้ใช้เปลี่ยนนามสกุลให้ดูเหมือนรูปภาพหรือเอกสาร

③ จำกัดขนาดและจำนวนไฟล์

กำหนดขนาดไฟล์สูงสุดและจำนวนไฟล์ต่อครั้งให้เหมาะกับการใช้งานจริง การจำกัดช่วยลดความเสี่ยงจากไฟล์ขนาดใหญ่ที่ใช้พื้นที่หรือทรัพยากรเซิร์ฟเวอร์มากเกินไป โดยตรวจสอบข้อจำกัดจากโฮสติ้งร่วมด้วย

❷ ควบคุมผู้ใช้และแบบฟอร์มรับไฟล์

① ให้สิทธิ์อัปโหลดเฉพาะกลุ่มที่จำเป็น

ตรวจสิทธิ์ของกลุ่มผู้ใช้และส่วนเสริมที่เปิดให้อัปโหลดไฟล์ ผู้ใช้ทั่วไปไม่ควรมีสิทธิ์จัดการไฟล์หรือโฟลเดอร์เกินกว่าหน้าที่ของตน และควรปิดแบบฟอร์มอัปโหลดที่ไม่ได้ใช้งาน

② ใช้ส่วนเสริมที่ตรวจสอบการอัปโหลดอย่างเหมาะสม

หากใช้ส่วนเสริมรับไฟล์ ให้ตรวจว่ามีการตรวจสอบข้อมูลฝั่งเซิร์ฟเวอร์ จำกัดชนิดและขนาดไฟล์ และจัดการชื่อไฟล์ก่อนบันทึกหรือไม่ การตรวจสอบในเบราว์เซอร์อย่างเดียวสามารถถูกข้ามได้

③ แยกไฟล์ที่รับจากผู้ใช้ออกจากไฟล์ระบบ

เก็บไฟล์ในตำแหน่งที่เหมาะสม และตั้งค่าเว็บเซิร์ฟเวอร์ไม่ให้เรียกทำงานไฟล์สคริปต์ในโฟลเดอร์อัปโหลด หากไม่แน่ใจว่าต้องตั้งค่าอย่างไร ให้สอบถามผู้ให้บริการโฮสติ้งก่อนแก้ไขการตั้งค่าเซิร์ฟเวอร์

❸ ตรวจไฟล์ก่อนนำไปเผยแพร่

① เปลี่ยนชื่อไฟล์และหลีกเลี่ยงชื่อที่ผู้ใช้ควบคุมได้

ตั้งชื่อไฟล์ใหม่ตามรูปแบบของเว็บไซต์ ตัดอักขระพิเศษและพาธที่ไม่จำเป็นออก และไม่ใช้ชื่อไฟล์จากผู้ส่งโดยตรงเป็นชื่อไฟล์ปลายทาง

② ตรวจไฟล์ก่อนเปิดหรือส่งต่อ

สแกนไฟล์ที่ได้รับด้วยเครื่องมือรักษาความปลอดภัยที่เชื่อถือได้ โดยเฉพาะไฟล์บีบอัดหรือไฟล์จากแหล่งที่ไม่รู้จัก อย่าเปิดไฟล์หรือแตกไฟล์บนเซิร์ฟเวอร์โดยไม่ตรวจสอบก่อน

③ ลบไฟล์ที่ไม่จำเป็นหลังใช้งาน

หากอัปโหลดไฟล์ชั่วคราวหรือไฟล์ติดตั้งเพื่อดำเนินงานเสร็จแล้ว ให้ลบออกจากเว็บไซต์ ตรวจโฟลเดอร์อัปโหลดเป็นระยะ และนำไฟล์ที่ไม่ทราบที่มาหรือไม่มีผู้รับผิดชอบออกหลังตรวจสอบ

❹ ตรวจสอบระบบอัปโหลดและรับมือเมื่อพบไฟล์ผิดปกติ

① ทดสอบการตั้งค่าด้วยไฟล์หลายประเภท

ลองอัปโหลดไฟล์ที่อนุญาตและไฟล์ที่ไม่อนุญาต เพื่อตรวจว่าระบบปฏิเสธไฟล์ต้องห้ามจริง รวมถึงทดสอบขนาดไฟล์ที่เกินกำหนด ComSiam แนะนำให้ทดสอบหลังเปลี่ยนการตั้งค่า Media Manager หรือส่วนเสริมรับไฟล์

② ตรวจบันทึกและโฟลเดอร์อัปโหลด

ตรวจ Log ของ Joomla และโฮสติ้งเมื่อพบการอัปโหลดที่ไม่คาดคิด รวมถึงดูไฟล์ใหม่ในโฟลเดอร์อัปโหลด หากพบไฟล์สคริปต์หรือไฟล์แปลกปลอม ให้จำกัดการเข้าถึงเว็บไซต์ สำรองหลักฐาน และตรวจสอบสาเหตุก่อนลบหรือกู้คืน

③ อัปเดต Joomla และส่วนเสริมที่เกี่ยวข้อง

ติดตั้งอัปเดตด้านความปลอดภัยของ Joomla และส่วนเสริมที่รับหรือจัดการไฟล์อย่างสม่ำเสมอ ก่อนอัปเดตให้สำรองข้อมูลและตรวจความเข้ากันได้ จากนั้นทดสอบการอัปโหลดอีกครั้ง ComSiam แนะนำให้บันทึกชนิดไฟล์ที่อนุญาตและผู้รับผิดชอบการตรวจสอบไว้ เพื่อดูแลระบบได้ต่อเนื่อง