100 likes | 226 Views
פרוייקט באבטחת מידע. RU4Real, Facebook Synthetic Accounts. מגישים: אסף בר אורון ישראלי מנחה: עמיחי שולמן. מטרת הפרויקט. הערכת אחוז המשתמשים הסינטטיים מתוך כלל המשתמשים הרשומים ב- FaceBook. תכנית פעולה. הכרת פייסבוק וממשקי הגישה השונים דרך האתר בגלישה רגילה דרך API שונים
E N D
פרוייקט באבטחת מידע RU4Real, Facebook Synthetic Accounts מגישים: אסף בר אורון ישראלי מנחה: עמיחי שולמן
מטרת הפרויקט • הערכת אחוז המשתמשים הסינטטיים מתוך כלל המשתמשים הרשומים ב- FaceBook
תכנית פעולה • הכרת פייסבוק וממשקי הגישה השונים • דרך האתר בגלישה רגילה • דרך API שונים • חיפוש דרכי איסוף מידע וניתוחו • יישום
שלבים • ניתוח פרופיל משתמש/אפליקציה: • כמות מידע מינימלית הדרושה לרישום משתמש חדש בפייסבוק • פתיחת חשבון פייסבוק על שם John Duan • רישום אפליקציה בשם barr body • לאפליקציה אמורה להיות גישה ליותר מידע על משתמש בפייסבוק • התחברות עם ממשקים שונים: • Python, Perl,Graph via Browser,FQL via Browser,Java • פתיחת שני חשבונות בו זמנית והשוואת uid-ים • הרמת שרת לצורך עבודת המשך • איסוף פרופילים בעזרת אינומרציה של המשתמשים ודגימה שלהם באופן ידני.
דו"ח מצב • פתיחת חשבון פייסבוק על שם John Duan • רישום אפליקציה בשם barr body • כרגע לא נראה שיש לאפליקציה יותר הרשאות מכל משתמש אחר, למעט משתמשים אשר הסתכלו על דף האפליקציה • מסקנה: צורך ביצירת אפליקציה או בגישה למידע של אפליקציה "מבוקשת" יותר • ניסיון התחברות עם ממשקים שונים: • Python– הצלחנו להתחבר לפייסבוק אך לא בתור משתמש רשום • Perl– אי יכולת להתחבר לפייסבוק על מנת לבצע איסוף מידע • Graph/FQL via Browser– קבלת מידע מינימלי באופן ידני • Java– אי יכולת למשוך מידע, מעבר למידע הבסיסי, עבור משתמש כלשהו
דו"ח מצב • פתיחת שני חשבונות בו זמנית והשוואת uid-ים: • מספרי ה uid-ים רחוקים זה מזה בצורה משמעותית כך שלא ניתן להסיק מהם מידע רלוונטי • יצירת פרופילים סינטטיים ע"י script לא תיצור קבוצה של משתמשים "דומים" בעלי uid-ים קרובים • ניסיון ניתוח פרופיל משתמש/אפליקציה: • כמות מידע מינימלית הדרושה לרישום משתמש חדש בפייסבוק • שם פרטי, שם משפחה, ד"א, גיל, מין, יום-הולדת וססמא - לא ניתן לקבוע לפי מידע זה האם פרופיל הוא סינטטי • ניסיון לבנות פרופיל מידע ממוצע של משתמש בפייסבוק • נכשל בשל אי יכולת לאסוף מידע באופן אוטומטי
דו"ח מצב • איסוף פרופילים בעזרת אינומרציה של המשתמשים ודגימה שלהם באופן ידני • נאספו לינקים של מעבר ל-8200 משתמשים • נבחרו 2 קבוצות של 50 משתמשים בצורה אקראית • בוצע מעבר ידני על הפרופילים בעזרת גלישה בפייסבוק • 3 משתמשים נראו סינטטיים לשנינו • על משתמש אחד נוסף אין הסכמה • הגענו לכ – 3.5% פרופילים סינטטיים, רחוק מאוד מהערכות לפי ניתוח חדירות אינטרנט
מאפיינים אפשריים של פרופילים סינטטיים • קליקות – סביר להניח שפרופילים סינטטיים ייצרו קליקות כדי להגדיל את "הפופולריות" שלהם ברשת • גבר/אישה עם תמונה מפתה ורשימת חברים בעלי תמונות בעלות אותו האופי, לדוגמא: • תמי טמיראדם פטרסון • משתמשים שמבצעים הרבה לייקים ומשתפים הרבה לינקים בחודש • משתמשים שתמונת הפרופיל שלהם זהה לתמונה של משתמש אחר, ניסיון ניתוח בעזרת גוגל
מאפיינים אפשריים של פרופילים סינטטיים • דומגא לפרופיל סינטטי "שמציק" למשתמשים אמיתיים ע"י דחיפת פרסומות שונות
מסקנות והצעות להמשך • רוב הממשקים של פייסבוק הנמצאים ברשת אינם עובדים,מבין אלו שעובדים המידע הנגיש מוגבל ביותר, אפילו אם מדובר בחבר של המשתמש הנוכחי • לאפליקציה יש גישה רחבה יותר למידע • משתמש שרק יסתכל על דף הבית יחשוף מידע שנשאר חסוי עבור משתמש אחר, כגון רשימת חברים • משתמש שמאשר את האפליקציה יחשוף את כל המידע שלו • כיוון אפשרי להמשך – כתיבת אפליקציה "מעניינת" שיסתכלו עליה • Crawler – המידע של משתמש חשוף יותר בגלישה רגילה ותלוי בעיקר בהגדרות הפרטיות של המשתמשכיוון אפשרי להמשך – כתיבת Crawler או שימוש באחד קיים לצורך איסוף מידע • כיוון אפשרי להמשך – גלישה ידנית למספר רב של משתמשים ובחינה של הפרופילים – למשל, אחוז לייקים ולינקים במהלך חודש פעילות