מכירים את xmlrpc? הוא יכול להכניס אתכם לצרה גדולה

חור אבטחה שהיה באתר הזה ורלוונטי ללא מעט אתרים אחרים.

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

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

היום זה תורו של דניאל ביטון, מקצוען וג׳נטלמן ששלח לי מייל: ״הי רן! ה-xmlrpc שלך פתוח!״. זה כל מה שהייתי צריך. איזה בושות. הייתי בטוח שסגרתי את זה אבל אולי היתה איזו בעיה ב htaccess או איזה rule אחר והוא היה פתוח. מדובר בחולשת אבטחה מוכרת המאפשרת להפיל אתר וורדפרס יחסית בקלות ולצערי איכשהו וורדפרס משאירים את זה פתוח כברירת מחדל.

אז מה זה אומר? מדובר בדרך לשלוח מידע לוורדפרס (פוסטים למשל) שלא דרך הממשק. זה שימושי אבל רוב האתרים, גם אני, לא משתמשים בזה. איך אפשר לנצל את זה לתקיפה? אפשר לשלוח בקשות מרובות ל-API הזה או לבצע בדיקה מה ה-IP האמיתי של השרת מאחורי קלאודפלייר, אפשר גם לנסות מתקפות brute force ובאמת מדובר במקום שיותר טוב שהוא לא יהיה פתוח.

יש לכם וורדפרס? פיתחו דפדפן והכניסו xmlprc.php מייד אחרי הכתובת של האתר. רואים את התגובה ״XML-RPC server accepts POST requests only״? החולשה הזו קיימת אצלכם וכדאי לחסום.

צילום מסך של URL של xmlrpc.php עם התגובה XML-RPC server accepts POST requests only

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

 <files xmlrpc.php>
 <IfModule mod_authz_core.c>
 Require all denied
 </IfModule>
 <IfModule !mod_authz_core.c>
 Order deny,allow
 Deny from all
 </IfModule>
 </files>

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

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

פוסטים נוספים שכדאי לקרוא

רספברי פיי

התקנת OpenCanary על רספברי פיי

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

צילום מסך של סוואגר
יסודות בתכנות

openAPI

שימוש בתשתית הפופולרית למיפוי ותיעוד של API וגם הסבר בסיסי על מה זה API

ספריות ומודולים

מציאת PII באמצעות למידת מכונה

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

פתרונות ומאמרים על פיתוח אינטרנט

יישום של nonce על מנת להגן מפני התקפות injection

בפוסט הקודם הסברתי על hash עם CSP על משאבי inline – שזה נחמד ומעולה אבל פחות ישים בעולם האמיתי שבו בדרך כלל התוכן ה-inline (בין

גלילה לראש העמוד