• เครื่องมือที่วิเคราะห์การตั้งค่า NGINX เพื่อค้นหาช่องโหว่ด้านความปลอดภัย
  • มีเป้าหมายเพื่อป้องกันข้อผิดพลาดในการตั้งค่าความปลอดภัยและตรวจจับช่องโหว่อัตโนมัติ
  • เป็นฟอร์กที่ยังพัฒนาอย่างต่อเนื่องของ Gixy ต้นฉบับที่ Yandex สร้างไว้ (ไม่มีคอมมิตมา 2 ปี)

ปัญหาที่ Gixy สามารถตรวจพบได้

  • SSRF(Server Side Request Forgery): ความเป็นไปได้ของการโจมตีปลอมแปลงคำขอฝั่งเซิร์ฟเวอร์
  • HTTP Splitting: ความเป็นไปได้ของการโจมตีแยก HTTP response
  • ปัญหาการตรวจสอบ Referrer/Origin: ช่องโหว่ด้านความปลอดภัยจากการตรวจสอบที่ไม่สมบูรณ์
  • การ override add_header: ปัญหาการเขียนทับ response header
  • การปลอมแปลง Host header: ความเป็นไปได้ที่ Host header ของคำขอจะถูกปลอมแปลง
  • การตั้งค่า valid_referers ผิดพลาด: ปัญหาด้านความปลอดภัยจากการอนุญาตค่า none
  • response header หลายบรรทัด: ปัญหาด้านความปลอดภัยจาก response header หลายบรรทัด
  • การไล่สำรวจพาธจากการตั้งค่า alias ผิดพลาด: ความเป็นไปได้ที่จะหลุดออกนอกไดเรกทอรีจากการตั้งค่า alias ที่ไม่ถูกต้อง
  • ปัญหาจากการใช้คำสั่ง if: พฤติกรรมที่ไม่คาดคิดจากการใช้ if ภายในบล็อก location
  • การตั้งค่า Allow ผิดพลาด: ปัญหาจากการตั้งค่า Allow โดยไม่มีการตั้งค่า Deny
  • ปัญหาการตั้งค่า Content-Type: ปัญหาที่เกิดขึ้นเมื่อกำหนด Content-Type ด้วย add_header
  • ปัญหาการใช้ DNS ภายนอก: การตั้งค่า DNS ที่มีจุดอ่อนด้านความปลอดภัย
  • การเปิดเผยข้อมูลเวอร์ชัน: การเปิดเผยข้อมูลเวอร์ชันผ่านการตั้งค่า server_tokens
  • ปัญหาการตั้งค่า try_files: ปัญหาด้านความปลอดภัยเมื่อใช้ try_files โดยไม่มี open_file_cache
  • ปัญหาการถอดรหัสพาธของ proxy_pass: ปัญหาที่พาธ URL ถูกถอดรหัสและทำ normalization โดยอัตโนมัติ

วิธีใช้งาน

  • โดยปกติ Gixy จะพยายามวิเคราะห์การตั้งค่า NGINX ที่อยู่ใน /etc/nginx/nginx.conf
  • สามารถระบุพาธเฉพาะได้เช่นกัน
    • ตัวอย่างเช่น สามารถค้นหาช่องโหว่ HTTP splitting ได้
  • Gixy ยังรองรับการใช้งานผ่าน pipe (standard input)
  • มีให้ใช้งานในรูปแบบ Docker image ด้วย
    • ต้อง mount ไฟล์ตั้งค่าที่ต้องการวิเคราะห์เป็น volume และระบุพาธไฟล์ตั้งค่าเมื่อรันอิมเมจ Gixy

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น