0Pricing
Cyber Security Academy · บทเรียน

แผนภาพการไหลของข้อมูลและขอบเขตความน่าเชื่อถือ

ทำแผนที่การเคลื่อนที่ของข้อมูลและจุดที่ข้อมูลข้ามเส้นแบ่งความน่าเชื่อถือ

แผนภาพการไหลของข้อมูลและขอบเขตความน่าเชื่อถือ เป็นบทเรียน Cyber Security Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Cyber Security Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Cyber Security Academy มีบทเรียนทั้งหมด 4 บทเรียน

เหตุใดจึงควรเริ่มจากแผนภาพ

คุณไม่สามารถค้นหาภัยคุกคามในระบบที่ยังไม่เข้าใจได้ แผนภาพการไหลของข้อมูล (DFD) เป็นรากฐานของการสร้างแบบจำลองภัยคุกคาม โดยแสดงให้เห็นด้วยภาพว่าข้อมูลเคลื่อนผ่านระบบของคุณอย่างไร

แผนภาพทำให้สมมติฐานที่เคยแฝงอยู่ปรากฏชัดเจน เมื่อคุณมองเห็นว่าข้อมูลไปที่ใดและใครแตะต้องข้อมูลนั้น การตรวจพบภัยคุกคามก็ทำได้ง่ายขึ้นมาก

องค์ประกอบทั้งสี่ของ DFD

DFD ใช้ส่วนประกอบพื้นฐานเพียงสี่อย่าง ควรรักษาให้เรียบง่าย:

  • หน่วยงานภายนอก — บุคคลหรือระบบที่อยู่นอกเหนือการควบคุมของคุณ (ผู้ใช้ เอพีไอของบุคคลที่สาม)
  • กระบวนการ — สิ่งที่เปลี่ยนรูปข้อมูล (บริการ ฟังก์ชัน)
  • ที่เก็บข้อมูล — ตำแหน่งที่ข้อมูลถูกจัดเก็บ (ฐานข้อมูล ไฟล์ แคช)
  • การไหลของข้อมูล — การเคลื่อนที่ของข้อมูลระหว่างองค์ประกอบ (ลูกศร)

ระบบเกือบทุกประเภทสามารถแสดงด้วยรูปร่างทั้งสี่นี้

สัญกรณ์ DFD มาตรฐาน

DFD ใช้รูปร่างตามแบบแผน เพื่อให้ทุกคนสามารถอ่านได้:

External entity   ->  rectangle / square
Process           ->  circle (or rounded rectangle)
Data store        ->  two parallel lines (open rectangle)
Data flow         ->  labeled arrow
Trust boundary    ->  dashed line crossing flows

DFD ของแอปพลิเคชันเว็บอย่างง่าย

ลองพิจารณาแอปพลิเคชันเว็บพื้นฐาน แผนภาพการไหลของข้อมูลอาจมีลักษณะเป็นข้อความดังนี้:

User (external) --HTTPS request--> Web App (process)
Web App --SQL query--> Database (data store)
Web App --API call--> Payment Provider (external)
Database --results--> Web App
Web App --HTTPS response--> User

ขอบเขตความไว้วางใจคืออะไร

ขอบเขตความไว้วางใจ คือเส้นใด ๆ ในแผนภาพที่ระดับความไว้วางใจเปลี่ยนแปลง ด้านหนึ่ง ข้อมูลหรือผู้เรียกได้รับความไว้วางใจ ส่วนอีกด้านหนึ่งไม่ได้รับความไว้วางใจ

ขอบเขตความไว้วางใจเป็นคุณลักษณะที่เกี่ยวข้องกับความปลอดภัยมากที่สุดของ DFD เพราะทำเครื่องหมายจุดที่:

  • ข้อมูลควรได้รับการตรวจสอบความถูกต้อง
  • ผู้เรียกควรผ่านการพิสูจน์ตัวตนและได้รับอนุญาต
  • ระดับสิทธิ์เปลี่ยนแปลง

ช่องโหว่ส่วนใหญ่อยู่ตรงจุดที่ข้อมูลข้ามขอบเขตความไว้วางใจพอดี

ขอบเขตความไว้วางใจที่พบบ่อย

เมื่อเริ่มมองหา คุณจะพบขอบเขตความไว้วางใจอยู่ทุกที่ ตัวอย่างที่พบบ่อย:

  • อินเทอร์เน็ตกับแอปพลิเคชันของคุณ (ข้อมูลขาเข้าจากผู้ใช้ที่ไม่น่าไว้วางใจมาถึง)
  • แอปพลิเคชันกับฐานข้อมูล
  • ระหว่างกระบวนการที่มีสิทธิ์ต่ำกับสิทธิ์สูง
  • ระหว่างระบบของคุณกับเอพีไอของบุคคลที่สาม
  • ระหว่างคอนเทนเนอร์กับโฮสต์
  • ระหว่างส่วนเครือข่าย (DMZ กับเครือข่ายภายใน)

แต่ละขอบเขตควรได้รับการตรวจสอบอย่างเจาะจง

การวาดขอบเขตบน DFD

เพิ่มขอบเขตความไว้วางใจเป็นเส้นประที่ตัดผ่านการไหลของข้อมูลซึ่งได้รับผลกระทบ ในแอปพลิเคชันเว็บของเรา:

User (external)
  | HTTPS
- - - - - - - - - - - -  <- Trust boundary: internet / app
  v
Web App (process)
  | SQL
- - - - - - - - - - - -  <- Trust boundary: app / database
  v
Database (data store)

ขอบเขตบอกคุณว่าควรใช้ STRIDE ที่ใด

ขอบเขตความไว้วางใจเชื่อมโยงบทเรียนนี้เข้ากับ STRIDE การไหลของข้อมูลที่ข้ามขอบเขตคือจุดที่คุณควรมุ่งเน้นการวิเคราะห์ด้วย STRIDE

ที่ขอบเขตระหว่างอินเทอร์เน็ตกับแอปพลิเคชัน ให้ถามว่า:

  • การปลอมแปลงตัวตน — ผู้เรียกผ่านการพิสูจน์ตัวตนแล้วหรือไม่
  • การดัดแปลง — ข้อมูลขาเข้าได้รับการตรวจสอบความถูกต้องหรือไม่
  • การเปิดเผยข้อมูล — ช่องทางได้รับการเข้ารหัสหรือไม่
  • การปฏิเสธการให้บริการ — มีการจำกัดอัตราหรือไม่

ขอบเขตช่วยเปลี่ยนกรอบการทำงานเชิงนามธรรมให้เป็นคำถามที่ตอบได้จริง

การเลือกระดับความละเอียดที่เหมาะสม

DFD อาจคลุมเครือเกินไปหรือละเอียดเกินไป ทั้งสองแบบล้วนใช้ไม่ได้ผล

  • ระดับสูงเกินไป — กล่องเดียวที่ติดป้ายว่า “ระบบ” จะซ่อนขอบเขตที่น่าสนใจทั้งหมด
  • ละเอียดเกินไป — แสดงทุกฟังก์ชันและตัวแปรจนมีรายละเอียดรบกวนมากเกินไป

ตั้งเป้าไว้ที่ระดับซึ่งมองเห็นองค์ประกอบหลักและขอบเขตความไว้วางใจแต่ละจุด ใช้ DFD แบบแบ่งชั้น: เริ่มจากแผนภาพบริบทของทั้งระบบ แล้วเจาะลึกกระบวนการที่ซับซ้อนแยกต่างหาก

ตรวจสอบแผนภาพร่วมกับทีม

DFD ที่คนคนเดียววาดมักมีสมมติฐานที่ไม่ถูกต้อง ควรตรวจสอบแผนภาพไปพร้อมกับผู้ที่สร้างระบบ

ถามคำถามเพื่อเจาะลึก:

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

การไหลของข้อมูลที่ซ่อนอยู่เป็นสาเหตุที่พบบ่อยของการพลาดช่องโหว่

รักษาแผนภาพให้ทันสมัย

ระบบมีการเปลี่ยนแปลง และ DFD ที่ล้าสมัยจะทำให้เข้าใจผิด แผนภาพที่ไม่เป็นปัจจุบันแย่กว่าการไม่มีแผนภาพเลย เพราะทำให้เกิดความมั่นใจที่ผิด ๆ

อัปเดต DFD เมื่อ:

  • มีการเพิ่มการเชื่อมต่อหรือการพึ่งพาภายนอกรายการใหม่
  • มีที่จัดเก็บข้อมูลใหม่ปรากฏขึ้น
  • แบบจำลองความน่าเชื่อถือเปลี่ยนแปลง (บริการย้ายไปยังโซนเครือข่ายใหม่)

ถือว่า DFD เป็นเอกสารประกอบที่มีการดูแลไปพร้อมกับระบบ ไม่ใช่สิ่งที่สร้างขึ้นเพียงครั้งเดียว

ตรวจสอบความเข้าใจ

ทดสอบความเข้าใจของคุณเกี่ยวกับ DFD และขอบเขตความน่าเชื่อถือ

สรุปทบทวน

คุณได้เรียนรู้การทำแผนผังระบบเพื่อสร้างแบบจำลองภัยคุกคาม:

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

ต่อไป คุณจะจัดอันดับภัยคุกคามด้วยต้นไม้การโจมตีและจัดลำดับความสำคัญของมาตรการลดความเสี่ยง

คำถามที่พบบ่อย

บทเรียน “แผนภาพการไหลของข้อมูลและขอบเขตความน่าเชื่อถือ” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “แผนภาพการไหลของข้อมูลและขอบเขตความน่าเชื่อถือ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Cyber Security Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Cyber Security Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “แผนภาพการไหลของข้อมูลและขอบเขตความน่าเชื่อถือ”

ทำแผนที่การเคลื่อนที่ของข้อมูลและจุดที่ข้อมูลข้ามเส้นแบ่งความน่าเชื่อถือ คุณปฏิบัติ Cyber Security Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Cyber Security Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Cyber Security Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน

บทเรียน “แผนภาพการไหลของข้อมูลและขอบเขตความน่าเชื่อถือ” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Cyber Security Academy นี้ได้ไหม

ได้ บทเรียน Cyber Security Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. เหตุผลที่การสร้างแบบจำลองภัยคุกคามสำคัญ
  2. กรอบงาน STRIDE
  3. แผนภาพการไหลของข้อมูลและขอบเขตความน่าเชื่อถือ
  4. ต้นไม้การโจมตีและการจัดลำดับความเสี่ยง
← กลับไปที่ Cyber Security Academy