หน่วยงานเจ้าหน้าที่ด้านความมั่นคงปลอดภัยของทางการเยอรมันได้ออกแนวทางปฏิบัติสำหรับความมั่นคงปลอดภัยของ Browser ให้หน่วยงานรัฐบาลปฏิบัติตาม โดยเอกสารนั้นเป็นภาษาเยอรมันแต่ทาง Zdnet ได้สรุปเป็นข้อๆ ไว้ให้แล้ว ดังนั้นเราจึงขอนำมาเรียบเรียงให้ติดตามกันครับ

เอกสารแนวทางปฏิบัติด้านความมั่นคงปลอดภัยของ Browser นั้นมีมาตั้งแต่มี 2017 แล้วเพียงแต่ล่าสุดได้มีการเพิ่มมาตรการให้มีความทันสมัยมากขึ้น เช่น การจัดการเรื่อง Certificate, HSTS, SRI, CSP 2.0 เป็นต้น โดยใจความที่น่าสนใจมีดังนี้
- ต้องรองรับ TLS, Same Origin Policy (SOP), Content Security Policy 2.0 (CSP), Sub-resource integrity (SRI), HTTP Strict Transport Security (HSTS หรือ RFC 6797)
- ต้องมีลิสต์รายชื่อของ Trusted Certificate
- ต้องรองรับ Extended Validation (EV) Certificate
- ต้องมีการตรวจสอบ Certificate ที่โหลดเข้ามาว่าเป็นอย่างไรกับ Certificate Revocation List (CRL) หรือ Online Certificate Status Protocol (OSCP)
- ต้องแสดงไอคอนหรือทำไฮไลต์ด้วยสีได้ว่าการเชื่อมต่อนั้นถูกเข้ารหัสหรือเป็น Plaintext
- การเชื่อมต่อไปยังเว็บไซต์ภายนอกที่ใช้ Certificate ที่หมดอายุต้องมีการร้องขอการอนุญาตจากผู้ใช้ก่อน
- สามารถทำการอัปเดตได้อย่างอัตโนมัติและต้องมีการตรวจสอบความถูกต้องของการอัปเดตด้วย
- ต้องมีกลไกการแบ่งแยกอัปเดตระหว่างส่วนประกอบสำคัญของ Browser และ Extension ออกจากกัน
- การเก็บรหัสผ่านต้องอยู่ในรูปแบบที่เข้ารหัสแล้ว
- การเข้าถึงค่า Build-in Password จะต้องถูกปกป้องด้วย Master Password ก่อน
- ผู้ใช้งานจะต้องมีสิทธิ์ลบ Cookies
- ผู้ใช้งานจะต้องมีสิทธิ์ลบ Password จาก Password Manager ของ Browser
- ผู้ใช้งานจะต้องมีสิทธิ์ลบหรือบล็อกฟังก์ชัน Auto Complete และ ประวัติการใช้งานได้
- ผู้ดูแลระบบขององค์กรจะต้องสามารถเข้าไปตั้งค่าหรือบล็อก Browser ไม่ให้ส่งข้อมูลทางไกลออกไปได้ เช่น ข้อมูลการใช้งาน
- Browser จะต้องมีกลไกในการตรวจสอบ Content/URL อันตราย
- Browser ต้องเปิดโอกาสให้องค์กรสามารถกำหนดใช้ลิสต์ของ Blacklist URL ขององค์กรได้
- ผู้ดูแลระบบขององค์กรจะต้องสามารถควบคุมหรือบล็อกการติดตั้ง add-ons หรือ Extension ได้
- Browser ต้องมีกลไก OS Memory Protection เช่น Address Space Layout Randomization (ASLR) หรือ Data Execution Prevention (DEP) เป็นต้น
- Vendor ของ Browser จะต้องอัปเดตแพตช์ช่องโหว่อย่างสม่ำเสมอหลังมีการเปิดเผยช่องโหว่สู่สาธารณะไม่เกิน 21 วัน ถ้าทำไม่ได้ผู้ใช้งานต้องเปลี่ยนค่ายของ Browser
- Browser ต้องถูกเขียนขึ้นด้วยภาษาโปรแกรมที่มีกลไกการปกป้อง Stack และ Heap ใน Memory
- เว็บเพจจะต้องถูกแยกจากกันอย่างเด็ดขาด หากเป็นลักษณะของโปรเซสแบบ Stand-alone จะมีการแยกในระดับ Thread ด้วยเช่นกัน
- Browser จะต้องเปิดโอกาสให้ผู้ใช้สามารถเลือก ปิดหรือเปิด Plugin, Extension หรือ JavaScript ได้
- ต้องอนุญาตให้ผู้ดูแลสามารถเลือกปิดฟีเจอร์การลิงก์โปรไฟล์กับคลาวด์ได้
- ต้องเริ่มต้นการรันระบบด้วยสิทธิ์ระดับต่ำสุดใน OS ก่อน
- ต้องรองรับเทคโนโลยี Sandbox ที่ทุกส่วนประกอบของ Browser เพื่อแยกขาดออกจาก OS อย่างแท้จริง รวมถึงการสื่อสารของแต่ละส่วนประกอบจะต้องทำผ่านอินเทอร์เฟสที่กำหนดเท่านั้น การเชื่อมต่อโดยตรงหากันจะเกิดขึ้นไม่ได้เด็ดขาด
ผู้สนใจสามารถติดตามเพิ่มเติมรายงานฉบับเต็มได้ที่นี่ (ภาษาเยอรมัน) อย่างไรก็ตามทาง Guideline ก็ได้กล่าวถึงข้อกำหนดระดับพื้นฐานสำหรับองค์กรทั่วไปให้ผู้ดูแลระบบนำไปใช้อ้างอิงไว้ดังนี้
- Browser ต้องรองรับ TLS 1.2 หรือสูงกว่า
- ผู้ดูแลจะต้องสามารถตรวจสอบและจำกัดลิสต์ของ Root CAs ได้
- ต้องเปิดใช้ HSTS กับทุกเว็บไซต์ ยกเว้นเว็บไซต์พิเศษที่จำเป็นต้องรักษาเรื่องความเป็นส่วนตัวจริงๆ
- ไม่ยอมรับ Third-party Cookies
- Execution Plugin เช่น Flash, Java หรืออื่นๆจะ ได้รับอนุญาตให้รันหลังจากผู้ใช้งานยอมรับ (กดเล่นเอง)
- ต้องปิดฟีเจอร์ Autocomplete เอาไว้ตลอด
- ปิดการซิงค์ข้อมูล เช่น Cookie, Bookmark และ History กับบริการเก็บข้อมูลจากภายนอก (Cloud หรือ External Storage) ไว้เสมอ
- หากไม่มีความจำเป็นต้องปิด Extended Media Extension ไว้เสมอ
- หน้าจัดการกลางจะต้องถูกป้องกันจากผู้ไม่มีสิทธิ์ไม่ให้เข้ามาแก้ไขเปลี่ยนแปลงใดๆ ได้
- หลังจากอัปเดต Browser ผู้ดูแลจะต้องมาตรวจสอบค่า Configuration เสมอ
ที่มา : https://www.zdnet.com/article/germany-to-publish-standard-on-modern-secure-browsers/