עוד פרצה באתר אינטרנט, הפעם בגוגל (ו-gmail). מדווח ynet. אני לא מדבר על הפירצה. לא חקרתי אותה. אני כן מדבר על התגובות, ובפרט, על התגובה.
עופר אלזם אומר “הגולשים חייבים להזהר”. “קשה לבטוח באתרים ובתוכן שהם מציגים לנו”. האמת, מה זה צודק. אני מציע לטפל בתאונות הדרכים אותו הדבר. “הנהגים צריכים להזהר”. אפשר לפתור את בעיות הפיגועים אותו הדבר – “הנוסעים באוטובוס צריכים להזהר”. אפילו את סכנת הצונמי אפשר לפתור כך. “הרוחצים בים צריכים לשמור את עינהם פתוחות”. בקיצור – בולשיט.
הגולשים לא יכולים להזהר מהתקפות כאילו, מהסיבה המאוד פשוטה שהגולשים לא יודעים ממה להזהר. זה לא כאילו שאפשר להבחין בין הפניה תמימה להפניה עוינת. מצד שני (ואם אבירם קורא את זה, ועל פי ynet הוא כן התעמק בבעיה הספציפית הזו, הוא מוזמן לתקן אותי אם אני טועה) מרגע שלחצתם על הקישור העויין, כבר גנבו לכם את הזהות. בקיצור, הגולשים לא יכולים להזהר. אין להם איך.
מצד שני, גוגל כן היו יכולים להזהר. ל-cookies שנשמרות בדפדפן שלכם יש טווח חוקי. עבור גלישה לדף שמחוץ לטווח הנ”ל, הדפדפן שלכם לא ימסור את ה-cookie. מכאן שגוגל התרשלו פעמיים. פעם אחת בגלל שהיה להם Cross Site Scripting (ולאבירם – נהוג לכנות אותם XSS, במיוחד כדי למנוע את הבילבול של מגיב מספר 4), ופעם שניה, החמורה יותר, שאתר froogle יכל היה לגשת ל-cookies ששייכים ל-gmail.
גם לגבי החלק השני, זה נובע מחוסר זהירות כפול. ראשית, בגלל שהם מפנים את gmail.com ל-gmail.google.com, ושנית בגלל שהם לא מגבילים את ה-cookies של gmail רק לאתר ההוא.
ניחא אם היה מדובר ברשלנות. כאן, כנראה, מדובר בזדון. אילו הן השערות בלבד, אבל אני מנחש שהסיבה שגוגל לא נזהרו היא מכיוון שהם רצו שתהיה גישה לזהות שלכם ב-gmail מתוך google. הם רצו, כשאתם מקלידים חיפוש, לדעת מיהו משתמש ה-gmail שהקליד את החיפוש הנ”ל. וזאת כדי שהם יוכלו להתאים לכם פרסומות. לזכותם יאמר שהם אמרו במפורש שזה מה שהם יעשו. רוב האנשים שאני מכיר רק הניחו שהם ייקחו את הזיהוי שלכם מתוך המייל שאתם מקבלים, לא מתוך החיפושים שאתם עושים בגוגל.
במצב כזה, אבל, גוגל לוקחים אחריות מפורשת על בטיחות הגלישה שלכם. כל בעיית אבטחה שקוראת כתוצאה מכך היא אחריותם הישירה. לגולשים אין מה, או איך, להזהר.
שחר
חודש: ינואר 2005
על חשיבות כללים בדמוקרטיה
בג”ץ פסק שתבוטל הרשאתו של סמל יוסי פלינט, החייל שקרא לסרב פקודה בעת פינוי מאחז. צריך לשים פה לב לכמה נקודות חשובות.
דבר ראשון, בג”ץ לא הוציא אותו זכאי. הוא לא חיזק את ידיו, ולא טען שמעשיהו היה תקין. בג”ץ בסך הכל טען שההליך שבו העמידו אותו לדין היה לא תקין. אין שם (על אף תגובותיהם של כמעט כל מגיבי ynet, מימין ומשמאל כאחד), שום אימרה על המעשה עצמו.
לכל מי שחושב שהמעשה היה כל כך חמור, שנכון היה מצד בג”ץ להשאיר את פסק הדין על כנו, גם אם לא ניתנה לנאשם אפשרות נאותה להתגונן, אני מציע את המשפט הבא (שאינו שלי):
תחילה הם רדפו את הקומוניסטים, ולא מחיתי, כי אני לא הייתי קומוניסט.
אחר כך הם רדפו את הסוציאליסטים, ולא מחיתי, כי אני לא הייתי סוציאליסט.
אחר כך הם רדפו את הפועלים המאוגדים, ולא מחיתי, כי לא הייתי מאוגד.
אחר כך הם רדפו את היהודים, ולא מחיתי, כי לא הייתי יהודי.
אחר כך הם רדפו אותי, ולא נותר אף אחד למחות למעני.
– מרתין נימולר
הדמוקרטיה היא אמצעי, לא מטרה. המטרה האמיתית הינה חיים שווים (במידת האפשר) וחופשיים (במידת האפשר) לכל תושבי המדינה. נובעת מכך אמת פשוטה – אסור אם אנחנו מגינים על הדמוקרטיה בכל מחיר, הרי שנשארנו ללא הדברים שעליהם דמוקרטיה אמורה להגן, וממילא ללא דמוקרטיה.
אחד מהרעיונות שמרכזיים להגנה זו הינה הגנה על האזרח מפני המדינה. הרשויות מופרדות, כדי שלא ניתן יהיה לזרוק אתכם לכלא על סמך רצון אקראי של שליט כזה או אחר.
אלא שבמקרה הזה ,על פי בג”ץ, הרשויות לא היו מופרדות מספיק. אזרח (חייל, לא משנה לצורך המקרה הזה), לעניות דעתי שובר חוק ושראוי שימצא את עצמו בכלא, נשפט בהליך שמטרתו היתה רק לסיים את ההליך כשהבן אדם בכלא. זירוז כזה של הליכי המשפט הינו משהו שמאיים על הבטחון האישי של כל אחד מאיתנו, הרבה יותר מאשר אקט המרדנות שסמל יוסי פלינט. בגלל זה פסיקת בג”ץ היא, לדעתי, מוצדקת.
אילו הם שיקולים דומים שעומדים לנגד עיני כשאני מתנגד לחיזוק משמעותי של חוקי זכויות היוצרים, של העמקת כמות הנתונים האישיים שמוסדות, ומוסדות ממשלתיים בפרט, אוגרים עלי, ושל השארת חתימת חלקים מגופי כשאני עובר בשדות תעופה. אילו בוודאי אותם שיקולים שעומדים לנגד עיני כשאני מתנגד לחוקים בארצות הברית שנותנים לרשויות החקירה שם היתרים מופלגים לחדור לפרטיות אנשים ללא צוי בית משפט, ואף מטילים איסור על פרסום איך השתמשו בהיתרים הנ”ל.
דמוקרטיה באה להגן עלינו. בואו נדאג שהיא עושה את זה.
שחר
נ.ב.
עוד זוית אחת, ברשותכם. כאשר אדם עומד למשפט, ניתנת לו הזדמנות נאותה להציג את טיעוניו, להביא עדים, ראיות, וטענות, ועדיין הוא נמצא אשם, יכולתו לטעון שנעשה לו עוול ושמעשיהו הינו בעצם מוצדק יורדת פלאים. על ידי כך שהתביעה הצבאית זירזה הליכים, היא בעצם נתנה לגיטימציה לטענתו של סמל פלינט שמעשיהו בעצם צודק. לראיה, ראו את החצי ה”ימני” של התגובות ב-ynet.
שחר
דו"ח spywares מהמחשב שלי – אפס
לא רבים יודעים את זה, אבל אחד המחשבים שלי (הנייד) מותקן עם שתי מערכות הפעלה, גם לינוקס וגם חלונות. אני משתמש במחשב הזה כשאני צריך מערכת חלונות מסיבה כלשהי. למשל, כל PgOleDb פותח על המחשב הנייד שלי.
כמובן שזה שהוא מריץ חלונות עוד לא אומר שאני מתפרע עליו. מותקן עליו מוזילה, בו אני משתמש כשאני צריך לגלוש ממנו לאינטרנט. מדרך הטבע, זו לא מערכת הפעלה שמשתמשים בה הרבה. עדיין, אני משתמש במחשב חלונות ללא אנטי וירוס, וללא סינוני רוגלות. סיקרן אותי לדעת מה מצבו.
והנה, מיקרוסופט הוציאה גרסת בטא ראשונה של סורק הרוגלות שלהם. הביקורות משבחות מפה עד הודעה חדשה. החלטתי להוריד ולבדוק (זמין פה, למי שמעוניין).
סרק את המחשב במשך קצת מעל חמש דקות, ובסיומם הגיע למסקנה שאין שום דבר. נאדה. לא קבצים, לא registry, לא תהליכים פעילים. כלום. מחשב שמעל שנה וחצי פועל עם מערכת חלונות לחלוטין לא “מוגנת”, שלא נסרק פעם אחת במהלך אותה שנה וחצי, לא מכיל אף פיסת רוגלה.
יש שתי אפשרויות. האחת היא שהמצב אצלי כל כך גרוע שהתוכנה פשוט לא מצליחה למצוא כלום. האפשרות השניה היא שאפשר לעבוד על חלונות גם בלי אמצעי ההגנה האילו, אם זוכרים להזהר.
אז, נכון, השימוש שלי במערכת הזו הוא דיי סגפני. אין שם תוכנות P2P, אין שם משחקים מפוצצים. מצד שני, כן יש שם סביבת פיתוח מלאה (שתיים, למעשה. Visual Studio 6 ו-MinGW), מסד נתונים (Postgresql 8 לחלונות), כלי בקרת תצורה (WinCVS) וכו. יש שם אפילו טיפה משחקים קטנים, וסתם דברים אחרים (skype מהתקופה שלא היתה גרסה ללינוקס, וכו’).
לעניות דעתי, השימוש ב-mozilla כדי לגלוש עשה את רוב העבודה בלשמור את המחשב נקי. יש גם עדויות של אחרים לעובדה הזו. רק נקודה למחשבה.
שחר
נ.ב.
למקרה שאתם שואלים – הסיבה שאני לא מתקין את ההגנות האילו הינה שהן, בהרבה פעמים, יותר גרועות מהמקור. בנוסף על כך, חשוב לי שכל הכלים שמותקנים על המחשב שלי יהיו חוקיים, ולא “בא” לי להוציא כסף על תוכנה שרק מאיטה לי את המחשב, ולא מצדיקה את קיומה.
ש.
שיחת המכירות הקצרה ביותר
אתמול דיברתי עם איש מכירות לגבי שירות שאני מעוניין בו. זו היתה השיחת עם איש מכירות הקצרה ביותר איי פעם, מכל השיחות אותן אני יזמתי. עוד פעם, מדובר בשירות שאני מעוניין בו, בעיקרון.
הכל הלך בסדר עד לרגע שבו הוא הסביר שאני צריך דפדפן “מגרסה 6 ומעלה”. ציינתי בפניו שכל התשתיות שלי הן לינוקס. תשובתו: “אני יודע, גם אני עובד על פירפוקס, אבל פה חייבים אינטרנט אקספלורר”. הוא אף הגדיל לעשות והתחיל להסביר לי ש”אתה יודע איך זה בשוק הישראלי”, לגבי ניתחי שוק.
בשלב הזה פשוט הפסקתי אותו, ואמרתי לו שאם הם לא מעוניינים בכסף שלי, זה ענינם. היו עוד כמה משפטים בנושא הזה, אבל הוא פשוט לא הבין את כוונתי. הוא הספיק עוד לזרוק את משפט המפתח “אתה לא חייב להתקין אינטרנט אקספלורר, אתה יכול להשתמש בדפדפנים של הלקוחות שלך”.
אחוזי השימוש בדפדפנים שאינם של אינטרנט אקספלורר אינם מרקיעי שחקים, זה נכון. יש חברות שבוחרות, לכן, שהאתר שלהם לא יעבוד על דפדפנים כללים, אלא רק על אקספלורר. זהו שיקול כלכלי שספק עושה, וכל עוד הוא לא מול קהל שבוי, זהו ענינו בלבד. זה לחלוטין לגיטימי בעיני, ולא נגד זה אני יוצא כאן.
מה שאני כן יוצא נגדו זו הגישה שאומרת “אבל זה המצב, תתמודד”. ספק השירות לא יכול לצפות ממני שאני אגלה הבנה לצרכים שלו. הספק עשה בחירה, מתוך בורות או מניעים עסקיים, שלא להיות מסוגל לעשות עסקים עם פלח מסויים. אני שייך לפלח הזה, לכן אני מסיק שהספק אינו מעוניין לעשות איתי עסקים. אין פה שום דבר אישי.
אני, בנתיים, הצבעתי ברגליים לא לקבל את השירות הזה מהספק הזה. אני מסרב לתת לספק הזה להכתיב לי את הטכנולוגיה הזו. אני אמשיך לחפש בקרב מתחרי הספק כאילו שכן יתנו לי את מה שאני צריך.
שחר
מי מחליט מה עושה המחשב שלכם? כמה מילים על חשיבות הינדוס לאחור
אני יודע, זו שאלה שעלולה להשמע קצת מוזרה. בכל זאת, אני אשאל. יש לכם בבית מחשב. אתם שילמתם על החומרה, אתם משלמים על החשמל שהוא צורך, על החום שהוא מפיק כשהוא עובד (לא בעיה בחורף, אבל בקיץ זה בפירוש דורש עוד מזגן), על המקום שהוא תופס וכו’. חלקנו אפילו שילמו על התוכנות שהוא מפעיל. ההגיון מחייב שאנחנו גם נשלוט על מה המחשב הזה עושה.
אבל האם זה המצב? מי שמחליט מה יבצע המחשב זו התוכנה שרצה עליו. כאשר המחשב נדלק לראשונה, הוא מריץ תוכנה שכתב ייצרן המחשב. אחר כך הוא עובר להריץ תוכנה שנכתבה ע”י מי שייצר את מערכת ההפעלה, ואחר כך איזו תוכנה שלא תהייה על המחשב. למעט ייחידי סגולה, ניתן להניח, במידה רבה של ביטחון, שאף אחד מכם לא ממש כתב את כל התוכנות האילו.
אבל יש פה פרדוקס מסויים. רובינו מבינים מה התוכנות אמורות לבצע. חלקינו אפילו שילמנו כסף למי שכתב את התוכנה כנגד הטענה שהתוכנה מבצעת פעולה מסויימת. איך אנחנו אמורים, אבל, לדעת שזה באמת מה שהתוכנה עושה? איך אנחנו יודעים שהתוכנה לא עושה עוד דברים, מעבר למה שאנחנו מעוניינים שתעשה, ללא ידיעתינו?
בעוד שלפעמים מדובר בכוונת זדון של כותב התוכנה, לא תמיד זה המצב. לפעמים כותב התוכנה אפילו לא מודע לזה שיש לתוכנה שלו שימושים אחרים.
הבעיה הזו רחוקה מלהיות בעיה תיאורתית. אם היום בעיות הרוגלות (spywares) הינן בעיות נפוצות וידועות, הרי שצריך להבין שכמות לא קטנה מהרוגלות לא פרצו למחשב שלנו, אלא נכנסו בדלת הקידמית, גם אם בתוך סוס מעץ. תוכנות שאנחנו הורדנו והתקנו, מתוך ציפיה שיעשו דבר א’, בעצם עושות (גם) דבר ב’, שאינו מה שרצינו.
ההגנה היחידה כנגד התופעה הזו היא אם כמה שיותר אנשים יוכלו לנתח את התוכנה ולתת חוות דעת לגבי מה התוכנה עושה באמת. לכל מי שקרא עד עכשיו צריך להיות ברור שלא ניתן לסמוך על כותב התוכנה שייעשה כן, הן מכיוון שלפעמים הוא כתב את השימוש הזדוני בעצמו, והן בגלל שלפעמים הוא פשוט לא מודע לו. הדרך היחידה היא אם כמה שיותר אנשים, ללא אפליה, יוכלו לנתח את התוכנה אם ירצו.
הדרך לשם עוברת דרך שני מונחים. Reverse Engineering ו-Decompiling. הסבר:
הינדוס לאחור, או Reverse Engineering, הינו היפוך של תהליך הבניה של מערכת. בד”כ מערכת מתוארת על פי מה שרוצה המתכנן שתעשה. אחר כך מגיע מהנדס שמחליט איך תעשה המערכת את מה שהיא אמורה לעשות, ולסיום המערכת עצמה נבנית.
התהליך פה הינו התהליך ההפוך. ראשית מתחילים ממערכת בנויה. המערכת נבחנת לחלקיה, והתיאור של איך היא עושה נמצא. התיאור הזה מורכב חזרה לתיאור של מה המערכת עושה.
המונח השני הינו “Decompiling”. לקמפל קוד הינו תהליך של הפיכת קוד שכתוב בשפה עילית לקוד שהמכונה מבינה ויודעת לבצע. בתהליך הזה הרבה מידע, שאינו נחוץ לצורך ביצוע הקוד, הולך לאיבוד. התהליך ההפוך הינו תהליך של לקיחת קוד שפת המכונה, ונסיון להסיק ממנו על איך נראה קוד המקור שייצר את התוכנית.
חשוב להבין
Decompiling איננו Reverse Engineering. תהליך הינדוס לאחור יכול להכיל תהליך Decompiling בתור אחד השלבים, אולם זה לעולם לא יהיה השלב היחידי. כמו כן, רבים המקרים שבהם ניתן לוותר על Decompiling לחלוטין. כך או כך, שני התהליכים הינם יקרים ודורשים ידע רב.
אז איך קשור כל זה אל נושא השליטה על המחשב? התשובה היא, שהינדוס לאחור הינה הדרך היחידה שבה מישהו שאיננו כותב התוכנה יכול לקבל תמונה של מה באמת עושה תוכנה מסויימת. פשוט לא קיים אף תהליך אחר. אפילו אם נותנים לכם את קוד המקור של התוכנה, חסכתם את שלב ה-Decompiling, אבל אתם עדיין צריכים לדלות משורות הקוד שמספרות “איך” את ה”מה”. במובן זה, אין כל הבדל עקרוני בין תוכנה קניינית לבין תוכנה חופשית.
אז אם מדובר בתהליך כל כך יקר, וכל כך מקצועי, ובפרט, אחד כזה שלא כל אחד יכול לעשות, מדוע אני מכלה כל כך הרבה מילים עליו? התשובה היא שבעוד שאכן רק מעטים יכולים לעשות את זה, בפיזור מספיק רחב הם נותנים ביטחון לכולם.
אני אתן דוגמאות. בעבר הרחוק היו מספר גרסאות של DOS. אחת מהן היתה של חברה בשם Digital Research, וכונתה “DR-DOS”. מסתבר שבגרסאות הבטא של חלונות 3.11, מיקרוסופט ביצעה זיהוי של איזו גרסת Dos רצה על המחשב, ואם היה מדובר בגרסה של DR-Dos, חלונות לא היה עולה. התומכים הטכניים הונחו להאשים את DR-Dos בתקלה. אקט של השמצה עסקית פשוטה. הדרך היחידה לגלות את זה, אבל, היא באמצעות הינדוס לאחור את מקור השגיאה. אם הינדוס לאחור לא היה קיים (או היה אסור), אקטים בריוניים שכאילו היו עוברים מבלי שאיש היה מבחין בהם.
עוד דוגמא. מספר תוכנות שחלקינו מתקינים במחשב מתקינות גם רוגלות. זה כולל תוכנות לכאורה ידועות, כמו קאזה, נגנים חכמים, תוספים לדפדפנים וכו’. רק מעטים יודעים איך לברר אם תוכנה כלשהי מתקינה רוגלה לא ידועה או לא, אבל כולנו נהנים מהידע הזה באמצעות תוכנות ניקוי רוגלות.
במילים אחרות, הינדוס לאחור הינו אינטרס ברור של כלל החברה, בנסיון לקבל חזרה קצת מהשליטה על המחשב שאנחנו קנינו בכספינו, ואנחנו מממנים את הפעלתו. הבעיה היא שאותם אנשים שלהם האינטרס להחביא את התנהגותם, הם אילו שנמצאים בעמדת שליטה יחסית. כמעט כל הסכם משתמש שתקראו כולל סעיף שאוסר על הינדוס לאחור (אני אזכיר שגם לשבת מול התוכנה ולהסתכל עליה אגב תהייה איך היא עובדת הינו הינדוס לאחור). בטיוטת חוק זכויות היוצרים החדש יש סעיף שאינו מתיר הינדוס לאחור. נושא ההינדוס לאחור נמצא במתקפה מתמדת מצד אילו שמעדיפים שדברים מסובכים לא ייעשו.
יש שיטענו שצריך לאפשר הינדוס לאחור, אבל ללא שימוש ב-Decompilation. אני לא מסכים לטענה זו. אני לחלוטין מסכים ש-Decompilation חושף את המבנה הפנימי של התוכנה, ועל כן אסור להעתיק את התוכנה לתוכנה אחרת. המידע שנמצא מתוך ביצוע Decompilation, אבל, הינו מידע ששייך למי שביצע את הניתוח, וזכותו לעשות בו כרצונו.
כל ראיה אחרת פירושה שלחברות אין יותר מה לחשוש מאנשים שמפרסמים בעיות אבטחה במוצרים שלהם (דבר שהנסיון מלמד שמוביל לכך שבעיות אבטחה לא מתוקנות, ונשארות נחלתם הבלעדית של ה”אנשים הרעים”). זה אומר שחברות יכולות לנער תחרות ע”י הכנסת רכיבים לא מתועדים לתוכנה, שמונעים מהתחרות להתממשק איתה. זה אומר שלא ניתן לנתח וירוסים ורוגלות. זה אומר שלא ניתן לדעת מתי תוכנה אוספת, ושולחת, מידע אישי עלינו. במילים אחרות, אם אסור לאף אחד לבצע Decompilation, הרי שהמחשב אינו יותר המחשב שלנו. המחשב הופך להיות מכשיר שעובד בשירות מי שמכר לנו את התוכנה שאנחנו משתמשים בה, ואנחנו נמצאים בידיו חסרי אונים להתגונן.
שחר
נ.ב.
הנה המאמר ב-slashdot שהביא אותי לכתוב את הפוסט הזה דווקא היום.
ש.
נקיון חורף בנענע
כנראה שנענע החליטו לנקות את המערכות שלהם. הם שולחים למנויים לא פעילים הודעה שאומרת שאם הם לא ייכנסו למערכת תוך 7 ימים (הקרויים בשפה המקצועית “שבוע”, אבל ברור למה נענע החליטו לרדת אל העם), המנוי יימחק. יש שם אפילו הערה שמדובר בהודעה שניה.
אז, דבר ראשון, כל הכבוד להם. באמת הגיע הזמן לרוקן את המערכת ממשתמשים לא פעילים. באופן יותר ספציפי, אני כבר קיבלתי שלוש הודעות כאילו, על שלושה משתמשים שונים שהיו לי במערכת. ואני אפילו לא זכרתי שהיה לי אחד. אל תבינו אותי לא נכון – אני לא מכחיש שאילו משתמשים שלי. אני רק לא זכרתי את קיומם.
מה שאומר משהו קצת מוזר. דבר ראשון, זה אומר שמישהו בנענע נזכר רק עכשיו לעשות את נקיון החורף הזה. לא סביר שפתחתי את המשתמשים בסמיכות כזו שכל השלושה פגים עכשיו. הדבר השני הוא שלא קיבלתי אף הודעה קודמת. זו לא הודעה שניה.
באופן אישי, אני אתן למשתמשים האילו לפוג בשקט. אם לא זכרתי אפילו את דבר קיומם, כנראה שבאמת אין לי מה לעשות איתם.
שחר
wireless
לפני כמה זמן החלטתי שאני רוצה להסתובב עם המחשב יותר רחוק ממרכז החישובים הראשי שלי (שם מפוצץ לערמה של מחשבים שמגובבים ליד חיבור האינטרנט). ועל כן החלטתי להתעניין ברשת אלחוטית.
מכיוון שמעולם לא התקנתי אחת, ביררתי ב-Linux-IL (רשימת תפוצה) מה אני צריך, ומה יעבוד על לינוקס. היו המון הצעות שלא לסמוך על ההצפנה (דבר שכבר ידעתי), וקצת המלצות על טכנולוגיה, וחבר ששלח מייל פרטי שאומר לי שיש לו ציוד ישן (קריא – 802.11b – התקן האיטי יותר) שהוא לא צריך, ושאני מוזמן לשאול אותו לתקופה בלתי חסומה. כמובן שקפצתי על המציאה.
נסיעה מהירה לעבודה שלו (הוא טס בדיוק לחו”ל, ועל כן השאיר לי את זה בעבודה) הניבה רכזת אלחוטית של SMC וכרטיס למחשב נייד מתוצרת IBM (ובזאת אני מתכוון שהכרטיס היה מתוצרת IBM, אבל יד המקרה היא שגם המחשב הוא מתוצרת IBM). עד כאן הכל טוב. כמובן שהכל הגיע ללא תיעוד או תוכנה, אבל מי שמצפה למשהו אחר מציוד יד שניה כנראה לא קיבל ציוד יד שניה בעבר.
באופן לא מפתיע, הרכזת היתה מוגנת סיסמה, וגם לא ידעתי את כתובתה. לא היה ספק שאני אצטרך לאפס לה את התצורה. לא משהו שלא עשיתי כדוגמתו בעבר. חיפוש מהיר על מספר הדגם (SMC2655W) הניב מסקנה אחת דיי מהירה – SMC, כנראה מתוך כוונה להדגיש את הדגמים המהירים יותר, לא שמה יותר קישורים לדגמים האילו.
למעשה, האתר של SMC פועל בצורה קצת עקומה. שאלה ראשונה שאתם מקבלים זה “מאיזו ארץ אתם”. מרגע שבחרתם את המדינה, אתם נחשפים אך ורק לדגמים שנימכרו באותה המדינה. ניסיתי לחשוב איפה ייתכן שהחבר קנה את הרכזת, אבל לא מצאתי אותה.
חיפוש בגוגל נתן תוצאה מעט יותר טובה. לא היו הרבה תוצאות, אבל אחת התוצאות היתה PDF מהאתר של SMC שמכיל את הוראות ההפעלה של רכזת SMC 2655W. לרכז יש תוכנה שמפעילה אותה מחלונות, וגם ממשק web. מצויין! אמנם אני לא יודע את כתובת ה-IP של הרכזת, אבל בהוראות יש גם איך לאפס את התצורה שלה.
אני נותן אותן כאן:
1. אתרו את הכפתור “Default” מאחורי הרכזת.
2. הוציאו את הרכזת מהחשמל.
3. אחרי עשר שניות, ליחצו על “Default”.
4. אחרי שלוש שניות, חברו את הרכזת לחשמל
5. אחרי עוד שלוש שניות, עיזבו את “Default”
6. אחרי עוד שלוש שניות, ליחצו על “Default” בשנית.
7. האורות אמורים להבהב בקצב של פעם בשניה.
8. אחרי כן הנתב יקבל את הכתובת 10.2.0.50
פשוט!
יש שתי בעיות קלות. הראשונה באמת ניתנת להחלקה – הכפתור נקרא “Reload”, לא “Default”. כמובן שלא ניתן לבעיה שולית כזו להפריע לנו. השניה היתה קצת יותר מהותית. לא ניתן היה להתקשר לנתב בשום צורה. האורות לא היבהבו כשהיו צריכים. פשוט לא עבד.
חזרה לגוגל. כפי שאמרתי, לא היו הרבה תוצאות לחיפוש. גירוד בראש. תקוע. ואז באה לי ההשראה. חיפשתי בגוגל את המילה “Reload” ביחד עם הדגם. כאן התחילו להופיע תוצאות יותר משמעותיות.
הרמז הראשון היה בפורום בצרפתית. לא הבנתי מילה מהודעה עצמה, אבל היא ציטטה את הוראות איתחול התצורה באנגלית, שהיו שונות קצת. הן אמרו:
1. נתק מהחשמל
2. לחץ על Reload
3. חבר לחשמל
4. אחרי כשלוש עד חמש שניות תטען תצורה נקיה
נשמע הרבה יותר פשוט, ובעיקר, תואם לשם הכפתור שיש לי על המכשיר. התקדמנו. יש רק בעיה אחת קטנה – אני עדיין לא מצליח להתחבר לממשק הניהול. אפילו ping פשוט על 10.2.0.50 לא עונה. המממ…
ממשיכים לחפש, ומגלים עוד פורום. הפעם הבחור מתלונן על הסיסמה. הוא אומר שהתיעוד אומר שהסיסמה הראשונית היא “miniap”, אבל זה לא עובד לו. מה שבעיקר משך את עיני היו התשובות. חלק מהאנשים אמרו לו שהסיסמה הראשונית הינה בעצם “MiniAP”, ושיש חשיבות לאותיות גדולות/קטנות, אבל חלק אחר טען בתוקף שהסיסמה הראשונית הינה בעצם “default”. מה? יש שתי סיסמאות ראשוניות?
ואז החלטתי לבדוק מה כתוב בתיעוד שיש לי. כתוב “default”. הממ…. ואז באה לי ההארה.
יש שני מוצרים עם אותו מספר דגם!
בלתי נתפס ככל שזה יישמע, SMC הוציאה שתי רכזות אלחוטיות תחת אותו מספר דגם. בשלב כלשהו, על ידי חיפוש בגוגל אחר מסמכים באותו URL כללי כמו המסמך הראשון שמצאתי, הצלחתי למצוא דף מקיף שמכיל את כל הדגמים שלהם. ואכן, בדף הזה מופיע SMC2655W, וגם SMC2655W.2. למרבה השמחה, יש שם אפילו תמונה של כל דגם. מה שיש לי הוא בפירוש הראשון.
אז ככה. למה שיש לי אין ממשק ניהול דרך web. יש לו ממשק SNMP, אבל בלי להתקין את התוכנה על חלונות, אני לא בטוח איך הייתי אמור לדעת באילו קודים להשתמש. כמו כן, הוא לא הולך לכתובת IP סטאטית כאשר הוא מאותחל. במקום זה, הוא מבקש כתובת ב-DHCP. בקיצור, זהו מוצר אחר לחלוטין. הוא אפילו לא נראה אותו הדבר. אה, כן. גם סיסמאות הגישה התחיליות אינן אותו הדבר.
בקיצור, סוף טוב, הכל טוב. יש רכזת עובדת. אני עכשיו מרים הצפנה יותר אמינה מ-WEP. SMC, אבל, לא קיבלו אצלי ציון גבוה במיוחד על איכות האתר.
שחר
חור בישראבלוג
זהו, עצבנתם אותי….
הפעם עם proof of concept, בבלוג בדיקות האבטחה שלי. לכל אילו שטוענים שאני סתם מדבר.
אז בפוסט הקודם דיברתי על זה שחייב להיות אחד. לא עברו שתי שניות, ומצאתי אחד מוכח. אתם יכולים להאמין לי שיש, כנראה, עוד הרבה. העקרונות שפירטתי בפוסט הקודם פשוט עובדים.
שחר
התנצלות על "עוד דרך לתקוף את ישראבלוג"
אז אל תגידו שאני מפרסם את ההתנצלות במקום פחות בולט מאשר את המאמר המקורי….
אתמול כתבתי פוסט שזכה לביקורת מצד המגיבים. פה המקום לציין שהביקורת מוצדקת לחלוטין, ואני מתנצל. הפוסט נכתב מהר מידי, בלי בדיקה מספיק מעמיקה, והכותרת היתה סנסציונית מידי יחסית לגוף הפוסט.
אני כן אכתוב כמה שורות הסבר לגבי הרקע למה שכתבתי אתמול, אבל אחרי המון מחשבה החלטתי לא להפנות ספציפית לבאג שעליו אני מדבר. לפחות לא עד שאני אבדוק שהבאג הוא אמיתי.
ישראבלוג שומר את הזהות שלכם בתוך cookie. אז אמנם, כפי שיריב מהר להסביר לי במייל פרטי, לא נשמרת שם הסיסמה, אבל זה פשוט לא משנה. העובדה הפשוטה היא שב-cookies על המחשב שלכם נשמרת מספיק אינפורמציה כדי להכניס אתכם לבלוג שלכם ללא כל אספקת מידע נוסף. לכל צורך ועניין, הסיסמה שלכם כן נשמרת ב-cookie, גם אם זאת לא הסיסמה ממש. זוהי שגיאה נפוצה מספר 1.
פירושו של דבר הוא שמי שיכול לקרוא את ה-cookies שלכם, יכול להתחבר תחת השם שלכם לבלוג שלכם ולשנות אותו. זה ברור. כמובן שיש מגבלות. למשל, אי אפשר לקרוא את ה-cookies שלכם מאתר אחר. למרבה השמחה, יש מספיק דרכים להביא תוכן אל תוך ישראבלוג. כדי שהתוכן הזה יהיה מסוגל לקרוא את ה-cookie, ובפרט, לשלוח אותו אל מקום אחר, הוא צריך להיות תוכן אקטיבי. יריב טוען שהוא מסנן תוכן אקטיבי. כפי שציינתי, לי יש את הספקות שלי, אבל כרגע אין לי ברירה אלא להאמין לו, מסיבה קצת איזוטרית.
אין לי זמן או כוח.
ישראבלוג בנוי בצורה דיי מורכבת. הדברים לא פועלים בצורה הכי ישירה שאפשר היה לצפות, ולכן גם לא לחלוטין טריויאלילהבין מאיפה כדאי לתקוף. בניגוד למה שאנשים נוטים לחשוב, זה לא מחזק את האבטחה של המערכת. כנראה אפילו להיפך. כאשר יש כל כך הרבה כיווני הכנסת קוד אפשריים, הסיכוי שיריב כיסה את כולם שואף לאפס. בגלל זה הביטחון שלי שיש חורים.
באופן אישי, אילו הייתי כותב מערכת בלוגים, לא הייתי מאפשר לכותבים לכתוב HTML ישירות. הייתי נותן להם סדרת פקודות שהם יכולים לעשות, ודואג שזה יהיה הכל. זהו ההבדל בין הגישה המתירנית (אפשר הכל למעט…) לגישה השמרנית (אל תאפשר כלום למעט…). באבטחת מידע מומלץ לגשת בגישה השמרנית, בעוד שישרא דוגל בגישה המתירנית. זוהי שגיאה נפוצה מספר 2.
בפרט, יש מיקרים שבהם אני יכול להגיד לכן בוודאות שיש חור. המקרה הבולט ביותר הוא כאשר כותבים תגובות. אם תכתבו מילה בין כוכביות בתגובות (כדי שהמילה *תהיה* מודגשת), המילה תופיע בתגובות עצמם בצורה שונה (כדי שהמילה תהיה מודגשת). מה שחדי העין ישימו לב, אבל הוא שההחלפה בין הכוכביות לבין תגי ה-HTML קוראת לפני השליחה. אחר שלוחצים על “שליחה”, לרגע קל, רואים את הטקסט מתחלף (כדי שהמילה <b>תהיה</b> מודגשת). במילים אחרות, מתבצעת החלפה בצד הלקוח, והמידע נשלח כבר HTMLי לשרת. זוהי שגיאה נפוצה מספר 3. יש לי עדויות שאפשר לנצל את התופעה הזו כדי לשלוח תגובות מעוצבות “יתר על המידה”.
אז מה היה לנו פה:
1. מידע מעניין נשמר ב-cookies, כאשר גורמים שאי אפשר לסמוך עליהם יכולים לעדכן את האתר.
2. העדכון של האתר הוא בגישה המתירנית, וערוצי העדכון הם רבים (לכל הפחות תגובות, פוסטים, תבניות HTML, ואתמול מצאתי עוד אחד).
3. לפחות חלק מהאימות תקינות מתבצע בצד הלקוח ולא בצד השרת.
נכון, רק בגלל זה להגיד שיש חור זו הסחפות, ועל כך התנצלותי. מצד שני, הסיכוי לחור הוא מאוד גדול. ניכר פה תיכנות ללא מחשבה על אבטחת מידע. רק נקודה למחשבה.
שחר
עוד דרך לתקוף את ישראבלוג
המערכת של ישראבלוג נראית, במבט מקצועי אך שיטחי, כמלאת חורים כמסננת. לגנוב פרטים של בעל בלוג אחר נראית כמו משימה ממש ממש פשוטה. אני מסייג את דברי, כי לא בדקתי.
לא נראה שיריב מאוד מתעניין בנושא. פעם אחת שפניתי אליו, הוא טען שאין חורים, ואמר שלא איכפת לו אם אני אנסה. אני לא בטוח אם עדיין לא איכפת לו, אז אני לא מפעיל את הבלוג שפתחתי במיוחד כדי לנסות. כמו כן, אין לי כל כך זמן לזה.
בכל מקרה, מצאת עוד דרך אחת, שכנראה תעבוד (לא בדקתי) כדי לגנוב זהות של כותב בלוגים אחר. עצוב.
שחר