โหมดมืด
Security
ส่วนหนึ่งของ Beginner Book | เสริมจาก Spring Boot บทที่ 03 + API Design บทที่ 04
หนังสือเล่มนี้พาคุณไปถึงไหน
อ่านจบ + ทำ checkpoint หมด คุณจะ:
- คิดแบบ attacker — รู้จัก threat model
- รู้จัก OWASP Top 10 + วิธีป้องกัน
- ทำ auth + authorization ที่ปลอดภัยจริง
- ใช้ cryptography ถูก (TLS, hash, encrypt, sign)
- จัดการ secret + key rotation
- ป้องกัน supply chain attack
- ทำ security monitoring + incident response
หนังสือนี้ออกแบบมาให้ใคร
✅ Backend / Full-stack developer — อยากเข้าใจ security (ความปลอดภัย) ลึกขึ้น
✅ Tech lead ที่ต้อง audit (ตรวจสอบ) code
✅ DevOps ที่ดูแล production (ระบบที่ใช้งานจริง)
❌ Security professional / pen tester (ผู้เชี่ยวชาญด้านความปลอดภัย / นักเจาะระบบ) — เล่มนี้ระดับ intermediate (อ่าน อิน-เทอร์-มี-เดียต = ระดับกลาง)
⚠️ ควรมีพื้นก่อน (prerequisite — สิ่งที่ต้องรู้มาก่อน): เล่มนี้ไม่ใช่ "เริ่มจากศูนย์" คุณควรทำ ✅ ทั้ง 3 ข้อ นี้ได้คล่องก่อน:
- เขียน REST API ที่มี login + CRUD ได้คล่อง (ใช้ Spring Boot / Express / FastAPI / ฯลฯ ก็ได้)
- รู้จัก HTTP method, status code, header, cookie + อ่าน DevTools Network tab เป็น
- เคย deploy app ขึ้นที่ใดที่หนึ่งอย่างน้อย 1 ครั้ง (Docker container, Heroku, Render, VPS — อะไรก็ได้)
ถ้ายังไม่แน่น แนะนำให้อ่าน Spring Boot กับ Docker ก่อนแล้วค่อยกลับมา
กฎทอง
"Security is not a feature. It's a property of the entire system." — Schneier (ความปลอดภัยไม่ใช่ฟีเจอร์ที่เพิ่มเข้าไป แต่เป็นคุณสมบัติของทั้งระบบ)
ปลอดภัย = ทำตั้งแต่แรก ทุก layer + ทุก lifecycle
ไม่ใช่ "deploy เสร็จแล้วค่อยเพิ่ม"
บทเรียน
| # | บท | สอนอะไร |
|---|---|---|
| 0 | Security Mindset | Threat model (แบบจำลองภัย), defense in depth (ป้องกันเป็นชั้น), attacker mindset, CIA triad (Confidentiality/Integrity/Availability — ไม่ใช่หน่วยข่าวกรอง), Zero Trust |
| 1 | OWASP Top 10 | injection, XSS (cross-site scripting), SSRF (server-side request forgery), IDOR/BOLA, broken auth, ... (CSRF อยู่ใน list คำที่ต้องรู้แต่ไม่อยู่ใน OWASP Top 10:2021 อย่างเป็นทางการ — จัดอยู่ในหมวด session management) |
| 2 | Authentication ลึก | password hash, MFA (multi-factor auth), session, JWT, OAuth 2.x, passkeys |
| 3 | Authorization | RBAC (อาร์-แบค), ABAC (เอ-แบค), ReBAC (รี-แบค), policy-based |
| 4 | Cryptography for Devs | hash, HMAC, symmetric, asymmetric, TLS, key management, PQC (post-quantum) |
| 5 | Secret Management | env var, vault, rotation, leaked secret response |
| 6 | Supply Chain Security | dependency scanning, SBOM (Software Bill of Materials), signing, container security |
| 7 | Hardening + Monitoring | server/network/app hardening, security alerts, incident response, Zero Trust |
📒 ตกใจกับ acronym ในตาราง? ไม่ต้องรู้ตอนนี้ — แต่ละบทจะอธิบายตอนเริ่ม + บท 0 ข้อ 18 มีตารางคำศัพท์ครบ (เรียง A–Z พร้อมคำอ่านไทย) → ดู glossary ที่บทที่ 0
🤖 สำหรับ security เฉพาะ AI/LLM (prompt injection, OWASP LLM Top 10:2025, model supply chain) — ดูเล่ม AI/LLM ที่ครอบคลุมหัวข้อเหล่านี้โดยเฉพาะ
วิธีอ่านที่แนะนำ
- อย่ารีบเขียน "secure code" (โค้ดที่ปลอดภัย) — อ่าน mindset + threat model ก่อน
- ลอง attack ในสนามฝึก — setup OWASP Juice Shop / DVWA → ลอง exploit
- OWASP Juice Shop = เว็บแอปที่ตั้งใจมีช่องโหว่ทุกหมวด OWASP Top 10 ไว้ฝึก hack อย่างถูกกฎหมาย (รัน Docker)
- DVWA (Damn Vulnerable Web App) = PHP app เก่าแก่กว่า มีหลายระดับความยาก
- ทำ checkpoint ทุกบท — security = hands-on
- ไม่ trust input ใด ๆ — habit นี้สำคัญสุด