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

ข้อดีของ API สำหรับเหล่านักพัฒนาก็คือความสะดวกรวดเร็วในการทำงานให้สามารถผนวกบริการจาก Third-party เข้ามาใช้งานได้โดยไม่ต้องเขียนโปรแกรมเองทุกอย่างตั้งแต่แรกเริ่มเหมือนในสมัยอดีต มีผลสำรวจจาก One Poll ชี้ว่าโดยเฉลี่ยแล้วธุรกิจหนึ่งจะมีการบริหารจัดการ API ประมาณ 361 ตัวและกว่า 69% เปิดบริการสู่สาธารณะและพาร์ทเนอร์ให้สามารถเข้ามาเรียกใช้งานได้ อย่างไรก็ตามในหมู่นักพัฒนาสามารถค้นหา API จากไลบรารี่มาต่อยอดได้ง่ายๆ ตัวอย่างเช่น API Hound ที่เป็นแหล่งรวม API จากทั่วโลก
เหรียญมีสองด้านเสมอแฮ็กเกอร์เองก็จ้องเล่นงานเหยื่อจากเทคโนโลยีใหม่อยู่เสมอเช่นกัน โดยการโจมตีที่มักเกิดขึ้นกับ API มีดังนี้
-
API Parameter Tempering แฮ็กเกอร์ทำการ Reverse Engineering ตัว API เพื่อให้เข้าถึงข้อมูลสำคัญ
-
Session Cookie Tempering แฮ็กเกอร์พยายามหาวิธีการใช้งาน Cookie เพื่อลัดผ่านกลไกด้านความมั่นคงปลอดภัยและส่งข้อมูลผิดๆ ไปหาเซิร์ฟเวอร์ของแอปพลิเคชัน
-
Man-in-the-Middle Attack ดักจับข้อมูลการเชื่อมต่อของตัว API Client และเซิร์ฟเวอร์ที่ไม่ได้เข้ารหัสระหว่างกันเพื่อให้ได้มาซึ่งข้อมูล
-
Content Manipulation แฮ็กเกอร์พยายาม inject เนื้อหาที่มีอันตราย (เช่น Poisoning JSON Wen Token เป็นต้น) ให้แพร่กระจายออกไปและคอยทำงานอยู่เบื้องหลัง
-
DDoS การเขียนโค้ดที่ไม่ดีอาจนำไปสู่การใช้งานทรัพยากรมากโดยอาจจะเพราะส่งพารามิเตอร์ที่ผิดพลาด
ดังนั้นในฝั่งของการป้องกันเองจึงมีเรื่องที่ต้องคิดดังนี้
-
คิดเรื่องความมั่นคงปลอดภัยในขั้นตอนการพัฒนาด้วยเสมอ เช่น หากเปิดใช้แบบสาธารณะแล้วจะมีผลอย่างไร มีวิธีการไหนสามารถใช้ API ในทางที่อันตรายได้บ้าง หลักๆเลยที่ทางผู้เขียนเน้นย้ำคือเรื่องของการทำพิสูจน์ตัวตนและจำกัดสิทธิ์ของตัวตนนั้นว่าสามารถทำอะไรได้มากน้อยแค่ไหน เช่น ผ่าน Token ด้วย OAuth และเมื่อได้มาแล้วก็ส่งต่อไปใช้ในการพิจรณาตรวจสอบก่อนทำสิ่งต่างๆ
-
ปฏิบัติตามแนวทางที่เป็น Best Practice และเป็นมาตรฐาน ลองเข้าไปตามมาตรฐานอย่าง เช่น OWASP เป็นต้น
-
คอยติดตาม API Gateway เพราะสามารถช่วยให้มองเห็นภาพ นำไปวิเคราะห์หรือควบคุมปริมาณทราฟฟิคเพื่อลดความเสี่ยงของการโจมตีแบบ DDoS ได้ อีกทั้งยังสามารถผลักดันใช้ Policy ด้านความมั่นคงปลอดภัยที่จุดนี้ได้ด้วย สุดท้ายต้องคอยรับฟังคำแนะนำจาก DevSecOps ด้วยเพื่อลดความเสี่ยงที่เกี่ยวกับ API เหล่านี้
ที่มา : https://www.securityweek.com/next-big-cyber-attack-vector-apis