shield ความปลอดภัย

ความปลอดภัยของระบบ Weekend

หน้านี้อธิบายสิ่งที่เราทำจริงเพื่อดูแลบัญชีและข้อมูลของผู้เรียน ทุกข้อด้านล่างตรวจสอบได้จากระบบทดสอบที่รันซ้ำทุกครั้งก่อนขึ้นระบบจริง

checklistตรวจตามกรอบ OWASP Top 10

OWASP เป็นองค์กรไม่แสวงหากำไรที่จัดทำรายการความเสี่ยงที่พบบ่อยที่สุดของเว็บแอปพลิเคชัน OWASP ไม่ได้ออกใบรับรองให้องค์กรใด — รายการด้านล่างคือสิ่งที่เราตรวจและแก้ตามกรอบนี้

A01การควบคุมสิทธิ์เข้าถึง
  • ทุกหน้าและทุก API หลังบ้านมีการ์ดสิทธิ์ของตัวเอง ไม่พึ่งการซ่อนเมนู
  • มีชุดทดสอบเมทริกซ์สิทธิ์ 100 เคส (ทุกเส้นทาง × ทุกบทบาท) รันทุกครั้งก่อนขึ้นระบบ
  • ถอดสิทธิ์ผู้ดูแลแล้วมีผลภายใน 5 นาที เพราะระบบทวนบทบาทกับฐานข้อมูลเป็นระยะ ไม่เชื่อ token อย่างเดียว
  • การเข้าถึงข้อมูลของผู้อื่นถูกทดสอบแยกอีก 29 เคส (IDOR)
A02การเข้ารหัสข้อมูล
  • บังคับ HTTPS ทั้งเว็บด้วย HSTS (max-age 1 ปี รวมโดเมนย่อย)
  • ไม่เก็บรหัสผ่านเลย — เข้าสู่ระบบผ่าน Google หรือ LINE เท่านั้น
  • ไฟล์ที่ต้องจ่ายเงินก่อนดาวน์โหลดใช้ลิงก์ลงเวลาแบบมีอายุ ไม่เปิดสาธารณะ
  • ไฟล์ส่งออกข้อมูลส่วนตัวไม่มีโทเคนของผู้ให้บริการล็อกอินติดไปด้วย
A03การแทรกคำสั่ง (Injection)
  • เข้าถึงฐานข้อมูลผ่าน Prisma ซึ่งผูกค่าตัวแปรให้เสมอ ไม่ต่อสตริง SQL เอง
  • ข้อมูลที่ผู้ใช้กรอกตรวจด้วย schema ก่อนใช้ทุกจุด
  • เนื้อหาที่แสดงผลเป็น HTML ผ่านการกรองก่อนเสมอ
  • ไฟล์ CSV ที่ส่งออกกันสูตรอันตราย (CSV injection) ไม่ให้ Excel ตีความเป็นคำสั่ง
A04การออกแบบที่ปลอดภัย
  • จำกัดจำนวนคำขอต่อผู้ใช้ในเส้นทางที่มีค่าใช้จ่าย เช่น การสร้างรายการชำระเงิน
  • จำกัดต่อ “ผู้ใช้” ไม่ใช่ต่อหมายเลขไอพี เพราะเน็ตมือถือในไทยใช้ไอพีร่วมกัน
  • การยืนยันการชำระเงินเชื่อเฉพาะข้อความที่ลงลายเซ็นจากผู้ให้บริการชำระเงิน
A05การตั้งค่าที่ปลอดภัย
  • กำหนด Content-Security-Policy แยกตามลักษณะหน้า ไม่ผ่อนทั้งเว็บเพื่อหน้าเดียว
  • ตั้งหัวข้อความปลอดภัยครบ: nosniff, frame ancestors, referrer policy, permissions policy
  • ปิดการเปิดเผยเทคโนโลยีเบื้องหลังในหัวข้อความตอบกลับ
  • ฐานข้อมูลไม่เปิดพอร์ตออกอินเทอร์เน็ต เข้าถึงได้จากภายในเท่านั้น
A06ส่วนประกอบที่มีช่องโหว่
  • สแกนไลบรารีที่ใช้จริงทุกครั้งก่อนขึ้นระบบ
  • รอบล่าสุดปิดช่องโหว่ที่พบทั้งหมด 23 รายการ (ร้ายแรง 2 · สูง 11 · ปานกลาง 10) เหลือ 0
A07การพิสูจน์ตัวตน
  • เข้าสู่ระบบผ่านผู้ให้บริการที่รองรับการยืนยันสองชั้นได้ (Google / LINE)
  • อายุ session 7 วัน และยุติทันทีเมื่อบัญชีถูกลบหรือถูกลบข้อมูลตามคำขอ
  • บันทึกการเข้าสู่ระบบทุกครั้ง
A08ความถูกต้องของข้อมูลและซอฟต์แวร์
  • ตรวจลายเซ็นของข้อความแจ้งผลการชำระเงินก่อนเชื่อทุกครั้ง
  • ใบประกาศนียบัตรมีลายนิ้วมือ SHA-256 ผูกกับเนื้อหาบนใบ ตรวจสอบย้อนได้ที่หน้า /verify
  • การปรับฐานข้อมูลทำผ่านสคริปต์ที่บันทึกไว้ ไม่แก้มือบนเครื่องจริง
A09การบันทึกและเฝ้าระวัง
  • บันทึกการกระทำสำคัญของผู้ดูแล เช่น เปลี่ยนสิทธิ์ ลบข้อมูล ออกใบประกาศ
  • บันทึกไม่เก็บข้อมูลอ่อนไหวเกินจำเป็น
A10การให้เซิร์ฟเวอร์ยิงคำขอแทน (SSRF)
  • ลิงก์ภายนอกที่ระบบต้องเรียกเองถูกตรวจก่อนใช้ ปิดกั้นที่อยู่ภายในวงเครือข่าย
  • อนุญาตเฉพาะ https และตรึงปลายทางตามหมายเลขที่ตรวจแล้ว

policyข้อมูลส่วนบุคคล (PDPA)

อ่านรายละเอียดที่ นโยบายความเป็นส่วนตัว

bug_reportพบช่องโหว่? แจ้งเราได้

หากคุณพบปัญหาด้านความปลอดภัย กรุณาแจ้งมาที่หน้า ถามอาจารย์ หรือตอบกลับอีเมลใดก็ได้ที่ได้รับจากเรา โดยยังไม่เปิดเผยต่อสาธารณะ เราจะติดต่อกลับและแก้ไขให้เร็วที่สุด

ไม่มีระบบใดปลอดภัย 100% หน้านี้อธิบายมาตรการที่ใช้อยู่ ไม่ใช่คำรับประกันว่าจะไม่เกิดเหตุใด ๆ