รายละเอียดประเด็นข้อตรวจพบ
ผู้ทดสอบพบว่าเป้าหมายที่กำลังทดสอบมีการเปิดเผยรายละเอียดข้อมูลของเครื่องให้บริการเว็บไซต์เช่น ชื่อผลิตภัณฑ์ หมายเลขรุ่น เป็นต้น ซึ่งข้อมูลเหล่านี้ไม่จำเป็นต้องใช้ภายหลังที่อยู่บนระบบใช้งานจริง (Production environment)
ชื่อผลิตภัณฑ์และหมายเลขรุ่นเป็นข้อมูลตั้งต้นในการค้นหาช่องโหว่ ทั้งในระบบเครื่องให้บริการ (Server) และระดับเว็บไซต์ (Web application) เพื่อนำไปสู่การเพิ่มโอกาสในการค้นหาช่องโหว่และยึดเครื่องเป้าหมายได้
ข้อแนะนำ
- ปิดบังข้อมูลชื่อผลิตภัณฑ์และรุ่นจากเครื่องให้บริการ – แนะนำให้ปิดบังข้อมูลชื่อผลิตภัณฑ์และหมายเลขรุ่นจากเครื่องให้บริการ โดยให้ทำการตรวจสอบค่าปรับแต่งของเครื่องให้บริการแต่ละผลิตภัณฑ์
- ให้ปรับปรุงเวอร์ชั่นของผลิตภัณฑ์ให้ทันสมัยเสมอ – แนะนำให้ปรับปรุงให้ระบบให้มีหมายเลขรุ่นที่มีความทันสมัยเพื่อแก้ไขปัญหาข้อบกพร่องทางเทคนิคและความมั่นคงปลอดภัยตัวอย่างเช่น
Server Header
1. ให้ปรับแต่งค่าในแต่ละหัวข้อ (Directive) ของไฟล์ "apache2.conf" หรือ "httpd.conf"
/etc/apache2/apache2.conf (สำหรับ Debian/Ubuntu systems)
/etc/httpd/conf/httpd.conf (สำหรับ RHEL/CentOS systems)
2. ตั้งค่าดังต่อไปนี้
ServerTokens Prod
ServerSignature Off
3. เพื่อให้ไม่มีข้อมูลคำว่า "Apache" หลงเหลืออยู่ให้ติดตั้ง "Mod Security"
/etc/modsecurity/modsecurity.conf
4. และแก้ไขค่าปรับแต่งให้เป็นดังต่อไปนี้
SecServerSignature ""
X-Powered-By
1. ให้ค้นหาไฟล์ php.ini
/etc/php.ini
/etc/php5/apache2/php.ini
2. แล้วแก้ไขค่าปรับแต่งให้เป็นดังนี้
expose_php = Off
อ้างอิงเพิ่มเติม
- https://cwe.mitre.org/data/definitions/200.html
- https://www.tecmint.com/hide-apache-web-server-version-information/
- https://www.modsecurity.org/
- https://sysadminstepbystep.com/how-to-remove-server-information-from-http-header-in-apache-2-4/
- https://blogs.oracle.com/oswald/hide-x-powered-by:-php
- https://www.tenable.com/plugins/nessus/135290
- https://www.tenable.com/plugins/was/112602
- https://www.tenable.com/plugins/nessus/148125
- https://owasp.org/www-project-web-security-testing-guide/latest/4-Web_Application_Security_Testing/01-Information_Gathering/02-Fingerprint_Web_Server
บทความที่เกี่ยวข้อง IT SELECT LAB