10 เทคนิค ช่วยแอดมินมือใหม่ ปรับปรุงเว็บไซต์ ให้ปลอดภัยมากขึ้น
6 มิถุนายน 2017
ในช่วงไม่กี่ปีมานี้ เชื่อว่าวงการนักพัฒนาเว็บไซต์มีเครื่องมืออำนวยความสะดวกให้ใช้งานเพิ่มขึ้นมาก โดยเฉพาะระบบ CMS (Content Management Systems) อย่าง WordPress, Joomla, Drupal และอีกหลายๆ ตัว ที่มาทำให้การสร้างเว็บไซต์เกิดขึ้นได้อย่างรวดเร็วและมีประสิทธิภาพ แม้ผู้สร้างจะมีความรู้ด้านการพัฒนาน้อยมากก็ตาม
แน่นอนว่า เครื่องมือเหล่านั้นมีประโยชน์ แต่ทิศทางของการพัฒนาเช่นนี้ก็ทำให้เกิดปัญหาน่าวิตกกังวลข้อหนึ่งขึ้นมาเช่นกัน นั่นคือเว็บมาสเตอร์ที่มีจำนวนมากขึ้นเรื่อยๆ กำลังขาดความตระหนักในเรื่องภัยคุกคามทางไซเบอร์วันนี้เราเลยจะมาคุยกันว่า สามารถทำ ให้เว็บไซต์ของเรานั้นปลอดภัยมากขึ้นได้อย่างไร
- อัปเดตอยู่เสมอ มีเว็บไซต์จำนวนไม่น้อยเลยที่ไม่ให้ความสำคัญกับการอัปเดตซอฟต์แวร์ให้เป็นเวอร์ชันล่าสุดอยู่เสมอ ขณะที่การแฮ็กระบบนั้น เดี๋ยวนี้มี ‘บอต’ เข้าไปช่วยสแกนหาช่องโหว่ตามเว็บไซต์ต่างๆ และเจาะระบบให้โดยอัตโนมัติไปเรียบร้อยแล้วถ้าเป็นเว็บไซต์ที่พัฒนาโดย WordPress อาจลองใช้ปลั๊กอิน WP Updates Notifier ที่จะแจ้งเตือนทันทีเมื่อมันพบว่ามีการอัปเดตจาก WordPress หรือจะฟอลโลว์ @sucuri_security บนทวิตเตอร์ที่จะแจ้งเตือนเมื่อมีการอัปเดตใหม่ๆ เกิดขึ้นก็ได้ เพื่อที่จะได้รับข้อมูลข่าวสารเกี่ยวกับการอัปเดตได้รวดเร็วขึ้น
- Password สำหรับผู้ที่อยากตั้งรหัสผ่านให้ปลอดภัยเรามีเกณฑ์มาฝากกัน 3 ข้อ ข้อแรกคือต้องซับซ้อนสักหน่อย อาจเป็นคำที่ Random มาก็ได้ แต่อย่าเอาข้อมูลวันเกิด ทีมบอลที่ชอบ ฯลฯ มาใช้เด็ดขาด ข้อสองคือ ควรจะยาวอย่างน้อย 12 ตัวอักษรขึ้นไปจะปลอดภัยสูงกว่า เพราะบรรดาบอตที่คอยเจาะระบบนั้น บางตัวจะถูกเซ็ตค่าให้ป้อนรหัสผ่านแค่ 8 ตัวเท่านั้นและข้อสามอย่าใช้รหัสผ่านซ้ำกับระบบอื่น เช่น อีเมล หรือบัญชีธนาคาร เพราะอาจถูกเจาะระบบต่อเนื่องได้
- อย่าเก็บทุกอย่างไว้บนเซิร์ฟเวอร์เดียว ในกรณีที่มีหลายเว็บไซต์ให้ดูแล การเก็บทุกอย่างไว้บนเซิร์ฟเวอร์ตัวเดียวอาจเป็นเรื่องสะดวกแต่ถ้าถูกโจมตีโอกาสที่จะเกิดความเสียหายก็สูงตามไปด้วย และเมื่อถูกเจาะได้แล้ว ก็มีโอกาสที่จะถูกเจาะใหม่ในอนาคตอีกด้วย
- สำหรับเว็บไซต์ที่มีล็อกอินหลายอัน ผู้ที่เป็นแอดมินหลักต้องดูแลสิทธิในการเข้าถึงของยูสเซอร์รายอื่นๆ ให้เหมาะกับงาน และถ้าเกิดกรณีที่ยูสเซอร์บางรายขออนุญาตเข้าใช้บางฟังก์ชันเป็นกรณีพิเศษ ก็ให้เป็นกรณี ๆ ไป เมื่อจบงานก็ควรลบสิทธิ์ในการเข้าถึงนั้นๆ ด้วย และอย่าให้สิทธิ์ถึงขั้นที่ผู้ใช้งานรายนั้นสามารถเข้ามาเป็นแอดมินของระบบได้ เหล่านี้จะช่วยให้แอดมินควบคุมเว็บไซต์ได้อย่างมีประสิทธิภาพมากขึ้น และสามารถตรวจตราการใช้งานของยูสเซอร์แต่ละรายได้ว่ามีพฤติกรรมการใช้งานอย่างไร เสี่ยงต่อการถูกเจาะระบบหรือไม่ด้วย
- อย่าตั้งค่า CMS (Content Management System) เป็น Default การใช้งานโปรแกรมประเภทจัดการเนื้อหาเว็บไซต์หรือ CMS นั้นควรเข้าไปปรับในส่วนของการควบคุมอื่นๆ ข้างใน เพราะเว็บไซต์ที่ใช้การตั้งค่าเริ่มต้นของโปรแกรมเอาไว้นั้นจะมีโอกาสถูกเจาะระบบสูงกว่า
- เลือก Extension ต่างๆ ให้ดี การเลือกส่วนขยายมาเชื่อมต่อเพิ่มเติมอาจทำให้เกิดช่องโหว่ได้ เพราะ Extension บางตัวอาจมีผลต่อระบบรักษาความปลอดภัย ดังนั้นการเลือก Extension อาจดูได้จากการอัปเดต ถ้าไม่มีการอัปเดต Extension นั้นๆ เลย ก็เป็นไปได้ว่านักพัฒนาอาจเลิกสนใจ Extension ตัวนั้นไปแล้ว อีกข้อมูลที่ควรสนใจก็คือชื่อของนักพัฒนาว่าน่าเชื่อถือแค่ไหน และจำนวนคนที่ติดตั้ง Extension ตัวนั้นมีมากเท่าไร เพราะนักพัฒนาที่มีประสบการณ์แล้วก็มีโอกาสที่จะตระหนักเรื่องความปลอดภัยมากกว่า แต่สิ่งที่สำคัญที่สุดคือควรดาวน์โหลด Extension จากแหล่งที่เชื่อถือได้เท่านั้น
- แบ็กอัปไว้บ้าง เพราะโอกาสที่เว็บไซต์จะเกิดความเสียหายแล้วได้ตัวแบ็กอัปช่วยไว้ก็มีอยู่มาก
- ตั้งค่าใน Server Configuration Files เพิ่มเติม แอดมินควรตั้งค่าใน Configuration Files เพื่อป้องกันปัญหาต่างๆ เช่น Prevent directory browsing, Prevent image hotlinking หรือ Protect sensitive files เพื่อลดโอกาสที่ผ้ไู ม่ประสงค์ดีจะเข้ามาดูคอนเทนต์ต่างๆ ได้อย่างสะดวก โดยอาจศึกษาจากหัวข้อ Security เพิ่มเติมก็ได้
- ติดตั้ง SSL (Secure Socket Layer) โดยเฉพาะเว็บไซต์อีคอมเมิร์ซหรือเว็บไซต์ที่ต้องมีการรับส่งข้อมูลสำคัญ เพราะ SSL หรือมาตรฐานการรักษาความปลอดภัยบนระบบอินเทอร์เน็ตนี้จะช่วยเข้ารหัสข้อมูลจากจุด A ไปจุด B ซึ่งลดโอกาสการถูกโจมตีระหว่างทาง หรือ Man in the Middle (MITM) attack ได้
- เข้าใจเรื่อง File Permissions เราสามารถทำงานกับไฟล์ต่างๆ ได้สามแบบคือ Read, Write และ Execute ซึ่งแทนด้วยตัวเลข 4, 2 และ 1 ตามลำดับ ส่วนระดับยูสเซอร์ เบื้องต้นก็แบ่งออกได้เป็นสามแบบง่ายๆ ได้แก่ Owner (เจ้าของ), Group (กลุ่ม) และ Public (ทุกคน) แอดมินระบบต้องมีการจัดการว่ายูสเซอร์แต่ละระดับจะทำอะไรกับไฟล์ได้บ้าง เช่น ระดับ Owner อาจอนุญาตให้ Read (4) และ Write (2) ได้ ยูสเซอร์ระดับ Group อาจ Read (4) ได้อย่างเดียว ส่วนระดับ Public อาจทำอะไรไม่ได้เลย (0) ผลคือ File Permission จะแสดงตัวเลข 640
การเข้าไปเซ็ตค่าตัวนี้จะมีประโยชน์มาก และทำให้เว็บปลอดภัย ขณะที่บางเว็บอาจแนะนำให้เซ็ตไว้ที่ 666 หรือ 777 ซึ่งหมายความว่าคุณอนุญาตให้ “ใครก็ได้” เข้ามาใส่มัลแวร์ในระบบหรือลบไฟล์ในฐานข้อมูลได้นั่นเอง
ทั้ง 10 ข้อนี้ อาจเป็นเทคนิคเบื้องต้นที่แอดมินมือใหม่สามารถศึกษาและปฏิบัติตามเพื่อเพิ่มความปลอดภัยให้กับเว็บไซต์ได้ก็จริง แต่ไม่อาจการันตีได้ร้อยเปอร์เซ็นต์ว่าจะไม่ถูกแฮ็ก ดังนั้น สำหรับแอดมินมือใหม่ควรหมั่นติดตามข่าวคราวและศึกษาเทคโนโลยีต่างๆ อยู่เสมอ
บทความจาก CAT Magzine No. 47
บทความที่เกี่ยวข้อง