APIs נמצאים בכל מקום באינטרנט, אך הניהול והאבטחה שלהם לוקים בחסר במקומות רבים. מ-WAF, דרך מוצרי API Management ו-API Security, כך ניתן להנות מהאפשרויות הבלתי מוגבלות שה-APIs נותנים מבלי להתפשר על אבטחת המידע.
טל קפיטולניק, ארכיטקט פתרונות אבטחת מידע, NESSPRO

בשנים האחרונות ניתן לראות ש-APIs, או ממשקי תכנות יישומים בעברית, הם המנוע מאחורי תשתיות העולם המודרני. בנקים, מרכזים רפואיים, גופי ממשל וביטחון, כולם מסתמכים על API עבור פעולות הליבה הקריטיות ביותר שלהם. אנו יודעים כיום שקריאות API אחראיות על מעל 80 אחוז מהתעבורה ברשת האינטרנט, והם צומחים בקצב של 200 אחוז בשנה.
הסיבות לכך מגוונות – ארגונים עוברים תהליך מואץ של טרנספורמציה דיגיטלית, כולל מודרניזציה של התשתיות הקיימות. APIs מאפשרים פיתוח מהיר יותר והעלאת שירותים בעלי ערך עסקי לסביבת הייצור בתדירות גבוהה מאוד. על פי מחקר של Postman, כ-28 אחוז מהמפתחים אמרו שהם מעלים API לסביבת הייצור פעם בשבוע.
בנוסף, מיגרציה לענן מגדילה עוד יותר את כמות ה-API בארגון משום שהאינטגרציה עם מערכות הענן מתבצעות באמצעות ממשקים אלו. כל זאת עוד לפני שציינו רגולציות, כגון הבנקאות הפתוחה, שמחייבת לראשונה ארגונים פיננסיים לחשוף API עם מידע על לקוחות לצדדים שלישיים בניגוד למצב הקודם, בו המידע נחשף רק באתר ובאפליקציה של הארגון.
גישת API First
היתרונות ברורים, ולכן ארגונים רבים התחילו לאמץ את גישת ה-API First, שבמסגרתה שמים את ה-API במרכז תהליך הפיתוח. המטרה היא שהתוצר של כל פרויקט פיתוח יוכל להיצרך מכל קליינט ללא צורך בהתאמות. ה-APIs צריכים להבנות בצורה עקבית ולהיות ניתנים לשימוש חוזר. בצורה זו מפתחים יכולים לעבוד במקביל, עלויות הפיתוח יורדות, זמן הפיתוח יורד והיקף פרויקט בודד מצטמצם, דבר שמקטין סיכון לכישלון.
ניהול ה-API בארגון
כשרק החלה התנועה לעבר API, ארגונים החלו לחשוף אותם ישירות משרתי האפליקציה והגנו עליהם באמצעות WAF בלבד, תוך מחשבה שה-API הוא חלק מאפליקציית Web.
ה-WAF הוא שכבת ההגנה הראשונה ומגן על משאבי הרשת בארגון על ידי סינון תעבורת HTTP זדונית. הוא עושה זאת באמצעות סט חוקים מוגדר מראש שמגן מפני פריצות ידועות.
היום, כשישנה הבנה שה-API הוא רכיב בפני עצמו ויכול להיות מופעל מהרבה מקומות, נדרשת מחשבה ספציפית על הניהול והאבטחה של ממשקים אלו. שימוש ב-API הוא קל למפתח, אך קל גם לניצול על ידי תוקפים. כ-76 אחוז מהארגונים חוו פרצות שקשורות ב-API בשנה האחרונה, וככל שהפריסה שלהם בארגון גדולה יותר, כך גדל הסיכון.
על מנת להנות מהיתרונות של שימוש ב-API ולהוריד את הסיכון הטמון בהם, ארגונים צריכים לנהל את הממשקים שהם חושפים תוך התחשבות במספר משימות.
אבטחת מידע
API חושפים מידע מתוך הארגון ומאפשרים לבצע פעולות, ולכן מטבע הדברים צריך להגן עליהם. ארגון OWASP הוציא רשימה של 10 הסיכונים הגדולים ביותר ל-API, שהבולטים שבהם הם בדיקת הרשאות שבורה, הזדהות שבורה וזליגת מידע. את סיכונים אלו צריך לנהל באופן ספציפי ל-API שנחשפים.
החצנת שירותים
חשוב לדעת אילו API הארגון חושף, בין אם פנימיים ובין אם חיצוניים. היכולת הזו קריטית גם עבור צוותי הפיתוח, על מנת לאפשר שימוש חוזר ב-API שפותחו, וגם מבחינת אבטחת מידע, כדי להבין איזה מידע הארגון חושף וכיצד יש להגן על כל ממשק.
שליטה ובקרה
היכולת לשלוט על כלל הממשקים ממקום אחד ולנטר את השימוש בהם היא יכולת קריטית. כך ניתן לזהות תקלות בשירותים ופעילות חשודה, ובמקרה הצורך גם להקפיץ התראות.
פתרונות API Management
פתרונות API Management נכנסו על מנת להתמודד עם אתגרים אלו, והם בדרך כלל מכילים רכיב של API Gateway ופורטל מפתחים.
API Gateway
רכיב ה-API Gateway הוא Reverse proxy שחושף את ה-API של הארגון. הוא משמש כחוצץ בין צרכני השירותים לבין שרתי האפליקציה, ומאפשר להחיל מדיניות אחודה שתיאכף בכל הפעלה של API. ה-API Gateway גם מתעד את כלל הקריאות אליו ומאפשר הוצאה של נתוני שימוש לכלי אנליזה.
מבחינת אבטחת מידע, ניתן להגדיר דרכו הגנות כנגד מניעת שירות (DoS), מתקפות הזרקה (למשל SQL\Code injection), בקשות שלא על פי סכמה ועוד.
בנוסף, ניתן לבצע דרכו פעולות טרנספורמציה (למשל SOAP ל-REST), Caching, אכיפת הזדהות ובדיקת הרשאות ברמה בסיסית.
פורטל מפתחים
פורטל המפתחים מאפשר להציג קטלוג של שירותים, להנפיק מפתחות גישה ולדמות פניות לשירותי דמה. זהו רכיב חשוב משום שהוא מאפשר למפתחים ללמוד את ה-API הנחשפים ולהתנסות בהפעלות שלהם בשירות עצמי, דבר שמאיץ שימוש חוזר.
תחזוקה של פורטל מפתחים מקיף עם דוקומנטציה מלאה מאפשרת שימוש יעיל במשאבי הארגון וחשיפה מהירה של ממשקים לגורמים חיצוניים ופנימיים.
פתרונות API Security
פתרונות ה-API Management נותנים מענה טוב לניהול ה-API, אך גם עם שילוב של WAF הם חסרים יכולות מהותיות בתחומי אבטחת מידע והנראות (Visibility). נקודת התורפה המרכזית היא שנדרש להגדיר בהם בדיוק מה לבדוק, ואי אפשר להגן על מה שלא רואים או חושבים עליו. דוגמה טובה היא API חשופים החוצה שלא הוגדרו ב-API Gateway או לא עוברים דרך ה-WAF.
בנקודה הזו נכנסים פתרונות ה-API Security. הם משתמשים בכלי בינה מלאכותית וביג דאטה כדי למפות את ה-API שהארגון חושף ולמצוא בהן חולשות אבטחה.
ישנן מספר יכולות חשובות של מוצרי API Security שמשלימות את ההגנה שנותנים WAF ו-API Gateway.
API Discovery
כאמור, אחת הבעיות הגדולות של ארגונים היא API לא ידועים או לא מנוהלים, ונקראים גם Shadow\Unmanaged APIs.
תהליך ה-API Discovery הוא תהליך שבו מגלים את כל ה-API שהארגון חושף ויוצרים מיפוי מלא ומדויק שלהם. הגילוי צריך לכלול לא רק את ה-API עצמם, אלא גם המידע שמתקבל בבקשה ויוצא בתשובה, כולל זיהוי של מידע רגיש. המידע מתהליך זה יכול לשמש לא רק את צוותי אבטחת המידע, אלא גם את צוותי הפיתוח.
Posture Management
תהליך של Posture management עוזר לצוותי האפליקציה ואבטחת המידע למצוא API עם קונפיגורציה חסרה שיכולה להוביל לפרצות או אי עמידה ב-compliance. קונפיגורציה חסרה כוללת אימות חלש, API פנימיים שחשופים החוצה, מידע רגיש שיוצא מהארגון, חוסר בהגבלת גישה (Rate limiting), חוסר בהצפנה ועוד.
Runtime Protection
גם WAF וגם API Gateway מספקים הגנה מסוימת בזמן ריצה. API Gateway יכול לאכוף אימות, סכמה ו-Rate limit, בעוד WAF מזהה התקפות על פי חתימות והתנהגות של משתמש בסשן. ההגנות האלו אמנם הכרחיות, אך הן אינן מספיקות כדי להתמודד עם המורכבות העסקית של ה-API. דוגמה טובה לכך היא BOLA (Broken Object Level Authorization, או בדיקת הרשאות שבורה).
במתקפה זו משתמש מצליח לגשת למידע של משתמשים אחרים בשל בקרות גישה חסרות. התקפה כזו נראית תמימה אם מסתכלים ברמת הבקשה הספציפית, ולכן תעבור את ה-WAF ואת ה-API Gateway בהצלחה. לעומת זאת, מוצר API Security יזהה את הפניה של משתמש אחד לחשבונות מרובים כאנומליה ויתריע.
API Security Testing
יכולת חשובה בפתרונות API Security היא להיות מסוגלים לבדוק את בטיחות ה-API בסביבת הפיתוח, לפני עליה ל-Production. כך מזהים כבר בשלב מוקדם פגיעויות וקונפיגורציה חסרה, ומאפשרים להנות מהיתרונות שבפיתוח מהיר של APIs מבלי להתפשר על אבטחת המידע.
סיכום
פיתוח מבוסס APIs מאפשר לארגון להנות מזמני פיתוח מהירים בעלויות נמוכות, אך נדרש להגן עליהם בצורה ייחודית, תוך הבנת הסכנות הטמונות בחשיפת ממשקים אלו.
ארכיטקטורה שמשלבת WAF, פתרון של API Management ופתרון API Security, תוך כדי התחלת בדיקות האבטחה כבר מסביבת הפיתוח וכלה ביצור, מאפשרת להנות מהיתרונות של עולם ה-API תוך כדי צמצום הסיכון.
למידע נוסף – tal.kapitolnik@ness-tech.co.il |0546963416