Mobile Application Hardening ตามแนวทาง OWASP ด้วย SecIron IronWall

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

ในบทความนี้เราจะพาทุกท่านไปรู้จักแนวทางข้างต้น พร้อมกับความสามารถของ SecIron IronWall ที่จะช่วยให้หัวข้อ Mobile Application Hardening นั้นง่ายขึ้น เริ่มได้ตั้งแต่วันแรกของการพัฒนาตอบโจทย์ DevSecOps และสอดคล้องกับแนวทางของ OWASP

เอกสาร Cheat Sheet จาก OWASP ในด้าน Mobile Application Security ได้สรุปสาระสำคัญออกเป็น 9 ข้อคือ

1.) Architecture & Design

แนวคิดการเอาใจใส่อย่างจริงจังต่อเรื่องความมั่นคงปลอดภัยคือจุดยืนเดียวที่จะผลักดันให้เกิดการปฏิบัติ สิ่งเหล่านี้จะต้องถูกบรรจุลงในแผนตั้งแต่ขั้นแรกของการพัฒนา โดยออกแบบระบบให้สอดคล้องกับแนวปฏิบัติสากลเช่น NIST เป็นต้น ซึ่งมักแนะนำในเรื่องพื้นฐานด้านความมั่นคงปลอดภัยเช่น การให้สิทธิ์น้อยที่สุดที่จำเป็น(Least Privilege) บริหารจัดการ API อย่างมั่นคงปลอดภัย และ ดูแลการใช้งานโค้ดจาก Third Party อย่างเข้มงวดมีการตรวจสอบและอัปเดตอยู่เสมอ

2.) Authentication & Authorization

หัวข้อนี้อาจเป็นกระบวนการพื้นฐานแต่มักเป็นจุดอ่อนเสมอมา โดยในมุมมองของ OWASP ได้แนะนำภาพรวมไว้ดังนี้

  • อย่าเชื่อใจ Client กล่าวคือทุกกิจกรรมต้องผ่านกระบวนการ Authentication/Authorization เสียก่อนจึงค่อยเริ่มโหลดข้อมูล ไม่เก็บ Credential ไว้บนเครื่องหรือข้อมูลที่เก็บควรถูกเข้ารหัส นอกจากนี้ควรมีกระบวนการป้องกันอื่นร่วมด้วย เช่น ป้องกันการปลอมแปลงค่าของอุปกรณ์ การแก้ไขเปลี่ยนแปลงโค้ด และอื่นๆ
  • จัดการ Credential อย่างปลอดภัย เช่น ไม่ควรมีการ Hardcoded Credential รวมไปถึงใช้ช่องทางเข้ารหัสเพื่อส่ง Credential หรือข้อมูลสำคัญ
  • ควบคุมระเบียบเกี่ยวกับรหัสผ่านให้มีความแข็งแกร่ง เช่น มีความซับซ้อนและความยาวเหมาะสม ตลอดจนการยืนยันตัวตนด้วยไบโอเมทริกซ์ ซึ่งมือถือมักมีฟังก์ชันเหล่านี้พร้อมอยู่แล้ว
  • จัดการ Session อย่างเหมาะสม ด้วยการกำหนดเวลา สุ่มสร้าง Token สำหรับใช้งาน หรือมีช่องทางให้ผู้ใช้ Log out ได้
  • จัดเก็บ Token อย่างปลอดภัย เรียกคืนได้ มีอายุการใช้งาน
  • ในกิจกรรมที่ละเอียดอ่อนเช่น การร้องขอเปลี่ยนรหัสผ่าน จ่ายเงิน หรือมีการร้องขอแสดงข้อมูลสำคัญ ระบบควรมีมาตรการเพิ่มเติม เช่น ร้องขอการพิสูจน์ตัวตนใหม่

3.) Data Storage & Privacy

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

4.) Network Communication

นึกเสมอว่าการเดินทางข้างเครือข่ายไม่ปลอดภัยถูกดักจับได้ ซึ่งผู้พัฒนาแอปต้องสรรหามาตรการต่างๆ เข้ามาใช้ เช่น HTTPS, SSL Certificate และ Certificate Pinning โดยอัลกอริทึมเข้ารหัสจะต้องทันสมัยและปลอดภัยต่อช่องโหว่ นอกจากนี้ควรเลี่ยงการส่งข้อมูลละเอียดอ่อนผ่านทาง SMS เพราะสามารถถูกแอบอ่านได้ง่าย

5.) User Interface

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

6.) Code Quality

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

7.) Application Integrity

ป้องกันการทำ Reverse Engineering ด้วยเทคนิค Obfuscation หรือมีกลไกช่วยตรวจสอบได้ว่าแอปพลิเคชันไม่ถูกแก้ไขเปลี่ยนแปลง

8.) Testing

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

9.) Post-Deployment

วางแผนรับมือกับเหตุไม่คาดฝัน อัปเดตแพตช์ให้แอปอย่างรัดกุม หรือมีช่องทางบังคับให้ผู้ใช้ได้รับการอัปเดต ที่สำคัญคือควรมีความสามารถจับตาภัยคุกคามได้อย่างต่อเนื่อง

ในระบบปฏิบัติการแต่ละแพลตฟอร์มของมือถือมักมีฟีเจอร์หรือวิธีการที่ต้องปฏิบัติต่างกันออกไปทั้ง Android และ iOS ซึ่งระเบียบปฏิบัติในคู่มือเหล่านี้เป็นสิ่งที่ผู้พัฒนามองข้ามไม่ได้ จะเห็นได้ว่าแนวทางข้างต้นเป็นเหมือนศาสตร์และศิลป์ที่ต้องอาศัยทั้งแนวคิด การวางแผน และเครื่องมือ แต่จะดีกว่าไหมหากมีเครื่องมือที่จะช่วยให้งานหลายชิ้นในหัวข้อเหล่านี้เกิดขึ้นได้ โดยไม่เพิ่มความยุ่งยากให้แก่องค์กร ซึ่ง SecIron IronWall คือหนึ่งในเครื่องมือนั้น

SecIron ได้วางตัวให้ผลิตภัณฑ์ IronWall คือผู้รักษาการณ์ด้าน Hardening โดยมี 4 เหตุผลที่สามารถอธิบายคุณสมบัติของ IronWall ได้คือ

1.) เริ่มต้นง่ายพร้อมใช้ได้ทันที

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

2.) เพรียบพร้อมด้วยสรรพคุณด้านการตรวจจับป้องกัน

  • ป้องกันการทำ Reverse Engineering – การศึกษาย้อนกลับโค้ดเป็นวิธีที่จะทำให้ผู้โจมตีสามารถมองเห็นจุดอ่อนและเข้าใจการทำงานของแอปพลิเคชัน ซึ่งเมื่อเข้าใจดีแล้วอาจจะสามารถดัดแปลง แก้ไข หรือคัดลอกและสร้างเป็นแอปในเวอร์ชันใหม่ได้ ซึ่ง IronWall มีกลไกช่วยป้องกันในหลายรูปแบบ เช่น Code Obfuscation, App repackaging, Injection Attack & Tempering และการตรวจสอบสภาพแวดล้อมว่าแอปพลิเคชันกำลังรันอยู่บนสภาพจำลองที่ไม่ควรหรือไม่ เพราะอาจเป็นการที่คนร้ายพยายามศึกษาแอปของท่านอยู่ เช่น Jailbreak ใน iOS และ Rooting บน Android
  • ป้องกันการดับจับคีย์ และ การจับภาพหน้าจอ – การบันทึกภาพหน้าจอเป็นฟังก์ชันพื้นฐานที่คนร้ายมักนำไปใช้เสมอ โดยอาจกำบังกิจกรรมของตนเป็นพื้นหลัง ไม่ให้ผู้ใช้ระแคะระคายหรือสังเกตเห็นได้ นอกจากนี้การดักจับแป้นพิมพ์ยังเป็นอีกช่องทางที่ช่วยให้คนร้ายได้มาซึ่งรหัสผ่านหรือข้อมูลสำคัญ ซึ่ง IronWall มีกลไกป้องกันมิให้คนร้ายทำการลักลอบขโมยข้อมูลผ่านทางวิธีการเหล่านี้

3.) ตอบโจทย์ความหลากหลาย

IronWall มาพร้อมกับทางเลือกกับการใช้งานที่ครอบคลุม ไม่ว่าองค์กรที่เน้นความคล่องตัว SaaS จะช่วยให้ผู้ปฏิบัติงานเข้าจัดการได้จากทุกที่ ในขณะที่บางองค์กรอาจจะมีข้อบังคับเข้มงวดก็สามารถเลือก On-premise แทนได้ อย่างไรก็ดีในแง่ของการพัฒนา IronWall สามารถทำงานได้ร่วมกับเครื่องมือยอดนิยมต่างๆ เช่น Flutter, iOS, Android และ Harmony OS เป็นต้น

4.) บริหารจัดการได้อย่างสมบูรณ์แบบ

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

เมื่อพูดถึงความมั่นคงปลอดภัยในมือถือนั้นประกอบไปด้วยหลายแง่มุม ซึ่งโซลูชันฝั่งผู้ใช้เองอาจหมายถึงซอฟต์แวร์ป้องกันมัลแวร์หรืออื่นๆ ในมุมของทีมเครือข่ายและไอทีขององค์กรอาจหมายถึงโซลูชัน Mobile Device Management(MDM) อย่างไรก็ดีความมั่นคงปลอดภัยต้องเริ่มต้นที่วันแรกของการพัฒนา ซึ่งในมุมนี้จะว่าด้วยเรื่องของความมั่นคงปลอดภัยที่ทีมพัฒนาและองค์กรพึงตระหนักถึง

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

สอบถามรายละเอียดเพิ่มเติมได้ที่ บริษัท คอมพิวเตอร์ยูเนี่ยน จำกัด โทร 02 311 6881 # 7151, 7156 หรือ email : cu_mkt@cu.co.th

About nattakon

จบการศึกษา ปริญญาตรีและโท สาขาวิศวกรรมคอมพิวเตอร์ KMITL เคยทำงานด้าน Engineer/Presale ดูแลผลิตภัณฑ์ด้าน Network Security และ Public Cloud ในประเทศ ปัจจุบันเป็นนักเขียน Full-time ที่ TechTalkThai

Check Also

ERP on Cloud เทรนด์ใหม่อุตสาหกรรมการผลิตไทย : Digiwin Thailand จับมือ GWS CLOUD โชว์โซลูชันในงาน ME EXPO 2026 [Guest Post]

Digiwin Thailand และ GWS CLOUD เตรียมเข้าร่วมจัดแสดงโซลูชัน “Digiwin ERP on GWS CLOUD” ซึ่งถือเป็นเทรนด์ใหม่ในอุตสาหกรรมการผลิตไทย เป็นครั้งแรก ในงาน ME …

ศรีเจริญ ปาล์ม ออยล์ ยกระดับ การบริหารธุรกิจน้ำมันปาล์ม ด้วย SAP Business One โดย NTT DATA Business Solutions (Thailand) Ltd.

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