fbpx
บทความ 1 พฤศจิกายน 2023

MVSP คืออะไร ทำไมองค์กรต้องให้ความสำคัญก่อนเลือกผู้ให้บริการซอฟต์แวร์

ในปัจจุบันองค์กรต่างๆ เริ่มหันไปใช้บริการผู้พัฒนาซอฟต์แวร์ภายนอกซึ่งมีความเชี่ยวชาญเฉพาะทางมากยิ่งขึ้น เพื่อช่วยเพิ่มประสิทธิภาพให้กระบวนการพัฒนา อย่างไรก็ตาม องค์กรหลายแห่งยังขาดการควบคุมและประเมินคุณภาพของระดับความมั่นคงปลอดภัยที่ได้รับจากการใช้บริการจากผู้พัฒนาซอฟต์แวร์ภายนอก ไม่ว่าจะเป็นรูปแบบของการจ้างพัฒนาซอฟต์แวร์ การพัฒนาซอฟต์แวร์สำเร็จรูป หรือการบริการในรูปแบบ Software-as-a-Service ซึ่งทำให้ขาดข้อมูลเพื่อใช้บริหารความเสี่ยงขององค์กร และทำให้องค์กรตกอยู่ในความเสี่ยงทางไซเบอร์ทั้งจากอุบัติเหตุและจากการโจมตี โดยรายงานผลการสำรวจจาก CRA Business Intelligence ที่เปิดเผยเมื่อเดือน ม.ค. 2566 ระบุว่า องค์กรราว 57% ที่ตอบแบบสอบถาม เคยเผชิญเหตุข้อมูลรั่วไหลหรือเหตุโจมตีที่มีความเกี่ยวข้องกับผู้ให้บริการภายนอก และเหตุการณ์สุ่มเสี่ยงด้านความปลอดภัยยิ่งเพิ่มขึ้นตามขนาดองค์กร 

ดังนั้น การเลือกใช้ผู้พัฒนาซอฟต์แวร์ภายนอกจึงสำคัญ ซึ่งไม่เพียงต้องเลือกให้เหมาะสมกับความต้องการขององค์กรเท่านั้น ยังต้องคำนึงถึงเรื่องความปลอดภัยไซเบอร์ด้วยเช่นกัน โดยหนึ่งในแนวทางการเลือกผู้พัฒนาภายนอกที่องค์กรสามารถนำไปปรับใช้ได้คือ Minimum Viable Secure Product (MVSP) 

MVSP คืออะไร

Minimum Viable Secure Product (MVSP) คือเกณฑ์การตรวจสอบและคัดเลือกผู้พัฒนาซอฟต์แวร์จากภายนอก ซึ่งจัดทำเป็นรูปแบบรายการตรวจสอบสั้นๆ (Checklist) เกี่ยวกับหน้าที่ความรับผิดชอบของผู้พัฒนาโดยมีจุดมุ่งหมายเพื่อยกระดับมาตรฐานความปลอดภัยจากการใช้บริการ พร้อมทั้งเพิ่มประสิทธิภาพของกระบวนการคัดเลือกและตรวจสอบผู้พัฒนาจากภายนอก 

Minimum Viable Secure Product (MVSP) พัฒนาโดยกลุ่มบริษัทผู้พัฒนาซอฟต์แวร์ชั้นนำของโลก เช่น Salesforce, Google, Okta, Slack, Dropbox และบริษัทอื่นๆ ซึ่งมีจุดเริ่มต้นมาจากการสร้างขั้นตอนการประเมินความมั่นคงปลอดภัยคู่ค้าของ Google และ Dropbox โดย MVSP ต่อยอดมาจากแนวคิดเรื่อง Minimum Viable Product (MVP) หมายถึงผลิตภัณฑ์ตัวอย่างที่มีฟีเจอร์น้อยที่สุดและสามารถใช้งานได้จริง MVSP จึงหมายถึงการตรวจสอบความปลอดภัยขั้นต่ำที่ผลิตภัณฑ์และบริการจำเป็นต้องมีเพื่อให้เกิดความมั่นคงปลอดภัย 

MVSP ประกอบด้วยรายละเอียดอะไรบ้าง

MVSP ประกอบด้วยรายการข้อกำหนดขั้นต่ำที่จำเป็นที่สุดสำหรับประเมินและตรวจสอบผู้พัฒนาภายนอก โดยแบ่งออกเป็น 4 หัวข้อหลักๆ ได้แก่

  1. การควบคุมเชิงธุรกิจ (Business controls)
    มีเนื้อหาเกี่ยวกับการจัดการความมั่นคงปลอดภัยของระบบสารสนเทศในเชิงธุรกิจ
  1. การควบคุมด้านการออกแบบแอปพลิเคชั่น (Application design controls)
    มีเนื้อหาเกี่ยวกับข้อกำหนดด้านความมั่นคงปลอดภัยของแอปพลิเคชั่น
  1. การควบคุมด้านการพัฒนาแอปพลิเคชั่น (Application implementation controls)
    มีเนื้อหาเกี่ยวกับกิจกรรมด้านความมั่นคงปลอดภัยที่ต้องปฏิบัติในการพัฒนาแอปพลิเคชั่น
  1. การควบคุมด้านการปฏิบัติงาน (Operational controls)
    มีเนื้อหาเกี่ยวกับความมั่นคงปลอดภัยของแอปพลิเคชั่นในขณะให้บริการ

องค์กรสามารถใช้ MVSP นี้ในการประเมินคู่ค้าได้ ตั้งแต่การเริ่มกระบวนการจัดซื้อจัดจ้าง หรือใช้ในการประเมินประจำปี รวมถึงใช้ประเมินตนเองในฐานะผู้พัฒนาและให้บริการซอฟต์แวร์ ซึ่งเอกสารชุดนี้จะมีการปรับปรุงปีละหนึ่งครั้ง โดยเวอร์ชั่นปัจจุบันได้ออกมาเมื่อวันที่ 12 ตุลาคม 2565 (MVSP v2.0)

เนื่องจากมองเห็นความสำคัญของ MVSP บลูบิค ไททันส์ (Bluebik Titans) ผู้ให้บริการพัฒนาระบบและให้คำปรึกษาด้านความปลอดภัยไซเบอร์ จึงได้จัดทำเอกสาร MVSP ฉบับภาษาไทย เพื่อเป็นแนวทางให้กับองค์กรธุรกิจพิจารณาปรับใช้ตามความเหมาะสม โดย บลูบิค ไททันส์ หวังเป็นอย่างยิ่งว่าการนำรายการตรวจสอบนี้ไปปฏิบัติใช้ จะเป็นหนึ่งในจุดเริ่มต้นของการสร้างบรรทัดฐานในการพัฒนาซอฟต์แวร์ในประเทศไทยให้มีความมั่นคงปลอดภัยกับผู้ใช้งาน และเป็นที่น่าเชื่อถือในระดับนานาชาติได้

1.) การควบคุมเชิงธุรกิจ (Business controls)

มาตรการควบคุมรายละเอียด
1.1 การรายงานช่องโหว่ (Vulnerability reports)จัดทำช่องทางการรายงานด้านความมั่นคงปลอดภัยสารสนเทศบนหน้าเว็บไซต์ขององค์กรองค์กรมีกระบวนการรับเรื่องรายงานความมั่นคงปลอดภัยสารสนเทศและตอบสนองในระยะเวลาที่เหมาะสม
1.2 การทดสอบโดยลูกค้า (Customer testing)องค์กรสามารถให้ลูกค้าหรือตัวแทนที่ได้รับมอบหมาย ทำการทดสอบความมั่นคงปลอดภัยของแอปพลิเคชั่นได้ให้ทำการทดสอบบนสภาพแวดล้อมจำลองของแอปพลิเคชั่น ที่มีความคล้ายเคียงกับสภาพแวดล้อมจริงที่สุดสภาพแวดล้อมสำหรับการทดสอบ (Non-production environment) ต้องไม่มีข้อมูลจริงอยู่ในระบบสภาพแวดล้อมสำหรับการทดสอบแอปพลิเคชั่น ต้องทำโดยไม่มีการป้องกันด้วย Web application firewall (WAF) หรือ Intrusion detection system (IDS) หรือระบบที่ใช้ป้องกันประเภทอื่น
1.3 การประเมินตนเอง (Self-assessment)ทำการประเมินองค์กรด้วยเอกสารชุดนี้เป็นประจำ อย่างต่ำปีละหนึ่งครั้ง
1.4 การทดสอบโดยหน่วยงานภายนอก (External testing)มีการว่าจ้างผู้ให้บริการ Penetration test ภายนอก โดยกำหนดให้ทดสอบการรักษาความมั่นคงปลอดภัยของสินค้าหรือบริการเป็นประจำทุกปี
1.5 การฝึกอบรม (Training)มีการฝึกอบรมด้านความมั่นคงปลอดภัยสารสนเทศ โดยจัดกิจกรรมให้เหมาะกับหน้าที่ความรับผิดชอบของบุคลากรแต่ละฝ่าย
1.6 การกำกับดูแล (Compliance)ปฏิบัติตามมาตรฐานความมั่นคงปลอดภัยในอุตสาหกรรมที่เกี่ยวข้องกับการดำเนินงานขององค์กร เช่น PCI DSS, HITRUST, ISO27001 หรือ SSAE 18 (SOC 2 Type 2)ปฏิบัติตามกฎหมายและข้อบังคับท้องถิ่น ตามเขตอำนาจของรัฐ ให้สอดคล้องกับการดำเนินงานของธุรกิจ และข้อกำหนดของคู่ค้า เช่น GDPR หรือ Binding Corporate Rules สำหรับการส่งข้อมูลออกนอกอาณาจักรภายใต้ข้อบังคับ หรือ Standard Contractual Clauses สำหรับการแลกเปลี่ยนข้อมูลกับอาณาจักรนอกขอบเขตข้อบังคับปฏิบัติตามข้อกำหนดด้านการจัดเก็บและประมวลผลข้อมูล ที่สอดคล้องกับข้อบังคับท้องถิ่นและภาระผูกพันตามสัญญา (Contractual obligations)
1.7 การรับมือต่อภัยคุกคาม (Incident handling)มีการแจ้งเตือนผู้ใช้งานเกี่ยวกับการถูกละเมิดให้กับลูกค้าขององค์กรภายใน 72 ชั่วโมงหลังตรวจพบเหตุการณ์ โดยที่การแจ้งเตือนควรระบุข้อมูลดังนี้ข้อมูลติดต่อของผู้ประสานงานรายงานการวิเคราะห์สถานการณ์เบื้องต้นแผนการแก้ไขสถานการณ์และระยะเวลาการแก้ไขที่เหมาะสม
1.8 การจัดการกับข้อมูล (Data handling)มีการขั้นตอนการทำลายข้อมูล (Media sanitization) ตามมาตรฐาน NIST SP 800-88 หรือเทียบเท่า

2.) การควบคุมด้านการออกแบบแอปพลิเคชั่น (Application design controls)

มาตรการควบคุมรายละเอียด
2.1 การใช้งาน Single Sign-Onใช้งานระบบ Single sign-on ด้วยโปรโตคอลที่ทันสมัยและเป็นไปตามมาตรฐาน
2.2 การบังคับใช้ HTTPSใช้งานโปรโตคอล HTTPS (Port 443) แทนที่การใช้งานโปรโตคอล HTTP (Port 80) ทั้งหมด (ยกเว้นการใช้งานโปรโตคอลที่มีการรักษาความปลอดภัย บนพื้นฐานของการเชื่อมต่อที่ไม่ได้มีการเข้ารหัส เช่น OCSP over HTTP เป็นต้น)ตรวจสอบและแก้ไข้ประเด็นด้านความปลอดภัยของ TLS certificate ที่ใช้งานบังคับใช้ HTTPS ในทุกหน้าเว็บด้วยการเพิ่มเฮดเดอร์ Strict-Transport-Security และชุดคำสั่ง IncludeSubdomains
2.3 การใช้งาน Security headerใช้งาน Security header เพื่อลดช่องทางการโจมตีของเว็บแอปพลิเคชั่น และจำกัดสิ่งที่สามารถทำได้หลังจากการโจมตี (Post exploitation) ดังนี้กำหนดสิทธิ์ใน Content Security Policy ให้มีสิทธิ์เท่าที่จำเป็นเท่านั้นจำกัดการใช้ iframe ในส่วนที่มีข้อมูลสำคัญของแอปพลิเคชั่น
2.4 การตั้งค่ารหัสผ่าน (Password policy)หากมีการยืนยันตัวตนด้วยรหัสผ่าน (นอกเหนือจากการใช้ Single sign-on) ต้องปฏิบัติดังนี้ไม่จำกัดประเภทของอักขระที่สามารถใช้ได้กำหนดความยาวของรหัสผ่านต้องไม่ต่ำกว่า 64 ตัวอักษรไม่ใช้การถามคำถามลับ (Secret question) เป็นสิ่งเดียวในการขอตั้งค่ารหัสผ่านใหม่ (Password reset)ให้มีการยืนยันตัวตนทาง Email ในการขอตั้งค่ารหัสผ่านใหม่ในการเปลี่ยนรหัสผ่าน ต้องมีการยืนยันด้วยรหัสผ่านปัจจุบันจัดเก็บรหัสผ่านในรูปแบบ Hash ที่มีการใช้ Salt ด้วยฟังค์ชั่น Hash ที่ปลอดภัยมีการตั้ง Account lockout และการป้องกันการเดาสุ่มรหัส (Bruteforcing)
2.5 Security librariesใช้ Framework หรือ Template language หรือ Library ที่จัดการกับจุดอ่อนได้อย่างเป็นระบบ โดยมีการป้องกันการแสดงผลที่ไม่ต้องการ (Output escaping) และมีการควบคุมข้อมูลที่รับได้ (Input sanitization) 
ตัวอย่างเช่นการใช้ Object Relational Mapping (ORM) สำหรับการเข้าถึงระบบฐานข้อมูล หรือการใช้ UI framework สำหรับการทำ Document Object Model (DOM) rendering
2.6 การจัดการกับช่องโหว่ (Dependency patching)ติดตั้ง Security patch สำหรับช่องโหว่ที่มีความรุนแรงตั้งแต่ Medium ขึ้นไป หรือใช้วิธีอื่นที่สามารถป้องกันการโจมตีด้วยช่องโหว่เหล่านั้นได้ภายในหนึ่งเดือนนับจากที่มีการออก Security patch
2.7 การบันทึกเหตุการณ์ (Logging)มีการจัดเก็บ Log ของกิจกรรมต่อไปนี้การเข้า-ออกระบบของผู้ใช้งานการเข้าถึง แก้ไข หรือลบข้อมูลของแอปพลิเคชั่น ผู้ใช้งานระบบ หรือ Object ต่างๆการเปลี่ยนแปลงการตั้งค่าความปลอดภัย (รวมถึงการปิดการบันทึก Log)การเข้าถึงข้อมูลของลูกค้า โดยเจ้าของหรือผู้ดูแลแอปพลิเคชั่น
โดยที่ในแต่ละรายการ ต้องมีการบันทึกชื่อผู้ใช้งาน ไอพี เวลา กิจกรรมที่ทำและสิ่งที่เกี่ยวข้อง และต้องมีการเก็บข้อมูลไว้ไม่ต่ำกว่า 30 วัน และไม่มีการบันทึกข้อมูลที่มีความสำคัญไว้
2.8 การเข้ารหัสข้อมูล (Encryption)มีการเข้ารหัสข้อมูลที่มีความสำคัญขณะที่อยู่ในการรับ-ส่งระหว่างระบบ (Data in transit) และในการจัดเก็บสำหรับพื้นที่จัดเก็บและสำรองข้อมูล (Data at rest)

3.) การควบคุมด้านการพัฒนาแอปพลิเคชั่น (Application implementation controls)

มาตรการควบคุมรายละเอียด
3.1 รายการประเภทข้อมูล (List of data)จัดทำและปรับปรุงรายการประเภทของข้อมูลที่มีความสำคัญที่มีการประมวลผลในแอปพลิเคชั่น
3.2 เส้นทางของข้อมูล (Data flow diagram)จัดทำและปรับปรุงแผนภาพแสดงเส้นทางของข้อมูลที่มีความสำคัญ ตั้งแต่การรับข้อมูลไปจนถึงการจัดเก็บ
3.3 การป้องกันช่องโหว่ (Vulnerability prevention)จัดอบรบผู้พัฒนาซอฟต์แวร์ และออกแนวปฏิบัติในการพัฒนา (Development guideline) เพื่อลดความเสี่ยงในการเกิดช่องโหว่ในหัวข้อต่อไปนี้การใช้งานข้ามสิทธิ์ (Authorization bypass) เช่น การที่ผู้ใช้งานสามารถเข้าถึงข้อมูลของผู้ใช้งานคนละราย หรือการเรียกใช้งานคำสั่งที่ต้องใช้สิทธิ์ผู้ดูแล ด้วยบัญชีผู้ใช้งานทั่วไปการจัดการ Session ID ที่ไม่ปลอดภัย (Insecure session ID) เช่น การใช้โทเคน (Token) ที่สามารถคาดเดาได้ง่าย หรือถูกจัดเก็บอย่างไม่ปลอดภัย เช่น ในคุกกี้ที่ไม่มีการตั้งค่า secure และ httpOnlyการทำ Injection เช่น SQL injection หรือ NoSQL injection หรือ XML external entity injection (XXE) หรือ OS command injectionการทำ Cross-site scripting (XSS) เช่น การเรียกใช้ฟังก์ชั่นที่ไม่ปลอดภัยของ JavaScript หรือการแก้ไข DOM Document Object Model) อย่างไม่ปลอดภัย หรือการแสดงผลของข้อมูลที่ผู้ใช้งานป้อนให้ ผ่านทาง HTML โดยไม่มีการ Escapeการทำ Cross-site request forgery (CSRF) เช่นการยอมรับ HTTP request ที่มีการระบุต้นทางมาจากคนละ Domain (Origin header)การใช้งาน Library ที่ไม่ปลอดภัย เช่น การใช้งาน Framework หรือ JavaScript library ที่มีช่องโหว่
3.4 การกำหนดเวลาในการแก้ไขช่องโหว่พัฒนาและดำเนินการแก้ไขช่องโหว่ของระบบ เพื่อปิดช่องโหว่ที่มีผลกระทบกับความมั่นคงปลอดภัยของระบบและข้อมูลภายใน 90 หลังจากที่ค้นพบช่องโหว่
3.5 กระบวนการสร้างซอฟต์แวร์ (Build process)จัดทำกระบวนการสร้างซอฟต์แวร์ให้เป็นไปโดยอัตโนมัติ และมีการบันทึกเพื่อติดตามย้อนกลับได้ (Provenance) ตาม SLSA Level 1

4.) การควบคุมด้านการปฏิบัติงาน (Operational controls)

มาตรการควบคุมรายละเอียด
4.1 การเข้าถึงทางกายภาพ (Physical access)มีการควบคุมการเข้าถึงสถานที่ปฏิบัติการของระบบ ดังต่อไปนี้มีการควบคุมการเข้า-ออกสถานที่แบบหลายระดับ (Layered perimeter)มีการจัดการกุญแจหรือรหัสที่ใช้ในการเข้าถึงสถานที่มีบันทึกการเข้า-ออกสถานที่มีแผนการรับมือกรณีตรวจพบผู้บุกรุก
4.2 การเข้าถึงทางตรรกะ (Logical access)จำกัดการเข้าถึงข้อมูลสำคัญ ให้เหลือเท่าที่จำเป็นเท่านั้น โดยต้องได้รับการอนุญาตจากเจ้าของข้อมูลก่อนเท่านั้นยกเลิกการใช้งานบัญชีผู้ใช้ที่ไม่มีการใช้งาน หรือสิ้นสุดระยะเวลาที่ได้รับสิทธิ์แล้วดำเนินการตรวจสอบสิทธิ์ของผู้ใช้เป็นประจำการเข้าถึงข้อมูลลูกค้า หรือระบบงานจริง (Production) ต้องได้รับการยืนยันตัวตนด้วย Multi-Factor Authentication (MFA)
4.3 การจัดการผู้ร่วมประมวลผลข้อมูล (Subprocessor)รวบรวมรายชื่อของหน่วยงานภายนอกที่สามารถเข้าถึงข้อมูลของลูกค้าได้ และทำการเผยแพร่บนเวบไซต์ขององค์กรทำการประเมินระดับความมั่นคงปลอดภัยของหน่วยงานภายนอกด้วยเอกสารชุดนี้เป็นประจำทุกปี
4.4 การสำรองข้อมูลและกู้คืนระบบ (Backup and disaster recovery)ทำการสำรองข้อมูลทั้งหมดในสถานที่ที่ไม่ใช่ที่ระบบให้บริการอยู่จัดทำและดำเนินการทดสอบแผนการกู้คืนจากเหตุการณ์ไม่คาดฝันเป็นประจำ (Disaster recovery plan)ดำเนินการทดสอบการกู้คืนข้อมูลที่ได้ทำการสำรองเป็นประจำ

MVSP เป็นเพียงส่วนหนึ่งในการสร้างความปลอดภัยไซเบอร์ขององค์กร

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

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

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

หากต้องการสอบถามเกี่ยวกับประเด็นต่างๆ ที่เกี่ยวข้องกับวิธีการรับมือเหตุการณ์โจมตีทางไซเบอร์ หรือกำลังประสบกับเหตุโจมตี สามารถปรึกษาทีมงาน บลูบิค ไททันส์ ได้ที่ [email protected]