מה עושים שכתובת מפציצה אותך בbruteforce?
-
שמתי לב בשרת שלי שיש load גבוה קצת מהמוצע, ראיתי שזה מגיע מכיון הapache (שרץ תחת דוקר), בדקתי בnginx, וזה מה שאני רואה:
בתמונה, כתובת 109.226.59.2 מנסה "לנחש" טוקנים של קבצים בnexcloud, לא שיש שם משהוא סודי - מה שלא צריך להיות משותף לא משותף, בכל אופן, כרגע אני מחזיר 403, כי חסמתי את הכתובת לserver הזה, זה גם הסיבה שהוא מצליח לעשות את זה 40+ פעמים בשניה.
עכשיו אין לי בעיה שהיא מפציצה את הnginx, אבל כשזה צריך כל פעם להפעיל את הphp&mysql וכל מה שמאחורי nexcloud זה כן מפריע לי. אבל אני לא יודע מה לעשות, כי מהלוגים חוץ מהbruteforce שהכתובת עושה אני רואה פעילוית נורמליות ממנה - ואני מסיק מזה שזה כתובת של נטפרי משותפת, אבל הרוב זה התקפות, אני יכול להוריד את הכתובת ברמת פיירוול שהיא בכלל לא תגיע לשרת, אבל אני לא רוצה.אני גם לא יודע עם משהוא בסגנון fail2ban יעזור - כי זה גם יחסום לגמרי את הכתובת...
-
@שמואל4 זה הרי ברור שהוא מנחש, אז תחסום כל מי שמנחש, אחרי 3 ניחושים, לפחות ל10 דקות, וככה תתפטר ממנו.
דבר נוסף, תבדוק רפרר, כך שרק מתוך הפורום יהיה אפשר לגשת לקבצים ולא בגישה ישירה.
ואם תחסום על פי שני הדברים ביחד, דהיינו שאתה רואה שהוא מנחש וגם הרפרר הוא לא הפורום שלך, אז בטוח חסמת רק את התוקף ולא משתמש תמים של נטפרי. -
@רחמים אמר במה עושים שכתובת מפציצה אותך בbruteforce?:
דבר נוסף, תבדוק רפרר, כך שרק מתוך הפורום יהיה אפשר לגשת לקבצים ולא בגישה ישירה.
רעיון, אבל אני לא רוצה להגביל את זה. וחוץ מזה, איך אפשר לזייף את זה בבקשה?
@רחמים אמר במה עושים שכתובת מפציצה אותך בbruteforce?:
ואם תחסום על פי שני הדברים ביחד, דהיינו שאתה רואה שהוא מנחש וגם הרפרר הוא לא הפורום שלך, אז בטוח חסמת רק את התוקף ולא משתמש תמים של נטפרי.
ובזמן החסימה גם משתמש תמים של נטפרי שמקבל אותה כתובת יהיה חסום.
-
@שמואל4
א. אם מישהו תוקף אותך מ-IP משותף זה בעיה שלו שהאחרים נזקים. כך לענ"ד.
ב. על דרך הרעיון של @רחמים תבדוק את הנושא של rate limiting ב-nginx. כלומר זה לא חייב להיות חסימה טוטאלית ל-10 דקות אלא משהו יותר קל מזה.
https://www.nginx.com/blog/rate-limiting-nginx -
@dovid הnginx מקבל את הבקשה ומעביר אותה ברסיבר פרוקסי לapache. שם זה מערכת שלnexcloud - זה פלטפורמה קוד פתוח, כשיש פניות אילה בצורה כמו זה בהחלט מעמיס.
הפעולה שזה עושה בכל פניה זה לבדוק אם יש פעולות cron לביצוע, ואז לכאורה השאר זה מול mysql לבדוק אם יש כזה טוקן - ואז כשלא זה זורק אותו ב301 לדף התחברות. זה לפי ההבנה הפשוטה, העומס שזה יוצר זה קצת יותר מידי ממה שזה נראה לי אמור להיות, זה מביא את הload ל20-40+ שזה המוון. גם לפי בדיקות שלי העומס לא נופל על mysql אלא על apache, יכול להיות באמת שזה כן עניין של הגדרה מסויימת לא תקינה - כי זה לא אמור להעלות את הload לכאלה רמות בקשות כאלה. -
@yossiz אמר במה עושים שכתובת מפציצה אותך בbruteforce?:
תבדוק את הנושא של rate limiting ב-nginx.
מגניב, מקריאה זריזה זה נראה לי רעיון הכי טוב. גם אני יכול להגביל את זה לserver הספציפי של הapache, כי גם אם הוא יפציץ למשל את node לא נראה לי שאי פעם זה יצליח להגיע לכאלה רמות.
-
@שמואל4 מה שבעיקר מטריד (אותי לפחות) זה שמשתמש (שלכאורה בנטפרי - הכתובת שייכת לטריפל C) מנסה לתקוף אותך.
אישית כנראה שהייתי חוסם את הכתובת,אבל לפני זה, אתה יכול לפנות לטריפל C עם תלונה + הלוג שהבאת כאן.
עקרונית מה שהוא עושה אסור בצורה חוקית (ואם התוקף קורא - [וכנראה שהוא קורא את הת'רד הזה], אז כדאי שידע שמתייחסים היום די בחומרה לדברים כאלו. לפחות שיתחבא מאחורי VPN או רשת תור )לדעתי טריפל C יתייחסו די בחומרה לזה. ואם לא ייתכן שהייתי שואל רב ומגיש תלונה.
זה מעשה לא ראוי בכלל. ולא משנה מה הסיבה שהוא רוצה את החומר.ייתכן גם כמובן שמדובר על מישהו תמים שיש לו סוס טרויני שמנסה את השרת שלך.... אבל זה כבר עניין אחר.
לגבי הCRON, למה בכלל הכתובת הזו צריכה להיות חשופה כלפי חוץ? (אם אני מבין נכון אז בעצם זה משהו שהדף בודק, ואז באמת אתה לא יכול למנוע את זה....)
סליחה על האריכות
-
@clickone אמר במה עושים שכתובת מפציצה אותך בbruteforce?:
[וכנראה שהוא קורא את הת'רד הזה]
דווקא עדיין לא.
חסמתי את הכתובת לפני כמה שעות בפורטיגייט, אמרתי אולי הוא התייאש, זה מלא timeOutים... אבל ברגע שפתחתי זה חזר בכל הכוח.
כרגע - הכתובת חסומה. אם אני יזכור אני ינסה לשחרר את זה מתי שהוא, בכל אופן, גם אם זה לא מפריע לשרת כאשר זה לא מגיע בכלל לPHP, עדיין לא מתאים לי הדבר הזה.@clickone אמר במה עושים שכתובת מפציצה אותך בbruteforce?:
לגבי הCRON, למה בכלל הכתובת הזו צריכה להיות חשופה כלפי חוץ?
זה משהוא שמתבצע בצד שרת . בגלל שזה php... אז כל בקשה של לקוח זה בודק כל מיני דברים, אם יש עידכון, אם יש מיילים מתוזמנים ממתינים לשליחה, וכל מיני. זה נראה לי עניין של הגדרה וכזכור לי עשיתי פעם שזה יבדוק בכל פניה אם יש crons ממתינים, אבדוק.