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

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

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

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

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

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

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

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

שחר

ערך ראשון שלי באיןציקלופדיה – קוד פתוח

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

אז כתבתי אחד.

שחר

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

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

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

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

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

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

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

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

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

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. לפני כשנה וחצי הצעתי את זה ליריב, והתשובה שלו היתה שזה מעבר להיקף היכולות של הטכנולוגיה שבה הוא משתמש. עד עכשיו נמנעתי מלהציע את זה, אבל אני מוכן לכתוב לו, בתשלום, מערכת כזו.

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

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

שחר

יבול הספאם היומי, ומלחמתי בו

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

החדשות הטובות הן שלא נשבר השיא של לפני חצי שנה. אני מקבל, עדיין, בין 1500 ל-2000 הודעות ספאם ביממה, עם שיאים מקומיים ב-3000.

החדשות הרעות הן שזה עדיין הרבה הרבה הרבה יותר מידי.

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

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

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

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

למה אני מקבל כל כך הרבה ספאם?

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

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

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

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

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

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

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

שחר

היכונו לתחיית המתים

באמת אין לי הסבר אחר לתופעה.

כותרת המשנה של הקטע היא “שוחררה גרסה 1.0.0.20 של PgOleDb“.

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

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

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

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

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

שחר

דו"ח התקדמות בדרך ללהיות מפתח דביאן

שיחה ביני לבין ה-Account Manager שלי:

‎[11:33:53 PM]  do you prefer the answers as they currently are, or would you like me to sleep the night and goover them again before I send them out? 
[11:34:59 PM]  as its currently very late here too its okay to send them tomorrow
[11:35:19 PM]  Is this the last stage?
[11:35:29 PM]  (T&S II)?
[11:35:37 PM]  yes
[11:35:46 PM]  don't get this the wrong way, but
[11:35:50 PM]  YAAAAAAAYYYY!!!!
[11:35:52 PM]  I have to write a few reports this week 
[11:35:55 PM]  
[11:36:03 PM]  and yours will be hopefully within them 
[11:36:32 PM]  I'll send this now, and if I find some horrendous error tomorrow morning I'll send a correction
[11:36:45 PM]  okay 
[11:36:57 PM]  sleep weel
[11:36:59 PM]  eh well
[11:37:06 PM]  I'll do both 
[11:37:23 PM]  
[11:37:34 PM]  sent
[11:37:59 PM]  great
[11:38:13 PM]  good night
[11:38:26 PM]  thx

מכאן והלאה, הכל בירוקרטיה (בתקווה).

שחר

נמאס לשמוע ישראלים מכחישים את השואה!

לכל מי ששכח, הנה התקציר.

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

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

נזכרנו?

מה? כבר ידעתם את זה? אז בואו אני אנסה לדבר על מכחישי השואה.

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

גם את זה ידעתם?

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

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

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

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

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

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

וזו הכחשת שואה מהסוג הגרוע ביותר שקיים.

שחר

נ.ב.
כל מי, אולי מבין הקורא הערבי המזדמן שיש לבלוג הזה, שלא מבין את ההבדל, מתבקש לנקודה הבאה. מניין 6 מליון היהודים ו-11 מליון קורבנות הנאצים בכלל לא כולל את האנשים שנפלו בזמן מלחמת העולם השניה בשדה הקרב. חוץ מההשמדה המכוונת נהרגו גם כ-54 מליון איש כתוצאה מהלחימה עצמה, כולל כ-34 מליון אזרחים (מקור – וויקיפידיה. ההבדל הוא שאלו היו אזרחים שהיו בקו האש, ולא היו המטרה בעצמם, בעוד שהשמדת היהודים היתה השמדה מכוונת וממוקדת כנגד אזרחים.
ש.

קצת הערות על הפריצה לישראבלוג

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

נתחיל מהשורה התחתונה: יהיו עוד חורים כאלו!

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

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

אז מה בעצם קרה בפריצה של אתמול? הפורץ החדיר קוד אל תוך הבלוג של מי שנפרץ עם javascript שדואג לכך שהדפדפן ישלח את ה-cookies שיש לו לאתר של הפורץ. ה-cookies הנ”ל מאפשרים לפורץ להתחזות לדפדפן של הקורא בבלוג. אם הקורא בבלוג מחובר באותו הרגע גם במצב עריכה לבלוג שלו עצמו, הרי שלפורץ יש את כל המידע שהוא צריך כדי להתחבר בתור הקורא, ולשלוח את הפוסט הזה לעוד בלוג. הפורץ הפעם לא רצה להיות מתוחכם במיוחד, אבל הפורץ הבא בהחלט היה יכול לבצע את התהליך הזה באופן אוטומטי, מה שהיה מדביק, להערכתי, כ-80% מהבלוגים בישראבלוג.

איך אפשר להתגונן?

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

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

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

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

התשובה החד משמעית שלי היא “כן”. יש פה רשלנות של יריב.

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

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

אתמול התגלה לנו שהתוקף מצא וקטור שלישי.

הסיכויים שקיים גם רביעי וחמישי הם כמעט וודאיים.

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

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

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

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

האם זה אומר שזו לא אשמתו של הפורץ?

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

האם יש משהו לעשות נגד השנות מקרים כאלו?

כן.

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

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

ל-cookies יש אפשרות שהם יהיו תקפים רק באזור מסויים בתוך האתר. אם יריב יגדיר את ה-cookies של ה-session כך שהם יהיו מוגדרים רק באיזור של העריכה, ולא באיזור של קריאת הבלוגים, קוד javascript שרץ באזור הקריאה לא יוכל לגנוב אותם. זה שינוי שלא משנה את חווית השימוש באתר, והוא יכול להכניס אותו יחסית בקלות.

בואו נקווה שהוא גם יעשה את זה.

שחר

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

במקום שבעלי תשובה עומדים

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

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

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

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

בשני המקרים מדובר על שינוי תדמית שמגיע רק אחרי שהבעלים התעשרו. על פניו, הם נוקטים בשיטה הבאה:
1. עשה פעולות שהולכות מאחורי הגב של הלקוחות שלך, אולי אפילו כנגד החוק
2. תרוויח הרבה כסף
3. נקה את האורוות, הפוך לישר דרך שרוצה רק בטובת המשתמשים
4. הבע פליאה על כך שכל העולם לא מייד נשכב כעפר לרגליך ואומר “וואו! איך הם השתנו”

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

שחר

אסור לקרוא slashdot באחד באפריל

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

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

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

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

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

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

שחר

Bear