1 00:00:00,000 --> 00:00:02,610 >> [Seminar] [Verteidigung Hinter dem Gerät: Mobile Application Sicherheit] 2 00:00:02,610 --> 00:00:04,380 [Chris Wysopal] [Harvard University] 3 00:00:04,380 --> 00:00:07,830 [Dies ist CS50.] [CS50.TV] 4 00:00:07,830 --> 00:00:10,360 >> Guten Tag. Mein Name ist Chris Wysopal. 5 00:00:10,360 --> 00:00:13,360 Ich bin der CTO und Mitbegründer von Veracode. 6 00:00:13,360 --> 00:00:15,880 Veracode ist eine Anwendung, Sicherheitsunternehmen. 7 00:00:15,880 --> 00:00:18,230 Wir testen alle Arten von verschiedenen Anwendungen, 8 00:00:18,230 --> 00:00:25,060 und was ich heute sprechen ist mobil Anwendungssicherheit. 9 00:00:25,060 --> 00:00:28,630 Mein Hintergrund ist ich habe die Sicherheitsforschung zu tun 10 00:00:28,630 --> 00:00:31,970 für eine sehr lange Zeit, wahrscheinlich etwa so lang wie jeder. 11 00:00:31,970 --> 00:00:35,000 Ich begann in der Mitte der 90er Jahre, 12 00:00:35,000 --> 00:00:37,370 und es war eine Zeit, die sehr interessant war, weil 13 00:00:37,370 --> 00:00:39,220 hatten wir einen Paradigmenwechsel in der Mitte der 90er Jahre. 14 00:00:39,220 --> 00:00:43,520 Ganz plötzlich jeden Computer wurde an das Internet angeschlossen, 15 00:00:43,520 --> 00:00:46,550 und dann hatten wir die Anfänge der Web-Anwendungen, 16 00:00:46,550 --> 00:00:49,330 und das ist, was ich konzentrierte sich auf eine Menge dann. 17 00:00:49,330 --> 00:00:51,160 Es ist interessant. 18 00:00:51,160 --> 00:00:53,930 Jetzt haben wir einen weiteren Paradigmenwechsel passiert mit Computer-, 19 00:00:53,930 --> 00:00:58,710 Das ist die Umstellung auf mobile Anwendungen. 20 00:00:58,710 --> 00:01:03,680 >> Ich glaube, es ist irgendwie eine ähnliche Zeit dann in den späten 90er Jahren war es 21 00:01:03,680 --> 00:01:07,650 als wir untersuchen Web-Anwendungen und die Suche Defekte wie 22 00:01:07,650 --> 00:01:11,800 Session-Management-Fehler und SQL-Injection 23 00:01:11,800 --> 00:01:14,940 was wirklich vorher nicht gab, und plötzlich waren sie überall 24 00:01:14,940 --> 00:01:19,360 in Web-Anwendungen, und jetzt ein großer Teil der Zeit verbringe ich 25 00:01:19,360 --> 00:01:27,950 bei mobilen Anwendungen suchen und schauen, was los ist da draußen in der Wildnis. 26 00:01:27,950 --> 00:01:32,060 Mobile Anwendungen sind wirklich die dominierende Computing-Plattform zu sein, 27 00:01:32,060 --> 00:01:35,060 so müssen wir wirklich viel Zeit verbringen, wenn Sie in der Sicherheitsbranche sind 28 00:01:35,060 --> 00:01:39,280 mit Schwerpunkt auf Web-Anwendungen. 29 00:01:39,280 --> 00:01:43,420 Es gab 29 Milliarden mobile Apps im Jahr 2011 heruntergeladen. 30 00:01:43,420 --> 00:01:47,920 Es wird vorausgesagt, um 76 Milliarden Apps 2014. 31 00:01:47,920 --> 00:01:54,040 Es gibt 686 Millionen Geräte, die gehen in diesem Jahr gekauft werden, 32 00:01:54,040 --> 00:01:57,060 so das ist, wo die Menschen gehen, zu tun 33 00:01:57,060 --> 00:01:59,600  die Mehrheit ihrer Client-Computing für die Zukunft. 34 00:01:59,600 --> 00:02:04,220 >> Ich wurde zu einem Vice President bei Fidelity Investments sprechen 35 00:02:04,220 --> 00:02:08,780 vor ein paar Monaten, und er sagte, sie sah nur mehr Verkehr 36 00:02:08,780 --> 00:02:12,610 Dabei Finanztransaktionen aus ihren Kundenstamm 37 00:02:12,610 --> 00:02:16,230 auf ihren mobilen Anwendung als auf ihrer Website, 38 00:02:16,230 --> 00:02:20,610 so dass eine gemeinsame Nutzung des Web in der Vergangenheit hat 39 00:02:20,610 --> 00:02:23,800 Überprüfung Ihrer Aktienkurse, die Verwaltung Ihres Portfolios, 40 00:02:23,800 --> 00:02:28,060 und wir tatsächlich sehen, dass im Jahr 2012 über Schalter 41 00:02:28,060 --> 00:02:30,960 dominanter auf der mobilen Plattform sein. 42 00:02:30,960 --> 00:02:34,530 Sicherlich, wenn es geht um jede kriminelle Aktivitäten sein, 43 00:02:34,530 --> 00:02:38,900 jede bösartige Aktivitäten, es wird beginnen, sich auf der mobilen Plattform fokussiert werden 44 00:02:38,900 --> 00:02:44,210 im Laufe der Zeit als Menschen schalten Sie auf, dass. 45 00:02:44,210 --> 00:02:48,320 Wenn Sie an der mobilen Plattform aussehen, 46 00:02:48,320 --> 00:02:54,380 auf die Risiken der Plattform ist es sinnvoll, es nach unten in den verschiedenen Schichten brechen suchen, 47 00:02:54,380 --> 00:02:59,010 so wie Sie es auf einem Desktop-Computer tun würden, 48 00:02:59,010 --> 00:03:02,860 und Sie über die verschiedenen Schichten, Software, Betriebssystem, denken 49 00:03:02,860 --> 00:03:07,730 Netzwerkschicht, Hardware-Schicht, und natürlich gibt es Schwachstellen auf allen diesen Ebenen. 50 00:03:07,730 --> 00:03:10,510 >> Das gleiche passiert auf dem Handy. 51 00:03:10,510 --> 00:03:14,880 Aber Handy, scheint es, dass einige dieser Schichten sind schlechter dran. 52 00:03:14,880 --> 00:03:19,840 Zum einen ist die Netzwerkschicht problematischer mobile 53 00:03:19,840 --> 00:03:25,650 weil eine Menge Leute haben in ihrem Büro oder zu Hause 54 00:03:25,650 --> 00:03:30,780 verkabelte Verbindungen oder sie sichere Wi-Fi-Verbindungen zu haben, 55 00:03:30,780 --> 00:03:36,530 und mit einer Menge von mobilen Geräten, die Sie außerhalb des Hauses sind natürlich 56 00:03:36,530 --> 00:03:40,520 oder außerhalb des Büros viel, und wenn man über Wi-Fi sind es 57 00:03:40,520 --> 00:03:42,820 Sie könnten mit einem unsicheren WLAN-Verbindung, 58 00:03:42,820 --> 00:03:45,570 etwas, das eine öffentliche Wi-Fi-Verbindung ist, 59 00:03:45,570 --> 00:03:48,840 so, wenn wir über mobile Apps denke, wir haben zu berücksichtigen, 60 00:03:48,840 --> 00:03:53,770 dass die Netzwerkumgebung riskanter für Anwendungen 61 00:03:53,770 --> 00:03:57,640 wenn Wi-Fi wird verwendet. 62 00:03:57,640 --> 00:04:02,410 Und wenn ich in mehreren der mobilen Anwendung kommen Risiken 63 00:04:02,410 --> 00:04:04,910 Sie werden sehen, warum das ist wichtiger. 64 00:04:04,910 --> 00:04:09,710 Es gibt Risiken, auf Hardware-Ebene auf mobilen Geräten. 65 00:04:09,710 --> 00:04:11,670 Dies ist ein Bereich der laufenden Forschung. 66 00:04:11,670 --> 00:04:15,910 Die Leute nennen diese Angriffe Breitband-oder Basisband Angriffe 67 00:04:15,910 --> 00:04:21,870 wo man angreifen sind die Firmware, die auf dem Radio hören ist. 68 00:04:21,870 --> 00:04:25,430 >> Das sind wirklich beängstigend, weil Angriffe 69 00:04:25,430 --> 00:04:27,280 der Benutzer muss nicht alles tun. 70 00:04:27,280 --> 00:04:30,760 Sie können viele Geräte im HF-Bereich getroffen 71 00:04:30,760 --> 00:04:36,690 auf einmal, und es scheint, als wenn diese Forschung sprudelt 72 00:04:36,690 --> 00:04:40,750 es schnell wird eingestuft, wenn 73 00:04:40,750 --> 00:04:46,600 Menschen stürzen in sich um und sagen: "Hier, teilen Sie uns das, und bitte aufhören, darüber zu reden." 74 00:04:46,600 --> 00:04:49,460 Es gibt einige Forschung geht im Breitbandbereich, 75 00:04:49,460 --> 00:04:51,980 aber es scheint sehr Hush Hush sein. 76 00:04:51,980 --> 00:04:56,910 Ich denke, es ist mehr ein Nationalstaat Art von Forschung, die vor sich geht. 77 00:04:56,910 --> 00:05:02,140 Ein Gebiet der aktiven Forschung, allerdings ist der Betriebssystemschicht, 78 00:05:02,140 --> 00:05:08,910 wieder anders als in der Desktop-Computerwelt ist diese 79 00:05:08,910 --> 00:05:14,840 denn in den mobilen Raum haben diese Teams von Menschen genannt jailbreakers, 80 00:05:14,840 --> 00:05:18,670 und jailbreakers sind anders als normale Anfälligkeit Forscher. 81 00:05:18,670 --> 00:05:21,970 Sie versuchen, Schwachstellen im Betriebssystem zu finden, 82 00:05:21,970 --> 00:05:27,000 aber der Grund, sie versuchen, die Schwachstellen zu finden, ist nicht auf 83 00:05:27,000 --> 00:05:31,810 brechen in Maschine jemand anderen und es Kompromisse. 84 00:05:31,810 --> 00:05:34,280 Es ist in ihrem eigenen Computer zu brechen. 85 00:05:34,280 --> 00:05:38,820 >> Sie wollen in die eigenen Mobil brechen, zu modifizieren Betriebssystem ihre eigenen Mobiltelefons 86 00:05:38,820 --> 00:05:41,050 so dass sie die Anwendungen ihrer Wahl laufen kann 87 00:05:41,050 --> 00:05:44,510 und die Dinge ändern sich mit Administratorberechtigungen 88 00:05:44,510 --> 00:05:49,050 und sie wollen nicht, den Verkäufer davon zu erzählen. 89 00:05:49,050 --> 00:05:52,960 Sie sind nicht wie ein Sicherheitsexperte, der einen weißen Hut Sicherheitsforscher ist 90 00:05:52,960 --> 00:05:56,600 die gehen, um verantwortungsvolle Offenlegung tun und sagen, der Verkäufer über sie. 91 00:05:56,600 --> 00:06:01,270 Sie wollen, um diese Forschung zu tun, und sie tatsächlich veröffentlichen wollen 92 00:06:01,270 --> 00:06:06,400 in ein Exploit oder ein Rootkit oder ein Jailbreak-Code, 93 00:06:06,400 --> 00:06:10,010 und sie strategisch zu tun, wie direkt nach wollen 94 00:06:10,010 --> 00:06:13,570 die Lieferanten Schiffe das neue Betriebssystem. 95 00:06:13,570 --> 00:06:16,350 Sie haben diese kontradiktorischen Beziehung 96 00:06:16,350 --> 00:06:19,000 mit OS-Level-Sicherheitslücken auf dem Handy, 97 00:06:19,000 --> 00:06:23,150 Ich denke, das ist ganz interessant, und einem Ort sehen wir es 98 00:06:23,150 --> 00:06:29,210 ist es es so, dass es gut ist Exploit-Code veröffentlicht draußen 99 00:06:29,210 --> 00:06:31,750 für Kernel-Level-Sicherheitslücken 100 00:06:31,750 --> 00:06:35,040 und wir die tatsächlich von Malware-Autoren verwendet werden, gesehen habe. 101 00:06:35,040 --> 00:06:38,450 Es ist ein bisschen anders als der PC-Welt. 102 00:06:38,450 --> 00:06:42,530 Und dann wird die letzte Schicht die oberste Schicht, die Anwendungsschicht. 103 00:06:42,530 --> 00:06:45,250 Das ist, was ich zu erzählen heute. 104 00:06:45,250 --> 00:06:48,970 >> Die anderen Schichten vorhanden sind, und die anderen Schichten in sie zu spielen, 105 00:06:48,970 --> 00:06:53,310 aber ich werde meist über das, was los ist auf der Anwendungsschicht zu sprechen 106 00:06:53,310 --> 00:06:55,560 wenn der Code in der Sandbox ausgeführt wird. 107 00:06:55,560 --> 00:06:58,670 Es muss nicht über Administratorrechte verfügen. 108 00:06:58,670 --> 00:07:02,170 Es hat die APIs des Geräts zu verwenden, 109 00:07:02,170 --> 00:07:06,970 aber immer noch, kann eine Menge bösartigen Aktivitäten und eine Menge Risiken auf dieser Schicht passieren 110 00:07:06,970 --> 00:07:09,220 denn das ist die Schicht, in der alle Informationen. 111 00:07:09,220 --> 00:07:12,330 Apps können alle Informationen auf dem Gerät zugreifen 112 00:07:12,330 --> 00:07:15,390 wenn sie die richtigen Berechtigungen verfügen, 113 00:07:15,390 --> 00:07:17,540 und sie haben die verschiedenen Sensoren an der Vorrichtung zugreifen kann, 114 00:07:17,540 --> 00:07:23,950 GPS-Sensor, Mikrofon, Kamera, was Sie haben. 115 00:07:23,950 --> 00:07:27,380 Auch wenn wir nur auf der Anwendungsschicht reden 116 00:07:27,380 --> 00:07:33,700 wir haben eine Menge von Risiken gibt. 117 00:07:33,700 --> 00:07:38,450 Die andere Sache, die anders ist, über die mobile Umgebung 118 00:07:38,450 --> 00:07:45,060 wird alle Betriebssystem-Spieler, sei es Blackberry-oder Android- 119 00:07:45,060 --> 00:07:53,410 oder iOS oder Windows Mobile, sie alle haben eine feinkörnige Berechtigungsmodell, 120 00:07:53,410 --> 00:07:56,990 und dies ist eine der Möglichkeiten, die sie in das Betriebssystem eingebaut 121 00:07:56,990 --> 00:08:01,230 die Idee, dass es nicht so riskant, wie Sie denken. 122 00:08:01,230 --> 00:08:04,550 Auch wenn Sie alle Ihre Kontakte auf dort haben, alle Ihre persönlichen Informationen, 123 00:08:04,550 --> 00:08:09,080 Sie Fotos haben, müssen Sie Ihren Standort auf dort 124 00:08:09,080 --> 00:08:14,820 Sie die Speicherung Ihrer Bank Stift für Autologin auf gibt, ist es sicher, da 125 00:08:14,820 --> 00:08:19,430 Apps müssen bestimmte Berechtigungen müssen an bestimmten Stellen zu bekommen 126 00:08:19,430 --> 00:08:25,080 die Informationen über das Gerät und den Benutzer mit vorgestellt hat 127 00:08:25,080 --> 00:08:29,230 diese Berechtigungen und sagen, okay. 128 00:08:29,230 --> 00:08:32,590 >> Das Problem mit ihm ist der Benutzer immer sagt, okay. 129 00:08:32,590 --> 00:08:35,240 Als Sicherheits Person, ich weiß, Sie können den Benutzer auffordern, 130 00:08:35,240 --> 00:08:40,100 sagen, etwas wirklich Schlimmes passieren wird, wollen Sie es geschehen? 131 00:08:40,100 --> 00:08:44,680 Und wenn sie in Eile sind, oder es ist etwas wirklich verlockend auf der anderen Seite, dass, 132 00:08:44,680 --> 00:08:47,760 wie ein Spiel wird installiert werden, dass sie gewartet haben, 133 00:08:47,760 --> 00:08:50,860 sie gehen zu klicken okay. 134 00:08:50,860 --> 00:08:56,630 Das ist, warum ich sagen, auf meinem Schlitten hier lass mich werfen Vögel auf Schweine bereits, 135 00:08:56,630 --> 00:09:03,150 und Sie auf der Folie sehen können, hier gibt es Beispiele für eine Blackberry-Erlaubnis-Box. 136 00:09:03,150 --> 00:09:05,990 Er sagt: "Bitte legen Sie die Blackberry Travel Anwendungsberechtigungen 137 00:09:05,990 --> 00:09:09,720 nach dem Klicken auf Button ", und im Grunde wird der Benutzer nur sagen 138 00:09:09,720 --> 00:09:12,240 legen Sie die Berechtigungen und sparen. 139 00:09:12,240 --> 00:09:18,010 Hier ist ein Android-Eingabeaufforderung, wo es zeigt, Dinge, 140 00:09:18,010 --> 00:09:20,260 und es tatsächlich bringt etwas, das sieht fast aus wie eine Warnung. 141 00:09:20,260 --> 00:09:25,090 Es hat eine Art von Ertrag Zeichen da und sagte Netzwerk-Kommunikation, Telefonanruf, 142 00:09:25,090 --> 00:09:28,120 aber der Benutzer wird zu klicken installieren, richtig? 143 00:09:28,120 --> 00:09:32,940 Und dann das Apple ein völlig harmlos. 144 00:09:32,940 --> 00:09:34,300 Es gibt nicht jede Art von Warnung. 145 00:09:34,300 --> 00:09:37,380 Es ist nur Apple würde gerne Ihren aktuellen Standort verwenden. 146 00:09:37,380 --> 00:09:39,670 Natürlich wirst du auf okay. 147 00:09:39,670 --> 00:09:42,260 >> Es gibt diese feinkörnige Berechtigungsmodell, 148 00:09:42,260 --> 00:09:45,890 und Anwendungen müssen eine Manifest-Datei, wo sie erklären müssen 149 00:09:45,890 --> 00:09:49,410 die Berechtigungen, die sie benötigen, und das wird dem Benutzer angezeigt zu bekommen, 150 00:09:49,410 --> 00:09:53,480 und der Benutzer muss sagen, dass ich diese Berechtigungen erteilen. 151 00:09:53,480 --> 00:09:55,080 Aber lassen Sie uns ehrlich sein. 152 00:09:55,080 --> 00:09:58,400 Benutzer werden nur gehen, um immer in Ordnung zu sagen. 153 00:09:58,400 --> 00:10:04,460 Werfen wir einen kurzen Blick auf die Berechtigungen, die diese Anwendungen sind für die Nachfrage 154 00:10:04,460 --> 00:10:06,850 und einige von den Berechtigungen, die es gibt. 155 00:10:06,850 --> 00:10:09,950 Diese Firma Praetorian eine Umfrage im vergangenen Jahr 156 00:10:09,950 --> 00:10:14,170 53.000 Anwendungen im Android Markt-und 3rd-Party-Märkte analysiert, 157 00:10:14,170 --> 00:10:16,770 so ist das alles Android. 158 00:10:16,770 --> 00:10:19,670 Und die durchschnittliche App angefordert 3-Berechtigungen. 159 00:10:19,670 --> 00:10:23,370 Einige Anwendungen angeforderten Berechtigungen 117, 160 00:10:23,370 --> 00:10:27,480 so offensichtlich sind sehr feinkörnig und viel zu komplex für einen Benutzer zu verstehen 161 00:10:27,480 --> 00:10:31,600 wenn sie mit dieser App, die diese 117-Berechtigungen braucht vorgestellt. 162 00:10:31,600 --> 00:10:37,270 Es ist wie die Endbenutzer-Lizenzvereinbarung, die 45 Seiten lang ist. 163 00:10:37,270 --> 00:10:40,240 Vielleicht bald werden sie eine Option, wo es ist, haben 164 00:10:40,240 --> 00:10:43,100 drucken die Berechtigungen und senden Sie mir eine E-Mail. 165 00:10:43,100 --> 00:10:45,480 >> Aber wenn man sich einige der Top-Berechtigungen interessant aussehen 166 00:10:45,480 --> 00:10:50,840 24% der Apps, die sie aus dem 53.000 heruntergeladen 167 00:10:50,840 --> 00:10:57,230 angeforderten Informationen von dem GPS-Gerät. 168 00:10:57,230 --> 00:10:59,810 8% lesen die Kontakte. 169 00:10:59,810 --> 00:11:03,770 4% gesendeten SMS und 3% empfangenen SMS. 170 00:11:03,770 --> 00:11:07,730 2% aufgezeichneten Audio. 171 00:11:07,730 --> 00:11:11,210 1% verarbeitet ausgehende Anrufe. 172 00:11:11,210 --> 00:11:13,140 Ich weiß nicht. 173 00:11:13,140 --> 00:11:17,520 Ich glaube nicht, dass 4% der Apps im App Store wirklich brauchen, um SMS-Nachrichten zu senden, 174 00:11:17,520 --> 00:11:21,410 so dass ich denke, das ist ein Hinweis, dass etwas Unerfreuliches passiert. 175 00:11:21,410 --> 00:11:24,350 8% der Apps benötigen, um Ihre Kontaktliste zu lesen. 176 00:11:24,350 --> 00:11:26,510 Es ist wohl nicht nötig. 177 00:11:26,510 --> 00:11:30,990 Einer der andere interessante Dinge zu Berechtigungen ist 178 00:11:30,990 --> 00:11:36,740 wenn Sie einen Link in gemeinsamen Bibliotheken in Ihre Anwendung 179 00:11:36,740 --> 00:11:39,780 diejenigen erben die Berechtigungen der Anwendung, 180 00:11:39,780 --> 00:11:46,570 Wenn Ihre App braucht die Kontaktliste oder die GPS-Position benötigt um zu funktionieren 181 00:11:46,570 --> 00:11:49,940 und Verknüpfen in einer Werbe Bibliothek, z. B. 182 00:11:49,940 --> 00:11:53,170 Ad-Bibliothek, dass auch in der Lage, um die Kontakte zugreifen 183 00:11:53,170 --> 00:11:57,630 und auch in der Lage, um die GPS-Position zugreifen zu können, 184 00:11:57,630 --> 00:12:01,990 und der Entwickler der App weiß nichts über den Code, der in der Ad-Bibliothek läuft. 185 00:12:01,990 --> 00:12:05,370 Sie sind nur die Verknüpfung, dass, weil sie ihre App zu monetarisieren möchten. 186 00:12:05,370 --> 00:12:09,820 >> Hier-und ich werde über einige Beispiele dafür sprechen mit 187 00:12:09,820 --> 00:12:13,930 eine Anwendung namens Pandora, wo ein Anwendungsentwickler 188 00:12:13,930 --> 00:12:18,910 vielleicht unwissentlich werden Ergabe von Informationen 189 00:12:18,910 --> 00:12:24,580 von ihren Nutzern, weil sie sich von Bibliotheken verknüpft haben 190 00:12:24,580 --> 00:12:30,110 Vermessung der Landschaft draußen, mit Blick auf all die verschiedenen Apps 191 00:12:30,110 --> 00:12:34,310 , die in den Nachrichten als schädlich oder etwas zu tun Nutzern wollte nicht gemeldet wurden 192 00:12:34,310 --> 00:12:39,360 und dann die Kontrolle eine Menge Apps, wir tun eine Menge von statischen binären Analyse auf mobilen Apps, 193 00:12:39,360 --> 00:12:42,010 so dass wir sie überprüft haben, und sah den Code selbst- 194 00:12:42,010 --> 00:12:49,640 kamen wir auf das, was wir unsere Top-10-Liste der riskanten Verhaltensweisen in Anwendungen aufrufen. 195 00:12:49,640 --> 00:12:54,180 Und es ist nach unten in 2 Abschnitte, bösartigen Code gebrochen, 196 00:12:54,180 --> 00:12:57,600 so sind schlechte Dinge, dass die Apps tun könnte, dass 197 00:12:57,600 --> 00:13:06,520 sind wahrscheinlich etwas, das eine böswillige Person sein 198 00:13:06,520 --> 00:13:10,060 wurde speziell in der Anwendung setzen, aber es ist ein wenig unscharf. 199 00:13:10,060 --> 00:13:13,300 Es könnte etwas, das ein Entwickler denkt, ist gut, 200 00:13:13,300 --> 00:13:16,350 aber es endet als der als bösartig durch den Benutzer gedacht. 201 00:13:16,350 --> 00:13:19,830 >> Und dann der zweite Abschnitt ist, was wir Codierung Schwachstellen, 202 00:13:19,830 --> 00:13:24,600 und das sind Dinge, wo der Entwickler im Grunde ist, Fehler zu machen 203 00:13:24,600 --> 00:13:27,200 oder einfach nicht verstehen, wie man die App sicher schreiben, 204 00:13:27,200 --> 00:13:30,260  und das ist die App Benutzer setzen in Gefahr. 205 00:13:30,260 --> 00:13:34,060 Ich werde durch diese im Detail zu gehen und geben einige Beispiele. 206 00:13:34,060 --> 00:13:39,620 Zum Vergleich, ich wollte zu setzen, die OWASP Top 10 Liste mobil. 207 00:13:39,620 --> 00:13:43,590 Dies sind die 10 Fragen, die eine Gruppe an OWASP, 208 00:13:43,590 --> 00:13:48,900 das Open Web Application Security Project, eine Arbeitsgruppe haben sie 209 00:13:48,900 --> 00:13:50,620 Arbeit auf einem mobilen Top-10-Liste. 210 00:13:50,620 --> 00:13:54,600 Sie haben eine sehr berühmte Web-Top-10-Liste, die die Top-10 sind 211 00:13:54,600 --> 00:13:57,180 riskantesten Dinge, die Sie in einer Web-Anwendung haben kann. 212 00:13:57,180 --> 00:13:59,090 Sie tun das Gleiche für die mobile, 213 00:13:59,090 --> 00:14:01,750 und ihre Liste ist ein wenig anders als unsere. 214 00:14:01,750 --> 00:14:03,670 6 der 10 sind die gleichen. 215 00:14:03,670 --> 00:14:06,020 Sie haben vier, die anders sind. 216 00:14:06,020 --> 00:14:10,550 Ich denke, sie haben ein bisschen eine andere Sicht auf 217 00:14:10,550 --> 00:14:14,490 Risiko in mobilen Anwendungen, wo viele ihre Probleme 218 00:14:14,490 --> 00:14:20,490 wirklich, wie die Anwendung auf einem Back-End-Server kommuniziert 219 00:14:20,490 --> 00:14:23,100 oder was ist los auf dem Back-End-Server, 220 00:14:23,100 --> 00:14:29,220 nicht so sehr, Apps, die riskantes Verhalten, das nur einfache Client-Anwendungen sind zu haben. 221 00:14:29,220 --> 00:14:36,640 >> Die, die in Rot sind hier die Unterschiede zwischen den zwei Listen. 222 00:14:36,640 --> 00:14:40,740 Und einige meiner Forschungsteam hat eigentlich zu diesem Projekt beigetragen, 223 00:14:40,740 --> 00:14:44,570 so werden wir sehen, was im Laufe der Zeit passiert, aber ich denke, das hier ist zum Mitnehmen 224 00:14:44,570 --> 00:14:47,550 wir nicht wirklich wissen, was die Top-10-Liste ist in mobilen Anwendungen, weil 225 00:14:47,550 --> 00:14:50,510 sie haben wirklich erst seit jetzt 2 oder 3 Jahren, 226 00:14:50,510 --> 00:14:57,750 und es war nicht genug Zeit, um die Betriebssysteme wirklich Forschung gewesen 227 00:14:57,750 --> 00:15:00,450 und was sie in der Lage ist, und es gibt nicht genug Zeit gewesen 228 00:15:00,450 --> 00:15:06,870 für die bösartige Gemeinde, wenn man so will, um genügend Zeit damit verbracht haben, 229 00:15:06,870 --> 00:15:12,910 versuchen, Nutzer über mobile Anwendungen anzugreifen, so erwarte ich, dass diese Listen, um ein wenig zu ändern. 230 00:15:12,910 --> 00:15:18,720 Aber jetzt sind die Top 10 Dinge zu kümmern. 231 00:15:18,720 --> 00:15:24,150 Sie können auf dem mobilen Seite frage mich, wo funktioniert das Malicious Mobile Code- 232 00:15:24,150 --> 00:15:28,880 wie geht es wild auf das Gerät? 233 00:15:28,880 --> 00:15:35,210 North Carolina State hat ein Projekt mit dem Namen Mobile-Malware-Genom-Projekt 234 00:15:35,210 --> 00:15:39,520 wo sie sammeln, wie viele Handy-Viren, wie sie können und analysieren, 235 00:15:39,520 --> 00:15:45,270 und sie sich die Injektion Vektoren, die die mobile Malware nutzt gebrochen haben, 236 00:15:45,270 --> 00:15:51,490 und 86% verwenden eine Technik namens Neuverpackung, 237 00:15:51,490 --> 00:15:54,160 und das ist nur auf der Android-Plattform 238 00:15:54,160 --> 00:15:56,720 kann man wirklich dieses Umpacken zu tun. 239 00:15:56,720 --> 00:16:03,100 >> Der Grund ist Android-Code wird mit eingebauter 240 00:16:03,100 --> 00:16:08,130 ein Java-Byte-Code aufgerufen Dalvik, die leicht rückübersetzbar ist. 241 00:16:08,130 --> 00:16:12,460 Was der Bösewicht tun können, ist 242 00:16:12,460 --> 00:16:16,590 nehmen Sie eine Android-Anwendung, dekompilieren, 243 00:16:16,590 --> 00:16:20,120 ihre bösartigen Code einzufügen, es neu kompilieren 244 00:16:20,120 --> 00:16:28,070 und dann stellen Sie sie in den App Store, die angeblich eine neue Version der Anwendung sein, 245 00:16:28,070 --> 00:16:30,330 oder nur vielleicht die Änderung des Namens der Anwendung. 246 00:16:30,330 --> 00:16:35,140 Wenn es eine Art von Spiel, ändern Sie den Namen leicht, 247 00:16:35,140 --> 00:16:42,860 und so ist dieses Umpacken ist, wie 86% der mobilen Malware wird verteilt. 248 00:16:42,860 --> 00:16:45,810 Es gibt eine andere Technik namens Update, das ist 249 00:16:45,810 --> 00:16:50,030 sehr ähnlich, Umpacken, aber Sie wirklich nicht setzen den Schadcode einge 250 00:16:50,030 --> 00:16:52,870 Was Sie tun, ist, dass Sie in einem kleinen Update-Mechanismus setzen. 251 00:16:52,870 --> 00:16:56,660 Sie dekompilieren, setzen Sie sich in einem Update-Mechanismus, und Sie können es neu zu kompilieren, 252 00:16:56,660 --> 00:17:02,360 und dann, wenn die App läuft, es zieht die Malware auf dem Gerät. 253 00:17:02,360 --> 00:17:06,300 >> Bei weitem die Mehrheit sind die zwei Techniken. 254 00:17:06,300 --> 00:17:12,710 Es gibt nicht wirklich viel Drive-bys Download oder Drive-by-Downloads auf dem Handy, 255 00:17:12,710 --> 00:17:15,890 die wie ein Phishing-Angriff sein könnte. 256 00:17:15,890 --> 00:17:18,200 Hey, schau dir diese wirklich coole Website, 257 00:17:18,200 --> 00:17:21,020 oder Sie müssen auf diese Webseite gehen und füllen Sie dieses Formular 258 00:17:21,020 --> 00:17:24,420 zu halten weiterhin etwas zu tun. 259 00:17:24,420 --> 00:17:26,230 Diese sind Phishing-Attacken. 260 00:17:26,230 --> 00:17:28,160 Das gleiche kann auf der mobilen Plattform, wo sie vorkommen, 261 00:17:28,160 --> 00:17:33,830 weisen auf eine mobile App für den Download, sagen Sie "Hallo, hier ist die Bank of America." 262 00:17:33,830 --> 00:17:36,070 "Wir sehen Sie mit dieser Anwendung sind." 263 00:17:36,070 --> 00:17:38,540 "Sie sollten diese andere Anwendung herunterladen." 264 00:17:38,540 --> 00:17:41,170 Theoretisch, das könnte funktionieren. 265 00:17:41,170 --> 00:17:48,610 Vielleicht es ist einfach nicht genug verwendet, um festzustellen, ob es erfolgreich ist oder nicht, 266 00:17:48,610 --> 00:17:51,680 doch fanden sie, dass weniger als 1% der Zeit, dass die Technik verwendet wird. 267 00:17:51,680 --> 00:17:56,130 Die Mehrheit der Zeit, es ist wirklich eine umgepackt Code. 268 00:17:56,130 --> 00:17:58,710 >> Es gibt eine andere Kategorie namens Standalone- 269 00:17:58,710 --> 00:18:01,420 wo jemand baut gerade eine brandneue Anwendung. 270 00:18:01,420 --> 00:18:04,020 Sie bauen eine Anwendung, die vorgibt, etwas zu sein. 271 00:18:04,020 --> 00:18:07,360 Es ist nicht ein Umpacken von etwas anderem, und das hat den Schadcode. 272 00:18:07,360 --> 00:18:11,230 Das wird verwendet, 14% der Zeit. 273 00:18:11,230 --> 00:18:17,880 Jetzt möchte ich über das, was der Schadcode zu tun zu sprechen? 274 00:18:17,880 --> 00:18:23,070 Einer der ersten, Malware draußen 275 00:18:23,070 --> 00:18:25,490 Sie könnten eine Spyware prüfen. 276 00:18:25,490 --> 00:18:27,620 Es spioniert grundsätzlich auf den Benutzer. 277 00:18:27,620 --> 00:18:30,470 Es sammelt E-Mails, SMS-Nachrichten. 278 00:18:30,470 --> 00:18:32,340 Es schaltet das Mikrofon. 279 00:18:32,340 --> 00:18:37,330 Es erntet den Kontakt Buch, und es sendet es an jemand anderen. 280 00:18:37,330 --> 00:18:40,870 Diese Art von Spyware auf dem PC vorhanden ist, 281 00:18:40,870 --> 00:18:46,200 so macht es durchaus Sinn, für die Menschen zu versuchen, diese auf mobilen Geräten zu tun. 282 00:18:46,200 --> 00:18:53,230 >> Eines der ersten Beispiele dafür war ein Programm namens geheime SMS Replicator. 283 00:18:53,230 --> 00:18:56,250 Es war im Android Marketplace ein paar Jahren, 284 00:18:56,250 --> 00:18:59,960 und die Idee war, wenn Sie Zugang zu jemand Android-Handy hatte 285 00:18:59,960 --> 00:19:03,450 Sie wollte ausspionieren, vielleicht ist es Ihr Ehepartner 286 00:19:03,450 --> 00:19:07,600 oder Ihrem Lebensgefährten und Sie müssen auf ihre SMS-Nachrichten ausspionieren möchten, 287 00:19:07,600 --> 00:19:11,200 Sie könnten diese App herunterladen und installieren und konfigurieren Sie es 288 00:19:11,200 --> 00:19:16,540 , eine SMS-Textnachricht an Sie mit einer Kopie senden 289 00:19:16,540 --> 00:19:21,710 jeder SMS-Nachricht, die sie bekam. 290 00:19:21,710 --> 00:19:27,220 Dies ist offensichtlich in Verletzungen der App-Store-Nutzungsbedingungen, 291 00:19:27,220 --> 00:19:32,040 und das wurde aus dem Android Marketplace innerhalb von 18 Stunden, dass es da entfernt, 292 00:19:32,040 --> 00:19:36,760 so dass eine sehr kleine Anzahl von Personen gefährdet waren, weil dieser. 293 00:19:36,760 --> 00:19:42,510 Nun, ich denke, wenn das Programm aufgerufen wurde etwas vielleicht etwas weniger provokativ 294 00:19:42,510 --> 00:19:48,690 wie geheime SMS Replicator wäre es wahrscheinlich viel besser gearbeitet haben. 295 00:19:48,690 --> 00:19:52,870 Aber es war ziemlich offensichtlich. 296 00:19:52,870 --> 00:19:58,680 >> Eines der Dinge, die wir tun können, um festzustellen, ob dieses Verhalten Anwendungen haben, die wir nicht wollen, 297 00:19:58,680 --> 00:20:01,410 ist, um den Code zu überprüfen. 298 00:20:01,410 --> 00:20:06,250 Das ist eigentlich wirklich einfach, auf Android zu tun, denn wir können die Apps dekompilieren. 299 00:20:06,250 --> 00:20:11,050 Unter iOS können Sie einen Disassembler IDA Pro verwenden wie 300 00:20:11,050 --> 00:20:17,190 APIs an, was die App anruft und was es tut aussehen. 301 00:20:17,190 --> 00:20:20,680 Wir schrieben unsere eigenen binären statische Analysator für unseren Code 302 00:20:20,680 --> 00:20:24,940 und wir tun das, und so, was Sie tun können, ist, man könnte sagen 303 00:20:24,940 --> 00:20:30,490 funktioniert das Gerät alles, was im Grunde Spionage auf mich oder Tracking mir zu tun? 304 00:20:30,490 --> 00:20:33,360 Und ich habe hier einige Beispiele auf dem iPhone. 305 00:20:33,360 --> 00:20:41,440 Dieses erste Beispiel ist, wie die UUID am Telefon zuzugreifen. 306 00:20:41,440 --> 00:20:47,060 Das ist eigentlich etwas, das Apple hat soeben für neue Anwendungen verboten, 307 00:20:47,060 --> 00:20:52,540 aber alte Anwendungen, die Sie auf Ihrem Telefon laufen haben, können immer noch das tun, 308 00:20:52,540 --> 00:20:56,500 und so, dass eindeutige Kennung verwendet werden, um Sie zu verfolgen 309 00:20:56,500 --> 00:21:00,440 über viele verschiedene Anwendungen. 310 00:21:00,440 --> 00:21:07,180 >> Auf der Android, ich habe hier ein Beispiel, sich den Standort des Geräts. 311 00:21:07,180 --> 00:21:10,310 Sie können sehen, dass, wenn das API-Aufruf ist dort, dass App-Tracking, 312 00:21:10,310 --> 00:21:15,000 und Sie können sehen, ob es immer schöne Lage oder groben Lage. 313 00:21:15,000 --> 00:21:18,860 Und dann auf dem Boden hier, habe ich ein Beispiel, wie auf dem Blackberry 314 00:21:18,860 --> 00:21:25,130 könnte eine Anwendung die E-Mails in Ihrem Posteingang zugreifen. 315 00:21:25,130 --> 00:21:27,660 Dies sind die Art von Dingen die Sie überprüfen können, um zu sehen 316 00:21:27,660 --> 00:21:32,360 wenn die app tut diese Dinge. 317 00:21:32,360 --> 00:21:38,320 Die zweite große Kategorie der bösartiges Verhalten, und das ist wohl heute die größte Kategorie, 318 00:21:38,320 --> 00:21:43,950 ist unberechtigten Wahl, unerlaubte Premium-SMS-Textnachrichten 319 00:21:43,950 --> 00:21:46,080 oder unberechtigte Zahlungen. 320 00:21:46,080 --> 00:21:48,930 Eine andere Sache, die einzigartig ist über das Telefon 321 00:21:48,930 --> 00:21:52,700 wird die Vorrichtung mit einem Abrechnungskonto eingehakt ist, 322 00:21:52,700 --> 00:21:55,960 und wenn Aktivitäten geschehen auf dem Handy 323 00:21:55,960 --> 00:21:58,510 es kann Kosten erstellen. 324 00:21:58,510 --> 00:22:00,700 Sie können Dinge über das Telefon zu kaufen, 325 00:22:00,700 --> 00:22:04,390 und wenn Sie eine Premium-SMS-Textnachricht zu senden Sie tatsächlich Geld geben 326 00:22:04,390 --> 00:22:11,590 dem Kontoinhaber der Telefonnummer auf der anderen Seite. 327 00:22:11,590 --> 00:22:17,420 Diese wurden eingerichtet, um Aktienkurse zu bekommen oder sich Ihr Tageshoroskop oder andere Dinge, 328 00:22:17,420 --> 00:22:21,680 aber sie können bis zu einen Artikel, indem Sie eine SMS-Text bestellen eingestellt werden. 329 00:22:21,680 --> 00:22:26,970 Die Leute geben Geld an das Rote Kreuz durch Senden einer SMS-Nachricht. 330 00:22:26,970 --> 00:22:30,650 Sie können $ 10 geben, so. 331 00:22:30,650 --> 00:22:34,190 >> Die Angreifer, was sie getan haben, ist, setzen sie 332 00:22:34,190 --> 00:22:38,750 Konten im Ausland, und sie sind in der Malware einbetten 333 00:22:38,750 --> 00:22:42,840 , dass das Telefon eine Premium-SMS-Textnachricht zu senden, 334 00:22:42,840 --> 00:22:47,700 sagen, ein paar Mal am Tag, und am Ende des Monats, Sie merken, Sie ausgegeben haben 335 00:22:47,700 --> 00:22:52,090 Dutzende oder vielleicht sogar Hunderte von Dollar, und sie gehen weg mit dem Geld. 336 00:22:52,090 --> 00:22:57,280 Dies wurde so schlimm, dass dies die erste Sache, dass die Android- 337 00:22:57,280 --> 00:23:00,760 Marktplatz oder die Google-Ort-es war der Android Marketplace an der Zeit, 338 00:23:00,760 --> 00:23:04,430 und es ist jetzt Google Play-die erste Sache, dass Google begonnen Überprüfung auf. 339 00:23:04,430 --> 00:23:08,700 Wenn Google begann Verteilung Android Apps in ihrem App Store 340 00:23:08,700 --> 00:23:11,350 sie sagten, sie würden nicht auf alles zu überprüfen. 341 00:23:11,350 --> 00:23:15,630 Wir werden Apps, sobald wir sie haben mitgeteilt wurde unsere Nutzungsbedingungen gebrochen zu ziehen, 342 00:23:15,630 --> 00:23:17,520 aber wir gehen nicht, um etwas zu überprüfen. 343 00:23:17,520 --> 00:23:24,350 Nun, vor etwa einem Jahr ist es so schlimm mit diesem Premium-SMS-Malware 344 00:23:24,350 --> 00:23:28,030 dass dies das erste, was sie begonnen Überprüfung auf. 345 00:23:28,030 --> 00:23:31,770 Wenn eine App können SMS-Textnachrichten zu senden 346 00:23:31,770 --> 00:23:34,750 sie manuell weiter zu prüfen, dass die Anwendung. 347 00:23:34,750 --> 00:23:38,770 Sie sehen für die APIs, die diese aufrufen, 348 00:23:38,770 --> 00:23:40,580 und jetzt, da dann Google erweitert hat, 349 00:23:40,580 --> 00:23:46,900 aber das war das erste, was sie auf die Suche nach. 350 00:23:46,900 --> 00:23:50,690 >> Einige andere Apps, die einige SMS-Nachrichten haben, 351 00:23:50,690 --> 00:23:56,980 diese Android Qicsomos, ich denke, es heißt. 352 00:23:56,980 --> 00:24:02,670 Da war dieses aktuelle Ereignis auf dem Handy, wo diese CarrierIQ kam 353 00:24:02,670 --> 00:24:07,720 Spyware auf dem Gerät durch die Träger setzen, 354 00:24:07,720 --> 00:24:10,820 so dass die Leute wollten wissen, ob ihr Telefon war anfällig für diese, 355 00:24:10,820 --> 00:24:13,890 und das war eine kostenlose App, dass getestet. 356 00:24:13,890 --> 00:24:17,520 Nun, natürlich, was diese App tat, war es Premium-SMS-Textnachrichten gesendet, 357 00:24:17,520 --> 00:24:20,090 so durch die Prüfung, um zu sehen, wenn Sie mit Spyware infiziert sind 358 00:24:20,090 --> 00:24:24,930 Sie auf Ihr Gerät geladen Malware. 359 00:24:24,930 --> 00:24:27,310 Wir sahen die gleiche Sache in der letzten Super Bowl passieren. 360 00:24:27,310 --> 00:24:33,180 Es war eine falsche Version der Madden Football-Spiel 361 00:24:33,180 --> 00:24:38,320 , die Premium-SMS-Textnachrichten gesendet. 362 00:24:38,320 --> 00:24:45,750 Es ist tatsächlich versucht, ein Bot-Netz auch auf dem Gerät zu erstellen. 363 00:24:45,750 --> 00:24:48,090 Hier habe ich einige Beispiele. 364 00:24:48,090 --> 00:24:52,640 Interessanterweise wurde von Apple ziemlich smart, 365 00:24:52,640 --> 00:24:58,470 und sie nicht zulassen, Anwendungen, SMS-Textnachrichten an alle senden. 366 00:24:58,470 --> 00:25:00,350 Keine App kann es tun. 367 00:25:00,350 --> 00:25:03,530 Das ist eine gute Möglichkeit, sich von einer ganzen Klasse von Schwachstellen zu befreien, 368 00:25:03,530 --> 00:25:09,040 aber auf Android können Sie es tun, und natürlich auf Blackberry du es auch tun. 369 00:25:09,040 --> 00:25:13,060 Es ist interessant, dass auf dem Blackberry brauchen Sie nur Internet-Berechtigungen 370 00:25:13,060 --> 00:25:18,370 , eine SMS-Textnachricht zu senden. 371 00:25:18,370 --> 00:25:21,580 >> Die andere Sache wirklich, dass wir uns für 372 00:25:21,580 --> 00:25:24,780 wenn wir schauen, um zu sehen, ob etwas schädlich ist ist nur jede Art von 373 00:25:24,780 --> 00:25:28,100 unberechtigten Netzwerkaktivität, wie in der Netzwerkaktivität sehen 374 00:25:28,100 --> 00:25:31,570 die App haben soll, um seine Funktionalität zu haben, 375 00:25:31,570 --> 00:25:35,380 und schauen Sie sich diese anderen Netzwerkaktivität. 376 00:25:35,380 --> 00:25:43,380 Vielleicht eine App, um zu arbeiten, hat über HTTP auf Daten zu erhalten, 377 00:25:43,380 --> 00:25:47,500 aber wenn es Dinge zu tun, über E-Mail oder SMS oder Bluetooth oder so ähnlich 378 00:25:47,500 --> 00:25:52,890 App jetzt, dass möglicherweise bösartig sein, so ist dies eine andere Sache, die Sie für inspizieren können. 379 00:25:52,890 --> 00:26:00,430 Und auf dieser Folie habe ich hier einige Beispiele. 380 00:26:00,430 --> 00:26:05,950 Eine weitere interessante Sache, die wir mit Malware sah, geschah im Jahr 2009, 381 00:26:05,950 --> 00:26:07,600 und es geschah in einem großen Weg. 382 00:26:07,600 --> 00:26:11,390 Ich weiß nicht, ob es so viel seitdem passiert ist, aber es war eine App 383 00:26:11,390 --> 00:26:15,140 imitierten, dass eine andere Anwendung. 384 00:26:15,140 --> 00:26:21,700 Es gab eine Reihe von Anwendungen, und es wurde die 09Droid Angriff genannt, 385 00:26:21,700 --> 00:26:29,770 und jemand beschlossen, dass es eine Menge von kleinen, regionalen, mittelständischen Banken 386 00:26:29,770 --> 00:26:32,260 , die nicht über Online-Banking-Anwendungen, 387 00:26:32,260 --> 00:26:36,870 so, was sie tat, war sie etwa 50 Online-Banking-Anwendungen, die 388 00:26:36,870 --> 00:26:39,410 dass alles, was sie tat, war den Benutzernamen und das Passwort 389 00:26:39,410 --> 00:26:42,190 und leiten Sie auf der Website. 390 00:26:42,190 --> 00:26:47,470 Und so setzten sie diese ganz oben in der Google-Marketplace, 391 00:26:47,470 --> 00:26:51,530 im Android Marketplace, und wenn jemand gesucht, um zu sehen, ob ihre Bank 392 00:26:51,530 --> 00:26:56,000 hatte eine Anwendung sie die falsche Anwendung finden würden, 393 00:26:56,000 --> 00:27:01,230 die ihre Anmeldeinformationen gesammelt und dann weitergeleitet sie auf ihrer Website. 394 00:27:01,230 --> 00:27:06,640 Die Art und Weise, dass dies tatsächlich wurde-die Apps waren dort für ein paar Wochen, 395 00:27:06,640 --> 00:27:09,050 und es waren Tausende und Tausende von Downloads. 396 00:27:09,050 --> 00:27:12,910 >> Die Art und Weise dies ans Licht kam, war jemand hatte ein Problem 397 00:27:12,910 --> 00:27:15,740 mit eine der Anwendungen, und sie ihre Bank genannt, 398 00:27:15,740 --> 00:27:18,390 und sie Kundendienst-Hotline ihrer Bank angerufen und gesagt, 399 00:27:18,390 --> 00:27:21,180 "Ich habe ein Problem mit der Mobile-Banking-Anwendung." 400 00:27:21,180 --> 00:27:23,460 "Können Sie mir helfen?" 401 00:27:23,460 --> 00:27:26,540 Und sie sagten: "Wir wollen nicht eine Mobile-Banking-Anwendung." 402 00:27:26,540 --> 00:27:28,120 Das begann die Untersuchung. 403 00:27:28,120 --> 00:27:31,200 Diese Bank namens Google, und dann sah und sagte Google, 404 00:27:31,200 --> 00:27:37,220 "Wow, der gleiche Autor hat 50 Bankanwendungen geschrieben," und nahm sie alle nach unten. 405 00:27:37,220 --> 00:27:43,410 Aber sicherlich könnte dies wieder geschehen. 406 00:27:43,410 --> 00:27:51,790 Es ist die Liste all der verschiedenen Banken hier 407 00:27:51,790 --> 00:27:55,870 dass waren Teil dieser Betrug. 408 00:27:55,870 --> 00:28:02,050 Die andere Sache, eine App tun können, ist derzeit die UI von einer anderen Anwendung. 409 00:28:02,050 --> 00:28:06,430 Während es läuft könnte es öffnet sich die Facebook-UI. 410 00:28:06,430 --> 00:28:09,540 Er sagt, die Sie in Ihrem Benutzernamen und Passwort haben, weiterhin 411 00:28:09,540 --> 00:28:15,090 oder Aufmachungen einen beliebigen Benutzernamen und das Passwort für eine Website UI 412 00:28:15,090 --> 00:28:18,420 dass vielleicht die Benutzer verwendet einfach um zu versuchen, um den Benutzer zu betrügen 413 00:28:18,420 --> 00:28:21,340 setzen ihre Anmeldeinformationen in in. 414 00:28:21,340 --> 00:28:25,590 Das ist wirklich eine Gerade parallel der E-Mail-Phishing-Angriffe 415 00:28:25,590 --> 00:28:28,210 wo jemand sendet Ihnen eine E-Mail 416 00:28:28,210 --> 00:28:33,050 und im Grunde gibt Ihnen eine gefälschte UI für eine Website 417 00:28:33,050 --> 00:28:37,320 dass Sie Zugriff haben. 418 00:28:37,320 --> 00:28:41,590 >> Die andere Sache, die wir bei bösartigen Code ist Systemmodifikation. 419 00:28:41,590 --> 00:28:48,160 Sie können für alle API-Aufrufe, die Root-Rechte erfordern aussehen 420 00:28:48,160 --> 00:28:50,870 korrekt auszuführen. 421 00:28:50,870 --> 00:28:56,160 Ändern Web-Proxy des Geräts wäre etwas, was eine Anwendung sein 422 00:28:56,160 --> 00:28:59,530 sollten nicht in der Lage sein zu tun. 423 00:28:59,530 --> 00:29:03,030 Aber wenn die Anwendung Code in es, das zu tun 424 00:29:03,030 --> 00:29:05,960 Sie wissen, dass es wahrscheinlich eine bösartige Anwendung 425 00:29:05,960 --> 00:29:09,620 oder sehr hoher Wahrscheinlichkeit eine bösartige Anwendung sein, 426 00:29:09,620 --> 00:29:13,910 und so was passieren würde, ist, dass app in gewisser Weise der eskalierenden Berechtigung haben. 427 00:29:13,910 --> 00:29:17,200 Es müssten einige Privilegieneskalation ausnutzen 428 00:29:17,200 --> 00:29:20,730 in der Anwendung, und dann, sobald es erweiterte Rechte 429 00:29:20,730 --> 00:29:23,800 wäre es, diese Veränderungen im System zu tun. 430 00:29:23,800 --> 00:29:28,010 Sie können Malware, die Privilegieneskalation hat zu finden 431 00:29:28,010 --> 00:29:32,550 in ihm, auch ohne zu wissen, wie das Privileg Eskalation 432 00:29:32,550 --> 00:29:37,960 nutzen wird passieren, und das ist eine schöne, einfache Möglichkeit 433 00:29:37,960 --> 00:29:41,220 auf Malware zu suchen. 434 00:29:41,220 --> 00:29:46,030 DroidDream war der wohl berühmteste Stück des Android-Malware. 435 00:29:46,030 --> 00:29:50,530 Ich denke, dass es über ein paar Tage rund 250.000 Nutzer betroffen 436 00:29:50,530 --> 00:29:52,810 bevor es gefunden wurde. 437 00:29:52,810 --> 00:29:56,890 Sie verpackt 50 gefälschte Anwendungen 438 00:29:56,890 --> 00:30:00,370 legte sie in den Android App Store, 439 00:30:00,370 --> 00:30:10,940 und wesentlich früher Android Jailbreak Code Rechte ausweiten 440 00:30:10,940 --> 00:30:16,380 und installieren Sie dann einen Befehl und Kontrolle, und schalten alle Opfer 441 00:30:16,380 --> 00:30:20,690 in ein Bot-Netz, aber man konnte dies festgestellt haben 442 00:30:20,690 --> 00:30:24,170 ob Sie die Anwendung und scannen nur nach 443 00:30:24,170 --> 00:30:32,230 API-Aufrufe, die erforderliche Stamm Erlaubnis, korrekt auszuführen. 444 00:30:32,230 --> 00:30:40,150 >> Und es ist ein Beispiel, hier habe ich das verändert den Proxy, 445 00:30:40,150 --> 00:30:46,380 und dies ist eigentlich auf dem Android verfügbar. 446 00:30:46,380 --> 00:30:49,070 Sie können sehen, gebe ich Ihnen eine Menge von Beispielen auf Android 447 00:30:49,070 --> 00:30:53,990 weil das ist, wo die aktivste Malware-Ökosystem 448 00:30:53,990 --> 00:30:58,690 weil es für einen Angreifer einfach, um bösartigen Code zu bekommen 449 00:30:58,690 --> 00:31:01,470 in den Android Marketplace. 450 00:31:01,470 --> 00:31:06,480 Es ist nicht so einfach, dass in den Apple App Store zu tun 451 00:31:06,480 --> 00:31:10,250 weil Apple-Entwickler benötigt, um sich zu identifizieren 452 00:31:10,250 --> 00:31:12,790 und unterschreiben Sie den Code. 453 00:31:12,790 --> 00:31:20,340 Sie haben tatsächlich überprüfen, wer Sie sind, und Apple ist tatsächlich der Prüfung der Anträge. 454 00:31:20,340 --> 00:31:27,450 Wir sehen nicht viel wahr, Malware, wo das Gerät wird immer gefährdet ist. 455 00:31:27,450 --> 00:31:32,250 Ich werde über einige Beispiele, wo es wirklich Privatsphäre, die immer gefährdet ist zu sprechen, 456 00:31:32,250 --> 00:31:38,460 und das ist, was wirklich passiert auf dem Apple-Gerät. 457 00:31:38,460 --> 00:31:44,090 Eine andere Sache, bösartigen Code suchen, riskante Code in Geräten 458 00:31:44,090 --> 00:31:50,300 logisch oder Zeitbomben, Zeitbomben und sind wahrscheinlich 459 00:31:50,300 --> 00:31:53,370 viel einfacher, als für logische Bomben zu suchen. 460 00:31:53,370 --> 00:31:57,030 Aber mit Zeitbomben, was Sie tun können, ist, die Sie suchen können 461 00:31:57,030 --> 00:32:04,760 Stellen in dem Code, der die Zeit getestet oder eine absolute Zeit wird gesucht 462 00:32:04,760 --> 00:32:08,190 vor bestimmte Funktionen in der App passiert. 463 00:32:08,190 --> 00:32:14,200 Und das könnte getan werden, um diese Tätigkeit vor dem Benutzer versteckt werden, 464 00:32:14,200 --> 00:32:17,510 so ist es spät in der Nacht passiert. 465 00:32:17,510 --> 00:32:24,350 DroidDream tat alles, seine Tätigkeit von 11.00 Uhr bis 08.00 Uhr Ortszeit 466 00:32:24,350 --> 00:32:30,650 um zu versuchen, es zu tun, während der Benutzer möglicherweise nicht mit ihrem Gerät werden. 467 00:32:30,650 --> 00:32:38,680 >> Ein weiterer Grund, dies zu tun ist, wenn die Menschen mit Verhaltensanalyse einer Anwendung, 468 00:32:38,680 --> 00:32:43,430 läuft die App in einem Sandkasten, um zu sehen, was das Verhalten der Anwendung ist, 469 00:32:43,430 --> 00:32:51,090 sie zeitbasierte Logik verwenden können, um die Aktivität zu tun 470 00:32:51,090 --> 00:32:54,640 wenn die App nicht in den Sandkasten. 471 00:32:54,640 --> 00:33:01,520 Zum Beispiel kann ein App-Store wie Apple 472 00:33:01,520 --> 00:33:07,940 führt die Anwendung aus, aber sie sind wahrscheinlich nicht für jede Anwendung laufen, sagen wir, 30 Tage 473 00:33:07,940 --> 00:33:10,550 es vor der Genehmigung, so dass Sie setzen können 474 00:33:10,550 --> 00:33:14,120 Logik in Ihrer Anwendung, sagte, okay, nur die schlechte Sache zu tun 475 00:33:14,120 --> 00:33:20,490 nach 30 Tagen wurde von oder nach 30 Tagen nach dem Veröffentlichungsdatum der Anmeldung gegangen, 476 00:33:20,490 --> 00:33:27,020 und die den Schadcode verbergen von Menschen, für die Kontrolle es kann helfen. 477 00:33:27,020 --> 00:33:30,050 Wenn Anti-Virus-Unternehmen laufen die Dinge in Sandkästen 478 00:33:30,050 --> 00:33:36,370 oder die App-Stores selbst sind dabei helfen können 479 00:33:36,370 --> 00:33:39,260 verbergen, dass aus dieser Inspektion. 480 00:33:39,260 --> 00:33:43,020 Nun, das ist die Kehrseite, dass es einfach ist, mit statischen Analyse zu finden, 481 00:33:43,020 --> 00:33:46,170 so eigentlich Inspektion der Code, den Sie für alle Stellen suchen können 482 00:33:46,170 --> 00:33:54,010 wo die Anwendung testet die Zeit und überprüfen diese Weise. 483 00:33:54,010 --> 00:33:58,850 Und hier habe ich einige Beispiele auf dieser 3 verschiedenen Plattformen 484 00:33:58,850 --> 00:34:05,640 wie die Zeit kann durch die App-Hersteller überprüft werden 485 00:34:05,640 --> 00:34:10,520 so dass Sie wissen, was für, wenn Sie die App statisch Inspektion zu suchen. 486 00:34:10,520 --> 00:34:14,570 >> Ich habe gerade durch eine ganze Reihe von verschiedenen bösartigen Aktivitäten ging 487 00:34:14,570 --> 00:34:18,969 dass wir in der freien Wildbahn gesehen habe, aber welche sind die häufigsten? 488 00:34:18,969 --> 00:34:23,940 Das gleiche Studie der North Carolina State Mobile-Genom-Projekt 489 00:34:23,940 --> 00:34:28,560 einige Daten veröffentlicht, und es gab im Grunde 4 Bereiche 490 00:34:28,560 --> 00:34:32,850 daß sie sahen, wo es eine Menge von Aktivitäten. 491 00:34:32,850 --> 00:34:35,370 37% der Apps hat Privilegieneskalation, 492 00:34:35,370 --> 00:34:38,429 so hatten sie eine Art von Jailbreak-Code in es 493 00:34:38,429 --> 00:34:42,070 wo sie versuchten, ihre Rechte zu erweitern, so dass sie konnten 494 00:34:42,070 --> 00:34:48,360 Sie API-Befehle ausgeführt, wie das Betriebssystem. 495 00:34:48,360 --> 00:34:52,520 45% der Apps gibt, hat Premium-SMS, 496 00:34:52,520 --> 00:34:57,260 so ist das ein großer Prozentsatz, der versucht, direkt zu monetarisieren ist. 497 00:34:57,260 --> 00:35:02,640 93% taten Fernbedienung, so dass sie versuchte, die Einrichtung eines Bot-Net, eine mobile Bot-Netz. 498 00:35:02,640 --> 00:35:08,990 Und 45% geerntet identifizierende Informationen 499 00:35:08,990 --> 00:35:16,230 wie Telefonnummern, UUIDs, GPS-Ortung, Benutzerkonten, 500 00:35:16,230 --> 00:35:22,870 und dies summiert sich auf mehr als 100, weil die meisten Malware versucht, einige dieser Dinge zu tun. 501 00:35:22,870 --> 00:35:27,070 >> Ich werde auf die zweite Hälfte schalten und sprechen über die Code-Schwachstellen. 502 00:35:27,070 --> 00:35:29,480 Dies ist die zweite Hälfte des riskante Tätigkeit. 503 00:35:29,480 --> 00:35:33,450 Dies ist, wo im wesentlichen der Entwickler, Fehler zu machen. 504 00:35:33,450 --> 00:35:37,210 Ein berechtigtes Entwickler Schreiben eines legitimen App 505 00:35:37,210 --> 00:35:41,830 macht Fehler oder ist nichts von den Risiken der mobilen Plattform. 506 00:35:41,830 --> 00:35:44,780 Sie wissen einfach nicht, wie man eine sichere mobile App zu machen, 507 00:35:44,780 --> 00:35:47,700 oder manchmal auch der Entwickler kümmert sich nicht um die Gefährdung des Benutzers in Gefahr. 508 00:35:47,700 --> 00:35:50,850 Manchmal Teil ihres Geschäftsmodells sein könnte 509 00:35:50,850 --> 00:35:54,610 , die persönliche Informationen des Benutzers. 510 00:35:54,610 --> 00:35:58,090 Das ist eine Art der anderen Kategorie, und das ist, warum einige von dieser Schad 511 00:35:58,090 --> 00:36:03,200 gegenüber legitimen beginnt zu bluten, weil es über Meinungsverschiedenheiten 512 00:36:03,200 --> 00:36:10,440 zwischen dem, was der Nutzer will und was der Benutzer riskant hält 513 00:36:10,440 --> 00:36:13,050 und was die Anwendungsentwickler hält riskant. 514 00:36:13,050 --> 00:36:18,380 Natürlich, es ist nicht die Daten des Anwendungsentwicklers in den meisten Fällen. 515 00:36:18,380 --> 00:36:22,030 >> Und schließlich ist eine weitere Möglichkeit in diesem Fall könnte ein Entwickler in Verknüpfung 516 00:36:22,030 --> 00:36:28,600 eine gemeinsame Bibliothek, die Schwachstellen dieses riskante Verhalten in sich hat 517 00:36:28,600 --> 00:36:32,480 ohne es zu wissen. 518 00:36:32,480 --> 00:36:37,060 Die erste Kategorie ist empfindlich Datenverlust, 519 00:36:37,060 --> 00:36:40,030 und das ist, wenn die App sammelt Informationen 520 00:36:40,030 --> 00:36:44,980 wie Lage, Adressbuch Informationen Besitzerinformationen 521 00:36:44,980 --> 00:36:48,000 und sendet, dass Sie das Gerät aus. 522 00:36:48,000 --> 00:36:53,050 Und wenn es vom Gerät ab, wissen wir nicht, was mit diesen Informationen geschieht. 523 00:36:53,050 --> 00:36:57,170 Es könnte unsicher vom Anwendungsentwickler gespeichert werden. 524 00:36:57,170 --> 00:37:02,070 Wir haben gesehen, Anwendungsentwickler bekommen gefährdet ist, 525 00:37:02,070 --> 00:37:05,820 und die Daten, die sie speichern wird übernommen. 526 00:37:05,820 --> 00:37:10,970 Dies geschah vor ein paar Monaten zu einem Entwickler in Florida 527 00:37:10,970 --> 00:37:21,660 wo eine riesige Anzahl von iPad-es war UUIDs und Gerätenamen 528 00:37:21,660 --> 00:37:25,270 zugespielt wurden, weil jemand, ich glaube es war anonym, 529 00:37:25,270 --> 00:37:29,460 behauptet, dies zu tun, brach in diesem Entwickler-Servern 530 00:37:29,460 --> 00:37:34,920 und stahlen Millionen iPad UUIDs 531 00:37:34,920 --> 00:37:37,390 und Computernamen. 532 00:37:37,390 --> 00:37:40,260 Nicht der risikoreichsten Informationen 533 00:37:40,260 --> 00:37:46,820 aber was, wenn das war die Speicherung von Benutzernamen und Passwörtern 534 00:37:46,820 --> 00:37:48,170 und Home-Adressen? 535 00:37:48,170 --> 00:37:51,100 Es gibt viele Apps, die diese Art von Informationen zu speichern. 536 00:37:51,100 --> 00:37:53,230 Die Gefahr ist da. 537 00:37:53,230 --> 00:37:56,620 >> Das andere, was passieren kann, ist, wenn der Entwickler nicht kümmern 538 00:37:56,620 --> 00:38:01,370 Um den Datenkanal zu sichern, und das ist ein weiterer großer Schwachstelle werde ich darüber zu sprechen, 539 00:38:01,370 --> 00:38:05,160 dass Daten in Klartext gesendet. 540 00:38:05,160 --> 00:38:09,040 Wenn der Benutzer auf einem öffentlichen Wi-Fi-Netzwerk 541 00:38:09,040 --> 00:38:12,330 oder jemand schnüffelt im Internet irgendwo 542 00:38:12,330 --> 00:38:19,260 entlang dem Pfad an, dass Daten ausgesetzt. 543 00:38:19,260 --> 00:38:23,790 Ein sehr berühmter Fall dieser Informationslecks passiert mit Pandora, 544 00:38:23,790 --> 00:38:27,250 und das ist etwas, was wir in Veracode erforscht. 545 00:38:27,250 --> 00:38:33,200 Wir haben gehört, dass es eine, ich glaube, es ist ein Federal Trade Kommission 546 00:38:33,200 --> 00:38:35,310 Untersuchung los mit Pandora. 547 00:38:35,310 --> 00:38:39,830 Wir sagten: "Was ist da los? Beginnen wir graben in die Pandora-Anwendung." 548 00:38:39,830 --> 00:38:46,690 Und was wir festgestellt, war die Pandora-Anwendung gesammelt 549 00:38:46,690 --> 00:38:51,270 Ihr Geschlecht und Ihr Alter, 550 00:38:51,270 --> 00:38:56,660 und es wird auch Ihre GPS-Position und die Pandora-Anwendung zugegriffen 551 00:38:56,660 --> 00:39:00,200 tat das, was sie sagte, waren legitime Gründe. 552 00:39:00,200 --> 00:39:05,360 Die Musik, die sie spielten, Pandora ist ein Musik-Streaming-App- 553 00:39:05,360 --> 00:39:07,530 die Musik, die sie spielten, wurde nur in den Vereinigten Staaten zugelassen, 554 00:39:07,530 --> 00:39:13,020 so hatten sie, um zu überprüfen, um mit ihren Lizenzvereinbarungen, die sie hatten entsprechen 555 00:39:13,020 --> 00:39:17,240 für die Musik, die der Benutzer in den Vereinigten Staaten. 556 00:39:17,240 --> 00:39:25,070 Sie wollten auch mit der Elternberatungs entsprechen 557 00:39:25,070 --> 00:39:33,790 um Erwachsenensprache in der Musik, 558 00:39:33,790 --> 00:39:37,500 und so ist es ein freiwilliges Programm, aber sie wollten, dass mit entsprechen 559 00:39:37,500 --> 00:39:43,010 und nicht die explizite Texte spielen für Kinder unter 13 Jahren. 560 00:39:43,010 --> 00:39:46,280 >> Sie hatten berechtigte Gründe für die Erhebung dieser Daten. 561 00:39:46,280 --> 00:39:49,160 Die App hatte die Berechtigungen, es zu tun. 562 00:39:49,160 --> 00:39:52,000 Benutzer dachte, das war legitim. Aber was ist passiert? 563 00:39:52,000 --> 00:39:55,810 Sie in 3 oder 4 verschiedene Ad-Bibliotheken gelinkt. 564 00:39:55,810 --> 00:39:59,140 Jetzt ganz plötzlich all diese Anzeige Bibliotheken 565 00:39:59,140 --> 00:40:02,970 werden immer Zugriff auf die gleichen Informationen. 566 00:40:02,970 --> 00:40:05,830 Die Ad-Bibliotheken, wenn Sie in der Anzeigen Bibliotheken Blick auf den Code 567 00:40:05,830 --> 00:40:08,430 was sie tun, ist jeder Anzeige sagt Bibliothek 568 00:40:08,430 --> 00:40:11,340 "Ist meine App die Berechtigung zum GPS-Standort zu bekommen?" 569 00:40:11,340 --> 00:40:14,890 "Oh, es ist Okay, sag mir, die GPS-Position." 570 00:40:14,890 --> 00:40:16,620 Jede einzelne Anzeige Bibliothek tut, 571 00:40:16,620 --> 00:40:19,740 und wenn die App nicht über GPS-Erlaubnis 572 00:40:19,740 --> 00:40:23,460 es wird nicht in der Lage, es zu bekommen, aber wenn es funktioniert, wird es es zu bekommen. 573 00:40:23,460 --> 00:40:26,240 Dies ist, wo das Geschäftsmodell der Ad-Bibliotheken 574 00:40:26,240 --> 00:40:31,160 ist mit der Privatsphäre des Benutzers gegenüber. 575 00:40:31,160 --> 00:40:34,980 Und es ist schon Studien gibt, die sagen werden, wenn Sie das Alter wissen 576 00:40:34,980 --> 00:40:38,430 von einer Person, und Sie wissen, ihren Standort 577 00:40:38,430 --> 00:40:42,530 wo sie schlafen in der Nacht, weil Sie ihre GPS-Koordinaten 578 00:40:42,530 --> 00:40:46,030 während sie vielleicht schlafen, wissen Sie genau, wer diese Person ist 579 00:40:46,030 --> 00:40:50,230 da kann man bestimmen, welche Mitglied dieses Haushalts ist, dass Person. 580 00:40:50,230 --> 00:40:54,780 Wirklich ist dies für die Werbe Identifizierung 581 00:40:54,780 --> 00:40:59,530 genau, wer du bist, und es sieht aus wie es legitim war. 582 00:40:59,530 --> 00:41:02,800 Ich will einfach nur meine Musik-Streaming, und das ist der einzige Weg, um es zu bekommen. 583 00:41:02,800 --> 00:41:05,370 >> Nun, wir diese ausgesetzt. 584 00:41:05,370 --> 00:41:08,030 Wir schrieben dies in mehreren Blog-Posts, 585 00:41:08,030 --> 00:41:13,280 und es stellte sich heraus, dass jemand vom Rolling Stone Magazin 586 00:41:13,280 --> 00:41:18,810 Lesen einer unserer Blog-Posts und schrieb seinen eigenen Blog im Rolling Stone über sie, 587 00:41:18,810 --> 00:41:22,120 und schon am nächsten Tag Pandora dachte, es war eine gute Idee 588 00:41:22,120 --> 00:41:27,600 , um die Anzeige Bibliotheken aus ihrer Anwendung zu entfernen. 589 00:41:27,600 --> 00:41:31,270 Soweit ich weiß, sie sind die einzige-sie gelobt werden sollte. 590 00:41:31,270 --> 00:41:35,770 Ich denke, sie sind die einzige Art von Freemium-App, die das getan hat. 591 00:41:35,770 --> 00:41:38,660 Alle anderen Freemium-Apps haben diese gleiche Verhalten, 592 00:41:38,660 --> 00:41:41,780 so mußt du über welche Art von Daten gibst du denken 593 00:41:41,780 --> 00:41:48,330 Freemium diese Anwendungen, da es ist alles für die Werbe gehen. 594 00:41:48,330 --> 00:41:53,390 Praetorian hat auch eine Studie über die gemeinsam genutzte Bibliotheken und sagte: 595 00:41:53,390 --> 00:41:57,100 "Schauen wir uns an, was gemeinsam genutzte Bibliotheken sind die Top-Shared Libraries", und das war die Daten. 596 00:41:57,100 --> 00:41:59,420 Sie analysierten >> 53.000 Apps, 597 00:41:59,420 --> 00:42:01,900 und die Nummer 1 gemeinsam genutzte Bibliothek war Admob. 598 00:42:01,900 --> 00:42:06,060 Es war eigentlich in 38% der Anwendungen gibt, 599 00:42:06,060 --> 00:42:08,800 so 38% der Anwendungen, die Sie verwenden 600 00:42:08,800 --> 00:42:11,250 sind wahrscheinlich Ernte Ihrer persönlichen Informationen 601 00:42:11,250 --> 00:42:16,650 und Senden an den Ad-Netzwerke. 602 00:42:16,650 --> 00:42:19,350 Apache und Android wurden 8% und 6%, 603 00:42:19,350 --> 00:42:22,960 und dann diese andere, die sich an der Unterseite, Google Ads, Flurry, 604 00:42:22,960 --> 00:42:26,600 Mob City und Millennial Media, 605 00:42:26,600 --> 00:42:30,500 diese sind alle Werbeagenturen, und, interessanterweise, 606 00:42:30,500 --> 00:42:33,500 4% in der Facebook-Bibliothek verknüpft 607 00:42:33,500 --> 00:42:38,870 wahrscheinlich, um die Authentifizierung über Facebook tun 608 00:42:38,870 --> 00:42:40,810 so könnte das die Facebook-App authentifizieren. 609 00:42:40,810 --> 00:42:44,660 Aber das bedeutet auch, die Gesellschaft Facebook steuert Code 610 00:42:44,660 --> 00:42:49,010 das ist in 4% der Android-Apps laufen da draußen, 611 00:42:49,010 --> 00:42:53,490 und sie haben Zugang zu allen Daten, dass die App die Erlaubnis hat, auf zu bekommen. 612 00:42:53,490 --> 00:42:57,170 Facebook im Wesentlichen versucht, Werbeflächen zu verkaufen. 613 00:42:57,170 --> 00:43:00,120 Das ist ihr Geschäftsmodell. 614 00:43:00,120 --> 00:43:02,920 >> Wenn Sie an dieser gesamte Ökosystem mit diesen Berechtigungen aussehen 615 00:43:02,920 --> 00:43:07,740 und gemeinsam genutzte Bibliotheken Sie beginnen zu sehen, dass 616 00:43:07,740 --> 00:43:13,850 Sie haben eine Menge Risiko in einer vermeintlich legitimen Anwendung. 617 00:43:13,850 --> 00:43:19,360 Die gleiche Sache, die mit ähnlichen Pandora passiert 618 00:43:19,360 --> 00:43:22,340 passiert mit einer Anwendung namens Path, 619 00:43:22,340 --> 00:43:27,660 Pfad und dachte, sie waren hilfsbereit, freundlich Entwickler sein. 620 00:43:27,660 --> 00:43:32,160 Sie wurden nur versuchen, Ihnen ein großartiges Benutzererlebnis zu geben, 621 00:43:32,160 --> 00:43:37,810 und es stellte sich heraus, dass ohne den Benutzer oder dem Benutzer erklären, nichts- 622 00:43:37,810 --> 00:43:40,400 und das passiert auf dem iPhone und auf Android, 623 00:43:40,400 --> 00:43:44,420 der Pandora App war auf dem iPhone und Android- 624 00:43:44,420 --> 00:43:48,890 dass der Pfad-Anwendung wurde Grabbing Ihre gesamte Adressbuch 625 00:43:48,890 --> 00:43:52,830 und Hochladen auf Pfad nur, wenn Sie installiert und lief die Anwendung, 626 00:43:52,830 --> 00:43:55,840 und sie nicht darüber sagen. 627 00:43:55,840 --> 00:43:58,750 Sie dachte, es war wirklich hilfreich für Sie 628 00:43:58,750 --> 00:44:04,040 der Lage sein, mit all den Menschen in Ihrem Adressbuch zu teilen 629 00:44:04,040 --> 00:44:06,920 dass Sie den Pfad Anwendung sind. 630 00:44:06,920 --> 00:44:09,490 >> Nun, offensichtlich Pfad dachte, das war toll für ihr Unternehmen. 631 00:44:09,490 --> 00:44:13,510 Nicht so toll für den Benutzer. 632 00:44:13,510 --> 00:44:19,020 Sie müssen denken, dass es eine Sache ist, ob vielleicht ein Teenager 633 00:44:19,020 --> 00:44:23,700 wird mit dieser Anwendung und deren Dutzende Freunde sind dort, 634 00:44:23,700 --> 00:44:29,360 aber was, wenn es der CEO einer Firma, die Pfad installiert 635 00:44:29,360 --> 00:44:33,170 und dann ganz plötzlich ihr ganzes Adressbuch ist da oben? 636 00:44:33,170 --> 00:44:38,310 Du wirst eine Menge potenziell wertvolle Kontaktinformationen zu erhalten 637 00:44:38,310 --> 00:44:40,920 für eine Menge Leute. 638 00:44:40,920 --> 00:44:44,500 Ein Reporter der New York Times, könnte man in der Lage, die Telefonnummer zu bekommen 639 00:44:44,500 --> 00:44:47,380 für Ex-Präsidenten aus ihrem Adressbuch, 640 00:44:47,380 --> 00:44:54,780 so offensichtlich eine Menge von sensiblen Informationen wird mit so etwas übergeben. 641 00:44:54,780 --> 00:44:58,090 Es gab so eine große Klappe um das, dass Pfad entschuldigt. 642 00:44:58,090 --> 00:45:01,610 Sie änderten ihre Anwendung, und es beeinflusst auch von Apple. 643 00:45:01,610 --> 00:45:06,950 Apple sagte, "Wir werden App-Anbieter zwingen die Benutzer aufgefordert 644 00:45:06,950 --> 00:45:12,650 wenn sie gehen, um ihre gesamte Adressbuch zu sammeln. " 645 00:45:12,650 --> 00:45:15,360 >> Es sieht aus wie das, was hier geschieht, ist 646 00:45:15,360 --> 00:45:19,430 wenn es eine große Verletzung der Privatsphäre, und es macht die Presse 647 00:45:19,430 --> 00:45:21,680 wir sehen eine Veränderung gibt. 648 00:45:21,680 --> 00:45:23,230 Aber natürlich gibt es andere Dinge gibt. 649 00:45:23,230 --> 00:45:27,440 Die LinkedIn-Anwendung erntet Ihre Kalendereinträge, 650 00:45:27,440 --> 00:45:34,530 aber Apple macht nicht den Benutzer darüber aufgefordert. 651 00:45:34,530 --> 00:45:38,030 Kalendereinträge können vertrauliche Informationen in ihnen zu haben. 652 00:45:38,030 --> 00:45:40,000 Wo wollen Sie die Grenze ziehen? 653 00:45:40,000 --> 00:45:43,960 Das ist wirklich eine Art von sich entwickelnden Ort 654 00:45:43,960 --> 00:45:47,640 wo gibt es wirklich keine guten Standard gibt, 655 00:45:47,640 --> 00:45:51,990 für die Benutzer zu verstehen, wenn ihre Informationen wird sich in Gefahr sein 656 00:45:51,990 --> 00:45:57,820 und wenn sie gehen zu wissen, dass es getroffen werden. 657 00:45:57,820 --> 00:46:03,040 Wir schrieben eine App bei Veracode genannt Adios, 658 00:46:03,040 --> 00:46:08,350 und im Wesentlichen erlaubt es Ihnen, die App im iTunes-Verzeichnis zeigen 659 00:46:08,350 --> 00:46:12,550 und schauen Sie sich alle Anwendungen, die Ihre volle Adressbuch Ernte wurden. 660 00:46:12,550 --> 00:46:19,760 Und wie Sie hier auf dieser Liste sehen können, Angry Birds, 661 00:46:19,760 --> 00:46:21,590 AIM, AroundMe. 662 00:46:21,590 --> 00:46:24,050 Warum Angry Birds müssen Ihrem Adressbuch? 663 00:46:24,050 --> 00:46:29,160 Ich weiß nicht, aber es irgendwie nicht. 664 00:46:29,160 --> 00:46:32,310 >> Das ist etwas, das viele, viele Anwendungen zu tun. 665 00:46:32,310 --> 00:46:34,780 Sie können den Code für diese zu inspizieren. 666 00:46:34,780 --> 00:46:38,660 Es gibt klar definierte APIs für iPhone, Android und Blackberry 667 00:46:38,660 --> 00:46:42,120 auf das Adressbuch zu bekommen. 668 00:46:42,120 --> 00:46:48,520 Man kann wirklich leicht für diese zu inspizieren, und dies ist, was wir in unserer Anwendung Adios taten. 669 00:46:48,520 --> 00:46:52,320 Die nächste Kategorie, Unsichere Sensitive Data Storage, 670 00:46:52,320 --> 00:46:55,670 ist etwas, wo die Entwickler nehmen so etwas wie ein Stift oder eine Kontonummer 671 00:46:55,670 --> 00:46:58,530 oder ein Passwort und speichern sie in der klaren auf dem Gerät. 672 00:46:58,530 --> 00:47:02,310 Noch schlimmer ist, sie in einem Bereich gespeichert werden kann unter der Telefon 673 00:47:02,310 --> 00:47:06,820 die global zugänglich ist, wie der SD-Karte. 674 00:47:06,820 --> 00:47:11,320 Sie sehen dies öfter auf, weil Android Android ermöglicht eine SD-Karte. 675 00:47:11,320 --> 00:47:13,200 IPhone-Geräte nicht. 676 00:47:13,200 --> 00:47:17,900 Aber wir sahen auch in einem CitiGroup Anwendung dies geschieht. 677 00:47:17,900 --> 00:47:25,450 Ihre Online-Banking-Anwendung gespeichert die Kontonummern unsicher, 678 00:47:25,450 --> 00:47:28,120 nur in der klaren, also, wenn Sie Ihr Gerät verloren geht, 679 00:47:28,120 --> 00:47:30,670 Wesentlichen Sie Ihr Bankkonto verloren. 680 00:47:30,670 --> 00:47:36,000 Das ist, warum ich persönlich glaube nicht, Banking auf meinem iPhone zu tun. 681 00:47:36,000 --> 00:47:43,710 Ich denke, es ist zu riskant, gerade jetzt, diese Art von Aktivitäten. 682 00:47:43,710 --> 00:47:45,950 >> Skype hat die gleiche Sache. 683 00:47:45,950 --> 00:47:49,870 Skype, hat natürlich einen Kontostand, einen Benutzernamen und ein Passwort 684 00:47:49,870 --> 00:47:51,030 , die dieses Gleichgewicht zu gelangen. 685 00:47:51,030 --> 00:48:00,080 Speichern Sie wurden alle diese Informationen im Klar auf dem mobilen Gerät. 686 00:48:00,080 --> 00:48:05,760 Ich habe hier einige Beispiele, Dateien zu erzeugen 687 00:48:05,760 --> 00:48:10,310 dass nicht über die richtigen Berechtigungen oder Schreiben auf Disc 688 00:48:10,310 --> 00:48:17,260 und nicht mit einem Verschlüsselungs passieren dafür. 689 00:48:17,260 --> 00:48:20,190 Das nächste Gebiet, Sensitive Unsichere Datenübertragung, 690 00:48:20,190 --> 00:48:24,450 Ich habe mit ein paar Mal wegen der öffentlichen Wi-Fi angedeutet, und 691 00:48:24,450 --> 00:48:27,770 das ist etwas, das zu tun, unbedingt brauchen Apps, 692 00:48:27,770 --> 00:48:31,250 und das ist wahrscheinlich das, was wir sehen, schief gehen am meisten. 693 00:48:31,250 --> 00:48:34,920 Ich würde sagen, eigentlich, ich glaube, ich habe die aktuellen Daten, 694 00:48:34,920 --> 00:48:38,120 aber es ist fast die Hälfte der mobilen Anwendungen 695 00:48:38,120 --> 00:48:41,780 vermasseln tun SSL. 696 00:48:41,780 --> 00:48:43,910 Sie haben einfach nicht die APIs korrekt verwenden. 697 00:48:43,910 --> 00:48:47,970 Ich meine, das ist alles, was Sie zu tun haben, folgen Sie den Anweisungen und verwenden Sie die APIs, 698 00:48:47,970 --> 00:48:54,720 aber sie haben Dinge wie nicht, ob es einen ungültigen Zertifikat am anderen Ende, 699 00:48:54,720 --> 00:49:02,120 nicht, ob das andere Ende versucht, ein Protokoll Herabstufung Angriff zu tun. 700 00:49:02,120 --> 00:49:07,200 >> Die Entwickler wollen sie ihre Kontrollkästchen, nicht wahr? 701 00:49:07,200 --> 00:49:11,910 Ihre Forderung ist, diese zu verwenden, zu verkaufen. Sie haben diese verwendet werden, um zu verkaufen. 702 00:49:11,910 --> 00:49:14,800 Die Forderung ist nicht, diese zu verwenden, um sicher zu verkaufen, 703 00:49:14,800 --> 00:49:19,680 und so das ist, warum alle Anwendungen, die SSL verwenden, um Daten zu sichern 704 00:49:19,680 --> 00:49:23,470 wie es ist ausgeschaltet übermittelt das Gerät wirklich brauchen, um überprüft werden 705 00:49:23,470 --> 00:49:28,950 sicherstellen, dass korrekt umgesetzt wurde. 706 00:49:28,950 --> 00:49:32,850 Und hier habe ich einige Beispiele, bei denen Sie eine Anwendung sehen können 707 00:49:32,850 --> 00:49:37,400 könnten mit HTTP statt HTTPS. 708 00:49:37,400 --> 00:49:40,510 In einigen Fällen wird auf HTTP-Apps zurück fallen 709 00:49:40,510 --> 00:49:44,250 wenn die HTTPS funktioniert nicht. 710 00:49:44,250 --> 00:49:49,070 Ich habe hier einen weiteren Anruf auf Android, wo sie haben die Zertifikatsprüfung deaktiviert, 711 00:49:49,070 --> 00:49:51,700 so ein Mann-in-the-Middle-Angriff geschehen kann. 712 00:49:51,700 --> 00:49:56,370 Ein ungültiges Zertifikat akzeptiert. 713 00:49:56,370 --> 00:50:01,920 Das sind alles Fälle, in denen die Angreifer sind in der Lage zu bekommen, auf sein 714 00:50:01,920 --> 00:50:07,150 die gleiche Wi-Fi-Verbindung wie der Benutzer und Zugriff auf alle Daten 715 00:50:07,150 --> 00:50:11,650 das ist, die über das Internet gesendet. 716 00:50:11,650 --> 00:50:15,970 >> Und schließlich die letzte Kategorie habe ich hier vergessen ist hartcodiert und Schlüssel. 717 00:50:15,970 --> 00:50:21,470 Wir haben tatsächlich sehen viele Entwickler verwenden die gleiche Codierungsstil 718 00:50:21,470 --> 00:50:25,900 dass sie, wenn sie Web-Server-Anwendungen bauen, 719 00:50:25,900 --> 00:50:29,700 so dass sie den Aufbau einer Java-Server-Anwendung, und sie sind hartzucodieren die Taste. 720 00:50:29,700 --> 00:50:31,940 Nun, wenn Sie den Aufbau einer Server-Anwendung sind, ja, 721 00:50:31,940 --> 00:50:34,240 hartzucodieren den Schlüssel ist nicht eine gute Idee. 722 00:50:34,240 --> 00:50:36,290 Das macht es schwer zu ändern. 723 00:50:36,290 --> 00:50:40,700 Aber es ist nicht so schlimm, auf der Serverseite, weil der Zugriff auf die Server-Seite hat? 724 00:50:40,700 --> 00:50:43,140 Nur die Administratoren. 725 00:50:43,140 --> 00:50:48,100 Aber wenn Sie den gleichen Code zu nehmen und Sie goss es über zu einer mobilen Anwendung 726 00:50:48,100 --> 00:50:52,550 Jetzt hat jeder, dass mobile Anwendung hat Zugriff auf die hartcodierte Schlüssel, 727 00:50:52,550 --> 00:50:56,380 und wir sehen dies eine Menge Zeit, und ich habe einige Statistiken 728 00:50:56,380 --> 00:51:00,920 wie oft wir sehen dies geschieht. 729 00:51:00,920 --> 00:51:04,940 Es ist tatsächlich in Beispiel-Code veröffentlicht, die Mastercard war 730 00:51:04,940 --> 00:51:06,850 wie sie ihre Service zu nutzen. 731 00:51:06,850 --> 00:51:11,860 Der Beispielcode zeigt, wie Sie würden nur das Passwort zu nehmen 732 00:51:11,860 --> 00:51:14,850 und steckte es in eine hartcodierte Zeichenfolge genau dort, 733 00:51:14,850 --> 00:51:19,380 und wir wissen, wie Entwickler lieben, zu kopieren und Code-Snippets 734 00:51:19,380 --> 00:51:22,360 wenn sie versuchen, etwas zu tun, so dass Sie das Code-Snippet kopieren und einfügen 735 00:51:22,360 --> 00:51:28,450 dass sie gab als Beispiel-Code, und Sie eine unsichere Anwendung haben. 736 00:51:28,450 --> 00:51:31,490 >> Und hier haben wir einige Beispiele. 737 00:51:31,490 --> 00:51:35,840 Das erste ist, was wir sehen, eine Menge, wo sie codieren 738 00:51:35,840 --> 00:51:40,510 die Daten direkt in eine URL, die gesendet wird. 739 00:51:40,510 --> 00:51:45,120 Manchmal sehen wir string password = Passwort. 740 00:51:45,120 --> 00:51:49,060 Das ist ziemlich leicht zu erkennen, oder String-Passwort auf Blackberry und Android. 741 00:51:49,060 --> 00:51:53,680 Es ist eigentlich ziemlich einfach, für, weil fast immer überprüfen 742 00:51:53,680 --> 00:51:57,030 die Entwicklernamen die Variable, die hält das Passwort 743 00:51:57,030 --> 00:52:02,290 einige Variation Passwort. 744 00:52:02,290 --> 00:52:05,200 Ich erwähnte, dass wir tun, statische Analyse bei Veracode, 745 00:52:05,200 --> 00:52:11,790 so haben wir mehrere hundert Android und iOS-Anwendungen analysiert. 746 00:52:11,790 --> 00:52:15,160 Wir haben volle Modelle von ihnen gebaut, und wir sind in der Lage, sie zu scannen 747 00:52:15,160 --> 00:52:19,280 für verschiedene Schwachstellen, vor allem die Schwachstellen ich rede, 748 00:52:19,280 --> 00:52:21,050 und ich habe einige Daten hier. 749 00:52:21,050 --> 00:52:24,320 68,5% der Android-Apps haben wir uns in 750 00:52:24,320 --> 00:52:28,590 hatte Verschlüsselungscodes, 751 00:52:28,590 --> 00:52:33,240 was für uns, können wir nicht erkennen, wenn Sie Ihre eigenen Krypto-Routine gemacht, 752 00:52:33,240 --> 00:52:38,980 nicht, dass das eine gute Idee, aber das ist eigentlich mit den veröffentlichten APIs 753 00:52:38,980 --> 00:52:42,530 , die auf der Plattform sind, aber sie tun so 754 00:52:42,530 --> 00:52:46,680 dass die Krypto wäre gefährdet, 68,5. 755 00:52:46,680 --> 00:52:49,870 Und das ist für Menschen, die uns senden, ihre Anwendungen tatsächlich da 756 00:52:49,870 --> 00:52:53,730 sie denken, es ist eine gute Idee, um Sicherheitsüberprüfung. 757 00:52:53,730 --> 00:52:56,960 Das sind schon Leute, die wahrscheinlich sicher denken, 758 00:52:56,960 --> 00:52:59,540 so ist es wahrscheinlich noch schlimmer. 759 00:52:59,540 --> 00:53:02,690 >> Ich sprach nicht über Steuerleitung Feed Injektion. 760 00:53:02,690 --> 00:53:07,640 Es ist etwas, schauen wir nach, aber es ist nicht so riskant ein Problem. 761 00:53:07,640 --> 00:53:15,390 Informationslecks, das ist, wo sensible Daten wird das Gerät aus gesendet. 762 00:53:15,390 --> 00:53:19,270 Wir fanden, dass in 40% der Anwendungen. 763 00:53:19,270 --> 00:53:23,540 Zeit und Staat, das sind Rennen Konditionsart Fragen, in der Regel ziemlich schwer zu nutzen, 764 00:53:23,540 --> 00:53:26,170 so dass ich nicht darüber reden, aber wir sahen es. 765 00:53:26,170 --> 00:53:28,750 23% hatten SQL-Injection-Fragen. 766 00:53:28,750 --> 00:53:32,020 Viele Menschen wissen nicht, dass eine Vielzahl von Anwendungen 767 00:53:32,020 --> 00:53:35,880 mit einem kleinen wenig SQL-Datenbank auf ihre Back-End-Daten zu speichern. 768 00:53:35,880 --> 00:53:40,430 Nun, wenn die Daten, die Sie über das Netzwerk zu greifen sind 769 00:53:40,430 --> 00:53:43,800 hat SQL-Injection-Angriff Saiten in ihm 770 00:53:43,800 --> 00:53:45,970 jemand kann das Gerät durch die Kompromisse, 771 00:53:45,970 --> 00:53:49,800 und so denke ich, finden wir etwa 40% der Web-Anwendungen dieses Problem haben, 772 00:53:49,800 --> 00:53:52,840 Das ist eine riesige Epidemie Problem. 773 00:53:52,840 --> 00:53:55,740 Wir finden es 23% der Zeit in mobilen Anwendungen 774 00:53:55,740 --> 00:54:02,030 und das ist wahrscheinlich, weil viele Web-Anwendungen verwenden SQL als mobil. 775 00:54:02,030 --> 00:54:05,580 >> Und dann sehen wir noch einige Cross-Site Scripting, Genehmigungsfragen, 776 00:54:05,580 --> 00:54:09,400 und Credential-Management, das ist, wo Sie Ihre hartcodierte Passwort haben. 777 00:54:09,400 --> 00:54:14,540 In 5% der Anwendungen sehen wir, dass. 778 00:54:14,540 --> 00:54:17,970 Und dann haben wir einige Daten über iOS. 779 00:54:17,970 --> 00:54:20,180 81% hatten Fehlerbehandlungsfragen. 780 00:54:20,180 --> 00:54:23,130 Dies ist eher eine Codequalitätsproblem, 781 00:54:23,130 --> 00:54:28,010 aber 67% hatten kryptografischen Themen, also nicht ganz so schlimm wie Android. 782 00:54:28,010 --> 00:54:32,440 Vielleicht sind die APIs sind ein bisschen leichter, die beispielsweise Codes ein wenig besser auf iOS. 783 00:54:32,440 --> 00:54:35,420 Aber immer noch ein sehr hoher Prozentsatz. 784 00:54:35,420 --> 00:54:39,040 Wir hatten 54% mit Informationslecks, 785 00:54:39,040 --> 00:54:42,080 etwa 30% mit Puffermanagementfehler. 786 00:54:42,080 --> 00:54:45,930 Das ist dort, wo es möglicherweise ein Speicherfehler sein. 787 00:54:45,930 --> 00:54:50,350 Es stellt sich heraus, dass das nicht so viel von einem Problem für die Ausbeutung 788 00:54:50,350 --> 00:54:56,450 auf iOS, weil der gesamte Code muss unterzeichnet werden, 789 00:54:56,450 --> 00:55:02,210 so ist es schwer für einen Angreifer, beliebigen Code auf iOS auszuführen. 790 00:55:02,210 --> 00:55:07,880 Code-Qualität, Directory Traversal, aber dann Anmeldeinformationen Management hier bei 14,6%, 791 00:55:07,880 --> 00:55:09,250 so schlimmer, als auf dem Android. 792 00:55:09,250 --> 00:55:13,240 Wir haben die Menschen nicht den richtigen Umgang mit Passwörtern. 793 00:55:13,240 --> 00:55:15,790 Und dann die numerische Fehler und Pufferüberlauf, 794 00:55:15,790 --> 00:55:22,680 das sind mehr gehen, um Code-Qualität Probleme auf iOS sein. 795 00:55:22,680 --> 00:55:26,110 >> Das war es für meine Präsentation. Ich weiß nicht, ob uns die Zeit oder nicht. 796 00:55:26,110 --> 00:55:29,540 Ich weiß nicht, ob es irgendwelche Fragen. 797 00:55:29,540 --> 00:55:33,220 [Männlich] Eine kurze Frage um Fragmentierung und dem Android-Markt. 798 00:55:33,220 --> 00:55:36,240 Apple-zumindest besitzt Patchen. 799 00:55:36,240 --> 00:55:40,780 Sie machen einen guten Job zu bekommen es gibt während weniger so in die Android-Raum. 800 00:55:40,780 --> 00:55:44,280 Sie müssen fast auf Ihr Handy jailbreak Laufenden zu bleiben 801 00:55:44,280 --> 00:55:46,660 mit der aktuellen Version von Android. 802 00:55:46,660 --> 00:55:50,960 Ja, das ist ein riesiges Problem, und so, wenn Sie über-denken 803 00:55:50,960 --> 00:55:52,280 [Männlich] Warum kann man es wiederholen? 804 00:55:52,280 --> 00:55:55,610 >> Oh, richtig, so dass die Frage war, was zu Fragmentierung 805 00:55:55,610 --> 00:56:00,410 des Betriebssystems auf der Android-Plattform? 806 00:56:00,410 --> 00:56:05,890 Wie sieht das die Gefährlichkeit dieser Geräte auswirken? 807 00:56:05,890 --> 00:56:09,700 Und es ist eigentlich ein sehr großes Problem, denn was passiert, ist, 808 00:56:09,700 --> 00:56:15,110 die älteren Geräte, wenn jemand kommt mit einem Jailbreak für das Gerät, 809 00:56:15,110 --> 00:56:19,960 Wesentlichen das ist, Privilegieneskalation, und bis das Betriebssystem aktualisiert 810 00:56:19,960 --> 00:56:25,350 keine Malware können dann die Schwachstelle, um das Gerät vollständig kompromittieren, 811 00:56:25,350 --> 00:56:30,200 und was wir auf dem Android zu sehen ist, um ein neues Betriebssystem zu bekommen 812 00:56:30,200 --> 00:56:34,690 Google hat, löschte das Betriebssystem, und dann die Hardware-Hersteller 813 00:56:34,690 --> 00:56:39,390 hat, um sie anzupassen, und dann der Träger, um es zu personalisieren und ausliefern. 814 00:56:39,390 --> 00:56:43,070 Sie haben grundsätzlich drei beweglichen Teile hier, 815 00:56:43,070 --> 00:56:47,210 und es erweist sich, dass die Träger sich nicht, 816 00:56:47,210 --> 00:56:50,400 und die Hardware-Hersteller sich nicht, und Google ist ihnen nicht genug Drängen 817 00:56:50,400 --> 00:56:54,430 etwas so wesentlich mehr als die Hälfte der Geräte gibt, zu tun, 818 00:56:54,430 --> 00:57:00,590 Betriebssysteme haben, die diese Privilege-Escalation-Schwachstellen in sich haben, 819 00:57:00,590 --> 00:57:08,440 und so, wenn Sie auf Ihrem Android-Gerät zu bekommen Malware, es ist viel mehr ein Problem. 820 00:57:08,440 --> 00:57:10,350 >> Okay, ich danke Ihnen sehr. 821 00:57:10,350 --> 00:57:12,310 [Applaus] 822 00:57:12,310 --> 00:57:14,310 [CS50.TV]