ค้นหาเว็บไซต์

วิธีซ่อนหมายเลขเวอร์ชัน Apache และข้อมูลที่ละเอียดอ่อนอื่น ๆ


เมื่อคำขอระยะไกลถูกส่งไปยังเว็บเซิร์ฟเวอร์ Apache ของคุณ ตามค่าเริ่มต้น ข้อมูลที่มีค่าบางอย่าง เช่น หมายเลขเวอร์ชันของเว็บเซิร์ฟเวอร์ รายละเอียดระบบปฏิบัติการของเซิร์ฟเวอร์ โมดูล Apache ที่ติดตั้ง และอื่นๆ จะถูกส่งไปตามเอกสารที่สร้างโดยเซิร์ฟเวอร์กลับไปยังไคลเอนต์

อ่านเพิ่มเติม: วิธีซ่อนเวอร์ชันเซิร์ฟเวอร์ Nginx ใน Linux

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

การอ่านที่แนะนำ: 13 เคล็ดลับที่เป็นประโยชน์เพื่อรักษาความปลอดภัยเว็บเซิร์ฟเวอร์ Apache ของคุณ

คำสั่งที่สำคัญสองประการคือ:

ลายเซ็นเซิร์ฟเวอร์

ซึ่งอนุญาตให้เพิ่มบรรทัดส่วนท้ายที่แสดงชื่อเซิร์ฟเวอร์และหมายเลขเวอร์ชันภายใต้เอกสารที่เซิร์ฟเวอร์สร้างขึ้น เช่น ข้อความแสดงข้อผิดพลาด รายการไดเรกทอรี ftp ของ mod_proxy เอาต์พุต mod_info และอื่นๆ อีกมากมาย

มีค่าที่เป็นไปได้สามค่า:

  1. เปิด – ซึ่งอนุญาตให้เพิ่มบรรทัดส่วนท้ายต่อท้ายในเอกสารที่เซิร์ฟเวอร์สร้างขึ้น
  2. ปิด – ปิดใช้งานบรรทัดส่วนท้ายและ
  3. อีเมล – สร้างการอ้างอิง “mailto:”; ซึ่งส่งอีเมลไปยัง ServerAdmin ของเอกสารอ้างอิง
โทเค็นเซิร์ฟเวอร์

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

คำสั่งนี้มีค่าที่เป็นไปได้ดังต่อไปนี้ (รวมถึงข้อมูลตัวอย่างที่ส่งถึงไคลเอนต์เมื่อตั้งค่าเฉพาะ):

ServerTokens   Full (or not specified) 
Info sent to clients: Server: Apache/2.4.2 (Unix) PHP/4.2.2 MyMod/1.2 

ServerTokens   Prod[uctOnly] 
Info sent to clients: Server: Apache 

ServerTokens   Major 
Info sent to clients: Server: Apache/2 

ServerTokens   Minor 
Info sent to clients: Server: Apache/2.4 

ServerTokens   Min[imal] 
Info sent to clients: Server: Apache/2.4.2 

ServerTokens   OS 
Info sent to clients: Server: Apache/2.4.2 (Unix) 

หมายเหตุ: หลังจาก Apache เวอร์ชัน 2.0.44 คำสั่ง ServerTokens ยังควบคุมข้อมูลที่เสนอโดย คำสั่ง ServerSignature

การอ่านที่แนะนำ: 5 เคล็ดลับในการเพิ่มประสิทธิภาพของ Apache Web Server

หากต้องการซ่อนหมายเลขเวอร์ชันของเว็บเซิร์ฟเวอร์ รายละเอียดระบบปฏิบัติการของเซิร์ฟเวอร์ โมดูล Apache ที่ติดตั้ง และอื่นๆ ให้เปิดไฟล์การกำหนดค่าเว็บเซิร์ฟเวอร์ Apache ของคุณโดยใช้โปรแกรมแก้ไขที่คุณชื่นชอบ:

sudo vi /etc/apache2/apache2.conf        #Debian/Ubuntu systems
sudo vi /etc/httpd/conf/httpd.conf       #RHEL/CentOS systems 

และเพิ่ม/แก้ไข/ต่อท้ายบรรทัดด้านล่าง:

ServerTokens Prod
ServerSignature Off 

บันทึกไฟล์ ออกและรีสตาร์ทเว็บเซิร์ฟเวอร์ Apache ของคุณดังนี้:

sudo systemctl restart apache2  #SystemD
sudo service apache2 restart     #SysVInit

ในบทความนี้ เราได้อธิบายวิธีซ่อนหมายเลขเวอร์ชันของเว็บเซิร์ฟเวอร์ Apache รวมถึงข้อมูลเพิ่มเติมมากมายเกี่ยวกับเว็บเซิร์ฟเวอร์ของคุณโดยใช้คำสั่ง Apache บางอย่าง

หากคุณใช้ PHP บนเว็บเซิร์ฟเวอร์ Apache ฉันขอแนะนำให้คุณซ่อนหมายเลขเวอร์ชัน PHP

ตามปกติคุณสามารถเพิ่มความคิดเห็นของคุณลงในคำแนะนำนี้ได้ผ่านทางส่วนความคิดเห็นด้านล่าง