1 00:00:00,000 --> 00:00:02,610 >> [סמינר] [הגנה מאחורי המכשיר: יישומים ניידים אבטחה] 2 00:00:02,610 --> 00:00:04,380 [כריס Wysopal] [אוניברסיטת הרווארד] 3 00:00:04,380 --> 00:00:07,830 [זה CS50.] [CS50.TV] 4 00:00:07,830 --> 00:00:10,360 >> אחר הצהריים טובים. השם שלי הוא כריס Wysopal. 5 00:00:10,360 --> 00:00:13,360 אני CTO ומייסד שותף של Veracode. 6 00:00:13,360 --> 00:00:15,880 Veracode היא חברת אבטחת יישומים. 7 00:00:15,880 --> 00:00:18,230 אנחנו בודקים כל מיני יישומים שונים, 8 00:00:18,230 --> 00:00:25,060 ומה שאני הולך לדבר על היום הוא אבטחת יישומים ניידים. 9 00:00:25,060 --> 00:00:28,630 הרקע שלי הוא שאני כבר עושה מחקר אבטחה 10 00:00:28,630 --> 00:00:31,970 במשך זמן רב מאוד, כנראה על עוד מישהו. 11 00:00:31,970 --> 00:00:35,000 התחלתי באמצע שנתי ה 90s, 12 00:00:35,000 --> 00:00:37,370 וזה היה זמן שהיה די מעניין כי 13 00:00:37,370 --> 00:00:39,220 היה לנו שינוי פרדיגמה באמצע 90s. 14 00:00:39,220 --> 00:00:43,520 כל המחשב של כולם פתאום היה מחובר לאינטרנט, 15 00:00:43,520 --> 00:00:46,550 ולאחר מכן היו לנו את ראשיתה של יישומי אינטרנט, 16 00:00:46,550 --> 00:00:49,330 וזה מה שאני מתמקד בהרבה לאחר מכן. 17 00:00:49,330 --> 00:00:51,160 זה מעניין. 18 00:00:51,160 --> 00:00:53,930 עכשיו יש לנו שינוי הפרדיגמה אחרת קורה עם מחשוב, 19 00:00:53,930 --> 00:00:58,710 המהווה את המעבר ליישומים ניידים. 20 00:00:58,710 --> 00:01:03,680 >> אני מרגיש שזה סוג של זמן דומה אז זה היה בשלהיי שנתי ה -90 21 00:01:03,680 --> 00:01:07,650 כאשר אנו חוקרים יישומי אינטרנט ואיתור פגמים כמו 22 00:01:07,650 --> 00:01:11,800 טעויות ניהול הפעלה והזרקת SQL 23 00:01:11,800 --> 00:01:14,940 אשר באמת לא היה קיים בעבר, ופתאום הם היו בכל מקום 24 00:01:14,940 --> 00:01:19,360 ביישומי אינטרנט, ועכשיו הרבה הזמן שאני מבלה 25 00:01:19,360 --> 00:01:27,950 הוא מסתכל על יישומים ניידים ומסתכלים על מה שקורה שם בחוץ, בטבע. 26 00:01:27,950 --> 00:01:32,060 יישומים ניידים באמת הולכים להיות פלטפורמת המחשוב הדומיננטית, 27 00:01:32,060 --> 00:01:35,060 אז אנחנו באמת צריכים להשקיע הרבה זמן אם אתה בתעשיית האבטחה 28 00:01:35,060 --> 00:01:39,280 התמקדות ביישומי אינטרנט. 29 00:01:39,280 --> 00:01:43,420 היו 29 מליארד יישומים ניידים הורדו ב2011. 30 00:01:43,420 --> 00:01:47,920 זה צפוי להיות 76 מיליארדים אפליקציות על ידי 2014. 31 00:01:47,920 --> 00:01:54,040 יש 686 מיליון מכשירים שהולכים להיות שנרכשו בשנה זו, 32 00:01:54,040 --> 00:01:57,060 אז זה מקום שבו אנשים הולכים לעשות 33 00:01:57,060 --> 00:01:59,600  רוב מחשוב הלקוח שלהם הולכים קדימה. 34 00:01:59,600 --> 00:02:04,220 >> אני מדבר לסגן נשיא בהשקעות פידליטי 35 00:02:04,220 --> 00:02:08,780 לפני כמה חודשים, והוא אמר שהם פשוט ראו יותר תנועה 36 00:02:08,780 --> 00:02:12,610 עושה עסקות פיננסיות מבסיס הלקוחות שלהם 37 00:02:12,610 --> 00:02:16,230 ביישומים הניידים שלהם מאשר על אתר האינטרנט שלהם, 38 00:02:16,230 --> 00:02:20,610 כך שימוש נפוץ לאינטרנט בעבר היה 39 00:02:20,610 --> 00:02:23,800 בדיקה שערי מניות שלך, ניהול תיק ההשקעות שלך, 40 00:02:23,800 --> 00:02:28,060 ואנחנו בעצם רואים כי בשנת 2012 מתג על 41 00:02:28,060 --> 00:02:30,960 להיות דומיננטי יותר בפלטפורמה הניידת. 42 00:02:30,960 --> 00:02:34,530 אין ספק שאם יש הולך להיות כל פעילות פלילית, 43 00:02:34,530 --> 00:02:38,900 כל פעילות זדונית, זה הולך להתחיל להיות ממוקד בפלטפורמה הסלולרית 44 00:02:38,900 --> 00:02:44,210 עם הזמן, ככל שאנשים לעבור לזה. 45 00:02:44,210 --> 00:02:48,320 אם אתה מסתכל על הפלטפורמה הניידת, 46 00:02:48,320 --> 00:02:54,380 להסתכל על הסיכונים של הפלטפורמה זה שימושי כדי לשבור אותו לתוך השכבות השונות, 47 00:02:54,380 --> 00:02:59,010 בדיוק כמו שהיית עושה את זה במחשב שולחני, 48 00:02:59,010 --> 00:03:02,860 ואתה חושב על השכבות השונות, תוכנה, מערכת הפעלה, 49 00:03:02,860 --> 00:03:07,730 שכבת רשת, שכבת חומרה, וכמובן, יש נקודות תורפה בכל השכבות האלה. 50 00:03:07,730 --> 00:03:10,510 >> אותו הדבר קורה בנייד. 51 00:03:10,510 --> 00:03:14,880 אבל נייד, נראה כי חלק משכבות אלה הם במצב גרוע יותר. 52 00:03:14,880 --> 00:03:19,840 עבור אחד, שכבת הרשת היא בעייתית יותר בטלפונים 53 00:03:19,840 --> 00:03:25,650 כי הרבה אנשים שיש להם במשרד או בבית 54 00:03:25,650 --> 00:03:30,780 חיבורים קוויים או שיש להם חיבורי Wi-Fi מאובטחים, 55 00:03:30,780 --> 00:03:36,530 ועם הרבה מכשירים ניידים אתה ללא ספק מחוץ לבית 56 00:03:36,530 --> 00:03:40,520 או מחוץ למשרד הרבה, ואם אתה משתמש ב-Wi-Fi שיש 57 00:03:40,520 --> 00:03:42,820 ייתכן שאתה משתמש בחיבור Wi-Fi לא מאובטח, 58 00:03:42,820 --> 00:03:45,570 משהו שהוא חיבור Wi-Fi ציבורית, 59 00:03:45,570 --> 00:03:48,840 ולכן כאשר אנו חושבים על יישומים ניידים שאנחנו צריכים לקחת בחשבון 60 00:03:48,840 --> 00:03:53,770 שסביבת הרשת היא מסוכנת יותר עבור יישומים אלה 61 00:03:53,770 --> 00:03:57,640 כאשר נמצא בשימוש Wi-Fi. 62 00:03:57,640 --> 00:04:02,410 וכשאני מגיע ליותר מסיכוני היישומים הניידים 63 00:04:02,410 --> 00:04:04,910 תראה למה זה חשוב יותר. 64 00:04:04,910 --> 00:04:09,710 ישנם סיכונים ברמת החומרה במכשירים ניידים. 65 00:04:09,710 --> 00:04:11,670 זהו תחום של מחקר מתמשך. 66 00:04:11,670 --> 00:04:15,910 אנשים קוראים להתקפות אלה בפס רחב או התקפות baseband 67 00:04:15,910 --> 00:04:21,870 שבו אתה תוקף את הקושחה שמקשיבה ברדיו. 68 00:04:21,870 --> 00:04:25,430 >> אלה הם באמת התקפות מפחידות כי 69 00:04:25,430 --> 00:04:27,280 המשתמש לא צריך לעשות שום דבר. 70 00:04:27,280 --> 00:04:30,760 אתה יכול להכות המון מכשירים בטווח RF 71 00:04:30,760 --> 00:04:36,690 בבת אחת, וזה נראה כאילו בכל פעם שמחקר זה מבעבע 72 00:04:36,690 --> 00:04:40,750 את זה מהר מקבל מסווג שבו 73 00:04:40,750 --> 00:04:46,600 אנשים לעוט במסביב ואומרים, "הנה, ספר לנו על זה, ובבקשה להפסיק לדבר על זה." 74 00:04:46,600 --> 00:04:49,460 יש קצת מחקר שמתרחש באזור בפס רחב, 75 00:04:49,460 --> 00:04:51,980 אבל נראה שזה מאוד דממת דממה. 76 00:04:51,980 --> 00:04:56,910 אני חושב שזה יותר מסוג מדינת לאום של מחקר שקורה. 77 00:04:56,910 --> 00:05:02,140 תחום מחקר פעיל, אם כי, הוא שכבת מערכת הפעלה, 78 00:05:02,140 --> 00:05:08,910 ושוב, זה שונה מאשר בעולם המחשוב השולחני 79 00:05:08,910 --> 00:05:14,840 כי במרחב הנייד יש לך צוותי של אנשים בשם jailbreakers אלה, 80 00:05:14,840 --> 00:05:18,670 וjailbreakers שונה מחוקרי פגיעות רגילים. 81 00:05:18,670 --> 00:05:21,970 הם מנסים למצוא נקודות תורפה במערכת ההפעלה, 82 00:05:21,970 --> 00:05:27,000 אבל הסיבה שהם מנסים למצוא את נקודות התורפה היא שלא 83 00:05:27,000 --> 00:05:31,810 לפרוץ למחשב של מישהו אחר ולסכן אותו. 84 00:05:31,810 --> 00:05:34,280 זה לפרוץ למחשב שלהם. 85 00:05:34,280 --> 00:05:38,820 >> הם רוצים לפרוץ לטלפונים שלהם, לשנות את מערכת ההפעלה של הטלפונים שלהם 86 00:05:38,820 --> 00:05:41,050 כדי שיוכלו להפעיל את היישומים על פי בחירתם 87 00:05:41,050 --> 00:05:44,510 ולשנות דברים עם הרשאות ניהול מלאים, 88 00:05:44,510 --> 00:05:49,050 והם לא רוצים לספר לי הספק לגבי זה. 89 00:05:49,050 --> 00:05:52,960 הם לא כמו חוקר אבטחה שהוא חוקר אבטחת כובע לבן 90 00:05:52,960 --> 00:05:56,600 שהוא הולך לעשות גילוי אחראי ויגיד לי הספק בקשר לזה. 91 00:05:56,600 --> 00:06:01,270 הם רוצים לעשות את המחקר הזה, והם רוצים לפרסם אותו למעשה 92 00:06:01,270 --> 00:06:06,400 בניצול או rootkit או קוד jailbreak, 93 00:06:06,400 --> 00:06:10,010 והם רוצים לעשות את זה באופן אסטרטגי, כמו מייד אחרי 94 00:06:10,010 --> 00:06:13,570 ספינות ספק מערכת ההפעלה החדשה. 95 00:06:13,570 --> 00:06:16,350 יש לך מערכת יחסים יריבות זו 96 00:06:16,350 --> 00:06:19,000 עם נקודות תורפה ברמת מערכת הפעלה בניידת, 97 00:06:19,000 --> 00:06:23,150 שלדעתי היא די מעניין, ומקום אחד אנחנו רואים את זה 98 00:06:23,150 --> 00:06:29,210 האם זה הופך אותו לכך שיש קוד שפורסם לנצל טוב בחוץ 99 00:06:29,210 --> 00:06:31,750 לנקודתי תורפה ברמת ליבה, 100 00:06:31,750 --> 00:06:35,040 ושראינו אותם בעצם להיות בשימוש על ידי כותבי תוכנות זדוניות. 101 00:06:35,040 --> 00:06:38,450 זה קצת שונה מאשר בעולם המחשב. 102 00:06:38,450 --> 00:06:42,530 ולאחר מכן את השכבה האחרונה היא השכבה העליונה, שכבת היישום. 103 00:06:42,530 --> 00:06:45,250 זה מה שאני הולך לדבר עליו היום. 104 00:06:45,250 --> 00:06:48,970 >> השכבות האחרות קיימות, ושכבות האחרות לשחק בו, 105 00:06:48,970 --> 00:06:53,310 אבל אני בעיקר הולך לדבר על מה שקורה בשכבת היישום 106 00:06:53,310 --> 00:06:55,560 שם קוד פועל בארגז החול. 107 00:06:55,560 --> 00:06:58,670 זה לא חייב הרשאות ניהול. 108 00:06:58,670 --> 00:07:02,170 זה חייב שימוש ב-API של המכשיר, 109 00:07:02,170 --> 00:07:06,970 אבל עדיין, הרבה פעילות זדונית והרבה סיכון יכולים לקרות בשכבה ש 110 00:07:06,970 --> 00:07:09,220 כי זה את השכבה שבה כל המידע. 111 00:07:09,220 --> 00:07:12,330 יישומים יכולים לגשת לכל המידע על המכשיר 112 00:07:12,330 --> 00:07:15,390 אם יש להם את ההרשאות הנכונות, 113 00:07:15,390 --> 00:07:17,540 והם יכולים לגשת לחיישנים השונים על המכשיר, 114 00:07:17,540 --> 00:07:23,950 חיישן ה-GPS, מיקרופון, מצלמה, מה שיש לך. 115 00:07:23,950 --> 00:07:27,380 למרות שאנחנו רק מדברים על בשכבת היישום 116 00:07:27,380 --> 00:07:33,700 יש לנו הרבה סיכון שם. 117 00:07:33,700 --> 00:07:38,450 הדבר השני זה שונה על הסביבה הניידת 118 00:07:38,450 --> 00:07:45,060 הוא כל השחקנים של מערכת הפעלה, בין אם זה בלקברי או אנדרואיד 119 00:07:45,060 --> 00:07:53,410 או iOS או Windows Mobile, לכולם יש מודל רשות גרגירים עדין, 120 00:07:53,410 --> 00:07:56,990 וזו היא אחת הדרכים שהם בנו לתוך מערכת ההפעלה 121 00:07:56,990 --> 00:08:01,230 הרעיון שזה לא מסוכן כמו שאתה חושב. 122 00:08:01,230 --> 00:08:04,550 למרות שיש לך את כל אנשי הקשר שלך שם, את כל המידע האישי שלך, 123 00:08:04,550 --> 00:08:09,080 יש לך את התמונות שלך, יש לך את המיקום שלך על שם, 124 00:08:09,080 --> 00:08:14,820 אתה אחסון סיכת הבנק שלך להתחברות אוטומטית על שם, זה בטוח, כי 125 00:08:14,820 --> 00:08:19,430 יישומים חייבים להיות בעל הרשאות מסוימות כדי לקבל בחלקים מסוימים 126 00:08:19,430 --> 00:08:25,080 של המידע על המכשיר, והמשתמש צריך להיות מוצג עם 127 00:08:25,080 --> 00:08:29,230 הרשאות אלה ואומרים בסדר. 128 00:08:29,230 --> 00:08:32,590 >> הבעיה עם זה היא שהמשתמש תמיד אומר בסדר. 129 00:08:32,590 --> 00:08:35,240 כאיש ביטחון, אני יודע שאתה יכול לבקש מהמשתמש, 130 00:08:35,240 --> 00:08:40,100 לומר משהו ממש רע הולך לקרות, האם אתה רוצה שזה יקרה? 131 00:08:40,100 --> 00:08:44,680 ואם הם בעומס או שיש משהו ממש מפתה בצד השני של שאחר, 132 00:08:44,680 --> 00:08:47,760 כמו משחק הולך להיות מותקן שהם כבר מחכים, 133 00:08:47,760 --> 00:08:50,860 הם הולכים ללחוץ בסדר. 134 00:08:50,860 --> 00:08:56,630 בגלל זה אני אומר בשקופית שלי כאן רק תנו לי להעיף את ציפורים בחזירים כבר, 135 00:08:56,630 --> 00:09:03,150 ואתה יכול לראות בשקופית כאן יש דוגמאות של תיבת אישור בלקברי. 136 00:09:03,150 --> 00:09:05,990 זה אומר "בבקשה להגדיר את הרשאות יישום נסיעות לקברי 137 00:09:05,990 --> 00:09:09,720 לאחר לחיצה על כפתור למטה ", ובעצם למשתמש הוא רק הולך לומר 138 00:09:09,720 --> 00:09:12,240 להגדיר את ההרשאות ולשמור. 139 00:09:12,240 --> 00:09:18,010 הנה הפקודה אנדרואיד שבו הוא מציג את הדברים, 140 00:09:18,010 --> 00:09:20,260 וזה ממש מכניס. משהו שנראה כמעט כמו אזהרה 141 00:09:20,260 --> 00:09:25,090 יש בו סוג של תמרור זכות קדימה יש תקשורת ברשת, שיחת טלפון ואמר, 142 00:09:25,090 --> 00:09:28,120 אבל המשתמש הולך לחץ על התקנה, נכון? 143 00:09:28,120 --> 00:09:32,940 ואז אחד אפל הוא בלתי מזיק לחלוטין. 144 00:09:32,940 --> 00:09:34,300 זה לא נותן שום סוג של אזהרה. 145 00:09:34,300 --> 00:09:37,380 זה רק אפל הייתי רוצה להשתמש במיקום הנוכחי שלך. 146 00:09:37,380 --> 00:09:39,670 כמובן שאתה הולך ללחוץ בסדר. 147 00:09:39,670 --> 00:09:42,260 >> יש דגם אישור פרטנית הזה, 148 00:09:42,260 --> 00:09:45,890 ויישומים צריכים להיות קובץ מניפסט שבו הם מצהירים 149 00:09:45,890 --> 00:09:49,410 הרשאות שהם צריכים, ושיקבלו מוצגים למשתמש, 150 00:09:49,410 --> 00:09:53,480 והמשתמש חייב לומר שאני להעניק הרשאות אלה. 151 00:09:53,480 --> 00:09:55,080 אבל בואו נהיה כנה. 152 00:09:55,080 --> 00:09:58,400 משתמשים פשוט הולכים תמיד אומרים בסדר. 153 00:09:58,400 --> 00:10:04,460 בואו ניקח מבט מהיר על ההרשאות שהאפליקציות האלה מבקשות 154 00:10:04,460 --> 00:10:06,850 וחלק מההרשאות שנמצאות שם. 155 00:10:06,850 --> 00:10:09,950 חברה זו הפרטוריאני עשתה סקר בשנה שעברה 156 00:10:09,950 --> 00:10:14,170 של 53,000 יישומים ניתחו בשווקי הצד 3 ושוק אנדרואיד, 157 00:10:14,170 --> 00:10:16,770 אז כל זה אנדרואיד. 158 00:10:16,770 --> 00:10:19,670 והאפליקציה הממוצעת ביקשה 3 הרשאות. 159 00:10:19,670 --> 00:10:23,370 יישומים מסוימים ביקשו 117 הרשאות, 160 00:10:23,370 --> 00:10:27,480 אז ברור שאלו הם דקים מאוד גרגירים ודרך מורכבים מדי עבור משתמש להבין 161 00:10:27,480 --> 00:10:31,600 אם הם מוצגים עם יישום זה שצריך 117 הרשאות אלה. 162 00:10:31,600 --> 00:10:37,270 זה כמו הסכם הרישיון למשתמש קצה זה ארוך 45 דפים. 163 00:10:37,270 --> 00:10:40,240 אולי בקרוב יהיה להם אופציה שבה זה כמו 164 00:10:40,240 --> 00:10:43,100 להדפיס את ההרשאות ולשלוח לי מייל. 165 00:10:43,100 --> 00:10:45,480 >> אבל אם אתה מסתכל על כמה מההרשאות מעניינות העליונה 166 00:10:45,480 --> 00:10:50,840 24% מהאפליקציות שהם הורדו מ53,000 167 00:10:50,840 --> 00:10:57,230 מידע GPS ביקש מההתקן. 168 00:10:57,230 --> 00:10:59,810 8% לקרוא את אנשי הקשר. 169 00:10:59,810 --> 00:11:03,770 4% שנשלחו ב-SMS, ו -3% קיבלו ב-SMS. 170 00:11:03,770 --> 00:11:07,730 2% שנרשמו אודיו. 171 00:11:07,730 --> 00:11:11,210 1% מעובדים שיחות יוצאות. 172 00:11:11,210 --> 00:11:13,140 אני לא יודע. 173 00:11:13,140 --> 00:11:17,520 אני לא חושב ש4% מהיישומים בחנות App באמת צריך לשלוח הודעות טקסט SMS, 174 00:11:17,520 --> 00:11:21,410 אז אני חושב שזה רמז לכך שמשהו לא נעים קורה. 175 00:11:21,410 --> 00:11:24,350 8% מהאפליקציות צריכים לקרוא את רשימת אנשי הקשר שלך. 176 00:11:24,350 --> 00:11:26,510 זה כנראה לא נחוץ. 177 00:11:26,510 --> 00:11:30,990 אחד הדברים המעניינים האחרים אודות הרשאות הוא 178 00:11:30,990 --> 00:11:36,740 אם אתה מקשר בספריות משותפות ליישום שלך 179 00:11:36,740 --> 00:11:39,780 אלה יורשים את ההרשאות של היישום, 180 00:11:39,780 --> 00:11:46,570 כך שאם האפליקציה שלך צריכה את רשימת אנשי קשר או זקוק למיקום GPS לתפקד 181 00:11:46,570 --> 00:11:49,940 ואתה מקשר בספריית פרסום, למשל, 182 00:11:49,940 --> 00:11:53,170 שספריית המודעות גם להיות מסוגלת לגשת לאנשי הקשר 183 00:11:53,170 --> 00:11:57,630 וגם להיות מסוגל לגשת למיקום GPS, 184 00:11:57,630 --> 00:12:01,990 והמפתחים של האפליקציה יודעים דבר על הקוד שפועל בספריית המודעה. 185 00:12:01,990 --> 00:12:05,370 הם פשוט מקשרים שבבגלל שהם רוצים להרוויח כסף מהאפליקציה שלהם. 186 00:12:05,370 --> 00:12:09,820 >> זה מקום בו, ואני אדבר על כמה דוגמאות של זה עם 187 00:12:09,820 --> 00:12:13,930 יישום בשם פנדורה שבו מפתחי יישומים 188 00:12:13,930 --> 00:12:18,910 אולי שלא במתכוון להיות הדלפת מידע 189 00:12:18,910 --> 00:12:24,580 מהמשתמשים שלהם בגלל ספריות שהם מקושרים פנימה 190 00:12:24,580 --> 00:12:30,110 מדידות הנוף בחוץ, מסתכל על כל היישומים השונים 191 00:12:30,110 --> 00:12:34,310 כי כבר דיווח בחדשות כמשתמשי משהו זדוניים או עושים לא רצינו 192 00:12:34,310 --> 00:12:39,360 ולאחר מכן בודק הרבה אפליקציות, שאנחנו עושים הרבה ניתוח בינארי סטטי ביישומים לנייד, 193 00:12:39,360 --> 00:12:42,010 אז אנחנו כבר בדקנו אותם והביטו בקוד עצמו, 194 00:12:42,010 --> 00:12:49,640 באנו עם מה שאנו מכנים ראש הרשימה 10 של התנהגויות מסוכנות ביישומים שלנו. 195 00:12:49,640 --> 00:12:54,180 וזה נשבר מטה לתוך 2 חלקים, קוד זדוני, 196 00:12:54,180 --> 00:12:57,600 ולכן אלה הם דברים רעים שהאפליקציות יכולות להיות עושים את זה 197 00:12:57,600 --> 00:13:06,520 צפוי להיות משהו שאדם זדוני 198 00:13:06,520 --> 00:13:10,060 במיוחד יש לשים ביישום, אבל זה קצת מטושטש. 199 00:13:10,060 --> 00:13:13,300 זה יכול להיות משהו שמפתחים חושבים שזה בסדר, 200 00:13:13,300 --> 00:13:16,350 אבל בסופו של דבר להיות חשב על זדוני על ידי המשתמש. 201 00:13:16,350 --> 00:13:19,830 >> ואז החלק השני הוא מה שאנו מכנים קידוד נקודות תורפה, 202 00:13:19,830 --> 00:13:24,600 ואלה דברים שבו היזם בעצם הוא עושה טעויות 203 00:13:24,600 --> 00:13:27,200 או פשוט לא מבין איך לכתוב את האפליקציה בצורה מאובטחת, 204 00:13:27,200 --> 00:13:30,260  וזה לשים את משתמש האפליקציה בסיכון. 205 00:13:30,260 --> 00:13:34,060 אני הולך לעבור את אלה בפירוט ולתת כמה דוגמאות. 206 00:13:34,060 --> 00:13:39,620 לקבלת התייחסות, אני רוצה לשים את OWASP 10 ניידים העליונים הרשימה. 207 00:13:39,620 --> 00:13:43,590 אלה הם 10 נושאים שקבוצה בOWASP, 208 00:13:43,590 --> 00:13:48,900 פרויקט Open Web Application Security, יש להם קבוצת עבודה 209 00:13:48,900 --> 00:13:50,620 עובד על טלפונים 10 ראש רשימה. 210 00:13:50,620 --> 00:13:54,600 יש להם רשימה מאוד מפורסמת האינטרנט עליון 10, שהם העליונים 10 211 00:13:54,600 --> 00:13:57,180 הדברים הכי מסוכנים שאתה יכול להיות ביישום אינטרנט. 212 00:13:57,180 --> 00:13:59,090 הם עושים את אותו דבר עבור התקנים ניידים, 213 00:13:59,090 --> 00:14:01,750 והרשימה שלהם היא קצת שונה משלנו. 214 00:14:01,750 --> 00:14:03,670 6 מתוך 10 הם אותו הדבר. 215 00:14:03,670 --> 00:14:06,020 יש להם 4 שהם שונים. 216 00:14:06,020 --> 00:14:10,550 אני חושב שיש להם קצת שונה לקחת על 217 00:14:10,550 --> 00:14:14,490 סיכון ביישומים ניידים בו הרבה בעיות שלהם 218 00:14:14,490 --> 00:14:20,490 באמת איך הוא מתקשר ליישום שרת עורפי 219 00:14:20,490 --> 00:14:23,100 או מה קורה בשרת העורפי, 220 00:14:23,100 --> 00:14:29,220 לא כל כך הרבה יישומים שיש להם התנהגות מסוכנת, כי הם יישומי לקוח פשוט פשוט. 221 00:14:29,220 --> 00:14:36,640 >> אלה באדום כאן הם ההבדלים בין 2 הרשימות. 222 00:14:36,640 --> 00:14:40,740 וחלק מהצוות המחקר שלי למעשה תרם לפרויקט זה, 223 00:14:40,740 --> 00:14:44,570 כך נוכל לראות מה קורה לאורך זמן, אבל אני חושב שtakeaway כאן הוא 224 00:14:44,570 --> 00:14:47,550 אנחנו לא באמת יודעים מה ראש הרשימה 10 היא ביישומים ניידים, כי 225 00:14:47,550 --> 00:14:50,510 באמת שהם היינו בסביבה רק עבור 2 או 3 שנים, 226 00:14:50,510 --> 00:14:57,750 ושם לא היה מספיק זמן כדי באמת לחקור את מערכות ההפעלה 227 00:14:57,750 --> 00:15:00,450 ומה הם מסוגלים, ושם לא היה מספיק זמן 228 00:15:00,450 --> 00:15:06,870 לקהילה הזדונית, אם תרצה, שבילה מספיק זמן 229 00:15:06,870 --> 00:15:12,910 מנסה לתקוף את המשתמשים באמצעות יישומים ניידים, ולכן אני מצפה ברשימות אלו כדי לשנות קצת. 230 00:15:12,910 --> 00:15:18,720 אבל לעת עתה, אלה את 10 הדברים לדאוג. 231 00:15:18,720 --> 00:15:24,150 אתם עשויים לתהות בצד הנייד שבו עושה את הקוד הזדוני הנייד 232 00:15:24,150 --> 00:15:28,880 איך זה לקבל על המכשיר? 233 00:15:28,880 --> 00:15:35,210 צפון קרוליינה סטייט פרויקט שנקרא Mobile Malware פרויקט הגנום 234 00:15:35,210 --> 00:15:39,520 שבו הם אוספים כמה שיותר תוכנות זדוניות ניידת שהם יכולים ולנתח אותו, 235 00:15:39,520 --> 00:15:45,270 והם מתפרקים וקטורי ההזרקה שהתוכנות זדוניות הניידת משתמשים, 236 00:15:45,270 --> 00:15:51,490 ו86% משתמשים בטכניקה הנקראת אריזה מחדש, 237 00:15:51,490 --> 00:15:54,160 וזה רק על פלטפורמת אנדרואיד 238 00:15:54,160 --> 00:15:56,720 אתה באמת יכול לעשות את האריזה מחדש את זה. 239 00:15:56,720 --> 00:16:03,100 >> הסיבה היא קוד אנדרואיד בנוי עם 240 00:16:03,100 --> 00:16:08,130 קוד ג 'אווה בייט בשם Dalvik אשר בקלות decompilable. 241 00:16:08,130 --> 00:16:12,460 מה האיש הרע יכול לעשות הוא 242 00:16:12,460 --> 00:16:16,590 לקחת יישום אנדרואיד, הידורו, 243 00:16:16,590 --> 00:16:20,120 להכניס הקוד הזדוני שלהם, הדר מחדש את זה, 244 00:16:20,120 --> 00:16:28,070 ואז לשים אותו בחנות App שהתיימרה להיות גרסה חדשה של יישום זה, 245 00:16:28,070 --> 00:16:30,330 או רק אולי לשנות את שמו של היישום. 246 00:16:30,330 --> 00:16:35,140 אם זה היה סוג של משחק, לשנות את השם במקצת, 247 00:16:35,140 --> 00:16:42,860 וכך אריזה מחדש זה איך 86% מתוכנות זדוניות ניידים מתפזרים. 248 00:16:42,860 --> 00:16:45,810 יש עדכון טכניקה הנקראת אחר שהיא 249 00:16:45,810 --> 00:16:50,030 דומה מאוד לאריזה מחדש, אבל אתה לא באמת שם את הקוד הזדוני פנימה 250 00:16:50,030 --> 00:16:52,870 מה שאתה עושה הוא שאתה מכניס במנגנון עדכון קטן. 251 00:16:52,870 --> 00:16:56,660 אתה הידור, אתה מכניס במנגנון עדכון, והידורה, 252 00:16:56,660 --> 00:17:02,360 ולאחר מכן כאשר היישום פועל זה מוריד את תוכנות זדוניות על גבי המכשיר. 253 00:17:02,360 --> 00:17:06,300 >> עד כה הרוב הם 2 הטכניקות האלה. 254 00:17:06,300 --> 00:17:12,710 אין באמת הרבה ממכונית נוסעים או להורדת Drive-by downloads על מוביילים, 255 00:17:12,710 --> 00:17:15,890 אשר יכול להיות כהתקפת התחזות. 256 00:17:15,890 --> 00:17:18,200 היי, לבדוק את האתר ממש מגניב זה, 257 00:17:18,200 --> 00:17:21,020 או שאתה צריך ללכת לאתר הזה ולמלא טופס זה 258 00:17:21,020 --> 00:17:24,420 כדי לשמור על ההמשך עושה משהו. 259 00:17:24,420 --> 00:17:26,230 אלה התקפות פישינג. 260 00:17:26,230 --> 00:17:28,160 אותו הדבר יכול לקרות בפלטפורמה הניידת שבו הם 261 00:17:28,160 --> 00:17:33,830 להצביע על יישום נייד להורדה, יגיד "היי, זה בנק אוף אמריקה". 262 00:17:33,830 --> 00:17:36,070 "אנחנו רואים שאתה משתמש ביישום זה." 263 00:17:36,070 --> 00:17:38,540 "עליך להוריד את יישום אחר זה." 264 00:17:38,540 --> 00:17:41,170 באופן תיאורטי, זה יכול לעבוד. 265 00:17:41,170 --> 00:17:48,610 אולי זה פשוט לא נמצא בשימוש מספיק כדי לקבוע אם הוא מוצלח או לא, 266 00:17:48,610 --> 00:17:51,680 אבל הם מצאו כי פחות מ -1% מהזמן בטכניקה המשמש. 267 00:17:51,680 --> 00:17:56,130 רוב הזמן זה באמת קוד לארוז אותם מחדש. 268 00:17:56,130 --> 00:17:58,710 >> יש עצמאי קטגוריה בשם אחרת 269 00:17:58,710 --> 00:18:01,420 שבו מישהו פשוט בונה יישום חדש לגמרי. 270 00:18:01,420 --> 00:18:04,020 הם בונים יישום שמתיימר להיות משהו. 271 00:18:04,020 --> 00:18:07,360 זה לא אריזה מחדש של משהו אחר, ושיש לו הקוד הזדוני. 272 00:18:07,360 --> 00:18:11,230 המשמש 14% מהזמן. 273 00:18:11,230 --> 00:18:17,880 עכשיו אני רוצה לדבר על מה שהקוד הזדוני עושה? 274 00:18:17,880 --> 00:18:23,070 אחת תוכנות זדוניות הראשונות בחוץ 275 00:18:23,070 --> 00:18:25,490 אתה יכול לשקול תוכנות ריגול. 276 00:18:25,490 --> 00:18:27,620 זה בעצם מרגלים על המשתמש. 277 00:18:27,620 --> 00:18:30,470 היא אוספת מיילים, הודעות SMS. 278 00:18:30,470 --> 00:18:32,340 זה מדליק את המיקרופון. 279 00:18:32,340 --> 00:18:37,330 זה יבול ספר קשר, והיא שולחת אותו למישהו אחר. 280 00:18:37,330 --> 00:18:40,870 סוג זה של תוכנות ריגול קיים במחשב, 281 00:18:40,870 --> 00:18:46,200 כך שזה הגיוני מושלם עבור אנשים כדי לנסות לעשות את זה בהתקנים ניידים. 282 00:18:46,200 --> 00:18:53,230 >> אחת דוגמאות הראשונות לכך היה תכנית בשם Secret SMS Replicator. 283 00:18:53,230 --> 00:18:56,250 זה היה בשוק אנדרואיד לפני כמה שנים, 284 00:18:56,250 --> 00:18:59,960 והרעיון היה אם היה לך גישה לטלפון אנדרואיד של מישהו 285 00:18:59,960 --> 00:19:03,450 שאתה רוצה לרגל אחרי, אז אולי זה בן הזוג שלך 286 00:19:03,450 --> 00:19:07,600 או אחרים משמעותיים שלך ואתה רוצה לרגל הודעות הטקסט שלהם, 287 00:19:07,600 --> 00:19:11,200 אתה יכול להוריד את האפליקציה ולהתקין אותו ולהגדיר אותו 288 00:19:11,200 --> 00:19:16,540 כדי לשלוח הודעת טקסט SMS לך עם העתק 289 00:19:16,540 --> 00:19:21,710 של כל הודעת טקסט SMS שהם קיבלו. 290 00:19:21,710 --> 00:19:27,220 זה כמובן הוא בפרות של תנאי חנות היישומים של שירות, 291 00:19:27,220 --> 00:19:32,040 וזו הוסרה מהשוק דמוי אדם בתוך 18 שעות של אותו להיות שם, 292 00:19:32,040 --> 00:19:36,760 כך מספר קטן מאוד של אנשים היו בסיכון בגלל זה. 293 00:19:36,760 --> 00:19:42,510 עכשיו, אני חושב שאם התכנית הייתה נקראת משהו אולי קצת פחות פרובוקטיבי 294 00:19:42,510 --> 00:19:48,690 כמו הסוד SMS Replicator זה כנראה היה עובד הרבה יותר טוב. 295 00:19:48,690 --> 00:19:52,870 אבל זה היה סוג של המובן מאליו. 296 00:19:52,870 --> 00:19:58,680 >> אחד הדברים שאנו יכולים לעשות על מנת לקבוע אם יש לי אפליקציות ההתנהגות הזאת שאנחנו לא רוצים 297 00:19:58,680 --> 00:20:01,410 הוא לבדוק את הקוד. 298 00:20:01,410 --> 00:20:06,250 זה ממש ממש קל לעשות על אנדרואיד מפני שאנו יכולים לבטל את הידור היישומים. 299 00:20:06,250 --> 00:20:11,050 על iOS אתה יכול להשתמש disassembler כמו Pro IDA 300 00:20:11,050 --> 00:20:17,190 להסתכל על מה שיפיס את האפליקציה קוראת ומה הוא עושה. 301 00:20:17,190 --> 00:20:20,680 כתבנו מנתח סטטי בינארי שלנו לקוד שלנו 302 00:20:20,680 --> 00:20:24,940 ואנחנו עושים את זה, ואז מה שאתה יכול לעשות הוא שאפשר לומר 303 00:20:24,940 --> 00:20:30,490 אין המכשיר לעשות משהו שהוא בעצם מרגל אחרי או מעקב אותי? 304 00:20:30,490 --> 00:20:33,360 ויש לי כמה דוגמאות כאן ב-iPhone. 305 00:20:33,360 --> 00:20:41,440 דוגמא ראשונה זה איך לגשת UUID בטלפון. 306 00:20:41,440 --> 00:20:47,060 זהו למעשה משהו שאפל אסרה רק ליישומים חדשים, 307 00:20:47,060 --> 00:20:52,540 אבל יישומים ישנים שייתכן שפועלים על הטלפון שלך עדיין יכולים לעשות את זה, 308 00:20:52,540 --> 00:20:56,500 וכך מזהה ייחודי יכול לשמש כדי לעקוב אחריך 309 00:20:56,500 --> 00:21:00,440 על פני יישומים רבים ושונים. 310 00:21:00,440 --> 00:21:07,180 >> באנדרואיד, יש לי פה דוגמא של מקבל את המיקום של המכשיר. 311 00:21:07,180 --> 00:21:10,310 אתה יכול לראות שאם ששיחת API יש אפליקציה שעוקבת, 312 00:21:10,310 --> 00:21:15,000 ואתה יכול לראות אם זה מתחיל להיות מיקום קנס או מיקום גס. 313 00:21:15,000 --> 00:21:18,860 ולאחר מכן בתחתית כאן, יש לי דוגמא לאופן שעל בלקברי 314 00:21:18,860 --> 00:21:25,130 יישום יכול לגשת להודעות הדואר האלקטרוני בתיבת הדואר הנכנס שלך. 315 00:21:25,130 --> 00:21:27,660 אלה הם סוג דברים שאתה יכול לבדוק כדי לראות 316 00:21:27,660 --> 00:21:32,360 אם האפליקציה עושה את הדברים האלה. 317 00:21:32,360 --> 00:21:38,320 הקטגוריה שנייה גדולה של התנהגות זדונית, וזה כנראה הקטגוריה הגדולה ביותר עכשיו, 318 00:21:38,320 --> 00:21:43,950 הוא חיוג בלתי מורשה, הודעות SMS פרמיה לא מורשה 319 00:21:43,950 --> 00:21:46,080 או תשלומים לא מורשים. 320 00:21:46,080 --> 00:21:48,930 עוד דבר שמייחד את הטלפון 321 00:21:48,930 --> 00:21:52,700 הוא המכשיר מחובר לחשבון חיוב, 322 00:21:52,700 --> 00:21:55,960 וכאשר פעילויות יקרו בטלפון 323 00:21:55,960 --> 00:21:58,510 זה יכול ליצור חיובים. 324 00:21:58,510 --> 00:22:00,700 ניתן לרכוש דברים בטלפון, 325 00:22:00,700 --> 00:22:04,390 וכשאתה שולח הודעת טקסט SMS פרמיה שאתה בעצם נותן כסף 326 00:22:04,390 --> 00:22:11,590 לבעל החשבון של מספר הטלפון בצד השני. 327 00:22:11,590 --> 00:22:17,420 אלה הוקמו כדי לקבל ציטוטי מניות או לקבל את ההורוסקופ היומי שלך או דברים אחרים, 328 00:22:17,420 --> 00:22:21,680 אבל הם יכולים להיות שהוקמו כדי להזמין מוצר על ידי שליחת טקסט SMS. 329 00:22:21,680 --> 00:22:26,970 אנשים נותנים כסף לצלב האדום על ידי שליחת הודעת טקסט. 330 00:22:26,970 --> 00:22:30,650 אתה יכול לתת 10 דולרים שדרך. 331 00:22:30,650 --> 00:22:34,190 >> התוקפים, מה שהם עשו הוא שהם הקימו 332 00:22:34,190 --> 00:22:38,750 החשבונות במדינות זרות, והם להטביע בתוכנות זדוניות 333 00:22:38,750 --> 00:22:42,840 שהטלפון יהיה לשלוח הודעת טקסט SMS פרמיה, 334 00:22:42,840 --> 00:22:47,700 תגיד, כמה פעמים ביום, ובסוף החודש אתה מבין שאתה כבר בילה 335 00:22:47,700 --> 00:22:52,090 עשרות או אולי אפילו מאות דולרים, והם הולכים משם עם הכסף. 336 00:22:52,090 --> 00:22:57,280 זה החמיר כל כך, שזה היה הדבר הראשון שאנדרואיד 337 00:22:57,280 --> 00:23:00,760 שוק או גוגל המקום שזה היה השוק דמוי אדם באותה העת, 338 00:23:00,760 --> 00:23:04,430 וזה עכשיו Google Play-הדבר הראשון שגוגל החלה בדיקה. 339 00:23:04,430 --> 00:23:08,700 כאשר גוגל החלה להפיץ יישומי אנדרואיד בחנות האפליקציה שלהם 340 00:23:08,700 --> 00:23:11,350 הם אמרו שהם לא הולכים לבדוק כל דבר. 341 00:23:11,350 --> 00:23:15,630 אנחנו למשוך את האפליקציות ברגע שאנחנו כבר הודענו שהם כבר נשברו תנאי שירות שלנו, 342 00:23:15,630 --> 00:23:17,520 אבל אנחנו לא הולכים לבדוק כל דבר. 343 00:23:17,520 --> 00:23:24,350 ובכן, לפני כשנה זה החמיר כל כך עם תוכנות זדוניות הודעת טקסט SMS פרמיה זו 344 00:23:24,350 --> 00:23:28,030 כי זה הדבר הראשון שהם התחילו לבדוק ל. 345 00:23:28,030 --> 00:23:31,770 אם אפליקציה יכולה לשלוח הודעות טקסט SMS 346 00:23:31,770 --> 00:23:34,750 הם לבחון נוספים באופן ידני יישום זה. 347 00:23:34,750 --> 00:23:38,770 הם מחפשים APIs שקורא לזה, 348 00:23:38,770 --> 00:23:40,580 ועכשיו מאז גוגל הרחיבה, 349 00:23:40,580 --> 00:23:46,900 אבל זה היה הדבר הראשון שהם התחילו לחפש. 350 00:23:46,900 --> 00:23:50,690 >> כמה אפליקציות אחרות שעשו כמה הודעות SMS, 351 00:23:50,690 --> 00:23:56,980 אנדרואיד Qicsomos זה, אני מניח שזה נקרא. 352 00:23:56,980 --> 00:24:02,670 היה אירוע הנוכחי זה בנייד שבי CarrierIQ זה יצא 353 00:24:02,670 --> 00:24:07,720 כמו לשים את תוכנת ריגול במכשיר על ידי הספקים, 354 00:24:07,720 --> 00:24:10,820 כך שאנשים רצו לדעת אם הטלפון שלהם היה חשוף לזה, 355 00:24:10,820 --> 00:24:13,890 וזה היה יישום חינם שנבדק ש. 356 00:24:13,890 --> 00:24:17,520 ובכן, כמובן, מה את היישום הזה עשה היה זה שנשלח הודעות טקסט SMS פרימיום, 357 00:24:17,520 --> 00:24:20,090 זאת על ידי בדיקה כדי לראות אם אתם נגועים בתוכנות ריגול 358 00:24:20,090 --> 00:24:24,930 שטענת תוכנות זדוניות על גבי המכשיר שלך. 359 00:24:24,930 --> 00:24:27,310 אנחנו ראינו את אותו הדבר קורה בסופרבול האחרון. 360 00:24:27,310 --> 00:24:33,180 הייתה גרסה מזויפת של משחק כדורגל מאדן 361 00:24:33,180 --> 00:24:38,320 ששלח הודעות טקסט SMS פרמיה. 362 00:24:38,320 --> 00:24:45,750 זה בעצם ניסה ליצור רשת בוט מדי במכשיר. 363 00:24:45,750 --> 00:24:48,090 כאן יש לי כמה דוגמאות. 364 00:24:48,090 --> 00:24:52,640 מעניין מספיק, אפל היה די חכם, 365 00:24:52,640 --> 00:24:58,470 והם לא יאפשרו יישומים כדי לשלוח הודעות טקסט SMS בכלל. 366 00:24:58,470 --> 00:25:00,350 אין יישום יכול לעשות את זה. 367 00:25:00,350 --> 00:25:03,530 זו דרך להיפטר מכיתה של פגיעות גדולה כולו, 368 00:25:03,530 --> 00:25:09,040 אבל על אנדרואיד אתה יכול לעשות את זה, וכמובן, בלקברי שאתה יכול לעשות את זה יותר מדי. 369 00:25:09,040 --> 00:25:13,060 זה מעניין, כי בלקברי כל מה שאתה צריך זה הרשאות אינטרנט 370 00:25:13,060 --> 00:25:18,370 כדי לשלוח הודעת טקסט SMS. 371 00:25:18,370 --> 00:25:21,580 >> דבר האחר באמת שאנחנו מחפשים 372 00:25:21,580 --> 00:25:24,780 כאשר אנחנו מסתכלים כדי לראות אם משהו הוא זדוני הוא רק כל סוג של 373 00:25:24,780 --> 00:25:28,100 פעילות לא מורשה לרשת, כמו להסתכל על פעילות הרשת 374 00:25:28,100 --> 00:25:31,570 האפליקציה אמורה צריך את הפונקציונליות שלו, 375 00:25:31,570 --> 00:25:35,380 ולהסתכל על פעילות אחרת ברשת זו. 376 00:25:35,380 --> 00:25:43,380 אולי אפליקציה, לעבודה, יש לקבל נתונים על גבי HTTP, 377 00:25:43,380 --> 00:25:47,500 אבל אם הוא עושה דברים על דואר אלקטרוני או SMS או Bluetooth או משהו כזה 378 00:25:47,500 --> 00:25:52,890 כעת אפליקציה שעלולה להיות זדונית, אז זה עוד דבר שאתה יכול לבדוק ל. 379 00:25:52,890 --> 00:26:00,430 ועל השקופית הזאת כאן יש לי כמה דוגמאות לכך. 380 00:26:00,430 --> 00:26:05,950 עוד דבר מעניין שראינו בתוכנה זדונית שקרה ב2009 381 00:26:05,950 --> 00:26:07,600 וזה קרה בצורה גדולה. 382 00:26:07,600 --> 00:26:11,390 אני לא יודע אם זה קרה כל כך הרבה מאז, אבל זה היה אפליקציה 383 00:26:11,390 --> 00:26:15,140 שהתחזה ליישום אחר. 384 00:26:15,140 --> 00:26:21,700 הייתה קבוצה של יישומים, וזה זכה לכינוי התקפת 09Droid, 385 00:26:21,700 --> 00:26:29,770 ומישהו החליט שיש הרבה בנקים קטנים, אזוריים, בגודל בינוני 386 00:26:29,770 --> 00:26:32,260 כי לא הייתה לי יישומי בנקאות מקוונים, 387 00:26:32,260 --> 00:26:36,870 אז מה שהם עשו היה שהם בנו על 50 יישומי בנקאות מקוונים 388 00:26:36,870 --> 00:26:39,410 שכל מה שהם עשו היה לקחת את שם המשתמש וסיסמא 389 00:26:39,410 --> 00:26:42,190 ולהפנות אותך לאתר. 390 00:26:42,190 --> 00:26:47,470 ואז הם שמו את כל אלה בGoogle Marketplace, 391 00:26:47,470 --> 00:26:51,530 בשוק דמוי אדם, וכאשר מישהו חיפש כדי לראות אם הבנק שלהם 392 00:26:51,530 --> 00:26:56,000 היה יישום שהם ימצאו את היישום המזויף, 393 00:26:56,000 --> 00:27:01,230 אשר אסף את אישורי שלהם ולאחר מכן יופנה אותם לאתר האינטרנט שלהם. 394 00:27:01,230 --> 00:27:06,640 הדרך שזה בעצם הפך-האפליקציות היו שם במשך כמה שבועות, 395 00:27:06,640 --> 00:27:09,050 והיו אלפים ואלפי הורדות. 396 00:27:09,050 --> 00:27:12,910 >> בדרך זו יצאה לאור הייתה מישהו נתקל בבעיה 397 00:27:12,910 --> 00:27:15,740 עם אחד מהיישומים, והם קראו לבנק שלהם, 398 00:27:15,740 --> 00:27:18,390 והם נקראים קו תמיכת לקוחות של הבנק שלהם ואמרו, 399 00:27:18,390 --> 00:27:21,180 "יש לי בעיה עם יישום הבנקאות הנייד שלך." 400 00:27:21,180 --> 00:27:23,460 "האם אתה יכול לעזור לי?" 401 00:27:23,460 --> 00:27:26,540 והם אמרו, "אין לנו יישום בנקאות נייד." 402 00:27:26,540 --> 00:27:28,120 שהתחיל את החקירה. 403 00:27:28,120 --> 00:27:31,200 הבנק שנקרא גוגל, ולאחר מכן גוגל הסתכלה ואמרה, 404 00:27:31,200 --> 00:27:37,220 "וואו, אותו מחבר כתב 50 יישומים בנקאיים," ולקח את כולם. 405 00:27:37,220 --> 00:27:43,410 אבל בהחלט זה יכול לקרות שוב. 406 00:27:43,410 --> 00:27:51,790 יש הרשימה של כל הבנקים השונים כאן 407 00:27:51,790 --> 00:27:55,870 שהיו חלק מהונאה זו. 408 00:27:55,870 --> 00:28:02,050 הדבר האחר אפליקציה יכולה לעשות הוא להציג את ממשק המשתמש של יישום אחר. 409 00:28:02,050 --> 00:28:06,430 בזמן שהוא פועל זה יכול לצוץ ממשק משתמש פייסבוק. 410 00:28:06,430 --> 00:28:09,540 זה אומר שאתה צריך להכניס את שם המשתמש והסיסמה שלך כדי להמשיך 411 00:28:09,540 --> 00:28:15,090 או לשים את כל שם משתמש וממשק משתמש סיסמא עבור אתר אינטרנט 412 00:28:15,090 --> 00:28:18,420 שאולי המשתמש משתמש רק כדי לנסות להערים על המשתמשים 413 00:28:18,420 --> 00:28:21,340 לתוך לשים את אישורי שלהם פנימה 414 00:28:21,340 --> 00:28:25,590 זה באמת מקביל ישר של ההתקפות פישינג דוא"ל 415 00:28:25,590 --> 00:28:28,210 שבו מישהו שולח לך הודעת דואר אלקטרוני 416 00:28:28,210 --> 00:28:33,050 ונותן לך בעצם ממשק משתמש מזויף לאתר 417 00:28:33,050 --> 00:28:37,320 כי יש לך גישה אליו. 418 00:28:37,320 --> 00:28:41,590 >> הדבר האחר שאנחנו מחפשים בקוד זדוני הוא שינוי מערכת. 419 00:28:41,590 --> 00:28:48,160 אתה יכול להסתכל לכל קריאות API שדורשות זכות שורש 420 00:28:48,160 --> 00:28:50,870 להוציא לפועל בצורה נכונה. 421 00:28:50,870 --> 00:28:56,160 שינוי פרוקסי האינטרנט של המכשיר יהיה משהו שיישום 422 00:28:56,160 --> 00:28:59,530 לא אמור להיות מסוגל לעשות. 423 00:28:59,530 --> 00:29:03,030 אבל אם היישום יש שם קוד כדי לעשות את זה 424 00:29:03,030 --> 00:29:05,960 אתה יודע שזה כנראה יישום זדוני 425 00:29:05,960 --> 00:29:09,620 או מאוד מאוד צפוי להיות יישום זדוני, 426 00:29:09,620 --> 00:29:13,910 ואז מה שיקרה הוא שאפליקציה תהיה דרך כלשהי של הסלמת זכות. 427 00:29:13,910 --> 00:29:17,200 זה היה קצת הסלמת זכות לנצל 428 00:29:17,200 --> 00:29:20,730 ביישום, ולאחר מכן ברגע שהסלים הרשאות 429 00:29:20,730 --> 00:29:23,800 זה הייתי עושה את השינויים האלו מערכת. 430 00:29:23,800 --> 00:29:28,010 אתה יכול למצוא את תוכנות זדוניות כי יש הסלמת הרשאות 431 00:29:28,010 --> 00:29:32,550 בזה אפילו בלי לדעת איך הסלמת ההרשאות 432 00:29:32,550 --> 00:29:37,960 לנצל עומד לקרות, ושזו דרך נחמדה, קלה 433 00:29:37,960 --> 00:29:41,220 כדי לחפש תוכנות זדוניות. 434 00:29:41,220 --> 00:29:46,030 DroidDream היה כנראה החתיכה של תוכנות זדוניות אנדרואיד המפורסם ביותר. 435 00:29:46,030 --> 00:29:50,530 אני חושב שזה השפיע על כ -250,000 משתמשים על פני כמה ימים 436 00:29:50,530 --> 00:29:52,810 לפני שהוא נמצא. 437 00:29:52,810 --> 00:29:56,890 הם ארזו מחדש 50 יישומים מזויפים, 438 00:29:56,890 --> 00:30:00,370 לשים אותם בחנות יישומי אנדרואיד, 439 00:30:00,370 --> 00:30:10,940 ובעצם זה היה קוד jailbreak אנדרואיד להסלים הרשאות 440 00:30:10,940 --> 00:30:16,380 ולאחר מכן להתקין את פיקוד ושליטה ולהפוך את כל הקורבנות 441 00:30:16,380 --> 00:30:20,690 לרשת בוט, אבל אתה יכול לזהות את זה 442 00:30:20,690 --> 00:30:24,170 אם היית סורק את הבקשה ורק מחפש 443 00:30:24,170 --> 00:30:32,230 API שיחות שרשות שורש דרוש לביצוע בצורה נכונה. 444 00:30:32,230 --> 00:30:40,150 >> ויש דוגמא כאן יש לי שהוא משנה את ה-proxy, 445 00:30:40,150 --> 00:30:46,380 וזה בעצם רק זמין באנדרואיד. 446 00:30:46,380 --> 00:30:49,070 אתה יכול לראות שאני נותן לך הרבה דוגמאות על אנדרואיד 447 00:30:49,070 --> 00:30:53,990 כי זה מקום שבו המערכת האקולוגית תוכנות זדוניות הפעילה ביותר היא 448 00:30:53,990 --> 00:30:58,690 בגלל שזה ממש קל לפורץ לקבל קוד זדוני 449 00:30:58,690 --> 00:31:01,470 לתוך שוק אנדרואיד. 450 00:31:01,470 --> 00:31:06,480 זה לא כל כך קל לעשות את זה ב-App Store של אפל 451 00:31:06,480 --> 00:31:10,250 כי אפל דורש למפתחים לזהות את עצמם 452 00:31:10,250 --> 00:31:12,790 ולחתום על הקוד. 453 00:31:12,790 --> 00:31:20,340 הם בעצם לבדוק מי אתה, ואפל הוא למעשה בוחן את היישומים. 454 00:31:20,340 --> 00:31:27,450 אנחנו לא רואים הרבה תוכנות זדוניות אמיתיים שבו המכשיר הוא מקבל בסכנה. 455 00:31:27,450 --> 00:31:32,250 אני אדבר על כמה דוגמאות שבו זה באמת פרטיות שמקבל בסכנה, 456 00:31:32,250 --> 00:31:38,460 וזה מה שבאמת קורה במכשיר של אפל. 457 00:31:38,460 --> 00:31:44,090 דבר נוסף שיש לחפש קוד זדוני, קוד מסוכן במכשירים 458 00:31:44,090 --> 00:31:50,300 הוא פצצות היגיון או זמן, ופצצות זמן הם כנראה 459 00:31:50,300 --> 00:31:53,370 הרבה יותר קל לחפש מאשר פצצות היגיון. 460 00:31:53,370 --> 00:31:57,030 אבל עם פצצות זמן, מה שאתה יכול לעשות הוא שאתה יכול לחפש 461 00:31:57,030 --> 00:32:04,760 מקומות בקוד שבו הזמן עומד למבחן או זמן מוחלט הוא חיפש 462 00:32:04,760 --> 00:32:08,190 לפני פונקציונלי מסוימים באפליקציה קורה. 463 00:32:08,190 --> 00:32:14,200 ואת זה ניתן לעשות כדי להסתיר את הפעילות שמן המשתמש, 464 00:32:14,200 --> 00:32:17,510 כך זה קורה בשעתי הלילה מאוחר. 465 00:32:17,510 --> 00:32:24,350 DroidDream עשה את כל פעילותה 11:00-08:00 זמן מקומי 466 00:32:24,350 --> 00:32:30,650 כדי לנסות לעשות את זה בזמן שהמשתמש לא יכול להיות שימוש במכשיר שלהם. 467 00:32:30,650 --> 00:32:38,680 >> סיבה נוספת לעשות זאת היא אם אנשים משתמשים בניתוח התנהגות של יישום, 468 00:32:38,680 --> 00:32:43,430 מפעיל את האפליקציה בארגז חול כדי לראות מה היא ההתנהגות של היישום, 469 00:32:43,430 --> 00:32:51,090 הם יכולים להשתמש בהיגיון מבוסס זמן לעשות פעילות 470 00:32:51,090 --> 00:32:54,640 כאשר האפליקציה אינה בארגז החול. 471 00:32:54,640 --> 00:33:01,520 לדוגמא, חנות יישומים כמו אפל 472 00:33:01,520 --> 00:33:07,940 מפעיל את היישום, אבל הם כנראה לא להפעיל כל יישום, למשל, 30 ימים 473 00:33:07,940 --> 00:33:10,550 לפני האישור זה, אז אתה יכול לשים 474 00:33:10,550 --> 00:33:14,120 היגיון ביישום שלך שאמרו, בסדר, רק לעשות את הדבר הרע 475 00:33:14,120 --> 00:33:20,490 לאחר 30 ימים חלפו או לאחר 30 ימים לאחר תאריך הפרסום של הבקשה, 476 00:33:20,490 --> 00:33:27,020 ושיכול לעזור להסתיר את הקוד הזדוני מאנשים שבודקים אותו. 477 00:33:27,020 --> 00:33:30,050 אם חברות אנטי וירוס פועלות דברים בארגזי חול 478 00:33:30,050 --> 00:33:36,370 או חנויות היישומים עצמם זה יכול לעזור 479 00:33:36,370 --> 00:33:39,260 להסתיר את זה מבדיקה ש. 480 00:33:39,260 --> 00:33:43,020 עכשיו, הצד השני של המטבע הוא שזה קל למצוא עם ניתוח סטטי, 481 00:33:43,020 --> 00:33:46,170 כך למעשה בודק את הקוד אתה יכול לחפש את כל המקומות 482 00:33:46,170 --> 00:33:54,010 שבו היישום בודק את הזמן ולבדוק בדרך זו. 483 00:33:54,010 --> 00:33:58,850 וכאן יש לי כמה דוגמאות על 3 פלטפורמות שונות אלה 484 00:33:58,850 --> 00:34:05,640 איך שזמן יכול להיבדק על ידי יצרנית האפליקציה 485 00:34:05,640 --> 00:34:10,520 אז אתה יודע מה לחפש אם אתה בוחן את היישום באופן סטטי. 486 00:34:10,520 --> 00:34:14,570 >> אני פשוט עברתי חבורה של פעילויות זדוניות אחרות לגמרי 487 00:34:14,570 --> 00:34:18,969 שראינו בטבע, אבל אילו הם הנפוצים ביותר? 488 00:34:18,969 --> 00:34:23,940 באותו מחקר מצפון קרוליינה סטייט הנייד פרויקט הגנום 489 00:34:23,940 --> 00:34:28,560 פורסם כמה נתונים, והיו בעצם 4 אזורים 490 00:34:28,560 --> 00:34:32,850 כי הם ראו שהיו בו הרבה פעילות. 491 00:34:32,850 --> 00:34:35,370 37% מהאפליקציות עשו הסלמת הרשאות, 492 00:34:35,370 --> 00:34:38,429 ולכן הם היו איזה סוג של קוד jailbreak שם 493 00:34:38,429 --> 00:34:42,070 שבו הם ניסו להסלים הרשאות, כך שהם יכולים 494 00:34:42,070 --> 00:34:48,360 אין פקודות API פועלות כמערכת ההפעלה. 495 00:34:48,360 --> 00:34:52,520 45% מהאפליקציות שם בחוץ עשו SMS פרימיום, 496 00:34:52,520 --> 00:34:57,260 אז זה אחוז עצום, שמנסה להפיק רווחים באופן ישיר. 497 00:34:57,260 --> 00:35:02,640 93% עשו בשלט רחוק, ולכן הם ניסו להקים רשת בוט, רשת בוט הנייד. 498 00:35:02,640 --> 00:35:08,990 ו45% נקטפו פרטים מזהים 499 00:35:08,990 --> 00:35:16,230 כמו מספרי טלפון, UUIDs, מיקום GPS, חשבונות המשתמשים, 500 00:35:16,230 --> 00:35:22,870 וזה מסתכם ליותר מ -100 כי רוב תוכנות זדוניות מנסה לעשות כמה מהדברים האלה. 501 00:35:22,870 --> 00:35:27,070 >> אני הולך לעבור למחצית השנייה ולדבר על נקודות התורפה בקוד. 502 00:35:27,070 --> 00:35:29,480 זה במחצית השנייה של הפעילות מסוכנת. 503 00:35:29,480 --> 00:35:33,450 זה מקום בו למעשה את המפתח הוא עושה טעויות. 504 00:35:33,450 --> 00:35:37,210 יזם לגיטימי כתיבת אפליקציה לגיטימית 505 00:35:37,210 --> 00:35:41,830 הוא עושה טעויות או אינו מודע לסיכונים של הפלטפורמה הניידת. 506 00:35:41,830 --> 00:35:44,780 הם פשוט לא יודעים איך לעשות אפליקציה מאובטחת ניידת, 507 00:35:44,780 --> 00:35:47,700 או לפעמים היזם לא אכפת לשים את המשתמש בסיכון. 508 00:35:47,700 --> 00:35:50,850 לפעמים חלק מהמודל העסקי שלהם עשוי להיות 509 00:35:50,850 --> 00:35:54,610 קצירת המידע האישי של המשתמש. 510 00:35:54,610 --> 00:35:58,090 זה סוג של הקטגוריה אחרת, וזו הסיבה שחלק מזה זדוני 511 00:35:58,090 --> 00:36:03,200 לעומת התחלות לגיטימיות לדמם מעל בגלל שיש חילוקי דעות 512 00:36:03,200 --> 00:36:10,440 בין מה שהמשתמש רוצה ומה שהמשתמש רואה מסוכן 513 00:36:10,440 --> 00:36:13,050 ומה מפתח היישום רואה מסוכן. 514 00:36:13,050 --> 00:36:18,380 כמובן, זה לא נתונים של מפתח היישום ברוב המקרים. 515 00:36:18,380 --> 00:36:22,030 >> ולבסוף, דרך נוספת זה קורה היא שקבלן עשוי לקשר ב 516 00:36:22,030 --> 00:36:28,600 ספרייה משותפת שיש לו נקודות תורפה או התנהגות מסוכנת זה בזה 517 00:36:28,600 --> 00:36:32,480 ללא ידיעתם. 518 00:36:32,480 --> 00:36:37,060 הקטגוריה הראשונה היא דליפת מידע רגישה, 519 00:36:37,060 --> 00:36:40,030 וזה כאשר האפליקציה אוספת מידע 520 00:36:40,030 --> 00:36:44,980 כמו מיקום, פרטי בעלי מידע בפנקס כתובות 521 00:36:44,980 --> 00:36:48,000 ושולח את המכשיר. 522 00:36:48,000 --> 00:36:53,050 וברגע זה את המכשיר, אנחנו לא יודעים מה קורה עם המידע הזה. 523 00:36:53,050 --> 00:36:57,170 זה יכול להיות מאוחסן לא מאובטח על ידי מפתח היישום. 524 00:36:57,170 --> 00:37:02,070 ראינו מפתחי יישומים מקבלים בסכנה, 525 00:37:02,070 --> 00:37:05,820 ואת הנתונים שהם מקבל אחסון נלקח. 526 00:37:05,820 --> 00:37:10,970 זה קרה לפני כמה חודשים לפיתוח בפלורידה 527 00:37:10,970 --> 00:37:21,660 שבו מספר עצום של-זה היה UUIDs iPad ושמות מכשיר 528 00:37:21,660 --> 00:37:25,270 הודלפו בגלל שמישהו, אני חושב שזה היה בעילום שם, 529 00:37:25,270 --> 00:37:29,460 טען לעשות את זה, פרץ לשרתים של המפתחים 530 00:37:29,460 --> 00:37:34,920 וגנב מיליונים iPad UUIDs 531 00:37:34,920 --> 00:37:37,390 ושמות מחשב. 532 00:37:37,390 --> 00:37:40,260 לא המידע מסוכן ביותר, 533 00:37:40,260 --> 00:37:46,820 אבל מה אם זה היה האחסון של שמות משתמש וסיסמאות 534 00:37:46,820 --> 00:37:48,170 וכתובות בבית? 535 00:37:48,170 --> 00:37:51,100 יש הרבה אפליקציות שמאחסנות מידע מסוג הזה. 536 00:37:51,100 --> 00:37:53,230 הסיכון הוא שם. 537 00:37:53,230 --> 00:37:56,620 >> הדבר האחר שיכול לקרות הוא אם היזם לא דואג 538 00:37:56,620 --> 00:38:01,370 כדי לאבטח את ערוץ הנתונים, וזה עוד פגיעות גדולות אני הולך לדבר עליו, 539 00:38:01,370 --> 00:38:05,160 נתונים שנשלחים בברור. 540 00:38:05,160 --> 00:38:09,040 אם המשתמש מחובר לרשת Wi-Fi ציבורית 541 00:38:09,040 --> 00:38:12,330 או מישהו מרחרח את האינטרנט למקום 542 00:38:12,330 --> 00:38:19,260 לאורך נתיב נתונים שנחשפים. 543 00:38:19,260 --> 00:38:23,790 מקרה מפורסם מאוד אחד של דליפת מידע זה קרה עם פנדורה, 544 00:38:23,790 --> 00:38:27,250 וזה משהו שאנחנו נחקרו בVeracode. 545 00:38:27,250 --> 00:38:33,200 שמע שהיה שם, אני חושב שזה היה ועדת סחר פדרלי 546 00:38:33,200 --> 00:38:35,310 חקירה קורה עם פנדורה. 547 00:38:35,310 --> 00:38:39,830 אנחנו אמרתי, "מה קורה שם? בואו נתחיל לחפור לתוך יישום פנדורה". 548 00:38:39,830 --> 00:38:46,690 ומה שאנחנו נחושים היה יישום פנדורה שנאסף 549 00:38:46,690 --> 00:38:51,270 מינך וגילך, 550 00:38:51,270 --> 00:38:56,660 וזה גם לגשת מיקום GPS שלך, ואת יישום פנדורה 551 00:38:56,660 --> 00:39:00,200 עשיתי את זה למה שהם אמרו היו סיבות לגיטימיות. 552 00:39:00,200 --> 00:39:05,360 המוזיקה שהם מנגנים, פנדורה היא אפליקציה-הזרמת מוסיקה 553 00:39:05,360 --> 00:39:07,530 המוזיקה שהם ניגנו הייתה מורשה רק בארצות הברית, 554 00:39:07,530 --> 00:39:13,020 כך הם היו צריכים לבדוק כדי לעמוד בהסכמי הרישיון שלהם, כי לא היו להם 555 00:39:13,020 --> 00:39:17,240 למוזיקה שהמשתמש היה בארצות הברית. 556 00:39:17,240 --> 00:39:25,070 הם גם רצו לעמוד בייעוץ ההורי 557 00:39:25,070 --> 00:39:33,790 סביב שפה בוגרת במוסיקה, 558 00:39:33,790 --> 00:39:37,500 ולכן מדוברים בתכנית מרצון, אבל הם רצו לעמוד בכי 559 00:39:37,500 --> 00:39:43,010 ולא לשחק במילים מפורשות לילדים 13 ומטה. 560 00:39:43,010 --> 00:39:46,280 >> היה להם סיבות לגיטימיות לאיסוף נתונים אלה. 561 00:39:46,280 --> 00:39:49,160 הייתה לי האפליקציה שלהם ההרשאות לעשות את זה. 562 00:39:49,160 --> 00:39:52,000 משתמשים חשבו שזה לגיטימי. אבל מה קרה? 563 00:39:52,000 --> 00:39:55,810 הם מקושרים ב3 או 4 ספריות שונות של מודעות. 564 00:39:55,810 --> 00:39:59,140 עכשיו כל כל ספריות אלו של מודעות פתאומיות 565 00:39:59,140 --> 00:40:02,970 מקבלים גישה לאותו מידע זה. 566 00:40:02,970 --> 00:40:05,830 הספריות של מודעה, אם אתה מסתכל על הקוד בספריות מודעה 567 00:40:05,830 --> 00:40:08,430 מה שהם עושים הוא כל ספריית מודעה אומרת 568 00:40:08,430 --> 00:40:11,340 "האם יש לאפליקציה שלי אישור לקבל את מיקום ה-GPS?" 569 00:40:11,340 --> 00:40:14,890 "אה, זה? אוקיי, יגיד לי מיקום GPS". 570 00:40:14,890 --> 00:40:16,620 כל ספריית מודעות אחת עושה את זה, 571 00:40:16,620 --> 00:40:19,740 ואם היישום אין הרשאת GPS 572 00:40:19,740 --> 00:40:23,460 זה לא יהיה מסוגל לקבל את זה, אבל אם זה יקר, זה יהיה לקבל את זה. 573 00:40:23,460 --> 00:40:26,240 זה מקום בו המודל העסקי של ספריות מודעה 574 00:40:26,240 --> 00:40:31,160 מתנגד לפרטיות של המשתמש. 575 00:40:31,160 --> 00:40:34,980 ויש כבר מחקרים שם בחוץ, כי אומר שאם אתה יודע את הגיל 576 00:40:34,980 --> 00:40:38,430 של אדם, ואתה יודע את המיקום שלהם 577 00:40:38,430 --> 00:40:42,530 שבו הם ישנים בלילה, כי יש לך קואורדינטות ה-GPS שלהם 578 00:40:42,530 --> 00:40:46,030 בזמן שהם אולי ישנים, אתה יודע בדיוק מי הוא אותו האדם 579 00:40:46,030 --> 00:40:50,230 כי אתה יכול לקבוע איזה מבני משק הבית שהוא אותו האדם. 580 00:40:50,230 --> 00:40:54,780 באמת זו היא זיהוי למפרסמים 581 00:40:54,780 --> 00:40:59,530 בדיוק מי שאתה, וזה נראה כאילו זה היה לגיטימי. 582 00:40:59,530 --> 00:41:02,800 אני רק רוצה הזרמת המוזיקה שלי, וזו הדרך היחידה להשיג את זה. 583 00:41:02,800 --> 00:41:05,370 >> ובכן, אנחנו נחשפים זה. 584 00:41:05,370 --> 00:41:08,030 כתבנו את זה בכמה פוסטים, 585 00:41:08,030 --> 00:41:13,280 והתברר שמישהו ממגזין רולינג סטון 586 00:41:13,280 --> 00:41:18,810 לקרוא אחד שנכתב בבלוג שלנו וכתב בבלוג שלהם ברולינג סטון על זה, 587 00:41:18,810 --> 00:41:22,120 ולמחרת פנדורה חשב שזה רעיון טוב 588 00:41:22,120 --> 00:41:27,600 כדי להסיר את ספריות מודעה מהיישום שלהם. 589 00:41:27,600 --> 00:41:31,270 עד כמה שאני יודע שהם, הם רק יש לברך. 590 00:41:31,270 --> 00:41:35,770 אני חושב שהם סוג Freemium היחיד של אפליקציה שעשה את זה. 591 00:41:35,770 --> 00:41:38,660 כל האפליקציות Freemium האחרות אותה התנהגות זו, 592 00:41:38,660 --> 00:41:41,780 כך שיש לך לחשוב על איזה סוג של נתונים שאתה נותן 593 00:41:41,780 --> 00:41:48,330 יישומי Freemium האלה כי זה כל הולך למפרסמים. 594 00:41:48,330 --> 00:41:53,390 הפרטוריאני גם עשה מחקר על ספריות משותפות ואמר, 595 00:41:53,390 --> 00:41:57,100 "בואו נסתכל על מה שמשותף ספריות הן הספריות משותפות העליונים," וזו הייתה נתונים. 596 00:41:57,100 --> 00:41:59,420 >> הם ניתחו 53,000 אפליקציות, 597 00:41:59,420 --> 00:42:01,900 והספרייה המשותפת מספר 1 הייתה Admob. 598 00:42:01,900 --> 00:42:06,060 זה היה ממש ב38% מהיישומים שם בחוץ, 599 00:42:06,060 --> 00:42:08,800 כך 38% מהיישומים שאתה משתמש 600 00:42:08,800 --> 00:42:11,250 סביר להניח שקצירת המידע האישי שלך 601 00:42:11,250 --> 00:42:16,650 ולשלוח אותו לרשתות הפרסום. 602 00:42:16,650 --> 00:42:19,350 אפצ'י ואנדרואיד היו 8% ו -6%, 603 00:42:19,350 --> 00:42:22,960 ואז האחרים למטה אלה בתחתית, מודעות גוגל, פרץ, 604 00:42:22,960 --> 00:42:26,600 מאפיה עיר ואלף שנתי מדיה, 605 00:42:26,600 --> 00:42:30,500 כל אלה הם חברות הפרסום, ולאחר מכן, מעניין מספיק, 606 00:42:30,500 --> 00:42:33,500 4% צמודים בספריית פייסבוק 607 00:42:33,500 --> 00:42:38,870 כנראה לעשות אימות דרך פייסבוק 608 00:42:38,870 --> 00:42:40,810 אז האפליקציה יכולה לאמת את פייסבוק. 609 00:42:40,810 --> 00:42:44,660 אבל זה גם אומר התאגיד פייסבוק שולט קוד 610 00:42:44,660 --> 00:42:49,010 שפועל ב 4% מאפליקציות אנדרואיד הניידים שם בחוץ, 611 00:42:49,010 --> 00:42:53,490 ויש להם גישה לכל הנתונים שיש אפליקציה שרשות תקבל ב. 612 00:42:53,490 --> 00:42:57,170 פייסבוק בעצם מנסה למכור שטחי פרסום. 613 00:42:57,170 --> 00:43:00,120 זה המודל העסקי שלהם. 614 00:43:00,120 --> 00:43:02,920 >> אם אתה מסתכל על מערכת אקולוגית כולה זה עם הרשאות אלה 615 00:43:02,920 --> 00:43:07,740 וספריות משותפות אתה מתחיל לראות ש 616 00:43:07,740 --> 00:43:13,850 יש לך הרבה סיכון ביישום כביכול לגיטימי. 617 00:43:13,850 --> 00:43:19,360 אותו הדבר הדומה שקרה עם פנדורה 618 00:43:19,360 --> 00:43:22,340 קרה עם יישום בשם נתיב, 619 00:43:22,340 --> 00:43:27,660 הנתיב חשב שהם מפתחים מועילים וידידותיים. 620 00:43:27,660 --> 00:43:32,160 הם פשוט ניסו לתת לך חוויית משתמש מעולה, 621 00:43:32,160 --> 00:43:37,810 והתברר כי מבלי להציג הודעה למשתמש או לספר את משתמש דבר- 622 00:43:37,810 --> 00:43:40,400 וזה קרה ב-iPhone ועל אנדרואיד, 623 00:43:40,400 --> 00:43:44,420 האפליקציה פנדורה הייתה ב-iPhone ו-Android- 624 00:43:44,420 --> 00:43:48,890 כי יישום השביל היה תופס את פנקס הכתובות שלך כל 625 00:43:48,890 --> 00:43:52,830 והעלאתו לנתיב רק בעת התקנה וניהלה את היישום, 626 00:43:52,830 --> 00:43:55,840 והם לא ספרו לך על זה. 627 00:43:55,840 --> 00:43:58,750 הם חשבו שזה היה ממש מועיל לך 628 00:43:58,750 --> 00:44:04,040 כדי להיות מסוגל לחלוק עם כל האנשים בפנקס הכתובות שלך 629 00:44:04,040 --> 00:44:06,920 שאתה משתמש ביישום הנתיב. 630 00:44:06,920 --> 00:44:09,490 >> ובכן, ברור נתיב חשב שזה נהדר עבור החברה שלהם. 631 00:44:09,490 --> 00:44:13,510 לא כל כך גדול למשתמש. 632 00:44:13,510 --> 00:44:19,020 אתה צריך לחשוב שזה דבר אחד, אם אולי בגיל התבגרות 633 00:44:19,020 --> 00:44:23,700 משתמש ביישום זה ועשרות חבריהם נמצאים שם, 634 00:44:23,700 --> 00:44:29,360 אבל מה אם זה המנכ"ל של חברה שמתקינה נתיב 635 00:44:29,360 --> 00:44:33,170 ולאחר מכן את כל ספר כתובות שלהם פתאומי כולו הוא שם למעלה? 636 00:44:33,170 --> 00:44:38,310 אתה הולך לקבל הרבה מידע ליצירת קשר בעל ערך פוטנציאלי 637 00:44:38,310 --> 00:44:40,920 להרבה אנשים. 638 00:44:40,920 --> 00:44:44,500 כתב ניו יורק טיימס, ייתכן שתוכל לקבל את מספר הטלפון 639 00:44:44,500 --> 00:44:47,380 לנשיאים לשעבר מפנקס הכתובות שלהם, 640 00:44:47,380 --> 00:44:54,780 אז ברור שהרבה מידע רגיש מועבר עם משהו כזה. 641 00:44:54,780 --> 00:44:58,090 היה דש כזה גדול על זה הנתיב שהתנצל. 642 00:44:58,090 --> 00:45:01,610 הם שינו את האפליקציה שלהם, ואפילו זה השפיע על אפל. 643 00:45:01,610 --> 00:45:06,950 אפל אמר, "אנחנו הולכים להכריח ספקי יישום לבקש ממשתמשים 644 00:45:06,950 --> 00:45:12,650 אם הם הולכים לאסוף את פנקס הכתובות של כולם ". 645 00:45:12,650 --> 00:45:15,360 >> זה נראה כמו מה שקורה כאן הוא 646 00:45:15,360 --> 00:45:19,430 כאשר יש פגיעה בפרטיות אחד גדולה וזה עושה את העיתונות 647 00:45:19,430 --> 00:45:21,680 אנו רואים שינוי בחוץ. 648 00:45:21,680 --> 00:45:23,230 אבל כמובן, יש דברים אחרים שם בחוץ. 649 00:45:23,230 --> 00:45:27,440 יישום LinkedIn יבול ערכי לוח השנה שלך, 650 00:45:27,440 --> 00:45:34,530 אבל אפל לא עושה המשתמש שתתבקש על זה. 651 00:45:34,530 --> 00:45:38,030 ערכי לוח שנה יכולים להיות מידע רגיש באותם יותר מדי. 652 00:45:38,030 --> 00:45:40,000 לאן אתה הולך למתוח את הקו? 653 00:45:40,000 --> 00:45:43,960 זה באמת סוג של מקום מתפתח 654 00:45:43,960 --> 00:45:47,640 שבו באמת אין רמה טובה שם בחוץ 655 00:45:47,640 --> 00:45:51,990 למשתמשים להבין את המידע שלהם כאשר הוא הולך להיות בסיכון 656 00:45:51,990 --> 00:45:57,820 וכאשר הם הולכים יודעים שזה נלקח. 657 00:45:57,820 --> 00:46:03,040 כתבנו אפליקציה בVeracode נקראת Adios, 658 00:46:03,040 --> 00:46:08,350 ובעצם זה מותר לך להצביע האפליקציה בספריית ה-iTunes שלך 659 00:46:08,350 --> 00:46:12,550 ולהסתכל על כל היישומים שמסקו את פנקס הכתובות שלך מלא. 660 00:46:12,550 --> 00:46:19,760 וכפי שאתם יכולים לראות ברשימה זו כאן, ציפורים כועסת, 661 00:46:19,760 --> 00:46:21,590 AIM, AroundMe. 662 00:46:21,590 --> 00:46:24,050 מדוע ציפורים כועסים צריכות את פנקס הכתובות שלך? 663 00:46:24,050 --> 00:46:29,160 אני לא יודע, אבל זה איכשהו. 664 00:46:29,160 --> 00:46:32,310 >> זה משהו שיישומים רבים, רבים עושים. 665 00:46:32,310 --> 00:46:34,780 אתה יכול לבדוק את הקוד לזה. 666 00:46:34,780 --> 00:46:38,660 יש ממשקי API מוגדרים היטב עבור iPhone, Android ו-BlackBerry 667 00:46:38,660 --> 00:46:42,120 כדי להגיע לפנקס הכתובות. 668 00:46:42,120 --> 00:46:48,520 אתה יכול ממש בקלות לבדוק את זה, וזה מה שעשינו ביישום Adios שלנו. 669 00:46:48,520 --> 00:46:52,320 הקטגוריה הבאה, אחסון נתונים רגיש לא בטוח, 670 00:46:52,320 --> 00:46:55,670 הוא משהו שבו מפתחים לקחת משהו כמו סיכה או מספר חשבון 671 00:46:55,670 --> 00:46:58,530 או סיסמא ולאחסן אותו בברור על המכשיר. 672 00:46:58,530 --> 00:47:02,310 חמור מכך, הם עלולים לשמור אותו באזור בטלפון 673 00:47:02,310 --> 00:47:06,820 שהוא בעולם נגיש, כמו כרטיס SD. 674 00:47:06,820 --> 00:47:11,320 אתה רואה את זה לעתים קרובות יותר על אנדרואיד משום אנדרואיד מאפשר לכרטיס SD. 675 00:47:11,320 --> 00:47:13,200 מכשירי ה-iPhone לא. 676 00:47:13,200 --> 00:47:17,900 אבל גם ראינו את זה קורה ביישום סיטיגרופ. 677 00:47:17,900 --> 00:47:25,450 יישום הבנקאות המקוון שלהם מאוחסן מספרי החשבון לא מאובטח, 678 00:47:25,450 --> 00:47:28,120 רק בברור, כך שאם אתה איבדת את המכשיר שלך, 679 00:47:28,120 --> 00:47:30,670 בעצם איבד את חשבון הבנק שלך. 680 00:47:30,670 --> 00:47:36,000 זו הסיבה שאני באופן אישי לא עושה בנקאות ב-iPhone שלי. 681 00:47:36,000 --> 00:47:43,710 אני חושב שזה מסוכן מדי עכשיו לעשות סוגים שונים של פעילויות אלה. 682 00:47:43,710 --> 00:47:45,950 >> סקייפ עשה את אותו הדבר. 683 00:47:45,950 --> 00:47:49,870 סקייפ, כמובן, יש את יתרת חשבון, שם משתמש וסיסמא 684 00:47:49,870 --> 00:47:51,030 כי הגישה איזון. 685 00:47:51,030 --> 00:48:00,080 הם היו לאחסן את כל מידע שבברור על המכשיר הנייד. 686 00:48:00,080 --> 00:48:05,760 יש לי כמה דוגמאות כאן של יצירת קבצים 687 00:48:05,760 --> 00:48:10,310 שאין להם את ההרשאות המתאימות או כתיבה לדיסק 688 00:48:10,310 --> 00:48:17,260 ושלא כל הצפנה לקרות בשביל זה. 689 00:48:17,260 --> 00:48:20,190 אזור זה הקרוב, שידור נתונים רגיש לא בטוח, 690 00:48:20,190 --> 00:48:24,450 אני כבר רמזתי על זה כמה פעמים, ובגלל Wi-Fi הציבורית 691 00:48:24,450 --> 00:48:27,770 זה משהו שיישומים בהחלט צריך לעשות, 692 00:48:27,770 --> 00:48:31,250 וזה כנראה מה שאנחנו רואים להשתבש ביותר. 693 00:48:31,250 --> 00:48:34,920 הייתי אומר, למעשה, אני חושב שיש לי את הנתונים בפועל, 694 00:48:34,920 --> 00:48:38,120 אבל זה קרוב למחצית מהיישומים הניידים 695 00:48:38,120 --> 00:48:41,780 לפשל עושה ב-SSL. 696 00:48:41,780 --> 00:48:43,910 הם פשוט לא להשתמש בממשקי API בצורה נכונה. 697 00:48:43,910 --> 00:48:47,970 אני מתכוון, כל מה שאתה צריך לעשות הוא לעקוב אחר ההוראות ולהשתמש בממשקי API, 698 00:48:47,970 --> 00:48:54,720 אבל הם דברים כמו לא לבדוק אם יש אישור לא חוקי בקצה השני, 699 00:48:54,720 --> 00:49:02,120 לא בודק אם הצד השני מנסה לעשות התקפת הורדת פרוטוקול. 700 00:49:02,120 --> 00:49:07,200 >> המפתחים, הם רוצים לקבל את תיבת הסימון שלהם, נכון? 701 00:49:07,200 --> 00:49:11,910 הדרישה שלהם היא להשתמש בזה כדי למכור. הם כבר השתמשו בזה למכור. 702 00:49:11,910 --> 00:49:14,800 הדרישה היא שלא להשתמש בזה כדי למכור באופן מאובטח, 703 00:49:14,800 --> 00:49:19,680 ולכן זו הסיבה שכל היישומים המשתמשים ב-SSL כדי לאבטח את הנתונים 704 00:49:19,680 --> 00:49:23,470 כפי שזה המשודר מהמכשיר באמת צריך להיבדק 705 00:49:23,470 --> 00:49:28,950 לוודא כי יושם בצורה נכונה. 706 00:49:28,950 --> 00:49:32,850 וכאן יש לי כמה דוגמאות שבו אתה יכול לראות יישום 707 00:49:32,850 --> 00:49:37,400 יכול להיות באמצעות HTTP במקום HTTPS. 708 00:49:37,400 --> 00:49:40,510 בחלק ממקרי אפליקציות ייפלו חזרה לHTTP 709 00:49:40,510 --> 00:49:44,250 אם HTTPS לא עובד. 710 00:49:44,250 --> 00:49:49,070 יש לי עוד שיחה כאן על אנדרואיד שבו הם כבר בטלו את צ'ק התעודה, 711 00:49:49,070 --> 00:49:51,700 כך התקפת אדם-in-the-באמצע יכולה לקרות. 712 00:49:51,700 --> 00:49:56,370 אישור לא חוקי יתקבל. 713 00:49:56,370 --> 00:50:01,920 כל אלה הם מקרים בהם תוקפים הולכים להיות מסוגל לקבל על 714 00:50:01,920 --> 00:50:07,150 את אותו חיבור Wi-Fi כמשתמש וגישה לכל הנתונים 715 00:50:07,150 --> 00:50:11,650 שנשלח דרך האינטרנט. 716 00:50:11,650 --> 00:50:15,970 >> ולבסוף, הקטגוריה האחרונה יש לי כאן היא סיסמא ומפתחות קידוד. 717 00:50:15,970 --> 00:50:21,470 אנחנו בעצם רואים הרבה מפתחים להשתמש באותו סגנון הקידוד 718 00:50:21,470 --> 00:50:25,900 שהם עשו כשהם היו בבניין יישומי שרת האינטרנט, 719 00:50:25,900 --> 00:50:29,700 כך הם בונים יישום שרת ג'אווה, והם hardcoding את המפתח. 720 00:50:29,700 --> 00:50:31,940 ובכן, כאשר אתה בונה יישום שרת, כן, 721 00:50:31,940 --> 00:50:34,240 hardcoding המפתח הוא לא רעיון טוב. 722 00:50:34,240 --> 00:50:36,290 זה עושה את זה קשה לשנות. 723 00:50:36,290 --> 00:50:40,700 אבל זה לא כל כך רע בצד השרת, כי יש לו גישה לצד השרת? 724 00:50:40,700 --> 00:50:43,140 רק המנהלים. 725 00:50:43,140 --> 00:50:48,100 אבל אם אתה לוקח את אותו קוד ואתה שפך אותו ליישומים ניידים 726 00:50:48,100 --> 00:50:52,550 עכשיו כל מי שיש לו שיש לו יישומים ניידים גישה לכי מפתח קידוד, 727 00:50:52,550 --> 00:50:56,380 ואנחנו באמת רואים את זה הרבה פעמים, ויש לי כמה נתונים סטטיסטיים 728 00:50:56,380 --> 00:51:00,920 בכמה פעמים אנחנו רואים את זה קורה. 729 00:51:00,920 --> 00:51:04,940 זה באמת היה בדוגמא הקוד שמסטרקארד פורסם 730 00:51:04,940 --> 00:51:06,850 כיצד להשתמש בשירות שלהם. 731 00:51:06,850 --> 00:51:11,860 קוד הדוגמא הראה כיצד היית לוקח רק את הסיסמה 732 00:51:11,860 --> 00:51:14,850 ולשים אותו במחרוזת קידוד ממש שם, 733 00:51:14,850 --> 00:51:19,380 ואנחנו יודעים איך מפתחים אוהבים להעתיק ולהדביק קטעי קוד 734 00:51:19,380 --> 00:51:22,360 כשהם מנסים לעשות משהו, אז אתה להעתיק ולהדביק את קטע הקוד 735 00:51:22,360 --> 00:51:28,450 שהם נתנו כדוגמא את הקוד, ויש לך יישום חסר ביטחון. 736 00:51:28,450 --> 00:51:31,490 >> והנה יש לנו כמה דוגמאות. 737 00:51:31,490 --> 00:51:35,840 ראשון זהו אחד אנו רואים הרבה שבה הם hardcode 738 00:51:35,840 --> 00:51:40,510 זכות הנתונים לכתובת אתר שנשלח. 739 00:51:40,510 --> 00:51:45,120 לפעמים אנחנו רואים את הסיסמה של מחרוזת = סיסמא. 740 00:51:45,120 --> 00:51:49,060 זה די קל לזהות, או את הסיסמה של מחרוזת בלקברי ואנדרואיד. 741 00:51:49,060 --> 00:51:53,680 זה בעצם די קל לבדוק, כי כמעט תמיד 742 00:51:53,680 --> 00:51:57,030 מפתח השמות משתנים שמחזיק את הסיסמה 743 00:51:57,030 --> 00:52:02,290 גרסה כלשהי של סיסמא. 744 00:52:02,290 --> 00:52:05,200 ציינו שאנחנו עושים ניתוח סטטי בVeracode, 745 00:52:05,200 --> 00:52:11,790 אז אנחנו כבר ניתחנו כמה מאה יישומי אנדרואיד ו-iOS. 746 00:52:11,790 --> 00:52:15,160 בנינו מודלים מלאים בהם, ואנחנו יכולים לסרוק אותם 747 00:52:15,160 --> 00:52:19,280 לנקודתי תורפה שונות, בעיקר את נקודות התורפה שדיברתי עליו, 748 00:52:19,280 --> 00:52:21,050 ויש לי כמה נתונים כאן. 749 00:52:21,050 --> 00:52:24,320 68.5% מאפליקציות אנדרואיד הסתכלנו 750 00:52:24,320 --> 00:52:28,590 הפר את קוד הצפנה, 751 00:52:28,590 --> 00:52:33,240 אשר לנו, אנחנו לא יכולים לזהות אם ביצענו שיגרתי הצפנה משלך, 752 00:52:33,240 --> 00:52:38,980 לא שזה רעיון טוב, אבל זה הוא למעשה שימוש בממשקי API שפורסם 753 00:52:38,980 --> 00:52:42,530 כי הם על הפלטפורמה אבל עושה אותם בצורה כזאת 754 00:52:42,530 --> 00:52:46,680 שההצפנה תהיה פגיעה, 68.5. 755 00:52:46,680 --> 00:52:49,870 וזה לאנשים ששולחים לנו את היישומים שלהם דווקא בגלל 756 00:52:49,870 --> 00:52:53,730 הם חושבים שזה רעיון טוב לעשות את הבדיקות ביטחוניות. 757 00:52:53,730 --> 00:52:56,960 אלה הם כבר אנשים שבטח חושבים באופן מאובטח, 758 00:52:56,960 --> 00:52:59,540 אז זה כנראה אפילו יותר גרוע. 759 00:52:59,540 --> 00:53:02,690 >> אני לא מדבר על זריקת הזנת שורת שליטה. 760 00:53:02,690 --> 00:53:07,640 זה משהו שאנחנו בודקים ל, אבל זה לא כל כך מסוכן נושא. 761 00:53:07,640 --> 00:53:15,390 דליפת מידע, זה שבו מידע רגיש שנשלח מהמכשיר. 762 00:53:15,390 --> 00:53:19,270 מצאנו כי ב40% מהיישומים. 763 00:53:19,270 --> 00:53:23,540 זמן ומדינה, אלה הם סוגיות סוג מצב גזע, בדרך כלל די קשה לנצל, 764 00:53:23,540 --> 00:53:26,170 אז אני לא מדבר על זה, אבל אנחנו מסתכלים על זה. 765 00:53:26,170 --> 00:53:28,750 היו לי 23% בעיות הזרקת SQL. 766 00:53:28,750 --> 00:53:32,020 הרבה אנשים לא יודעים שהרבה יישומים 767 00:53:32,020 --> 00:53:35,880 להשתמש במסד נתוני SQL קטן קטן בקצה האחורי שלהם לאחסון נתונים. 768 00:53:35,880 --> 00:53:40,430 ובכן, אם הנתונים שאתה תופס ברשת 769 00:53:40,430 --> 00:53:43,800 יש מחרוזות התקפת הזרקת SQL בזה 770 00:53:43,800 --> 00:53:45,970 מישהו יכול לסכן את המכשיר דרך זה, 771 00:53:45,970 --> 00:53:49,800 ולכן אני חושב שאנו מוצאים על 40% מיישומי אינטרנט יש את הבעיה הזאת, 772 00:53:49,800 --> 00:53:52,840 אשר מהווה בעיה המגיפה ענק. 773 00:53:52,840 --> 00:53:55,740 אנחנו מוצאים את זה 23% מהזמן ביישומים ניידים 774 00:53:55,740 --> 00:54:02,030 וזה כנראה בגלל שהרבה יותר יישומי אינטרנט להשתמש ב-SQL מאשר נייד. 775 00:54:02,030 --> 00:54:05,580 >> ואז אנחנו עדיין רואים כמה Scripting בין אתרים, נושאי אישור, 776 00:54:05,580 --> 00:54:09,400 ולאחר מכן ניהול אישורים, זה שבו יש לך את הסיסמה של הקידוד שלך. 777 00:54:09,400 --> 00:54:14,540 ב 5% מהיישומים שאנו רואים את זה. 778 00:54:14,540 --> 00:54:17,970 ואז יש לנו כמה נתונים על iOS. 779 00:54:17,970 --> 00:54:20,180 היו לי 81% נושאי טיפול בשגיאות. 780 00:54:20,180 --> 00:54:23,130 זה יותר בעיה באיכות קוד, 781 00:54:23,130 --> 00:54:28,010 אבל לא היו לי 67% נושאי הצפנה, ולכן לא ממש גרועים כמו אנדרואיד. 782 00:54:28,010 --> 00:54:32,440 אולי APIs הוא קצת יותר קל, את קודי הדוגמא קצת יותר טוב על iOS. 783 00:54:32,440 --> 00:54:35,420 אבל עדיין מדובר באחוז גבוה מאוד. 784 00:54:35,420 --> 00:54:39,040 היו לנו 54% עם דליפת מידע, 785 00:54:39,040 --> 00:54:42,080 כ 30% עם שגיאות ניהול מאגר. 786 00:54:42,080 --> 00:54:45,930 זה מקומות שבם פוטנציאל יכולה להיות שיש בעיה של ניזק לזיכרון. 787 00:54:45,930 --> 00:54:50,350 מתברר שזה לא באותה מידה של בעיה לניצול 788 00:54:50,350 --> 00:54:56,450 על iOS משום שכל הקוד צריך להיות חתום, 789 00:54:56,450 --> 00:55:02,210 לכן קשה לתוקף לבצע קוד שרירותי על iOS. 790 00:55:02,210 --> 00:55:07,880 איכות קוד, חציית ספריות, אבל אז אישורי ניהול כאן ב14.6%, 791 00:55:07,880 --> 00:55:09,250 כל כך גרוע מאשר על אנדרואיד. 792 00:55:09,250 --> 00:55:13,240 יש לנו אנשים שלא מטפלים בסיסמות בצורה נכונה. 793 00:55:13,240 --> 00:55:15,790 ואז טעויות מספריות וגלישת מאגר, 794 00:55:15,790 --> 00:55:22,680 אלה יותר הולכים להיות בעיות באיכות קוד על iOS. 795 00:55:22,680 --> 00:55:26,110 >> זה היה אותו למצגת שלי. אני לא יודע אם אהיה לנו את הזמן או לא. 796 00:55:26,110 --> 00:55:29,540 אני לא יודע אם יש שאלות. 797 00:55:29,540 --> 00:55:33,220 [זכר] שאלה מהירה סביב פיצול ושוק אנדרואיד. 798 00:55:33,220 --> 00:55:36,240 אפל לפחות בעלות תיקון. 799 00:55:36,240 --> 00:55:40,780 הם עושים עבודה טובה של מקבל את זה בחוץ ואילו פחות מכך במרחב אנדרואיד. 800 00:55:40,780 --> 00:55:44,280 אתה כמעט צריך jailbreak הטלפון שלך כדי להישאר מעודכן 801 00:55:44,280 --> 00:55:46,660 עם שחרורו הנוכחי של אנדרואיד. 802 00:55:46,660 --> 00:55:50,960 כן, זה בעיה ענקית ולכן אם אתם חושבים על- 803 00:55:50,960 --> 00:55:52,280 [זכר] למה אתה לא יכול לחזור על זה? 804 00:55:52,280 --> 00:55:55,610 >> אה, נכון, אז השאלה הייתה מה לגבי פיצול 805 00:55:55,610 --> 00:56:00,410 של מערכת ההפעלה על פלטפורמת אנדרואיד? 806 00:56:00,410 --> 00:56:05,890 איך זה משפיע על הסיכון של המכשירים האלה? 807 00:56:05,890 --> 00:56:09,700 וזה באמת הוא בעיה ענקית, כי מה שקורה הוא 808 00:56:09,700 --> 00:56:15,110 מכשירים הישנים יותר, כאשר מישהו בא עם jailbreak למכשיר זה, 809 00:56:15,110 --> 00:56:19,960 בעצם זה הסלמת הרשאות, ועד שמערכת ההפעלה מעודכנת 810 00:56:19,960 --> 00:56:25,350 אז כל תוכנות זדוניות יכולות להשתמש בפגיעות שלהתפשר המכשיר לחלוטין, 811 00:56:25,350 --> 00:56:30,200 ומה שאנחנו רואים באנדרואיד הוא על מנת לקבל את מערכת הפעלה חדשה 812 00:56:30,200 --> 00:56:34,690 לגוגל יש לכבות את מערכת ההפעלה, ולאחר מכן ליצרן החומרה 813 00:56:34,690 --> 00:56:39,390 יש להתאים אותו, ולאחר מכן הנשא צריך להתאים אותו ולספק אותו. 814 00:56:39,390 --> 00:56:43,070 יש לך בעצם 3 חלקים נעים כאן, 815 00:56:43,070 --> 00:56:47,210 וזה הופך את זה לא אכפת לי הספקים, 816 00:56:47,210 --> 00:56:50,400 ולא אכפת לי יצרני החומרה, וגוגל אינה דוחפת אותם מספיק 817 00:56:50,400 --> 00:56:54,430 לעשות שום דבר, ולכן למעשה יותר ממחצית המכשירים שם בחוץ 818 00:56:54,430 --> 00:57:00,590 יש מערכות הפעלה שיש נקודות תורפה הסלמת הרשאות אלה בהם, 819 00:57:00,590 --> 00:57:08,440 ולכן אם אתה מקבל תוכנה זדונית במכשיר אנדרואיד שזה הרבה יותר של בעיה. 820 00:57:08,440 --> 00:57:10,350 >> אוקיי, תודה רבה לך. 821 00:57:10,350 --> 00:57:12,310 [מחיאות כפיים] 822 00:57:12,310 --> 00:57:14,310 [CS50.TV]