‏הצגת רשומות עם תוויות מיכאל האפרתי. הצג את כל הרשומות
‏הצגת רשומות עם תוויות מיכאל האפרתי. הצג את כל הרשומות

יום שלישי, 25 בספטמבר 2012

נפרצו 50 אתרים בישראל

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

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

ברור ש-50 האתרים נפרצו בהעדר אמצעי אבטחה מינימליים. לאחר הפריצה, הקשיחה חברת נט ויזיון את הכניסה לשרת, וכך הפך כל נסיון לסייע לקשה יותר. על מנת להכנס לשרת נדרש ממני לתת את כתובת ה-IP שלי, לקבל אישור לכניסה מכתובת זו, ורק אז להכנס. למה חושבים על זה רק אחרי שאתרים נפרצים? (על זה נאמר: too little. Too late). הגבלה כזו הייתה מונעת את הפריצה, ולאחר הפריצה האטה את הסרת דברי הנאצה.

הסעודים שיתפו פעולה

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

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

איך להגן על אתר בפני פריצה

1. להשתמש בסיסמאות חזקות לממשק עריכת האתר, העלאת תכנים באמצעות FTP (סיסמה נפרדת), התחברות מרחוק לשרת (Remote Desktop) - גם כאן, סיסמה נפרדת.
2. החליפו את הסיסמאות אחת לחודש.
3. השתמשו בסטנדרטי קידוד שימנעו ככל האפשר פריצה באמצעות SQL Injection .
4. הגדירו את הכניסה לאתר באופן שמתיר כניסה אך ורק מכתובת (או מספר כתובות) IP, וחוסמת את הכניסה מכתובות אחרות. לחליפין, ניתן לחסום גישה ממדינות מסויימות אולם האקרים יכולים להשתמש בProxie שיתחזה לכתובת מישראל. לעומת זאת, בלתי אפשרי להתחזות לכתובת IP ספציפית.
5. בצעו גיבוי על בסיס קבוע והשתמשו בשירותי אכסון הכוללים גיבוי יומי של השרת.
6. הפעילו Firewall ו-Antivirus על השרת, ובצעו עדכונים באופן קבוע (Windows Update).

יום שישי, 18 במאי 2012

חבילת הסמסים שלי

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

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

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

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

הדרך לצרוך שירות כזה הוא באמצעות התממשקות. זה יכול להיות אתר אינטרנט שמציע שירות הכולל משלוח SMS, או תוכנה (Desktop Applition), כאשר הדרכים להתממשק למערכת הנן:

  1. המרת מייל לסמס. שיטת Mail2SMS.
  2. פנייה לשרת HTTP באמצעות פקודת GET.
הטכנולוגיות הנתמכות על ידי החברה הן:
SMPP 3.3 ו-3.4
CIMD2
OIS

שפות התכנות הנתמכות כוללות: Soap, XML, Java, Visual Basic, PHP ו-Pearl. 
שפת ++C אינה נתמכת ישירות. פניתי לחברה וקיבלתי תשובה שאין להם תמיכה או דוגמאות קוד לשפה זו, שכנראה הולכת ונעלמת מן העולם. למרות זאת, כתבתי בעצמי תוכנה קטנה שעושה שימוש בשפה זו ובMFC אשר שולחת SMS לכל יעד בארץ ובעולם, ואף נידבתי את קוד התוכנה (עכשיו יש להם תמיכה ב++C ... ).

התוכנה נראית כך:
והקסם מאחוריה הוא בהתממשקות שנעשית באופן הבא:
כל משתמש (כולל משתמש Trial כמו במקרה שלי), מקבל שם משתמש וסיסמה אשר הופכים לחלק מקוד התוכנה. 
התוכנה שלי עושה שימוש בClass קוד פתוח בשם WinHTTPClient אשר חיבר תוכניתן סיני בשם Sheng Chi.
כתבתי רוטינה בשם SendSMS אשר משמשת ה"מנוע" של התוכנה.
כפי שתראו יש צורך לקבוע פרמטר בשם DC עם ערך "4" ולקדד את ההודעה כHexadecimal, זאת על מנת שתתמוך בתווים בעברית (ובשפות נוספות), ולצורך כך כתבתי פונקציה נוספת בשם ConvertHex:

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

והעלות, כאמור, חינם לתקופת נסיון ולאחר מכן 0.006 יורו (כ-2 אגורות) להודעה.

יום שני, 19 במרץ 2012

אפשר גם וגם

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

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

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

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

הפתרון המוצע

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

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

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



כיצד יתבצע זיהוי של לקוח חוזר

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

האם הCheckSum לא יהפוך למזהה הייחודי החדש?

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

ומה קורה למספר תעודת הזהות בכל התהליך

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

יום שבת, 10 במרץ 2012

האם תכתובות הסמס שלך מוגנות?

הודעות טקסט (סמס) הפכו להיות חלק מחיינו ותופסים מקום הולך וגדל בדרך ההתקשרות בין אנשים. עם זאת, בשונה מהודעות מייל, כמה מכם שומרים הודעות סמס שנשלחו או התקבלו? מסיבה לא ברורה התרגלנו שהודעות הסמס נמחקות לאחר פרק זמן ואובדות לנצח בסל המיחזור של המרחב הקיברנטי.
מי שמשתמש בITunes ומחזיק במכשיר IPhone אולי יופתע לגלות עד כמה קל לשלוף את תוכן הודעות הסמס מהמחשב שלו.
אחרי חיבור המכשיר למחשב, מתבצע סינכרון, ולמרות שאין כל חיווי לכך בתוכנת ITunes שלכאורה מסנכרנת רק קבצי מדיה, הרי שמאותו רגע המידע הרגיש שמור כבר בתיקיה הבאה:
c:\users\שם המשתמש שלך\appdata\roaming\apple computer\Mobilesync\backup\תיקיה זמנית
עכשיו נסביר מה זה מה:
"שם המשתמש שלך", השם דרכו עשית לוג אין לWindows.
תיקיה זמנית, תיקיה בעלת שם אקראי שנוצרת על ידי ITunes. לכל מכשיר אייפון תיווצר תיקיה נפרדת.
אם תפתחו תיקיה זו תראו קבצים מוזרים למראה...
Image
אולם הקובץ בו נשמרות כל תכתובות הסמס, הנו קובץ ייחודי בעל שם אחיד לכולם.
שם הקובץ: 3d0d7e5fb2ce288813306e4d4636395e047a3d28 .
כן. פשוט וקליט...
נפתח את הקובץ ונראה משהו כזה:
Image
אולם בעזרת ידע או כלים מתאימים ניתן לשלוף כל הודעה, כולל הודעות שנשלחו או התקבלו, מאז שהמכשיר היה בשימוש.
רק לדוגמה, ניתן לטעון קובץ זה לאתר הבא, ולהמיר אותו לפורמט קריא כמו PDF או אקסל.
גם המרה לפורמט HTML אפשרית בקלות. לדוגמה:
<html><head><meta http-equiv="content-type" content="text/html; charset=UTF-8"></head><body>
<table border='0'><tr style='font-weight: bold'><td>Date</td><td>Number</td><td>Sent</td><td>Text</td></tr>
<tr><td>'2011-09-12 03:03:00'</td><td>'07777'</td><td></td><td>'בהתאם להחלטת משרד התקשורת, חסימת זיהוי מספר הפלאפון (קבועה או חד פעמית) אינה חלה בעת התקשרות לשירותי חירום ציבוריים'</td></tr>
<tr><td>'2011-09-12
אשר יוצג כך:
כמה פשוט...
ואין מדובר בתצוגת ההודעות כפי שהיא מופיעה בטלפון הנייד שלכם (רק ההודעות האחרונות) אלא כל ההודעות מיומו הראשון של המכשיר.
והרי לכם סיבה נוספת להגן על המחשב שלכם.