NEED HELP?
Get the help you need on our official LINE
qrcode
@incognitolab
Add Line Friends via QR Code
Go to LINE’s Add Friends menu Use Search by ID or QR Code to register!
ndid_pentest
ARTICLES 21 May 2021

Digital ID from the Penetration Tester eye view

Icon Incognito Lab
Digital Identity หรือ Digital ID คือ ตัวตนของแต่ละคนบนโลกดิจิทัล ซึ่งสามารถนำไปใช้เพื่อสมัครบริการต่าง ๆ หรือทำธุรกรรมไม่ว่าจะเป็นด้านการเงิน การศึกษา สวัสดิการภาครัฐ และภาคเอกชนได้สะดวกยิ่งขึ้น

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

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

Digital ID หรือตัวตนดิจิทัล ไม่ได้พึ่งเกิดขึ้น แต่ถูกพัฒนาและริเริ่มนำมาใช้แล้วในหลายประเทศทั่วโลก อาทิ จีน อินเดีย สหราชอาณาจักร สหรัฐอเมริกา รัสเซีย สิงคโปร์ และประเทศอื่น ๆ อีกมากมาย แน่นอนว่าประเทศไทยเองก็ริเริ่มทำ Digital ID มาหลายปีแล้วเหมือนกันในชื่อของ National Digital ID หรือ NDID นั่นเอง

NDID คือใคร ทำอะไร
National Digital ID หรือ NDID (อ่านออกเสียงว่า เอ็น-ดี-ไอ-ดี) คือ แตกต่างจากวิธีปกติที่เวลาจะสมัครหรือทำธุรกรรมแต่ละทีก็จะต้องมีสำเนาบัตรประจำตัวประชาชนบ้าง หรือต้องเอาบัตรประจำตัวประชาชนตัวจริงมาแสดงต่อพนักงานบ้าง ซึ่งการนำตัวตนดิจิทัลเข้ามาใช้จะช่วยลดความซับซ้อนหรือขจัดเงื่อนไขตรงนี้ออกไปได้

NDID เป็นทั้งชื่อบริการและชื่อบริษัท (บริษัท เนชั่นแนลดิจิทัลไอดี จำกัด) ที่คอยกำกับดูแลบริการในชื่อ NDID ในการนำตัวตนดิจิทัลนี้มาใช้งานจริงได้

เว็บไซต์ทางการของ NDID ได้อธิบายแบบลงเนื้อหาทั้งภาพและวิดีโอประกอบให้เข้าใจได้ง่าย สำหรับท่านใดที่สนใจ สามารถศึกษารายละเอียดได้จากเว็บไซต์ทางการของ NDID (https://www.ndid.co.th)

NDID ทำงานอย่างไร
กระบวนการยืนยันตัวตนผ่านระบบของ NDID ประกอบไปด้วย 4 ตัวละคร ซึ่งอ้างอิงตาม “นิยาม” ที่ทาง NDID กำหนดเอาไว้ ได้แก่
1. “ลูกค้า” หมายถึง บุคคลทั่วไปที่ใช้บริการกับสมาชิก
2. “สมาชิก” นิติบุคคลใดๆที่มีนิติสัมพันธ์ กับ NDID มี 3 ประเภท
2.1 ผู้ให้ข้อมูลที่น่าเชื่อถือ (“Authoritative Source” หรือ “AS”) หมายถึง นิติบุคคลหรือหน่วยงานที่มีข้อมูลส่วนบุคคลที่น่าเชื่อถือของผู้ขอใช้บริการ (ลูกค้า)
2.2 ผู้พิสูจน์และยืนยันตัวตน (“Identity Provider” หรือ “IdP”) หมายถึง นิติบุคคลหรือหน่วยงานซึ่งมีหน้าที่พิสูจน์และยืนยันตัวตนของผู้ขอใช้บริการ (ลูกค้า)
2.3 ผู้ให้บริการ (“Relying Party” หรือ “RP”) หมายถึง นิติบุคคลหรือหน่วยงานซึ่งเป็นผู้ให้บริการที่จำเป็นต้องมีการพิสูจน์และยืนยันตัวตนของผู้ขอใช้บริการ (ลูกค้า) ก่อนการให้บริการ
ที่มา: https://www.ndid.co.th/termandcon.html
ความสัมพันธ์ระหว่าง 4 ตัวละครกับ NDID (https://www.ndid.co.th/termandcon.html)


จากแผนภาพดังกล่าว เริ่มต้นจาก

1) ลูกค้าของ RP ประสงค์จะเปิดใช้บริการใหม่ บนระบบของ RP โดยปฏิบัติตามขั้นตอนของระบบ RP ที่ออกแบบมาและผ่านการตรวจสอบรับรองจาก NDID แล้ว ก่อนการให้บริการ
2) ลูกค้าเลือก IdP จากบนระบบ RP เพื่อทำการยืนยันตัวตน
3) ระบบ RP ทำการร้องขอไปยัง IdP ที่ลูกค้าเลือกในขั้นตอนที่ 2 ผ่าน NDID Platform (Blockchain)
4) IdP ส่งคำร้องขอยืนยันตัวตนไปยัง
Mobile Banking ที่ลงทะเบียนไว้ สำหรับลูกค้าแต่ละราย หลังจากนั้น
ลูกค้าเข้าสู่ระบบ IdP ด้วย PIN หรือ Security ตามที่ IdP กำหนดไว้ และอาจจะ (ขึ้นกับ RP ร้องขอ)
ถ่ายรูปตนเอง (Selfie) เพื่อทำการเปรียบเทียบกับภาพตนเองตอนที่ทำการพิสูจน์ตัวตนครั้งแรกที่จุดบริการ IdP
5) RP ได้รับสถานะของการยืนยันตัวตน และส่งคำร้องขอข้อมูลไปยัง AS ต่อมา AS ทำการตรวจสอบสถานะการยืนยันตัวตนบนระบบ NDID Platform
6) AS ส่งข้อมูลกลับไปยัง RP นอก NDID Platform (การส่งข้อมูลนี้ออกแบบระบบ และมีการเข้ารหัสข้อมูลแบบ PKI โดย NDID)
7) RP ให้ลูกค้ากรอกข้อมูลเพิ่มเติม ตรวจสอบความถูกต้องอีกครั้ง และเปิดบริการให้กับลูกค้าได้เลย
ที่มา: https://www.ndid.co.th/termandcon.html

สาเหตุที่ทาง NDID นำเทคโนโลยี Blockchain เข้ามาใช้นั้นมีเหตุผลหลักเพื่อรองรับการเพิ่มขึ้นของข้อมูลจำนวนมหาศาลในอนาคต ให้ระบบยังคงสามารถทำงานต่อได้โดยปราศจากเหตุขัดข้องที่มาจากระบบเอง

เพื่อหลีกเลี่ยงความเป็นไปได้ที่ข้อมูลส่วนบุคคลของผู้ใช้จะรั่วไหลผ่านกระบวนการ NDID นี้ ขั้นตอนที่ AS ส่งข้อมูลส่วนตัวของลูกค้ากลับไปให้ RP จึงเป็นการส่งแบบ Off channel ที่ไม่ได้ผ่าน network ของ NDID Platform กล่าวคือ จะไม่มีการส่งข้อมูลส่วนตัวของผู้ใช้งานผ่าน Blockchain network ที่เป็นแบบนั้นก็เพราะว่าคุณสมบัติหนึ่งของ Blockchain นั้นคือ Distributed Ledger หรือข้อมูลทั้งหมดจะถูกเก็บแบบกระจายอยู่บน Node ต่าง ๆ ในเครือข่ายทำให้ยากต่อการลบหรือทำลายข้อมูล จึงเป็นสาเหตุที่ต้องหลีกเลี่ยง แต่ช่องทางที่ AS และ RP ใช้เพื่อรับส่งข้อมูลนั้นก็จะต้องเป็นช่องทางที่ปลอดภัย ได้มาตรฐานตามที่ NDID กำหนดเอาไว้
ข้อมูลส่วนบุคคลที่ส่งระหว่างสมาชิก จะส่งผ่านนอก NDID Platform ระหว่างผู้รับและผู้ส่งเท่านั้น ด้วยมาตรฐานและความปลอดภัยตามที่ NDID ออกแบบให้ (Distributed PKI)
ที่มา: https://www.ndid.co.th/termandcon.html

หน้าที่และความรับผิดชอบ

  • ลูกค้า มีหน้าที่ให้ข้อมูลกับ RP เพื่อใช้ยืนยันตัวตน และทำการยืนยันความต้องการที่จะมอบข้อมูลส่วนตัวให้เสร็จ ผ่าน IdP ซึ่งก็คือบริการที่ลูกค้าเคยผ่านการสมัครใช้บริการมาแล้ว ซึ่งบริการดังกล่าวเข้าร่วมเป็นสมาชิกกับ NDID
  • RP ถึงแม้ว่าจะอาศัยข้อมูลของลูกค้าจาก IdP และ AS อีกทีก็ตาม แต่ในฐานะ RP เองก็จำเป็นที่จะต้องมีกระบวนการตรวจสอบความถูกต้องขั้นต้น ว่าข้อมูลที่ลูกค้ากรอกเข้ามาเพื่อสมัครใช้บริการนั้นไม่ใช่ข้อมูลที่ปลอมขึ้นมา จะต้องเป็นข้อมูลจริงซึ่งอาจจะเป็นของลูกค้าเองหรือเป็นของผู้อื่นก็ได้ (การยืนยันเจ้าของข้อมูลจะเป็นหน้าที่ของ IdP เป็นหลัก) และกระบวนการของ RP เองจะต้องผ่านการตรวจสอบและรับรองโดย NDID ก่อนจึงจะเปิดให้บริการได้
  • IdP คือผู้ทำหน้าที่หลักในการตรวจสอบว่าข้อมูลที่ได้มาต้อง (1)ระบุหาตัวบุคคลได้เพียงบุคคลเดียว (ถ้าได้หลายคนแปลว่าข้อมูลที่มียังไม่เพียงพอ) (2)เป็นของแท้ ข้อมูลในเอกสารถูกต้องทุกตัวอักษร ซึ่งหมายรวมถึงช่องทางการติดต่อ (เบอร์โทรศัพท์ หรืออีเมล) จะต้องใช้เพื่อติดต่อได้อยู่ และ (3)เป็นข้อมูลของบุคคลที่มีตัวตนอยู่จริง ซึ่งตัวตนดังกล่าวกับลูกค้าที่เป็นผู้ให้ข้อมูลต้องเป็นคนเดียวกันด้วย
  • AS มีหน้าที่ในการส่งข้อมูลส่วนตัวของลูกค้าให้กับ RP ภายหลังจากลูกค้าผ่านการตรวจสอบจาก IdP แล้ว ซึ่ง AS จะต้องเก็บรักษาข้อมูลส่วนตัวของผู้ใช้งานให้ปลอดภัยทั้งในการจัดเก็บ และช่องทางที่ใช้ในการส่งข้อมูลให้กับ RP เช่นกัน
จะเห็นว่า ตัวละครที่รับหน้าที่หลักในการตรวจสอบและยืนยันความถูกต้องของลูกค้าคือ IdP ซึ่งในการตรวจสอบความถูกต้องสมบูรณ์ของข้อมูลลูกค้าโดย IdP นั้นก็มีการอ้างอิงตามมาตรฐานที่เรียกว่า IAL และ AAL เพื่อให้สามารถตรวจสอบและยืนยันความถูกต้อง แท้จริง ของข้อมูลได้อย่างแม่นยำ

มาตรฐาน IAL และ AAL

IAL (Identity Assurance Level) และ AAL (Authenticator Assurance Level) คือมาตรฐานที่ถูกนำมาใช้งานสำหรับการยืนยันตัวตนเพื่อสร้างตัวตนดิจิทัล (Digital Identity)

มาตรฐาน IAL จะเกี่ยวกับการควบคุมการสมัคร (Enrollment) ให้มีความรัดกุมในเรื่องของเอกสาร และการตรวจสอบความถูกต้องของเอกสารเหล่านั้น ส่วน AAL จะเกี่ยวกับการควบคุมการยืนยันตัวตน (Authentication) ให้มีความรัดกุมในเรื่องของการระบุและยืนยันตัวผู้ทำรายการ ให้โอกาสระบุตัวตนผิดพลาด หรือการสวมรอยตัวตนเกิดขึ้นได้ยาก

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

สำหรับ NDID มีการกำหนดให้ใช้มาตรฐาน IAL และ AAL ขั้นต่ำอยู่ที่ IAL ระดับ 2.3 และ AAL ระดับ 2 โดยจะขอลงรายละเอียดเฉพาะระดับที่เกี่ยวข้องเท่านั้น ส่วนของระดับอื่น ๆ มีการกำหนดหรือบังคับอะไรบ้างสามารถดูได้จาก Infographic และเอกสารที่จัดทำโดย ETDA ด้านล่าง
Infographic: IAL และ AAL โดย ETDA (https://standard.etda.or.th/?p=10132)

เอกสารแนะนำ IAL อย่างละเอียดโดย ETDA: https://standard.etda.or.th/wp-content/uploads/2019/02/20171204-ER-DigitalID-EnrolmentIdentityProofing-V08-17F.pdf


เอกสารแนะนำ AAL อย่างละเอียดโดย ETDA: https://standard.etda.or.th/wp-content/uploads/2019/02/20171204-ER-DigitalID-Authentication-V08-21F.pdf


IAL 2.3 ต้องทำอะไรบ้าง

สำหรับ IAL 2.3 นั้น ผู้สมัครใช้บริการจะต้องแสดงข้อมูลตามที่กำหนดให้กับผู้ให้บริการตรวจสอบความถูกต้อง แม่นยำ และจัดเก็บ โดยแบ่งออกเป็น 4 ข้อหลัก ๆ ได้แก่

  1. ผู้สมัครใช้บริการจะต้องทำรายการด้วยตัวเอง โดยไม่จำเป็นต้องพบเห็นต่อหน้าก็ได้ หมายความถึงช่องทางหรือวิธีการใด ๆ ที่ผู้ให้บริการมีรองรับให้สำหรับผู้ใช้บริการ ต้องสามารถใช้ยืนยันได้ระหว่างทำรายการว่าผู้สมัครใช้บริการที่มาทำรายการอยู่นั้นเป็นบุคคลเดียวกับข้อมูลที่นำมาแสดงตัวตน โดยไม่จำเป็นต้องมีเจ้าหน้าตรวจสอบหรือสังเกตการณ์ตลอดการทำรายการ (สำหรับ IAL ระดับที่ 3 จะบังคับว่าต้องมีเจ้าหน้าที่เข้ามาเกี่ยวข้องด้วย) ตัวอย่างที่มักพบเห็นมากที่สุดคือ การเปิดให้ยืนยันตัวตนผ่านตู้ Kiosk หรือ แอปพลิเคชันมือถือ หรือเว็บไซต์ เพื่อเพิ่มความสะดวกสบายให้กับผู้ใช้บริการนั่นเอง ส่วนสำหรับวิธีที่ว่าหากทำผ่านช่องทางออนไลน์แล้วจะตรวจสอบได้อย่างไรว่าผู้สมัครใช้บริการกับข้อมูลที่ระบุคือคนคนเดียวกันนั้น สามารถใช้ข้อมูลในข้ออื่น ๆ มาพิจารณาเพื่อสรุปตรงนี้ได้ครับ
  2. ข้อมูลเท่าที่จำเป็นที่สามารถใช้ระบุตัวบุคคลได้ โดยผู้ให้บริการจะต้องขอข้อมูลเท่าที่จำเป็นเท่านั้น ห้ามมีการขอข้อมูลอื่นใด ที่ไม่เกี่ยวข้องหรือไม่มีความจำเป็นต่อการใช้ระบุตัวบุคคลเด็ดขาด เพราะอาจผิด พ.ร.บ คุ้มครองข้อมูลส่วนบบุคคล (PDPA) ได้ ซึ่งสิ่งที่ถูกเลือกนำมาใช้งานมากที่สุดมักจะไม่พ้น บัตรประจำตัวประชาชน เพราะเป็นเอกสารที่ไม่ว่าประเทศใด ๆ ก็ตามใช้เพื่อยืนยันตัวตนประชาชนของประเทศนั้น ๆ อยู่แล้ว นอกจากนี้บัตรประจำตัวประชาชนของประเทศไทยก็เป็น Smart Card ด้วย หมายถึงมีชิปที่เก็บข้อมูลทั้งหมดที่แสดงบนบัตรเอาไว้อยู่ ทั้งชื่อ นามสกุล วันเกิด รูปถ่าย ทั้งหมดล้วนถูกเก็บเอาไว้ในชิป สามารถใช้ Smart Card Reader มาใช้เพื่ออ่านข้อมูลออกไปได้ทันที และด้วยวิธีนี้จะถือว่ามีความแม่นยำสูงเพราะการใช้บัตรประจำตัวประชาชนเป็นเอกสารเพียงชิ้นเดียวก็ได้ข้อมูลมากเพียงพอที่สามารถใช้เพื่อระบุตัวตนได้ทันที เมื่อเทียบกับเอกสารชิ้นอื่น ๆ ที่มักถูกหยิบมาใช้อยู่บ้าง อาทิ ใบขับขี่ ทะเบียนบ้าน เอกสารสมรส เอกสารเปลี่ยนชื่อ เป็นต้น
  3. ต้องมีการยืนยันและเปรียบเทียบข้อมูลชีวมิติ (Biometric) ของผู้สมัครใช้บริการว่ามีความสอดคล้องหรือตรงกันกับบุคคลเจ้าของข้อมูลที่นำมาใช้อ้างหรือไม่ โดยไม่จำกัดว่าจะเป็นการยืนยันข้อมูลชีวมิติส่วนใด ตัวอย่างที่มักพบเห็นได้บ่อยที่สุดคือการยืนยันรูปถ่ายใบหน้าตรง เนื่องด้วยการทำธุรกิจที่ต้องการความปลอดภัยสูงมักบังคับให้แสดงบัตรประจำตัวประชาชนอยู่แล้ว และบนบัตรประจำตัวประชาชนเองก็มีรูปถ่าย ณ วันเวลาที่ออกบัตรถูกบันทึกเอาไว้อยู่ ดังนั้นการเปรียบเทียบใบหน้าปัจจุบันกับใบหน้าจากรูปบนบัตรประจำตัวประชาชนจึงเป็นวิธีที่สามารถทำได้ง่ายที่สุดนั่นเอง สำหรับวิธีอื่นที่เคยพบเห็นอยู่บ้างแต่ไม่บ่อยนักก็คือ การสแกนและเปรียบเทียบลายนิ้วมือ (Fingerprint) และ การสแกนและเปรียบเทียบม่านตา (Retina) ทั้งนี้ การจะเลือกใช้การเปรียบเทียบข้อมูลชีวมิติใด ๆ จะต้องคำนึงถึงความสามารถในการตรวจสอบด้วยว่าระบบหรือซอฟต์แวร์ที่ใช้ในการเปรียบเทียบมีความแม่นยำมากน้อยแค่ไหน และได้มาตรฐานหรือไม่ รวมถึงที่มาของข้อมูลชีวมิติที่นำมาใช้เปรียบเทียบกับถูกนำมาจากแหล่งที่มีความน่าเชื่อถือมากน้อยเพียงใด
  4. ช่องทางการติดต่อต้องสามารถติดต่อหาผู้สมัครใช้บริการได้จริง สำหรับ IAL ระดับ 2 ขึ้นไป มีการบังคับให้ขอข้อมูลการติดต่อกับผู้สมัครใช้บริการ และตรวจสอบยืนยันด้วยว่าข้อมูลการติดต่อที่ผู้สมัครใช้บริการระบุมานั้นสามารถยืนยันว่าเป็นของเจ้าตัวได้จริง ซึ่งในสมัยนี้ช่องทางการติดต่อที่สามารถเหมารวมได้ว่าทุกคนจะต้องมีคือเบอร์โทรศัพท์มือถือ และอีเมล ทำให้ 2 ช่องทางนี้มักถูกนำมาใช้เพื่อยืนยันช่องทางการติดต่ออยู่เสมอ อีกทั้งยังเป็นช่องทางตรวจสอบได้ง่าย ใช้เวลาไม่นาน เมื่อเทียบกับช่องทางอื่น ๆ เช่น ที่อยู่ปัจจุบัน หรือ บัญชี Social Media เป็นต้น อย่างไรก็ตามข้อมูลในส่วนนี้ไม่ได้มีการบังคับว่าช่องทางการติดต่อจะต้องเป็นของผู้สมัครใช้บริการเท่านั้น ผู้สมัครอาจนำข้อมูลการติดต่อของใครมาก็ได้ เพียงแค่ต้องสามารถยืนยันได้ว่าผู้สมัครสามารถเข้าถึงช่องทางดังกล่าวได้ ตรงนี้จึงไม่จำเป็นต้องเข้มงวดมากนักกับการยืนยันเรื่องของความเป็นเจ้า

AAL 2.1 และ 2.2 ต้องทำอะไรบ้าง

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

การทำ AAL นั้นเปรียบเทียบง่าย ๆ คือมีหลักการคล้ายกับ Authentication mechanism ที่แบ่งออกเป็น 2 ขั้นคือ Identification และ Authentication ซึ่งพิจารณาจากปัจจัยที่แบ่งออกเป็น 3 ประเภทคือ
  1. สิ่งที่คุณรู้ (something you know/knowledge-based) เช่น รหัสลับจดจำหรือก็คือรหัสบางอย่างที่มีแต่เราที่รู้ (memorized secret) ตัวอย่างที่เห็นได้บ่อยคือ PIN, username กับ password ตอบคำถาม(ที่เคยตั้งคำตอบเอาไว้ในระบบ)
  2. สิ่งที่คุณมี (something you have/possession-based) เช่น บัตรคลื่นแม่เหล็กไฟฟ้า อุปกรณ์สำหรับรับ OTP ซึ่งส่วนใหญ่ใช้อุปกรณ์มือถือ อุปกรณ์สร้าง OTP อุปกรณ์หรือซอฟต์แวร์เข้ารหัสลับ (cryptographic key) เป็นต้น
  3. สิ่งที่คุณเป็น (something you are/inherence-based) เช่น ม่านตา ลายนิ้วมือ ใบหน้า เสียง เป็นต้น
จากที่กล่าวไปว่า AAL ระดับที่ 2 บังคับให้ต้องใช้อย่างน้อย 2 ปัจจัยขึ้นไป โดยมีเงื่อนไขว่า
  • 1 ในปัจจัยที่เลือกใช้ต้องเป็น something you have กล่าวคือ ไม่สามารถใช้ something you know + something you are ได้นั่นเอง
  • 1 ในปัจจัยที่เลือกใช้ต้องป้องกันการถูกใช้ซ้ำ (replay attack) ด้วย หรือก็คือ ต้องใช้ได้ครั้งเดียว ห้ามนำกลับมาใช้ใหม่ได้

เมื่อพิจารณาจากเงื่อนไขทั้ง 2 แล้วจะเห็นว่าระบบส่วนใหญ่จึงมักที่จะเลือกใช้งาน One Time Password (OTP) มาเป็น 1 ในปัจจัยนี้นั่นเอง เพราะ OTP นั้นจัดอยู่ในปัจจัย something you have แถมตามคุณสมบัติแล้วก็สามารถใช้ได้ครั้งเดียว

จากปัจจัยทั้งหมดที่กล่าวมา สำหรับข้อแตกต่างระหว่าง IAL 2.1 และ IAL 2.2 นั้นคือ ข้อมูลชีวมิติ (Biometric) ซึ่งบังคับให้ต้องมีการใช้ร่วมกับปัจจัยอื่นด้วย ในขณะที่ IAL 2.1 นั้นไม่ได้บังคับให้นำข้อมูชีวมิติมาพิจารณาร่วมด้วย หากอ้างอิงจากรูป Infographic ของ ETDA ข้างต้น จะเห็นว่าหากใช้มาตรฐาน IAL 2.1 และใช้การยืนยันตัวตนผ่านสิ่งที่จัดอยู่ในประเภท Multi-factor device/software แล้วก็ถือว่าเพียงพอ

ข้อควรรู้ ข้อมูลชีวมิติ (Biometric) หรือ something you are ถือเป็นปัจจัยที่ไม่สามารถนำมาใช้เป็นปัจจัยเดี่ยว ๆ ได้ หากอ้างอิงตามภาพ Infographic จะเห็นว่า แม้ AAL ระดับ 1 กำหนดให้ใช้การยืนยันตัวตนเพียง 1 ปัจจัยก็เพียงพอ แต่ something you are ถือเป็นข้อยกเว้นให้ไม่สามารถนำมาใช้ได้ เหตุผลเพราะการเปรียบเทียบข้อมูลชีวมิตินั้นอยู่บนพื้นฐานของความน่าจะเป็น มีโอกาสเกิด false positive สามารถปลอมแปลงได้ง่าย และยกเลิกใช้งานได้ยาก (ไม่มีใครเปลี่ยนข้อมูลใบหน้าตัวเองได้ เมื่อเทียบกับกรณีรหัสผ่านถูกล่วงรู้สามารถเปลี่ยนรหัสผ่านได้) นั่นเอง

วัตถุประสงค์ของ IAL และ AAL

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

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

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

การทดสอบเจาะระบบ (Penetration Testing) กับ NDID

ในการเข้าร่วมเป็นสมาชิกของ NDID แน่นอนว่าจำเป็นต้องทำตามมาตรฐานที่กำหนดเอาไว้ สำหรับแอปพลิเคชันหรือระบบใด ๆ ที่จะเชื่อมต่อเข้ากับเครือข่ายของ NDID และสมาชิกอื่น ๆ ที่เข้าร่วมกับ NDID แอปพลิเคชันหรือระบบนั้นจะต้องผ่านการทดสอบเจาะระบบแล้วดำเนินการแก้ไขช่องโหว่ให้เรียบร้อยเสียก่อน 

กำหนดขอบเขตการทดสอบอย่างไร
การดำเนินการทดสอบเจาะระบบให้กับระบบ/แอปพลิเคชันที่เชื่อมต่อกับระบบของ NDID นั้นไม่จำเป็นต้องครอบคลุมทุกฟังก์ชันหรือโมดูลของระบบ/แอปพลิเคชัน แต่สามารถกำหนดขอบเขตของการทดสอบให้เหลือเฉพาะฟังก์ชันหรือโมดูลที่มีความเกี่ยวข้องกับ NDID ได้ เพราะส่วนใหญ่แล้วการยืนยันตัวตนผู้สมัครใช้บริการโดยอาศัยเครือข่ายของ NDID มักจะมีส่วนเกี่ยวข้องเพียงแค่ขั้นตอนการสมัครสมาชิกของระบบหรือแอปพลิเคชันเท่านั้น ไม่จำเป็นที่จะต้องทดสอบถึงระดับ Operating System หรือ Network

Methodology ที่ใช้ในการทดสอบ
กระบวนการและมาตรฐานที่ทาง Incognito Lab ใช้อ้างอิงในการดำเนินการทดสอบเจาะระบบให้กับระบบ/แอปพลิเคชันที่มีการเชื่อมต่อกับ NDID ทั้ง RP IdP และ AS มีการอ้างอิง NIST SP 800–63 Digital Identity Guidelines มาปรับใช้ โดยมีการแบ่งกระบวนการออกเป็น 3 ขั้นตอน คือ
1. Profiling ตรวจสอบและวิเคราะห์แนวทางที่แอปพลิเคชันเป้าหมายถูกออกแบบมาและเชื่อมต่อเข้ากับเครือข่ายของ NDID พร้อมทั้งดูข้อจำกัดของ Infrastructure และทรัพยากรของทีมผู้พัฒนาและองค์กร ซึ่งแบ่งได้เป็น 4 หัวข้อในการพิจารณาคือ Host Network Integration และ Technology in usage
2. Layer-by-layer analysis จำแนกแอปพลิเคชันเป้าหมายเป็น Presentation layer, Business layer และ Data layer เพื่อหา key items เช่น Web, Controls, Web Services, Gateway หรือ Database แล้วจึงทำการวิเคราะห์ Security objective โดยใช้หัวข้อคำถามต่อไปนี้ในการจำแนกวัตถุประสงค์
  • Tangible Assets to Protect
  • Intangible Assets to Protect
  • Compliance Requirements
  • Quality of Services Requirements

เมื่อสามารถระบุวัตถุประสงค์หรือสิ่งที่เป็นหัวใจสำคัญได้แล้ว จะเข้าสู่การวิเคราะห์หา Attack surface เพื่อระบุจุดเป็นถือเป็น critical area ของแอปพลิเคชันเป้าหมาย โดยอ้างอิงจาก Security Development LifeCycle ของ Microsoft

Microsoft’s SDL (https://social.technet.microsoft.com/wiki/contents/articles/7100.the-security-development-lifecycle.aspx)
3. Verification ทำการตรวจประเมินแอปพลิเคชันเป้าหมายโดยแบ่งหัวข้อของการตรวจประเมินออกเป็น 17 หัวข้อ ได้แก่
  • Authentication
  • Session and cookie management
  • Access controls and authorization
  • Data validation
  • Parameter tampering
  • Various types of injection
  • Cross-site scripting (XSS)
  • Cross-site request forgery (CSRF)
  • Direct object reference
  • Use of cryptography
  • Clear text transmission and sensitive information exposure
  • Error and exception handling
  • Administration interface and access controls
  • Application business logic
  • Web server and application server security configuration

Top priority of NDID security issues

การทดสอบเจาะระบบที่มุ่งเน้นที่กระบวนการยืนยันตัวตนผ่านเครือข่ายของ NDID นั้น จะโฟกัสที่กระบวนการตรวจสอบและยืนยันความถูกต้องของ Digital ID ของผู้สมัครใช้บริการ ต้องเป็นไปตามคุณสมบัติ 3 ข้อที่ได้กล่าวไปในหัวข้อมาตรฐาน IAL และ AAL ดังนั้นจุดนี้จึงเป็นหัวใจสำคัญที่ต้องระมัดระวัง เพื่อไม่ให้ช่องโหว่ที่มีระดับความเสี่ยงสูงไปจนถึงสูงมากเกิดขึ้น ทาง Incognito Lab ได้รวบรวมเอาประเด็นที่ควรจะให้ความสำคัญ นำเสนอออกมาในมุมมอง Architecture พื้นฐานที่สามารถนำไปปรับใช้ หรือใช้เปรียบเทียบได้ทันที ซึ่งอาจเป็นประโยชน์ต่อทั้งนักทดสอบเจาะระบบ และนักพัฒนาระบบได้ไม่มากก็น้อย

ndid_basic_architecture_incognito_lab.jpg

Achitecture พื้นฐานของการออกแบบระบบที่เชื่อมต่อกับ NDID

ทาง Incongito Lab มีทีมนักทดสอบเจาะระบบที่ได้รับการรับรองตามที่มีความเชี่ยวชาญในการตรวจสอบและให้คำปรึกษาสำหรับกระบวนการตรวจสอบยืนยันตัวตน และมีประสบการณ์ในการให้บริการทดสอบเจาะระบบเพื่อให้ได้มาตรฐานตามที่ NDID กำหนดกับบริษัททางการเงินชั้นนำมากมาย เรายังคงมุ่งเน้นที่จะส่งมอบชิ้นงานที่มีคุณภาพและยังคงไว้ซึ่งความเป็นมืออาชีพ ตามปณิธานของเราตั้งแต่เริ่มต้น “We.Secure.The.Nation”

Get the additional info
Useful & free resources delivered to you
NDID basic architecture version 1.2
2 mb
Download

UP NEXT