DevSecOps คืออะไร! ทำไมทุกองค์กรจึงให้ความสำคัญ

“DevSecOps” เป็นแนวคิดการทำงานรูปแบบใหม่ ที่ช่วยอุดช่องว่างของปัญหาความไม่ปลอดภัยและการรั่วไหลของข้อมูลลูกค้า ด้วยการรวมฝั่ง Development และ Operation เข้าด้วยกัน โดยมี Security อยู่ระหว่างกลาง ทำงานด้วยการเขียนโค๊ดตามกฏที่มีความปลอดภัยเป็นตัวกำหนดทุก Sprint ซึ่งวิธีนี้จะช่วยป้องกันการโจมตีของ Attacker หรือ Hacker ได้เป็นอย่างมีประสิทธิภาพ ทั้งยังช่วยทลายกำแพงระหว่างทั้ง 2 ทีมลงได้ เน้นการทำงานร่วมกันอย่างเป็นระบบ, ช่วยลดระยะเวลาในการส่งตรวจ Code และ Deploy ที่สำคัญยังสามารถตรวจจับข้อบกพร่องของแอปพลิเคชันที่กำลังสร้างได้อย่างทันที ไม่ต้องรอการส่งตรวจสอบเป็นเวลานานอย่างที่ผ่านมา

ข้อดีของ DevSecOps

องค์กร IT Industry ในยุคนี้ต้องให้ความสำคัญกับความปลอดภัยของข้อมูลลูกค้าเป็นอย่างมาก เพราะที่ผ่านมาเราได้เรียนรู้จากประสบการณ์อันน่าเจ็บปวดของบริษัทยักษ์ใหญ่ อย่าง Linked in และ Facebook ที่เจอ Hacker มือดีล้วงข้อมูลส่วนตัวของผู้ใช้งานมากกว่า 700 ล้าน User ทำให้เกิดความเสียหายและส่งผลกระทบต่อความไว้วางใจของลูกค้าที่มีให้องค์กร

ข้อเสีบของการไม่ทำงานแบบ DevSecOps

ทำไมข้อมูลถึงรั่วไหล?!

การสร้างแพลทฟอร์มแบบเดิมต้องใช้บุคลากรหลายฝ่ายและทำงานแยกันอย่างชัดเจน เริ่มจากทีม Development เขียน Code ส่งให้ทีม Operation ตรวจสอบ หากพบปัญหาก็จะถูกตีกลับมายัง Development เพื่อแก้ไขอีกครั้ง ทำให้เสียเวลาและอาจเสี่ยงต่อการเกิดช่องโหว่ของความไม่ปลอดภัยได้

DevSecOps ทำงานอย่างไร!

เมื่อรู้แล้วว่า “DevSecOps” คืออะไร และสำคัญกับองค์กรมากแค่ไหน ต่อมาเราก็จะพาไปเจาะลึกถึงกระบวนการทำงานแบบ “DevSecOps” ซึ่งเป็นการนำทีม Development, Operations และ Security มารวมเป็นหนึ่งเดียว ส่งผลให้ทุกคนเกิดการรับรู้และมีส่วนร่วมทุก Activities ตั้งแต่ต้น ตลอดจนหลังการใช้งาน และที่สำคัญคือ มีความปลอดภัยเป็นตัวกำหนดหลักทั้งระบบ ทำให้เกิดความรัดกุมในการพัฒนาซอฟต์แวร์และแอปพลิเคชันได้อย่างมีประสิทธิภาพ

DevSecOps ประกอบด้วย >>

  • Development เน้นเขียน Code โดดเด่นเรื่องการพัฒนา
  • Security มีกำหนดอยู่ทุก Sprint
  • Operations สร้างสรรค์และป้องกันอย่างรัดกุม

Development เน้นเขียน Code โดดเด่นเรื่องการพัฒนา

  1. Secure Code Training > ขั้นตอนนี้จะเป็นการเรียนรู้ถึง AppSec และหน้าที่ที่จะต้องทำ
  2. Secure by Design > ศึกษาหาข้อมูลสำหรับ Use case ทางด้าน Security แล้วนำข้อมูลเหล่านั้นมาวิเคราะห์ และใช้ออกแบบเพื่อให้ตอบโจทย์กับ Use case นั้นๆ
  3. Pre-Commit Configuration for Secret Scanning, Secure Access to App, Code & Image Repository > คือการให้สิทธิ์ที่น้อยที่สุดสำหรับการทำ Role-Based Access Control และแบ่งโครงข่ายสำหรับการเก็บข้อมูลของ Container หรือแม้กระทั้ง Image ต่างๆ
  4. Secure Access to CI Service > มอบสิทธิ์ของการใช้เท่าที่จำเป็นเท่านั้น เพื่อป้องกันบุคคลที่ไม่เกี่ยวข้องในการเข้าถึงหรือเปลี่ยนแปลง Pipeline
  5. Code Analysis > คือการใช้ Static Application Security Testing ในการตรวจสอบว่า Source Code ของเรามีช่องโหว่หรือ Follow Coding Practice.
  6. Composition Analysis > คือการวิเคราะห์ Code ของ Third Party Open-Source แล้วนำ Code เหล่านั้นมาใช้โดยเราจำเป็นจะต้องคำนึงถึงความปลอดภัยและต้องผ่านการตรวจสอบของ Open-Source Software Licensing
  7. CI Server Deploys to Test > นำ Automation มาใช้ในการสร้างแอปพลิเคชัน ด้วย Infrastructure as Code (IaC)
  8. Security Test > ใช้ Automation ในการตรวจสอบช่องโหว่ของและวิเคราะห์ข้อมูลของ Container โดยนำข้อมูเหล่านี้มาวิเคราะห์เพื่อป้องกันการโจมตี Container ของเราได้
  9. Security Review (Human Logic Test) > ส่วนนี้เป็นการทำ Penetration Testing
  10. Image Assurance > ตรวจสอบความถูกต้องของ Image ที่จะเอาไว้ติดตั้งแอปพลิเคชั่นก่อนจะนำ Image เหล่านั้ไปใช้ใน Production Environment.

 

Security มั่นใจ ปลอดภัยในทุก Sprint

ส่วน Security เป็นส่วนสำคัญของการทำงานแบบ DevSecOps เรียกเป็นมาตรฐานในการพัฒนาซอฟต์แวร์และแอปพลิเคชัน ส่วนนี้จะมีอยู่ในทุก Sprint ดังรูป เพื่อให้มั่นใจว่า ซอฟต์แวร์และแอปพลิเคชันของมีความปลอดภัย และยังสามารถที่เป็นแนวทางให้ DevOps ทำตาม Practice ของ Sprint นั้นๆ ได้อีกด้วย

 

Operations สร้างสรรค์และป้องกันอย่างรัดกุม

  1. Deploy to Production > เป็นการนำ IaC มาใช้ในการสร้างแอปพลอเคชัน
  2. Privileged Access Secrets Management and Network Isolation > เป็นการนำ Policy ของ Network มาใช้เพื่อควบคุมหรือจำกัดสิทธิ์ของการเข้าใช้งาน Container/ Pods นั้นๆ
  3. Application Protection > ป้องกัน Application ของเราโดยอาจจะใช้ Role Based Access Control หรือใช้ Web Application Firewall
  4. Infrastructure and Data Protection > นำ Infrastructure Hardening เข้ามาใช้ Encrypt ข้อมูลหรือ Endpoint อีกทั้ง DLP และ IDP
  5. Vulnerability Scanning > นำ CIS Control Framework เข้ามาใช้ในการสร้าง Image หรือแม้กระทั่งจะเป็น Environment
  6. Continuous Monitoring & Incident Response > วิเคราะห์ข้อมูลการโจมตี เพื่อเรียนรู้และหาเส้นทางในการพัฒนาแอปพลิเคชันให้มีประสิทธิภาพเพิ่มมากขึ้น และมีความปลอดภัยสำหรับ Sprint ถัดไป
  7. Rinse & Repeat > คือการพัฒนาและการควบคุมแอปพลิเคชันให้อยู่ในทิศทางที่ถูกต้องและปลอดภัย

 

นอกจาก PROEN Cloud ของเราจะเป็น PaaS (Platform as a Service) แล้ว ยังสามารถรองรับในส่วนของการทำ CI/CD tool หรือ Pipeline ต่างๆ ซึ่งเหมาะกับการทำงานแบบ DevSecOps ที่ทุกองค์กรสามารถนำไปปรับใช้กับทีมนัฒนาเพื่อให้ซอฟต์แวร์และแอปพลิเคชันของคุณมีประสิทธิภาพสูงสุดได้อีกด้วย

สนใจทดลองใช้ PROEN Cloud ฟรี! 14 วัน ลงทะเบียนได้ที่
https://www.proen.cloud/th/get-free-trials/
Tel: 02690 3888
E-mail: [email protected]