ลืมรหัสผ่าน
 ลงทะเบียน
ดู: 7|ตอบกลับ: 0

Apache vulnerable configuration

[คัดลอกลิงก์]

53

กระทู้

0

ตอบกลับ

174

เครดิต

ผู้ดูแลระบบ

เครดิต
174

 LAN, LAN

Apache vulnerable configuration
Apache vulnerable configuration

Apache มี configuration file คือ apache2.conf (ใน Ubuntu/Debien) และ httpd.conf (RedHat/CentOS)
ซึ่งการตั้งค่าต่อไปนี้ไม่เหมาะสม อาจเป็นช่องโหว่ของระบบได้ (กรุณาอ่านข้อมูลจาก [color=rgb(0, 85, 136) !important]Apache Core Features)
  • Timeout
จำนวนวินาที (Second) ที่ Apache รอเหตุการณ์ ได้แก่ GET Request, TCP Packet หรือ ACKs on transmission
หากตั้งค่าไม่เหมาะสม กล่าวคือสูงเกินไป อาจเป็นเหตุให้ดูโจมตีแบบ Denial of Service Attacks ได้
ค่าที่เหมาะสมคือ Timeout 300
  • KeepAlive
ตั้งค่าให้ Apache คง HTTP Session เอาไว้เป็นระยะเวลา KeepAliveTimeout วินาที ซึ่งการตั้งค่า KeepAlive ON
จะทำให้ความเร็วการเรียกข้อมูล HTTL ที่มีรูปภาพมากๆได้ดียิ่งขึ้น, แต่จะไม่มีผลต่อ CGI หรือ Dynamic Contents
ค่าที่ควรเป็น คือ KeepAlive On
  • KeepAliveTimeout
จำนวนวินาที (Second) ที่ Apache จะคง Connection เอาไว้ก่อนจะปิดลงเมื่อไม่มีการตอบสนองจาก client
หากตั้งค่าไว้สูงเกินไปจะกระทบกับสมรรถนะของระบบได้ อาจเป็นเหตุให้ดูโจมตีแบบ Denial of Service Attacks ได้
ค่าที่ควรเป็น <= 15
  • StartServers
จำนวน Child Server Process ที่สร้างขึ้นเมื่อระบบเริ่มต้น
หากตั้งค่าไว้สูงเกินไปจะกระทบกับสมรรถนะของระบบได้ อาจเป็นเหตุให้ดูโจมตีแบบ Denial of Service Attacks ได้
ค่าที่ควรเป็น อยู่ระหว่าง 5 ถึง 15
  • MinSpareServers
จำนวนขั้นต่ำของ Process ที่ว่าง (idle) รอการใช้งาน, การที่ Server ต้องสร้าง Process ใหม่ต้องใช้เวลาดังนั้นการสร้างเผื่อเอาไว้
ทำให้การทำงานเร็วขึ้น
หากตั้งค่าไว้สูงเกินไปจะกระทบกับสมรรถนะของระบบได้ อาจเป็นเหตุให้ดูโจมตีแบบ Denial of Service Attacks ได้
ค่าที่ควรเป็น อยู่ระหว่าง 5 ถึง 15
  • MaxSpareServers
จำนวนขั้นสูงของ Process ที่ว่าง (idle) รอการใช้งาน, การที่ Server ต้องสร้าง Process ใหม่ต้องใช้เวลาดังนั้นการสร้างเผื่อเอาไว้
ทำให้การทำงานเร็วขึ้น
หากตั้งค่าไว้สูงเกินไปจะกระทบกับสมรรถนะของระบบได้ อาจเป็นเหตุให้ดูโจมตีแบบ Denial of Service Attacks ได้
ค่าที่ควรเป็น ควรมากกว่า MinSpareServers อยู่ 1 แต่ไม่ควรเกิน 10
  • MaxClients
จำนวน Clients สูงสุดที่จะให้บริการพร้อมๆกัน หากการ Request ใดที่เกินกว่า MaxClients จะถูกเข้าคิว โดยคิวจะไม่ยาวเกิน
ListenBackLog Directive
หากตั้งค่าไว้สูงเกินไปจะกระทบกับสมรรถนะของระบบได้ อาจเป็นเหตุให้ดูโจมตีแบบ Denial of Service Attacks ได้
ค่าที่ควรเป็น <=256
  • ExecCGI
การกำหนดให้ Directory ใดสามารถทำงานแบบ CGI ได้ และสามารถ Execute ได้
หากมีการกำหนด Directive ดังกล่าวใน Directory ที่มีความเสี่ยงเช่น ผู้ใช้ทั่วไปสามารถนำ Script มาวางได้
โดยไม่ได้รับการตรวจสอบ อาจเป็นช่องโหว่ได้
ค่าที่ควรเป็น : หากเป็น Directory ที่ไม่อนุญาตให้ใช้ CGI ต้องใส่ Option -ExecCGI เพื่อป้องกันการใช้ CGI
  • FollowSymLinks
เป็นการกำหนดให้สามารถตาม Symbolic Links ไปได้ใน Directory ที่กำหนด
ซึ่งอาจเป็นช่องโหว่ให้เข้าถึงไฟล์ในที่ที่ไม่ต้องการได้ เช่นทำ Symbolic Link ไปยัง / ได้
ค่าที่ควรเป็น : หากเป็น Directory ที่ไม่อนุญาตให้ใช้ Symbolic Links ต้องใส่ Option -FollowSymLinks
  • IncludesNOEXEC
การใช้งาน Server Side Include (SSI) ทำให้สามารถ Include ไฟล์ได้ แต่ไม่สามารถ Execute ได้
หากไม่ควบคุม Directory ที่เปิดให้ Include โดยไม่ห้ามการ Execute อาจเป็นช่องโหว่ให้เข้าถึงไฟล์ในที่ที่ไม่ต้องการได้
ค่าที่ควรเป็น :
- หากกำหนดใน Option เป็น -IncludesNOEXEC หรือ None จะเป็นการปิดการใช้งาน SSI โดยสิ้นเชิง
- หากกำหนดใน Directory ที่ให้ Include ได้ (Options Includes) ต้องกำหนดเพิ่มเติมด้วย Options Includes -IncludesNOEXEC
- นอกจากนั้น ต้องกำหนดเป็น AllowOverride None ทั้งหมด เพื่อป้องกันการ Override
  • MultiViews
หากมีการ request มาที่ /some/dir/foo และที่ Directory /some/dir กำหนดให้ใช้ Multiviews (Options Multivitews), Apache จะค้นหา
/some/dir/foo.* โดยจะได้การทำงานเหมือนดังที่ผู้ใช้ร้องขอ เช่น ขอ /some/dir/index.php มา แต่มี index.txt อยู่แต่ไม่มี index.php
ก็จะเอา index.txt ไปทำงานเหมือนเป็น index.php ซึ่งเป็นอันตรายอย่างยิ่ง
ค่าที่ควรเป็นคือ : ไม่ควรใช้ MultiViews หากไม่เข้าใจความเสี่ยง ดังนั้นควรตั้งค่าเป็น Options None
  • Indexes
การเรียก URL มาที่ Directory หนึ่ง หากไม่มีการกำหนด DirectoryIndex Directive (เช่น index.html), Apache จะแสดงไฟล์ใน Directory นั้น
ซึ่งเป็นสิ่งที่ไม่ควรเกิดขึ้น
ค่าที่ควรเป็น : ควรกำหนด Options None หรือ Options -Indexes
  • LimitRequestBody
ขนาดของ Request Body หน่วยเป็น Byte ซึ่งต้องเพียงพอต่อการส่งข้อมูลของผู้ใช้ ขึ้นกับความต้องการแต่ละที่
หากกำหนดเป็น 0 หมายถึงส่งได้ไม่จำกัด (สูงสุดคือ 2 GB) ซึ่งอาจนำมาซึ่ง Buffer Overflow Attack ได้
ค่าที่ควรเป็น : >=1 และต้องมีการกำหนด เพราะมีค่า Default เป็น 0 (Unlimited)
  • LimitRequestFields
จำนวน Fields ของ Request Form ซึ่งต้องเพียงพอต่อการส่งข้อมูลของผู้ใช้ ขึ้นกับความต้องการแต่ละที่
หากกำหนดเป็น 0 หมายถึงส่งได้ไม่จำกัด (สูงสุดคือ 32,767) ซึ่งอาจนำมาซึ่ง Buffer Overflow Attack ได้
ค่าที่ควรเป็น : >=1, ค่า Default เป็น 100
  • LimitRequestFieldsize
ขนาดของ Request Fields หน่วยเป็น Byte ซึ่งต้องเพียงพอต่อการส่งข้อมูลของผู้ใช้ ขึ้นกับความต้องการแต่ละที่
หากกำหนดมากเกินไป อาจนำมาซึ่ง Buffer Overflow Attack ได้
ค่าที่ควรเป็น : 8190, ค่า Default เป็น 4094
  • LimitRequestLine
จำนวนบรรทัดของ Request Fields ซึ่งต้องเพียงพอต่อการส่งข้อมูลของผู้ใช้ ขึ้นกับความต้องการแต่ละที่
หากกำหนดมากเกินไป อาจนำมาซึ่ง Buffer Overflow Attack ได้
ค่าที่ควรเป็น : 8190, ค่า Default เป็น 4094

ขอบคุณคุณ คณกรณ์ หอศิริธรรม

ขออภัย! คุณไม่ได้รับสิทธิ์ในการดำเนินการในส่วนนี้ กรุณาเลือกอย่างใดอย่างหนึ่ง เข้าสู่ระบบ | ลงทะเบียน

รายละเอียดเครดิต

Archiver|โหมดมือถือ|ประวัติการแบน|อัพซ่า เว็บบอร์ดรวมเกมออนไลน์ เปิดให้บริการ Server Game ทุกแนว รับเซ็ต Server Game Online ทดสอบเกมใหม่ได้ตลอด 24 ชั่วโมง พร้อมชุมชนเกมเมอร์คึกคักที่สุดในไทย

GMT+7, 2025-6-17 15:00 , Processed in 0.082833 second(s), 27 queries .

Powered by Discuz! X3.5, Rev.9

© 2001-2025 Discuz! Team. Licensed

ตอบกระทู้ ขึ้นไปด้านบน ไปที่หน้ารายการกระทู้