עוד חור בישראבלוג?

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

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

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

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

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

הסטטוס שלכם: לא ידוע

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

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

I know, but instead of chasing cookie stealers, I made it impossible to use other people’s cookies.

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

עדכון: כנראה שה-Session עכשיו קשור ל-IP. אני חושש שזה פותר את הבעיה רק באופן חלקי. יש אנשים שגולשים דרך Proxy, מה שגורם להם לשתף IP עם לא מעט משתמשים אחרים. מצד שני, יש אנשים שה-IP שלהם משתנה תוך כדי עבודה, מה שימנע מהם להשתמש בישראבלוג בכלל עכשיו. קשירה של IP ל-Session נחשבת לא בריאה בתכנות HTML.

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

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

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

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

בברכת יום נפלא,

שחר

מאת

שחר שמש

מייסד–שותף וחבר ועד בתנועה לזכויות דיגיטליות מייסד שותף בעמותת „המקור”. פעיל קוד פתוח. מפתח שפת התכנות Practical

10 תגובות בנושא “עוד חור בישראבלוג?”

  1. יודע מה?

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

    זה צריך להיות במודעות וב TODO LIST של יריב, אבל דרגת הדחיפות לא גבוהה נכון לעכשיו.
  2. צודק לחלוטין, באמת, נראה כי יריב לא מקדיש מספיק תשומת לב לעניין האבטחה.
    אבל, הוא בחברה טובה. לצערי, בהרבה חברות וארגונים בארץ עדיין לא הפנימו את עניין האבטחה, את חשיבותו ולא למדו על נקודות בעייתיות ואיך לפתור אותן.
     
    החל מאתרים של אישי ציבור, גופים לאומיים, אתרים פרטיים, אתרים של גופים קטנים יותר ומערכות של חברות.
    בכל מקום אפשר למצוא מתכנתים ואנשים שעוד לא הפנימו את חשיבות האבטחה, וחבל.
    בסופו של דבר לומדים את זה בצורה הקשה, כפי שיריב חבוט כבר למד מספר פעמים.
     
    שחר.

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

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

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

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

      בנתיים, כמו שאתה רואה, זה לא כל כך מצליח.

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

      שחר

      1. כנראה שצריך לעבור במעט פחות מהירות על הבלוג שלי
        בשביל להבין שאין בו מילה אחת שלא תוכננה ולא תואמה לתוכו
         
        וזה לא שהגישה שלי היא לא רצינית
        יש לי פשוט גישה אם אג’נדה
        אני לעולם לא מדבר ישירות
        ולכן לפעמים אני נשמע לא רציני
         
         
        ואם זה עד כדי כך מפריע לך
        אני מאמין שאדם בעל כישורים כשלך יכול ללא סיבוך מיותר להעלות בלוג מוכן לשרט פרטי או אפילו לבנות אחד כזה מאפס
         
        ישרא-בלוג לא נועד לאנשים כמוך
        הוא נועד לילדות בנות 12 שאוהבות לפרסם תמונות של כפתורים אם ברביות

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

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

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

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

          שחר

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

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

    1. לא מוותר, ויש אינדיקציה שזה אפילו מביא שינוי.

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

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

      שחר

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *

Bear