דוח בדיקת חדירה עבור החלפה מרכזית

תקציר ניהול

צוות Exchange Central פנה אל Sayfer על מנת לבצע בדיקות חדירות מלאות של קופסאות שחורות על אפליקציית האינטרנט שלהם ובדיקת Whitebox עבור ארכיטקטורת הקריפטו שלהם בדצמבר 2021.

לפני הערכת השירותים הנ"ל, קיימנו פגישת פתיחה עם הצוות הטכני של Centralized Exchange וקיבלנו סקירה כללית של המערכת והמטרות למחקר זה.

במהלך תקופת המחקר של 4 שבועות גילינו 10 נקודות תורפה במערכת. הפגיעויות המסוכנות ביותר היו הזרקת SQL ופגמים בלוגיקה עסקית.

ההשפעה על המערכת היא קריטית שכן תוקף זדוני עלול לנצל חלק מהחולשות הללו כדי לנצל את המערכת, בין אם על ידי שינוי תפקיד המשתמש שלו ל"סופר_user" באמצעות הזרקת SQL או על ידי שימוש לרעה במערכת וגניבת כסף מהבורסה המרכזית באמצעות מנגנון עדכון המערכת של שנות ה-30.

פגיעויות לפי סיכון

גָבוֹהַ - איום ישיר על תהליכים עסקיים מרכזיים.
בינוני – איום עקיף על תהליכים עסקיים מרכזיים או איום חלקי על תהליכים עסקיים.
נמוך - לא קיים איום ישיר. הפגיעות עשויה להיות מנוצלת באמצעות פגיעויות אחרות.
מידע - ממצא זה אינו מצביע על פגיעות, אך מציין הערה המודיעה על פגמי עיצוב ויישום לא תקין שעלול לגרום לבעיה בטווח הארוך.

חומרה
# בעיות
גָבוֹהַ
3
בינוני
3
נמוך
2
מידע
0

גישה

מבוא

צוות ה-Centralized Exchange יצר קשר עם Sayfer על מנת לבצע בדיקות חדירות מלאות של גריי-box באפליקציית Centralized Exchange, ולבצע ביקורת אבטחה לבנה של הלוגיקה והקוד העסקי של Centralized Exchange מנקודת מבט של מטבעות קריפטוגרפיים.

דוח זה מתעד את המחקר שביצע Sayfer המכוון למשאבים הנבחרים שהוגדרו במסגרת המחקר. במיוחד, דוח זה מציג את סקירת עמדת האבטחה עבור היישום והקוד Centralized Exchange, ואת התשתית והתהליכים הסובבים אותו.

 

מחזור החיים של פרויקט בדיקת החדירה שלנו:

01

סקירת היקף

02

סקירה טכנית

03

אימות היקף

04

מודל איומים

05

הערכת אבטחה

06

הערכת אבטחה

סקירת היקף

במהלך הפגישה הראשונה שלנו ולאחר שהבנו את צרכי החברה, הגדרנו את היקף היישום שנמצא בכתובות האתרים הבאות כהיקף הפרויקט:

  • █████████████████████
  • ████████████████████████████
  • ██████████████████████████████████████████████
  • ████████████████████████████

הבדיקות שלנו בוצעו בין התאריכים 21/12/2021 עד 17/01/2022

אל תיתן לזה להיות מאוחר מדי!

התחל את הביקורת שלך עם Sayfer

אימות היקף

התחלנו בכך שהקפדה שהוגדרה לנו על ידי הלקוח הייתה הגיונית מבחינה טכנית. ההחלטה איזה היקף מתאים למערכת נתונה היא חלק מהדיון הראשוני. קבלת ההיקף הנכון היא המפתח להפקת ערך עסקי מרבי מהמחקר.

מודל איומים

במהלך פגישות הפתיחה שלנו עם הלקוח, הגדרנו את הנכסים החשובים ביותר שיש לאפליקציה.

הגדרנו שהאיום הגדול ביותר כיום על המערכת הוא מניפולציה של המשתמשים ו

████████ נכסים פיננסיים.

אל תיתן לזה להיות מאוחר מדי!

התחל את הביקורת שלך עם Sayfer

מתודולוגיית הערכת אבטחה

סייפר משתמש OWASP WSTG כסטנדרט הטכני שלנו בעת סקירת יישומי אינטרנט. לאחר הבנה מעמיקה של המערכת החלטנו אילו בדיקות OWASP נדרשות להערכת המערכת.

הערכת אבטחה

לאחר הבנת והגדרת ההיקף, ביצוע מודלים של איומים והערכת הבדיקות הנכונות הנדרשות על מנת לבדוק את האפליקציה במלואה לגבי פגמי אבטחה, ביצענו את הערכת האבטחה שלנו.

איסוף מידע

איסוף מידע שם המבחן
WSTG-INFO-01 ערכו סיור של גילוי מנוע חיפוש לאיתור דליפת מידע
WSTG-INFO-02 שרת טביעות אצבע
WSTG-INFO-03 סקור את המטא-קבצים של שרת האינטרנט לאיתור דליפת מידע
WSTG-INFO-04 ספור יישומים בשרת אינטרנט
WSTG-INFO-05 סקור את תוכן דף האינטרנט לאיתור דליפת מידע
WSTG-INFO-06 זיהוי נקודות כניסה לאפליקציה
WSTG-INFO-07 מפה נתיבי ביצוע באמצעות אפליקציה
WSTG-INFO-08 מסגרת יישום אינטרנט טביעת אצבע
WSTG-INFO-09 יישום אינטרנט טביעת אצבע
WSTG-INFO-10 ארכיטקטורת יישומי מפה

בדיקות ניהול תצורה ופריסה

בדיקות ניהול תצורה ופריסה שם המבחן
WSTG-CONF-01 בדוק את תצורת תשתית הרשת
WSTG-CONF-02 בדוק את תצורת פלטפורמת היישום
WSTG-CONF-03 בדיקת הרחבות קבצים לטיפול במידע רגיש
WSTG-CONF-04 סקור את הגיבוי הישן וקבצים ללא הפניה למידע רגיש
WSTG-CONF-05 מנה ממשקי ניהול תשתיות ואפליקציות
WSTG-CONF-06 בדוק שיטות HTTP
WSTG-CONF-07 בדוק HTTP Strict Transport Security
WSTG-CONF-08 בדוק את מדיניות RIA חוצת דומיינים
WSTG-CONF-09 בדוק הרשאת קובץ
WSTG-CONF-10 בדיקת השתלטות על תת-דומיין
WSTG-CONF-11 בדוק אחסון בענן

בדיקת ניהול זהויות

בדיקת ניהול זהויות שם המבחן
WSTG-IDNT-01 הגדרות תפקידי בדיקה
WSTG-IDNT-02 בדוק תהליך רישום משתמש
WSTG-IDNT-03 תהליך הקצאת חשבון לבדיקה
WSTG-IDNT-04 בדיקה של ספירת חשבון וחשבון משתמש שניתן לנחש
WSTG-IDNT-05 בדיקת מדיניות שמות משתמש חלשה או לא נאכפת

בדיקת אימות

בדיקת אימות שם המבחן
WSTG-ATHN-01 בדיקת אישורים שהועברו בערוץ מוצפן
WSTG-ATHN-02 בדיקת אישורי ברירת מחדל
WSTG-ATHN-03 בדיקת מנגנון נעילה חלש
WSTG-ATHN-04 בדיקת עקיפת סכימת אימות
WSTG-ATHN-05 בדיקה לאיתור פגיעים לזכור סיסמה
WSTG-ATHN-06 בדיקת חולשות מטמון הדפדפן
WSTG-ATHN-07 בדיקת מדיניות סיסמאות חלשה
WSTG-ATHN-08 בדיקת תשובה לשאלת אבטחה חלשה
WSTG-ATHN-09 בדיקת פונקציות של שינוי סיסמה חלשה או איפוס
WSTG-ATHN-10 בדיקת אימות חלש יותר בערוץ חלופי

בדיקת הרשאות

בדיקת הרשאות שם המבחן
WSTG-ATHZ-01 בדיקת קובץ מעבר מדריך כלול
WSTG-ATHZ-02 בדיקת סכמת עקיפת הרשאות
WSTG-ATHZ-03 בדיקה להסלמה של הרשאות
WSTG-ATHZ-04 בדיקה לאיתור אובייקט ישיר לא מאובטח

בדיקות ניהול מפגשים

בדיקות ניהול מפגשים שם המבחן
WSTG-SESS-01 בדיקה עבור סכימת ניהול הפעלות
WSTG-SESS-02 בדיקת תכונות של קובצי Cookie
WSTG-SESS-03 בדיקה לקיבוע הפעלה
WSTG-SESS-04 בדיקה של משתני הפעלה חשופים
WSTG-SESS-05 בדיקה לזיוף בקשות חוצות אתרים
WSTG-SESS-06 בדיקת פונקציונליות התנתקות
WSTG-SESS-07 פסק זמן של הפעלת בדיקה
WSTG-SESS-08 בדיקה עבור תמוה סשן
WSTG-SESS-09 בדיקת חטיפת הפעלה

בדיקת אימות נתונים

בדיקת אימות נתונים שם המבחן
WSTG-INPV-01 בדיקה עבור סקריפטים חוצי אתרים משותקפים
WSTG-INPV-02 בדיקה עבור Scripting Cross Site Stored
WSTG-INPV-03 בדיקה של שיבוש פעולת HTTP
WSTG-INPV-04 בדיקת זיהום פרמטר HTTP
WSTG-INPV-05 בדיקה עבור הזרקת SQL
WSTG-INPV-06 בדיקה להזרקת LDAP
WSTG-INPV-07 בדיקה עבור הזרקת XML
WSTG-INPV-08 בדיקה עבור הזרקת SSI
WSTG-INPV-09 בדיקת הזרקת XPath
WSTG-INPV-10 בדיקת הזרקת IMAP SMTP
WSTG-INPV-11 בדיקה עבור הזרקת קוד
WSTG-INPV-12 בדיקה להזרקת פקודה
WSTG-INPV-13 בדיקה להזרקת מחרוזת פורמט
WSTG-INPV-14 בדיקה לאיתור פגיעות דגירה
WSTG-INPV-15 בדיקת הברחת פיצול HTTP
WSTG-INPV-16 בדיקה עבור בקשות נכנסות HTTP
WSTG-INPV-17 בדיקה עבור הזרקת כותרת מארח
WSTG-INPV-18 בדיקה עבור הזרקת תבנית בצד השרת
WSTG-INPV-19 בדיקת זיוף בקשות בצד השרת

טיפול בשגיאה

טיפול בשגיאה שם המבחן
WSTG-ERRH-01 בדיקה לאיתור שגיאות לא תקין
WSTG-ERRH-02 בדיקת עקבות מחסנית

קריפטוגרפיה

קריפטוגרפיה שם המבחן
WSTG-CRYP-01 בדיקה לאבטחת שכבת תחבורה חלשה
WSTG-CRYP-02 בדיקה עבור ריפוד אורקל
WSTG-CRYP-03 בדיקת מידע רגיש שנשלח בערוצים לא מוצפנים
WSTG-CRYP-04 בדיקת הצפנה חלשה

בדיקת לוגיקה עסקית

בדיקת לוגיקה עסקית שם המבחן
WSTG-BUSL-01 בדיקת אימות נתוני לוגיקה עסקית
WSTG-BUSL-02 בדיקת יכולת לזייף בקשות
WSTG-BUSL-03 בדיקות תקינות
WSTG-BUSL-04 בדיקה לתזמון תהליך
WSTG-BUSL-05 בדיקה מספר הפעמים שניתן להשתמש בפונקציה מגביל
WSTG-BUSL-06 בדיקה לעקיפה של זרימות עבודה
WSTG-BUSL-07 בדוק הגנה מפני שימוש שגוי ביישום
WSTG-BUSL-08 בדיקת העלאה של סוגי קבצים בלתי צפויים
WSTG-BUSL-09 בדוק העלאה של קבצים זדוניים

בדיקות צד לקוח

בדיקות צד לקוח שם המבחן
WSTG-CLNT-01 בדיקה עבור Scripting Cross Sites מבוסס DOM
WSTG-CLNT-02 בדיקה לביצוע JavaScript
WSTG-CLNT-03 בדיקה להזרקת HTML
WSTG-CLNT-04 בדיקה להפניה מחדש של כתובת URL בצד הלקוח
WSTG-CLNT-05 בדיקה להזרקת CSS
WSTG-CLNT-06 בדיקה עבור מניפולציה של משאבים בצד הלקוח
WSTG-CLNT-07 בדוק שיתוף משאבים חוצה מקור
WSTG-CLNT-08 בדיקה עבור הבהוב חוצה אתרים
WSTG-CLNT-09 בדיקה ל-Clickjacking
WSTG-CLNT-10 בדיקת WebSockets
WSTG-CLNT-11 בדיקת הודעות אינטרנט
WSTG-CLNT-12 בדיקת אחסון דפדפן
WSTG-CLNT-13 בדיקה עבור הכללת סקריפט חוצה אתרים

בדיקת API

בדיקת API שם המבחן
WSTG-APIT-01 בדיקת GraphQL

סקירת ארנק קריפטו

סקירת ארנק קריפטו שם המבחן
SAYFER-CRPTW-01 בדוק את הלוגיקה העסקית של סחר
SAYFER-CRPTW-03 בדוק תצורות של צומת מטבעות קריפטוגרפיים מבוססי UTXO
SAYFER-CRPTW-04 בדוק תצורות של קוד קריפטוגרפי המבוסס על חשבון
SAYFER-CRPTW-05 בדיקת קוד קריטי לאישור עסקה
SAYFER-CRPTW-06 בדוק את תמיכת TAPROOT
SAYFER-CRPTW-07 בדוק אחסון מפתח פרטי

 

הזמינו ביקורת מסיפר





    אתר זה מוגן על ידי reCAPTCHA ו- Google מדיניות הפרטיות ו תנאי שימוש באתר להגיש מועמדות.

    ממצאי הערכת אבטחה

    שמירת מפתחות MPC פרטיים בצורה לא מאובטחת

    ID SAYFER-CRPTW-07
    הסיכון גָבוֹהַ
    מיומנות נדרשת גָבוֹהַ
    OWASP
    התייחסות
    -
    מקום -
    כלים ביקורת תצורה

    תיאור

    בורסות מרכזיות סובלות משיטות ניהול מפתח באיכות נמוכה. ישנן דוגמאות רבות למקרים כאלה שבהם המפתחות אבדו או נגנבו מה שגרם לשירות לאבד את כל כספי הארנק או לנעול את הכספים לחלוטין.

    במהלך ביקורת קבצי התצורה שלנו, עברנו על אחסון ניהול המפתחות. מצאנו שהמפתחות המשמשים עבור ארנק מולטי-sig הקר אינם מאוחסנים במקומות מפוזרים מספיק.

    ישנם 3 מפתחות שנמצאים בשימוש בתוך חתימת מפתח MPC. 1 מאוחסן במכונה מוגנת פיזית. 2 האחרים מאוחסנים בתוך אותה מכונה ייעודית ב-GCP.

    ישנן כמה מדידות אבטחה שנלקחו כדי לאבטח את המכונות הללו, אך הבעיה מסתמכת על ההפצה, אם המכשיר שנפרס ב-GCP נפגע, תוקף יכול לחתום על כל עסקה מהארנק הקר.

    זהו מקום בסיכון גבוה ורגיש בו רבים נכשלו בעבר, יש להקפיד על שיטות עבודה מומלצות.

    הקלות

    השתמש בשירות אפוטרופוס של צד שלישי לניהול ארנקים חמים וכספות. נשמח להמליץ ​​על אחד מהשותפים שלנו.

    שירותים אלה מטפלים בניהול MPC ומפתחות עבורך, עם שכבות אבטחה נוספות שהופכות את השימוש בשירותים כאלה לבחירה הטובה ביותר עבור מרכזיות מרכזיות.

     

    SQL Injection

    ID WSTG-INPV-05
    הסיכון גָבוֹהַ
    מיומנות נדרשת בינוני
    OWASP
    התייחסות
    - קישור
    מקום – ██████████████
    כלים Burp Repeater, sqlmap, PayloadAllTheThings

    תיאור

    התקפת הזרקת SQL כוללת הכנסה או "הזרקה" של שאילתת SQL חלקית או מלאה לקלט הנתונים המועבר מהלקוח לאפליקציית האינטרנט. התקפת SQL מוצלחת יכולה לקרוא נתונים רגישים ממסד הנתונים, לשנות נתוני מסד נתונים (הוספה/עדכון/מחיקה), לבצע פעולות ניהול מסד נתונים (כגון כיבוי ה-DBMS), לשחזר את התוכן של קובץ נתון במערכת הקבצים של DBMS או לכתוב קבצים למערכת הקבצים, ובמקרים מסוימים, הנפק פקודות למערכת ההפעלה.

    משתמש ב transaction נקודת הקצה שהצלחנו לנצל לרעה more פרמטר שאילתת כתובת אתר להזרקת מטען זדוני של SQL:

    /api/transactions?size=10&more=te');INJECTION_PAYLOAD

    המטען בו השתמשנו היה:

    /api/transactions?size=10&sort=time,DESC&more=te');SELECT+CASE+WHEN+(substring(versio n(),12,2)+%3d+'10')+THEN+pg_sleep(10)+ELSE+pg_sleep(0)+END%3b - מה שבמקרה זה, בודק אם המופע הפועל של Postgres הוא גרסה 10 או לא.

    תוקף שינצל את הפגיעות הזו עלול להשתלט על המערכת. הצלחנו לחלץ את סכימות הטבלה, לעדכן את תפקיד המשתמש שלנו או לזרוק כל מידע שנשמר ב-DB ואפילו שינינו את יתרת המשתמש שלנו ב-DB.

    הקלות

    קל לתקן פגיעות של הזרקת SQL אך קשה להפחית. יש צורך בהטמעה חזקה או יישום של כללי קומפילציה האוכפים שינוי עתידי.

    הפחתת פגיעויות הזרקת SQL נעשית בדרך כלל על ידי ביצוע מסגרת בחירה, מה שאומר שהמפתח לעולם לא צריך לשרשר מחרוזות להצהרת SQL מלאה.

    יש לחטא כל קלט של משתמש ל-executor של SQL במקום לשמש כמחרוזת שאילתת SQL פשוטה.

    למידע נוסף על שלמות הזרקת SQL, עיין ב- SQL Iמניעת njection CheatSheet.

     

    הפניות ישירות לאובייקטים לא מאובטחות

    ID WSTG-ATHZ-04
    הסיכון גָבוֹהַ
    מיומנות נדרשת בינוני
    OWASP
    התייחסות
    - קישור
    מקום – ██████████████████/דשבורד/{DASHBOARD_ID}
    כלים גיהוק חוזר, DevTools

    תיאור

    הפניות ישירות לאובייקטים לא מאובטחות (IDOR) הן סוג של פגיעות בקרת גישה המתעוררת כאשר יישום משתמש בקלט שסופק על ידי המשתמש כדי לגשת ישירות לאובייקטים. כתוצאה מפגיעות זו, תוקפים יכולים לעקוף הרשאות וגישה למשאבים במערכת ישירות, למשל, רשומות או קבצים של מסד נתונים.

    מצאנו שה-API של █████████ מאפשר לתוקף להציג מידע של לוח המחוונים של משתמשים אחרים, כולל כל הנתונים הפיננסיים של משתמש זה.
    הפגיעות מסתמכת על פרמטר מזהה לוח המחוונים שהוא מספר שלם שניתן לנחש. בקשה לדוגמה עבור לוח מחוונים בודד (עבור לוח מחוונים שאינו בבעלות המשתמש הנוכחי):

    GET ████/dashboard/827371 HTTP/1.1

    Host: ██████████████████

    api-key: ██████████

    זה מצביע על כך שה /dashboard/DASHBOARD_ID נקודת הקצה אינה בודקת הרשאה עבור המשאב המבוקש. תוקף מאומת יכול לגרד כל לוח מחוונים שמכיל מידע על כספי המשתמש ועסקאות קודמות.

    הקלות

    ישנן מספר דרכים לצמצם פגיעויות של IDOR, במקרה זה נראה שהפתרון עשוי להיות בדיקת אישור לכל בקשה ובקשה.

    המשמעות היא שכל מפתח בקשה יוכל להביא רק את לוחות המחוונים של החשבון שלו

     

    אימות חלש יותר בערוץ אלטרנטיבי

    ID WSTG-ATHN-10
    הסיכון גָבוֹהַ
    מיומנות נדרשת בינוני
    OWASP
    התייחסות
    - קישור
    מקום – ██████████████████
    כלים Google Chrome, DevTools, אמאס, ffuf

    תיאור

    גם אם מנגנוני האימות הראשיים אינם כוללים פגיעויות כלשהן, ייתכן שפגיעויות קיימות בערוצי משתמש לגיטימיים חלופיים לאותם חשבונות משתמש.

    פגיעות זו היא חלק משרשרת של 2 נקודות תורפה שאפשרו לנו להשתלט על כל חשבון עם כתובת אימייל בלבד.

    כחלק משלב הסיור שלנו בו אנו מנסים למצוא וקטור התקפה רחב יותר על ידי ספירת תת-מערכות היעד העיקריות, מצאנו ממשק ניהול תחת תת-הדומיין ████████████████████. אפשר להיכנס לממשק הניהול באמצעות משתמש אפליקציה רגיל, אך כמעט עבור כל בקשות הרשת שבדקנו במהלך טעינת העמוד הראשי, השרת מחזיר שגיאה 401.

    [IMAGE_REDACTED]

    הנדסנו לאחור את קובץ החבילה main.js הכולל את קוד הקצה של האפליקציה ומצאנו את כל נקודות הקצה הפוטנציאליות שמנהל יכול לקיים איתן אינטראקציה.

    נוכל לנצל רק את נקודת הקצה של api/updateUser. נקודת הקצה אפשרה לנו לערוך כל אימייל של משתמש, ועל ידי כך הצלחנו לאפס את הסיסמה של הקורבן ולהשתלט על החשבון

    [IMAGE_REDACTED]

    הקלות

    מומלץ מאוד ליצור מנגנון אימות או VPN לניפוי באגים או לשירותי הניהול של המערכת כדי למנוע נוכחות של יישומים ציבוריים לא מאובטחים שיכולים להיות מנוצלים על ידי תוקף.

    בנוסף, קיים מנגנון הרשאה בממשק הניהול, אך זה מחוץ לתחום הפרויקט הזה.

     

    סקור את המטא-קבצים של שרת האינטרנט לאיתור דליפת מידע

    ID WSTG-INFO-03
    הסיכון גָבוֹהַ
    מיומנות נדרשת בינוני
    OWASP
    התייחסות
    - קישור
    מקום – ████████████████

    – █████████████████████████████

    – ████████████

    כלים כרום, צא לטירוף

    תיאור

    כחלק מהמחקר שלנו על היעד ותתי התחומים שלו מצאנו כמה מטא-קבצים שלא צריכים להיות ציבוריים, או לפחות לא בלי מנגנון האימות המתאים.

    • ████████████████████████.gitignore
    • ██████████████████████████████./yml-compose.
    • ████████████████████████/swagger-ui.html

    [IMAGE_REDACTED]

    [IMAGE_REDACTED]

    [IMAGE_REDACTED]

    מצאנו שלושה סוגים של קבצים שעלולים להזיק לשירותי ████████, .gitignore, swagger-ui ו docker-compose.yml קובץ. שלושת הקבצים הללו חושפים נתונים רגישים

    על ארכיטקטורת השירות. שחקן זדוני יכול להשתמש במידע זה כדי להגדיל את וקטור ההתקפה שלו על המטרה.

    הקלות

    במידת האפשר, הסר קבצים אלה מהשירות הציבורי או הטמע מנגנון הרשאה המעניק גישה רק למשתמשים מורשים.

     

    חסרה כותרת מדיניות אבטחת תוכן

    ID SAYFER-CONFIG-008
    הסיכון בינוני
    מיומנות נדרשת גָבוֹהַ
    OWASP
    התייחסות
    -
    מקום -
    כלים גיהוק, דפדפן אינטרנט

    תיאור

    מדיניות אבטחת תוכן (CSP) היא שכבה נוספת של אבטחה שעוזרת לזהות ולהפחית סוגים מסוימים של התקפות, כולל סקריפטים חוצי אתרים (XSS) והתקפות הזרקת נתונים.

    לא מצאנו כותרת CSP באף אחת מהתגובות של השרת.

    [IMAGE_REDACTED]

    באמצעות שימוש במנהלי אתרי CSP מוסיפים קו הגנה נוסף מפני XSS או התקפות קליקים, על ידי כך המערכת תהיה בטוחה גם אם יבוצעו שינויים לא מאובטחים עתידיים בקוד המקור.

    מדיניות CSP בסיסית צריכה לתאר לפחות את דומיינים ברשימת ההיתרים המוגדרים כברירת מחדל עבור קבצים סטטיים (כמו סקריפטים, תמונות ו-CSS). ו frame-ancestors כדי למנוע התקפות לחיצות.

    לפרטים נוספים:

    1. https://cspvalidator.org/
    2. https://csp-evaluator.withgoogle.com/

    הקלות

    הוספת ה- Content-Security-Policy: [policy] על כל תגובה שבה טעינת משאבים חיצוניים עלולה להיות מסוכנת

    אנו ממליצים מאוד להשתמש בו ולבדוק אותו תחילה עם הווריאציה "דיווח בלבד" כדי לבדוק את המדיניות שלך לפני שחרורו לייצור:

    Content-Security-Policy-Report-Only: [policy]

     

    בדיקת כותרות אבטחה

    ID SAYFER-CONFIG-009
    הסיכון בינוני
    מיומנות נדרשת גָבוֹהַ
    OWASP
    התייחסות
    -
    מקום – ████████████
    כלים גיהוק, דפדפן אינטרנט

    תיאור

    1. דפדפנים תומכים בכותרות HTTP רבות שיכולות לשפר את אבטחת היישומים כדי להגן מפני מגוון התקפות נפוצות, הכותרות מוחלפות בין לקוח אינטרנט (בדרך כלל דפדפן) לשרת כדי לציין את הפרטים הקשורים לאבטחה של תקשורת HTTP.

    כשמסתכלים על כותרות האבטחה ████████, חסרים הדברים הבאים:

    • X-Content-Type-Options

    הגדרת כותרת זו תמנע מהדפדפן לפרש קבצים כמשהו אחר ממה שהוצהר על ידי סוג התוכן בכותרות ה-HTTP.

    • קפדני-תחבורה-אבטחה

    HSTS הוא מנגנון מדיניות אבטחת אינטרנט שעוזר להגן על אתרים מפני התקפות שדרוג לאחור של פרוטוקולים וחטיפת קובצי Cookie. היא מאפשרת לשרתי אינטרנט להכריז שדפדפני אינטרנט צריכים לקיים איתו אינטראקציה רק ​​באמצעות חיבורי HTTPS מאובטחים, ולעולם לא באמצעות פרוטוקול HTTP לא מאובטח.

    • מפנה-מדיניות

    כותרת ה-Referer היא כותרת בקשה שמציינת את האתר שממנו הגיעה התנועה. אם אין מניעה מספקת במקום, כתובת האתר עצמה, ואפילו מידע רגיש הכלול בכתובת האתר, יודלפו לאתר חוצה מקורות.

    • בקרת גישה-אפשר-מקור

    לכותרת יש את הערך "*" אשר חושף את ה-API עבור כל אתר, ייתכן שזו לא התוצאה הרצויה.

    הקלות

    הוספת הכותרות שהוזכרו לעיל לכל שירותי הקצה האחורי.

     

    סקור את המטא-קבצים של שרת האינטרנט לאיתור דליפת מידע

    ID WSTG-INFO-03
    הסיכון נמוך
    מיומנות נדרשת בינוני
    OWASP
    התייחסות
    - קישור
    מקום -
    כלים DevTools

    תיאור

    תוך כדי מחקר היעד עם DevTool הצלחנו להציג את קוד המקור הקדמי ללא כל ערפול. פגיעות זו מתרחשת מכיוון שחבילות JS נשלחות עם מפות מקור לייצור, המאפשרות לקרוא את קוד המקור המקורי עם הערות שעלולות לחשוף מידע, למשל, קובץ paths.ts הבא:

    █████████████████████/paths.ts [IMAGE_REDACTED]

    באמצעות מפת המקור, תוקף יכול ללמוד על בסיס הקוד, לקרוא הערות ולמצוא חלקי קוד שהוצאו משימוש, אשר מאוחר יותר ניתן להשתמש בהם כדי למצוא נקודות תורפה.

    הקלות

    אל תשלח מפות מקור לייצור, לרוב מערכות רישום ומעקב שגיאות יש דעה להעלות את מפות המקור למערכת אחורית. גישה אחרת תהיה לשרת את מפות המקור רק למשתמשים מאומתים באמצעות VPN או מנגנונים אחרים.

     

    שרת טביעות אצבע

    ID WSTG-INFO-002
    הסיכון נמוך
    מיומנות נדרשת בינוני
    OWASP
    התייחסות
    - קישור
    מקום – ███████████████████████████
    כלים לְגַהֵק

    תיאור

    בעוד שמידע שרת חשוף כשלעצמו אינו בהכרח פגיעות, זהו מידע שיכול לסייע לתוקפים לנצל פגיעויות אחרות שעלולות להתקיים. רוב נקודות הקצה אינן חושפות מידע על השרת דרך כותרות HTTP או דפי שגיאה.
    באמצעות בקשת ה-HTTP הנוספת הבאה הצלחנו להטביע טביעת אצבע של שרת Nginx באמצעות תגובה של 400
    GET /v2 HTTPMALFORMED/1.1
    Host: ██████████████████
    Accept: */*

    גוף התגובה הוא:
    <html>
    <head><title>400 Bad Request</title></head>
    <body bgcolor="white">
    <center><h1>400 Bad Request</h1></center>
    <hr><center>nginx 1.14.0</center>
    </body>
    </html>

    הקלות

    ישנן דרכים שונות לטשטש כותרות של שרת אינטרנט, השיטות הנפוצות ביותר הן:

    1. שרתי פרוקסי הפוך העומדים בין האינטרנט הגלובלי לבין האינטרנט הפנימי
    2. הגדר כל שרת אינטרנט כדי להסיר את הכותרות הללו.

    נספח א': תיקוני הערכת אבטחה

    יעודכן על ידי צוות Sayfer לאחר העדכון הראשון.

    אתה יכול למצוא מידע נוסף על זה בבלוג שלנו

    הבלוג של סייפר מתמקד ב-web3, אבטחה וחקר פגיעות. אנו מאמינים שבתעשיית אבטחת הסייבר יש חשיבות מכרעת להתעדכן בטרנדים וההתקדמות האחרונים. נכון לעכשיו, צוות החוקרים המנוסים שלנו נהנה לחקור טכנולוגיות בלוקצ'יין ו-web3 מתקדמות.
    צרו קשר

    שמור על קשר

    טלפון
    מקום
    תל אביב
    כתובת אימייל
    שליחים:
    אתם מוזמנים ליצור איתנו קשר, נשמח להגיב!





      אתר זה מוגן על ידי reCAPTCHA ו- Google מדיניות הפרטיות ו תנאי שימוש באתר להגיש מועמדות.
      עבור לתוכן