תשישות משאבים פוטנציאלית: היעדר הגבלת קצב ב-/uploads.json מאפשר העלאת קבצים המונית

תיאור הבעיה

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

פרטים

  • API להעלאה: /uploads.json

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

  • שחזור:

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

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

השפעה על אבטחה/משאבים

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

  • זה יכול להיות מנוצל פוטנציאלית למניעת שירות (denial-of-service) או להגדלת עלויות האחסון באופן בלתי צפוי.

שאלות

  • האם יש הגבלת קצב מובנית או מניעת שימוש לרעה בנקודת הקצה /uploads.json ב-Discourse?

  • האם יש הגדרות מומלצות או תוספים להגבלת תדירות העלאת קבצים למשתמש או לשימוש כולל באחסון למשתמש?

  • האם יש שיטות עבודה מומלצות למניעת מיצוי משאבים הנגרם מהעלאת קבצים בפריסות Discourse?

תודה על תשומת הלב והעצה!