אז איזה דפדפן יותר בטוח?

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

יעל גרוס על יחצ”נות ברשת

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

מאמר על הייבואן מישראבלוג

הפעם ב-NRG.

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

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

שחר

יש לי שני פלאפונים, אחד של סלקום ואחד של אורנג’

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

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

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

מה שמביא אותנו לענייננו. גוגל ואפל, שתיהן, מנסות לאכוף בלעדיות על וריאציה על סימן שמשמש אותן לביצוע עסקים. גוגל מנסה להלחם בכל מי שמשתמש בשם החברה בתור פועל גנרי לחיפוש ברשת (גיגלתי ב-yahoo), ואפל מנסה להלחם בכל מוצר שמכיל את המילה Pod. (מקורות – YNet ו-law.co.il). לעניות דעתי, יש הבדל מאוד משמעותי בין השניים.

בעוד גוגל המציאה מילה (אוקיי – עיוותה מילה שאף אחד, כמעט, לא הכיר), אפל מחפשת פה הגנה על מילה אנגלית סטנדרטית שמופיעה במילון. אז, נכון, גם גוגל היא מילה שמופיעה במילון, אבל Merriam Webster מאוד נזהרו שהצירוף “to google on MSN” לא יהיה תקף. ראו התייחסות בבלוג של יוצאי גוגל לגבי רקע איך החברה מתייחסת לזה.

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

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

שחר

עדכון:
מצאתי את הרישום אצל רשם הפטנטים בארצות הברית (סימן רשום מס’ 78459101). מסתבר שהוא מינואר 2004, אחרי מתי שחלק מהנתבעים בפרשה יצאו עם המוצר שלהם.

מעניין מה עומד לקרות.

ש.

איך מתנתקים מברק

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

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

היתה בעיה אחת קטנה בסידור הזה. אבא של מ’ העלה את קצב החיבור ל-2 מגה (מ-1.5), גם אצל בזק וגם אצל ברק. כתוצאה מהחילוף נוצר מצב שבו במשרד יש ADSL של 2 אבל אינטרנט של 1.5 (ואקטקום חונקים את הקו לכמה שאתה משלם), בעוד בבית יש חשבון של 2 אבל קו של 1.5.

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

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

מה שמביא אותנו לשיחה עצמה.

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

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

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

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

זה לא עבר.

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

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

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

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

זה עזר.

היא ענתה שלא, ושמישהו עם הסמכות יתקשר “אלי” חזרה תוך כמה דקות.

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

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

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

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

שחר

טיפול בתלונות של אינטרנט ברק

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

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

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

הסבר ממש מהיר. שרתי ה-DNS הם הדבק האמיתי של האינטרנט. למעשה, בלעדיהם, כמעט וכל תעבורת האינטרנט היתה הופכת לבלתי אפשרית. השיטה שהם עובדים היא ע”י הקצאת “איזורי אחריות” (Authority zones). למשל, הכתובת “www.lingnu.com” נמצאת בתוך איזור אחריות של lingnu.com, וזה מטופל ע”י שני שרתים: ns.fiasco.org.il ו-sleeper.securiteam.com.

כל שרת חייב לדעת לתת תשובות על כל הערכים שנמצאים בתוך איזור האחריות שלו. אם יש ערך שלא נמצא בתוך איזור האחריות שלו, אבל איזור האחריות של הערך נמצא בתוך איזור האחריות של השרת, השרת צריך לדעת להפנות לשרת שיודע לתת תשובה יותר ספציפית לגבי הערך. כך, למשל, שרת בשם “ildns.huji.ac.il” אחראי על איזור האחריות של ישראל (il). תת המתחם “org.il” נמצא באותו אזור אחריות. אם נשאל אותו “מיהו www.hamakor.org.il”, הוא ישיב לנו שהמתחם הזה לא נמצא באיזור האחריות שלו, ויפנה אותנו אל dns.iglu.org.il או אל ns.fiasco.org.il (כן, אותו אחד מלמעלה) כדי לקבל תשובה יותר מוסמכת. אם נפנה אל ns.fiasco.org.il עם אותה השאלה, נקבל כבר תשובה סופית.

מכאן אפשר להבין איך עובדת מערכת החיפוש של שמות מתחם. אם אנחנו רוצים לדעת מה הכתובת של www.hamakor.org.il, אנו נפנה אל שרתי השורש (שלושהעשר שרתים שמשרתים את המתחם שמעל כולם). למשל אל G.ROOT-SERVERS.NET. הוא ידע להגיד לנו שיש איזור מתחם קטן יותר (il), ולספר לנו על שישה שרתים שיודעים לטפל באיזור הזה. וכך אנחנו יורדים בעץ עד שאנחנו מגיעים לשרת מתחם שיודע לתת לנו את התשובה שאנחנו מחפשים.

הבנתם?

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

ולמה כל ההסבר הזה?

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

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

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

לכבוד שחר שלום רב!תודה שפנית אלינו.
נשמח לתת את מלוא השירות ולטפל בבעיה. אנא צור איתנו קשר בטלפון של התמיכה הטכנית 039001222
אנו זמינים 24 שעות ביממה 7 ימים בשבוע.

בתודה מראש
צוות התמיכה 013

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

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

From: Shachar
Sent: Tuesday, June 27, 2006 7:28 PM
To: Support
Subject: Re: Misconfigured DNS serverSupport wrote:
>
>
>
>
> לכבוד שחר שלום רב!
>
> תודה שפנית אלינו.
> נשמח לתת את מלוא השירות ולטפל בבעיה. אנא צור איתנו קשר בטלפון של התמיכה הטכנית 039001222
> אנו זמינים 24 שעות ביממה 7 ימים בשבוע.

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

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

שיהיה לכם יום מצויין

שחר

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

לכבוד שלום רב!תודה שפנית אלינו.
נשמח לתת את מלוא השירות ולטפל בבעיה. אנא צור איתנו קשר בטלפון של התמיכה הטכנית 039001222
אנו זמינים 24 שעות ביממה 7 ימים בשבוע.

בתודה מראש
צוות התמיכה 013

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

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

שחר

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

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

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

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

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

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

שחר

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

כן.

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

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

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

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

שחר

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

Bear