[Seminarium] [Obrona za urządzeniem: Mobile Application Bezpieczeństwo] [Chris Wysopal] [Harvard University] [To jest CS50.] [CS50.TV] Dobry. Nazywam się Chris Wysopal. Jestem CTO i współzałożyciel Veracode. Veracode jest firma bezpieczeństwa aplikacji. Testujemy wszystkie rodzaje różnych zastosowań, i co zamierzam dziś mówić jest bezpieczeństwo aplikacji mobilnych. Moje tło jest Robiłem badania bezpieczeństwa przez bardzo długi czas, prawdopodobnie tak długo, jak nikogo. I rozpoczęła się w połowie lat 90., i to był czas, że było całkiem interesujące, ponieważ mieliśmy zmianę paradygmatu w połowie lat 90-tych. Nagle wszystkich komputerach był podłączony do Internetu, a następnie mieliśmy początki aplikacji internetowych, i to jest to, co skupia się na dużo czasu. To ciekawe. Teraz mamy kolejną zmianę paradygmatu dzieje z informatyki, które jest przejście do zastosowań mobilnych. Czuję to trochę podobnym czasie to było w latach 90-tych kiedy badali aplikacji internetowych i stwierdzenia wad, takich jak Sesja i błędy zarządzania SQL injection które tak naprawdę nie istniała wcześniej, i nagle byli wszędzie w aplikacjach internetowych, a teraz dużo czasu spędzam patrzy w aplikacjach mobilnych i patrząc na to, co się dzieje tam na wolności. Aplikacje mobilne są naprawdę będzie dominującym platforma obliczeniowa, tak naprawdę trzeba poświęcić dużo czasu, jeśli jesteś w branży zabezpieczeń koncentruje się na aplikacjach internetowych. Było 29 mld aplikacje mobilne pobranych w 2011 roku. To przewiduje się 76 mld aplikacje 2014. Tam jest 686 milionów urządzeń, które zostaną zakupione w tym roku, tak to jest, gdy ludzie będą robić  Większość z ich komputerów klienta w przyszłości. Rozmawiałem wiceprezes Fidelity Investments kilka miesięcy temu, a on powiedział, że właśnie zobaczył więcej ruchu robi transakcji finansowych z ich bazy klientów na telefon aplikacji, niż na ich stronie internetowej, tak powszechne zastosowanie dla sieci Web w przeszłości był sprawdzanie notowania giełdowe, zarządzanie portfelem, a my rzeczywiście widząc, że w 2012 przełącznika na jest bardziej dominująca w ruchomej platformy. Z pewnością, jeśli nie będzie jakiejkolwiek działalności przestępczej, szkodliwe działania, to zaczną się koncentrować na platformie mobilnej w czasie, gdy ludzie przełączyć się na to. Jeśli spojrzeć na ruchomej platformie, spojrzeć na ryzyko platformy jest to przydatne do rozbicie go na różnych warstwach, jak chcesz to zrobić na komputerze stacjonarnym, i myślisz o różnych warstwach, oprogramowania, systemu operacyjnego, warstwa sieci, warstwa sprzętowa i oczywiście, nie ma słabych punktów we wszystkich tych warstw. To samo dzieje się na telefon komórkowy. Ale telefon, wydaje się, że niektóre z tych warstw jest gorzej. Dla jednego, warstwy sieciowej jest bardziej problematyczna na komórkę ponieważ wiele osób w biurze lub w domu przewodowego połączenia lub mają bezpieczne połączenia Wi-Fi, oraz z wielu urządzeń mobilnych, jesteś oczywiście poza domem lub poza biurem partii, a jeśli korzystasz z Wi-Fi nie być może używasz niepewnego połączenia Wi-Fi, coś, co jest publiczne Wi-Fi, więc kiedy myślimy o aplikacjach mobilnych musimy wziąć pod uwagę, że sieć jest bardziej ryzykowne dla tych zastosowań gdy jest używany bezprzewodowy. I kiedy się do więcej aplikacji mobilnych zagrożeń zobaczysz dlaczego to jest ważniejsze. Istnieje ryzyko na poziomie sprzętowym na urządzeniach mobilnych. Jest to obszar prowadzonych badań. Ludzie nazywają te ataki pasma szerokopasmowego lub ataki gdzie jesteś atakując firmware, który jest słuchanie radia. To są naprawdę przerażające ataki, ponieważ użytkownik nie musi nic robić. Można trafić wiele urządzeń w zasięgu RF na raz, i wydaje się, gdy badania te pęcherzyki się szybko zostanie sklasyfikowane gdzie ludzie uciekają się wokół i powiedzieć: "Oto, powiedz nam o tym, i przestać o tym mówić." Istnieje kilka badań dzieje się w obszarze szerokopasmowego, ale to wydaje się być bardzo Hush Hush. Myślę, że to raczej typ państwa naród badań, że się dzieje. Obszar aktywny badań, chociaż, warstwę systemu operacyjnego i znowu, tym razem jest inaczej niż w świecie komputerów stacjonarnych ponieważ w mobilnych masz te zespoły ludzi zwanych Jailbreakers, i Jailbreakers różnią się od zwykłych naukowców luki. Próbują znaleźć luki w systemie operacyjnym, ale powód próbują znaleźć luki nie jest włamać się do urządzenia, a ktoś inny to kompromis. To włamać się do własnego komputera. Chcą włamać się do własnego telefonu komórkowego, zmienić system operacyjny własnego telefonu w tak, że mogą uruchamiać aplikacje z ich wyboru i zmienić rzeczy, z pełnymi uprawnieniami administracyjnymi, i nie chcą powiedzieć o tym sprzedawca. Oni nie lubią badacza bezpieczeństwa, który jest biały kapelusz badacz bezpieczeństwa który zrobi odpowiedzialnego ujawniania i powiedz o tym sprzedawca. Chcą zrobić te badania, i chcą, aby faktycznie opublikować w exploita lub kod rootkita lub jailbreak, i chcą zrobić to strategicznie, jak zaraz po statki dostawcy nowego systemu operacyjnego. Masz to nieprzyjazne stosunki z lukami na telefon na poziomie systemu operacyjnego, i myślę, że jest dość ciekawa, a jedno miejsce, możemy go zobaczyć to sprawia, że ​​jest tak, że nie jest dobre opublikowany kod wykorzystujący lukę tam luk na poziomie jądra, i widzieliśmy faktycznie wykorzystywane przez twórców szkodliwego oprogramowania. To trochę inaczej niż na świecie PC. A następnie warstwa końcowa ma górną warstwę, warstwę aplikacji. To jest to, co mam zamiar mówić o obecnie. Istnieć Inne warstwy, a pozostałe warstwy grać w nią, ale mam zamiar mówić przede wszystkim o tym, co dzieje się w warstwie aplikacji gdzie kod działa w piaskownicy. Nie ma uprawnień administracyjnych. Ma korzystać z API z urządzenia, ale nadal, wiele aktywności szkodliwego oprogramowania i wiele ryzyka może się zdarzyć w tej warstwie ponieważ jest to warstwa, gdzie wszystkie informacje. Aplikacje mają dostęp do wszystkich informacji o urządzeniu jeśli mają odpowiednie uprawnienia, i mogą uzyskać dostęp do różnych czujników na urządzeniu Czujnik GPS, mikrofon, kamera, coś ty. Mimo, że mamy tylko mówisz w warstwie aplikacji mamy dużo ryzyko istnieje. Inna sprawa, że ​​jest inaczej o środowisku mobilnym wszyscy gracze jest system operacyjny, czy to BlackBerry lub Android lub iOS lub Windows Mobile, wszystkie mają drobnoziarnista modelu uprawnień, i jest jednym ze sposobów, które są wbudowane w system operacyjny Pomysł, że to nie jest tak ryzykowne, jak myślisz. Nawet jeśli masz wszystkie swoje kontakty na nie, wszystkie twoje dane osobowe, masz swoje zdjęcia, masz miejsce na nie, jesteś przechowywania kodu PIN w banku auto logowanie na nie, to jest bezpieczne, bo aplikacje muszą mieć pewne uprawnienia, aby w niektórych częściach informacji na temat urządzenia, a użytkownik musi być przedstawione w te uprawnienia i powiedzieć dobrze. Problem z nim jest użytkownik zawsze mówi dobrze. Jako osoba bezpieczeństwa, wiem, można monitować użytkownika, powiedzieć coś naprawdę złego się stanie, chcesz to się stało? A jeśli jesteś w pośpiechu lub coś naprawdę kusząco na drugiej stronie, że jak gra ma być zainstalowana, że ​​czekałeś, że będziemy kliknij OK. Dlatego mówię, na slajdzie tutaj po prostu pozwól mi rzucić ptaków na świnie już, i widać na slajdzie tutaj jest przykładem pola uprawnień BlackBerry. Mówi: "Proszę ustawić uprawnienia aplikacji podróży BlackBerry po kliknięciu przycisku poniżej ", a użytkownik jest w zasadzie tylko powiedzieć ustawić uprawnienia i zapisać. Oto Android szybka gdzie pokazuje rzeczy, i faktycznie wrzuca coś, że prawie wygląda jak ostrzeżenie. Jest tam coś w rodzaju plastyczności znak tam komunikacji sieciowej mówiąc telefon, ale użytkownik będzie kliknij zainstalować, prawda? A następnie jeden Apple jest całkowicie nieszkodliwe. Nie daje jakiegokolwiek ostrzeżenia. To tylko jabłko chcieliby korzystać z bieżącej lokalizacji. Oczywiście masz zamiar kliknij OK. Jest to drobnoziarnista modelu zezwolenie, i aplikacje muszą mieć plik manifestu, w którym deklarujesz uprawnienia potrzebują, a który zostanie wyświetlony użytkownikowi, i użytkownik będzie musiał powiedzieć, że przyznanie tych uprawnień. Ale bądźmy uczciwi. Użytkownicy są po prostu będzie zawsze mówią dobrze. Rzućmy okiem na te uprawnienia, które aplikacje są prośbą o i niektóre z uprawnień, które są tam. Ta firma pretorianów przeprowadził badanie w zeszłym roku z 53.000 wniosków analizowanych w Android Market i 3rd party rynkach, tak, to wszystko jest Android. I średnio o ok. 3 uprawnienia. Niektóre aplikacje o 117 uprawnień, więc oczywiście są bardzo drobnoziarnista i zbyt skomplikowane dla użytkownika, aby zrozumieć jeśli są one przedstawiane z tej aplikacji, która potrzebuje tych 117 uprawnień. To jak umowy licencyjnej dla użytkownika końcowego, która jest 45 stron. Może wkrótce będą mieli możliwość, gdzie to jest jak wydrukować uprawnienia i wysłać mi e-mail. Ale jeśli spojrzeć na niektóre z najlepszych ciekawych uprawnień 24% aplikacji, które są pobierane z 53000 Żądane informacje GPS z urządzenia. 8% przeczytaj kontakty. 4% wysłany SMS i 3% otrzymanej wiadomości. 2% nagrany dźwięk. 1% przetwarzane połączeń wychodzących. Nie wiem. Nie sądzę, że 4% z aplikacji w App Store naprawdę trzeba wysyłać wiadomości SMS, więc myślę, że to znak, że coś nieprzewidzianego się dzieje. 8% z aplikacji należy przeczytać listę kontaktów. To chyba nie jest to konieczne. Jednym z innych ciekawych rzeczy o uprawnieniach jest jeśli link w bibliotekach współdzielonych w swojej aplikacji te dziedziczą uprawnienia aplikacji, więc jeśli Twoja aplikacja musi listę kontaktów lub potrzebuje funkcjonować lokalizacji GPS i odwołuje się w bibliotece reklamowych, na przykład, że biblioteka ogłoszenie będzie również w stanie uzyskać dostęp do kontaktów , a także być w stanie uzyskać dostępu do lokalizacji GPS, i twórca aplikacji nie wie nic na temat kodu, który jest uruchomiony w bibliotece reklam. Oni po prostu łącząc że dlatego, że chcą zarabiać na ich aplikację. To gdzie i będę mówić o niektórych z przykładów tego Aplikacja o nazwie Pandora, gdzie deweloper aplikacji może nieświadomie być wyciek informacji od swoich użytkowników, bo oni bibliotek połączonych w. Geodezyjnych krajobrazu tam, patrząc na wszystkich różnych aplikacji które zostały przedstawione w mediach jako złośliwe lub robią użytkownicy coś nie chce a następnie kontroli wiele aplikacji, możemy zrobić wiele statycznej analizy binarnego na aplikacje mobilne, więc mamy kontroli ich i spojrzał na kodzie samego- wpadliśmy na to, co nazywamy naszym top 10 lista zachowań ryzykownych w aplikacji. I to z podziałem na 2 sekcje, złośliwego kodu, tak, to są złe rzeczy, że aplikacje, które mogą być robi mogą być coś, złośliwy osobnik został specjalnie umieścić w aplikacji, ale jest trochę rozmyty. To może być coś, co deweloper sądzi, jest w porządku, lecz kończy się traktowane jako szkodliwy przez użytkownika. A potem drugi odcinek jest to, co nazywamy luki kodowania, i to są rzeczy, w których deweloper w zasadzie robi błędy lub po prostu nie rozumiem, jak napisać aplikację bezpiecznie,  i to wprowadzenie użytkownika aplikacji na ryzyko. Zamierzam przejść przez nich szczegółowo i podać kilka przykładów. Dla odniesienia, chciałem postawić OWASP mobile top 10 listy. Są to kwestie, które 10 grupa w OWASP, Projekt Otwórz Web Application Security mają grupę roboczą działa na telefon top 10 listy. Mają bardzo słynny www top 10 listy, które są top 10 ryzykowny rzeczy, które można mieć w aplikacji internetowej. Robią to samo dla telefonów komórkowych, , a ich lista jest trochę inaczej niż u nas. 6 z 10 są takie same. Mają 4, które są różne. Myślę, że mają trochę inne podejście Ryzyko w aplikacjach mobilnych, gdzie wiele ich problemów naprawdę jak aplikacja komunikuje się z serwerem zaplecza lub, co się dzieje na serwerze back-end, nie tyle aplikacji, które mają ryzykowne zachowania, które są tylko proste aplikacje klienckie. Te na czerwono są tu różnice między list 2. A niektóre z mojego zespołu badawczego rzeczywiście przyczyniły się do tego projektu, więc zobaczymy, co się stanie w czasie, ale myślę, że jest tu na wynos naprawdę nie wiem, co jest lista 10 najlepszych aplikacji mobilnych, ponieważ w oni naprawdę tylko już od 2 lub 3 lat, i nie było wystarczająco dużo czasu, aby naprawdę badać systemy operacyjne i to, co oni są w stanie i nie było wystarczająco dużo czasu, dla złośliwego społeczności, jeśli chcesz, aby spędzić dużo czasu próbuje atakować użytkowników przez aplikacje mobilne, więc oczekiwać, że te listy, aby zmienić trochę. Ale teraz, to 10 głównych zmartwienia. Można się zastanawiać, na mobilnej stronie, gdzie nie-mobilny szkodliwy kod jak to dostać się do urządzenia? North Carolina State ma projekt o nazwie Malware Genome Project telefonów gdzie są zbierając jak najwięcej mobilnego szkodliwego oprogramowania, jak tylko mogą i analizowania go, a oni w podziale wektorów wtryskowych, że mobilne szkodliwe oprogramowanie wykorzystuje, i 86% użyć techniki zwanej przepakowywanie, i to tylko na platformie Android naprawdę można zrobić przepakowania. Powód jest kod Androida jest zbudowany z kod bajtowy Javy o nazwie Dalvik, która jest łatwo decompilable. Co złego może zrobić, to facet podjęcia aplikacji Android, dekompilacji, wprowadzić swój złośliwy kod, ponownie skompilować go, , a następnie umieścić go w App Store oznaczającą siebie nową wersję tej aplikacji, lub po prostu może zmienić nazwę aplikacji. Jeśli to był jakiś rodzaj gry, zmień nazwę nieznacznie, i tak to jest, jak przepakowywanie 86% mobilnych szkodliwych programów zostanie rozdzielone. Jest inna technika zwana aktualizacja, która jest bardzo podobne do przepakowania, ale faktycznie nie umieścić złośliwy kod w. Co musisz zrobić, to umieścić w małej mechanizmu aktualizacji. Państwo dekompilować, można umieścić w mechanizm aktualizacji, a ty go ponownie skompilować, i wtedy, gdy aplikacja jest uruchomiona to ściąga złośliwego oprogramowania na urządzeniu. Zdecydowanie większość to te 2 techniki. Nie ma naprawdę dużo do pobrania drive-bys lub drive-by pliki do pobrania na telefony komórkowe, co może być jak atak phishingu. Hej, sprawdź to naprawdę fajne strony internetowej, czy trzeba iść do tej strony i wypełnić ten formularz zachować kontynuuje robić coś. Te są ataki typu phishing. To samo może zdarzyć się na platformie mobilnej, w którym wskazują na mobilnej aplikacji do pobrania, należy powiedzieć "Cześć, to jest Bank of America." "Widzimy, że używasz tej aplikacji." "Należy pobrać tę inną aplikację." Teoretycznie, że może pracować. Może to po prostu nie jest wystarczająco wykorzystywany jest w celu ustalenia, czy jest to sukces, czy nie, jednak stwierdzono, że mniej niż 1% w czasie technika jest stosowana. Większość czasu to naprawdę przepakowane kod. Jest jeszcze jedna kategoria nazywa samodzielny gdzie ktoś po prostu tworzy zupełnie nowe zastosowanie. Budują aplikację, która może służyć za coś. To nie jest przepakowywanie coś innego, i że ma złośliwego kodu. To stosuje się 14% czasu. Teraz chcę rozmawiać o tym, co jest złośliwy kod robi? Jednym z pierwszych malware tam można rozważyć spyware. W zasadzie szpieguje użytkownika. Gromadzi e-maile, wiadomości SMS. Okazuje mikrofon. Przechwytuje książki kontaktów i wysyła go do kogoś innego. Tego typu spyware istnieje na PC, więc to ma sens dla ludzi, aby spróbować zrobić to na urządzeniach mobilnych. Jednym z pierwszych przykładów to był program o nazwie Tajne SMS Replicator. To było w Android Marketplace kilka lat temu, i pomysł był, gdybyś miał dostęp do czyjegoś telefonu Android że chciał szpiegować, więc może to twój małżonek lub innych znaczących i chcesz szpiegować ich wiadomości tekstowych, można pobrać aplikację i zainstalować ją i skonfigurować wysłać wiadomość SMS do Ciebie z kopią każdej wiadomości tekstowej SMS dostali. To oczywiście jest w pogwałcenia zasad App Store z usługi, i to zostało usunięte z Android Marketplace w ciągu 18 godzin, że jest tam, więc bardzo mała liczba osób było zagrożonych z tego powodu. Teraz, myślę, że jeśli program został nazwany coś może trochę mniej prowokacyjny jak Tajnej SMS replikatora prawdopodobnie będzie pracował o wiele lepiej. Ale to było raczej oczywiste. Jedną z rzeczy, które możemy zrobić, aby ustalić, czy aplikacje mają ten problem, że nie ma jest sprawdzenie kodu. To jest rzeczywiście bardzo proste do zrobienia na Androida, ponieważ możemy dekompilować aplikacje. Na iOS można użyć dezasembler jak IDA Pro patrzeć Interfejsy API aplikacji, co dzwoni i co robi. Napisaliśmy własny binarny analizator statyczny dla naszego kodu i mamy to zrobić, a więc to, co można zrobić, to można powiedzieć, Urządzenie nie ma niczego, co jest w zasadzie szpiegostwo na mnie lub mnie śledzenia? I mam tu na iPhone kilka przykładów. Ten pierwszy przykład jest sposób uzyskiwania dostępu do UUID w telefonie. To jest rzeczywiście coś, że Apple po prostu zakazane dla nowych aplikacji, ale stare aplikacje, które mogą być uruchomione na telefonie nadal może to zrobić, i tak, że unikalny identyfikator może być wykorzystany do śledzenia użytkownika w wielu różnych zastosowaniach. Na Androida, mam tu przykład z coraz lokalizację urządzenia. Widać, że jeśli wywołanie API jest tam, że aplikacja jest śledzenie, i można zobaczyć, czy robi się znakomitą lokalizacją lub grubej lokalizacji. A następnie na dole tutaj, mam przykład jak na BlackBerry aplikacja może uzyskać dostęp do wiadomości e-mail w skrzynce odbiorczej. Są to rodzaj rzeczy, które można sprawdzić, aby zobaczyć jeśli aplikacja robi te rzeczy. Druga duża kategoria szkodliwego zachowania, a to jest chyba największy kategoria teraz, jest nieuprawnione wybieranie, SMS nieautoryzowane Premium lub nieautoryzowanych płatności. Inną rzeczą, która jest unikalna o telefonie Urządzenie jest podłączone do konta rozliczeniowego, i kiedy działania stało na telefon może stworzyć opłat. Można kupić rzeczy przez telefon, i podczas wysyłania wiadomości tekstowych SMS Premium jesteś rzeczywiście daje pieniądze posiadaczowi rachunku numeru telefonu z drugiej strony. Te zostały utworzone, aby uzyskać notowania giełdowe czy horoskop dzienny lub inne rzeczy, ale można je ustawić, aby zamówić produkt wysyłając SMS. Ludzie dają pieniądze na Czerwony Krzyż, wysyłając wiadomość tekstową. Możesz dać 10 dolarów w ten sposób. Napastnicy, co zrobili jest powołana rachunków w obcych krajach, a oni umieścić w złośliwym oprogramowaniem że telefon wysyła wiadomość tekstową SMS Premium, powiedzieć, kilka razy dziennie, a na koniec miesiąca można zrealizować spędziłem dziesiątki a może nawet setki dolarów, a oni odejść z pieniędzmi. To się tak źle, że to było pierwszą rzeczą, że Android Rynek lub Google miejsce-to był Android Marketplace w czasie, i to jest teraz Google Play-pierwszą rzeczą, że Google rozpoczął sprawdzanie. Kiedy Google rozpoczął dystrybucję aplikacji Android w ich app store powiedzieli, że nie zamierzają sprawdzić na wszystko. Będziemy ciągnąć aplikacje raz zostaliśmy powiadomieni, że złamałem warunki korzystania z usługi, ale my nie zamierzamy sprawdzić na wszystko. Cóż, rok temu zrobiło się tak źle z tym SMS Premium sms malware że jest to pierwsza rzecz, zaczęli sprawdzanie. Jeśli aplikacja może wysyłać wiadomości SMS oni dalej ręcznie rozpatruje ten wniosek. Wyglądają na API, które wymagają tego, a teraz od tego czasu Google rozszerzył, ale to była pierwsza rzecz, że oni zaczęli szukać. Niektóre inne aplikacje, które zrobił kilka wiadomości SMS, to Android Qicsomos, myślę, że to jest tzw. Było to wydarzenie na prąd telefon, gdzie wyszedł ten CarrierIQ jak spyware umieścić na urządzeniu przez przewoźników, więc ludzie chcieli wiedzieć, czy ich telefon był narażony na to, i był to bezpłatna aplikacja, która testowany to. Cóż, oczywiście, to, co ta aplikacja nie było wysyłane wiadomości tekstowe SMS Premium, tak, sprawdzając, aby zobaczyć, czy jesteś zainfekowany oprogramowaniem szpiegującym załadowany złośliwego oprogramowania na urządzeniu. Widzieliśmy to samo stało się w ostatniej Super Bowl. Nie było fałszywe wersja piłki nożnej gra Madden że wysyłane wiadomości SMS premium. To rzeczywiście próbował stworzyć sieć botów zbyt urządzenia. Tutaj mam kilka przykładów. Co ciekawe, Apple był dość sprytny, i nie pozwalają aplikacjom na wysyłanie wiadomości SMS w ogóle. Nie aplikacja może to zrobić. To świetny sposób na pozbycie się całej klasy luki, ale na Android można to zrobić, i oczywiście od BlackBerry można to zrobić też. To ciekawe, że na BlackBerry wszystko czego potrzebujesz to internet uprawnienia wysłać wiadomość SMS. Inne rzeczy naprawdę, że szukamy kiedy patrzymy, aby zobaczyć, czy coś jest szkodliwy tylko każdy rodzaj nieautoryzowana aktywność sieciowa, jak spojrzeć na aktywność sieci aplikacja ma mieć swoją funkcjonalność, i spojrzeć na to innej działalności sieci. Być może aplikacja, do pracy, musi uzyskać dane przez HTTP, ale jeśli robi rzeczy, na adres e-mail lub SMS lub Bluetooth czy coś takiego teraz, że aplikacja może być potencjalnie szkodliwy, więc to jest kolejna rzecz, można skontrolować. I na tym slajdzie tutaj mam kilka przykładów, które. Inną ciekawą rzeczą, widzieliśmy malware się w 2009 roku, a stało się to w wielkim stylu. Nie wiem, czy to się tak bardzo od tego czasu, ale było ok. która wcieliła innej aplikacji. Był to zestaw aplikacji, i został nazwany atak 09Droid, i ktoś uznał, że nie było dużo małych, średnich banków regionalnych, że nie ma aplikacji bankowości internetowej, więc to, co zrobili było zbudowano około 50 aplikacji bankowości internetowej że wszystko, co nie było mieć nazwę użytkownika i hasło i przekierowanie do strony internetowej. A więc umieścić je wszystkie w Google Marketplace, w Android Marketplace, a gdy ktoś szukał aby sprawdzić, czy ich bank miał zastosowanie oni znaleźć fałszywego wniosku, które zebrano ich poświadczenia, a następnie przekierować je na swojej stronie internetowej. Sposób, że rzeczywiście stał-aplikacje były tam przez kilka tygodni, i było wiele tysięcy pobrań. Sposób to wyszło na jaw, ktoś miał problem z jedną z aplikacji, i nazwali swojego banku, i nazywa się ich linię dla klientów banku i powiedział, "Mam problem z aplikacji bankowości mobilnej." "Czy możesz mi pomóc?" A oni powiedzieli: "Nie mamy aplikację bankowości mobilnej." Że rozpoczęła dochodzenie. Że Bank nazwie Google, a następnie Google spojrzał i powiedział: "Wow, ten sam autor napisał 50 aplikacji bankowych" i wziął je wszystkie. Ale z pewnością może to się nie powtórzy. Jest lista wszystkich różnych banków tutaj , które były częścią tego oszustwa. Inna sprawa, aplikacja może zrobić, to obecny UI z innej aplikacji. Podczas gdy jest uruchomiony to może pojawi się na Facebook UI. To mówi, że musisz umieścić swoją nazwę użytkownika i hasło, aby kontynuować lub umieścić dowolną nazwę użytkownika i hasło na stronie UI że być może użytkownik korzysta tylko próbować oszukać użytkownika na wprowadzenie poświadczeń w. To jest naprawdę proste równoległe ataki e-mail typu phishing gdzie ktoś wysyła wiadomość e-mail i daje w zasadzie fałszywego UI na stronie internetowej , że masz dostęp do. Inne rzeczy szukać w złośliwego kodu jest zmiana systemu. Możesz zajrzeć do wszystkich wywołań API, które wymagają przywilejów roota wykonać poprawnie. Zmiana Web Proxy urządzenia będzie coś, że aplikacja nie powinien być w stanie to zrobić. Ale jeśli ma kod w aplikacji do zrobienia, że ​​nie wiesz, że to jest prawdopodobnie szkodliwa aplikacja lub bardzo wysokie prawdopodobieństwo złośliwa aplikacja, i tak to, co by się stało, jest to, że aplikacja będzie mieć jakiś sposób eskalacji przywilejów. Miałoby to jakiś przywilej wykorzystać eskalacji w aplikacji, a następnie po jego eskalacji przywilejów by to zrobić te zmiany systemowe. Można znaleźć złośliwe oprogramowanie, które ma przekroczenia uprawnień w nim, nawet nie wiedząc, jak się przekroczenia uprawnień wykorzystywać będzie się działo, a to ładny, prosty sposób patrzeć pod kątem złośliwego oprogramowania. DroidDream był prawdopodobnie najbardziej znany kawałek Android malware. Myślę, że to dotyczy około 250 tysięcy użytkowników w ciągu kilku dni zanim został znaleziony. Są pakowane 50 fałszywych wniosków, umieścić je w Android App Store, i zasadniczo jest używany Android kod jailbreak przekroczenie uprawnień a następnie zainstalować dowodzenia i kontroli oraz włączyć wszystkie ofiary do sieci botów, ale to mogło być wykryte jeśli były skanowania aplikacji i po prostu szukasz Wywołań API, które wymaga uprawnień administratora, aby wykonać poprawnie. I jest przykładem tutaj mam, które się zmienia proxy, i to rzeczywiście jest dostępna tylko na Androida. Możesz zobaczyć Daję ci dużo przykładów na Androida bo to jest miejsce, gdzie najbardziej aktywne złośliwe oprogramowanie jest ekosystem ponieważ jest to bardzo proste do atakującego, aby złośliwy kod do Android Marketplace. To nie jest tak łatwo zrobić w Apple App Store dlatego, że Apple wymaga programistom identyfikować się i podpisać kod. Oni rzeczywiście sprawdzić, kim jesteś, a Apple jest rzeczywiście rozpatrywania wniosków. Nie widzimy dużo prawdziwego złośliwego oprogramowania, w którym urządzenie jest coraz zagrożona. Będę mówić o pewnych przykładów, gdzie to naprawdę prywatności, która wychodzi za zagrożone, i to, co się naprawdę dzieje na urządzeniu Apple. Inną rzeczą, aby szukać szkodliwego kodu, ryzykowne kod w urządzeniach jest logiczne i czas bomby i bomby zegarowe są prawdopodobnie o wiele łatwiej niż szukać bomb logicznych. Ale z bomb czasowych, co możesz zrobić, to można szukać miejsca w kodzie, gdzie czas jest testowany i absolutnego czasu szukał przed pewne funkcje w aplikacji dzieje. A to można zrobić, aby ukryć tę działalność od użytkownika, tak to się dzieje późno w nocy. DroidDream zrobił całą swoją działalność od 11 PM i 8 rano czasu lokalnego spróbować zrobić to, gdy użytkownik nie może korzystać ze swojego urządzenia. Kolejny powód to zrobić, jeśli ludzie są przy użyciu analizy behawioralnej wniosku, uruchamiania aplikacji w piaskownicy, aby zobaczyć, co zachowanie aplikacji jest, mogą używać logiki opartej czasie robić aktywność gdy aplikacja nie jest w piaskownicy. Na przykład, jak Apple App Store uruchamia aplikację, ale prawdopodobnie nie uruchomić każdy wniosek o, powiedzmy, 30 dni przed jego zatwierdzeniem, dzięki czemu można umieścić logika w aplikacji, który powiedział, dobrze, tylko zrobić coś złego po 30 dniach upadł przez 30 dni po po dacie opublikowania wniosku, i że może pomóc złośliwego kodu ukrywają przed ludźmi inspekcji dla niego. Jeśli firmy antywirusowe działają rzeczy w obszarach izolowanych lub same sklepy aplikacji są to może pomóc ukryć, że od tej inspekcji. Teraz druga strona, że ​​jest to łatwe do znalezienia z analizy statycznej, tak naprawdę kontroli kodu można szukać wszystkich miejsc gdzie aplikacja sprawdza czas i sprawdzić w ten sposób. I tu mam kilka przykładów na tych 3 różnych platformach jaki czas można sprawdzić przez producenta aplikacji więc wiesz, czego szukać, jeśli kontrolę aplikacji statycznie. Właśnie przeszedł całą masę różnych szkodliwych działań które widzieliśmy na wolności, ale które z nich są najbardziej rozpowszechnione? Że samo badanie z North Carolina State telefonów Genome Project opublikowane niektóre dane, i nie było w zasadzie 4 obszary że widzieli, gdzie było dużo działalności. 37% aplikacji nie przekroczenia uprawnień, więc mieli jakiś rodzaj kodu tam jailbreak gdzie próbowali przekroczenie uprawnień, tak aby mogli Polecenia API nie działa jako system operacyjny. 45% aplikacji tam zrobił SMS Premium, tak to jest ogromny odsetek, które stara się bezpośrednio zarabiać. 93% nie pilota, więc próbowałem skonfigurować sieć botów, sieć mobilnych bot. I 45% zbiera informacje identyfikujące jak numery telefonów, UUID, lokalizacja GPS, kont użytkowników, i to dodaje się do więcej niż 100, ponieważ większość malware próbuje zrobić kilka z tych rzeczy. Mam zamiar przejść na drugą połowę i porozmawiać o luk kodu. To jest druga połowa działalności ryzykownej. To jest, gdy zasadniczo deweloper robi błędy. Uzasadniony pisemnie uzasadniony deweloper aplikacji robi błędy lub jest nieświadomy zagrożeń ruchomej platformy. Oni po prostu nie wiedzą, jak zrobić bezpieczną aplikację mobilną, lub czasem deweloper nie dba o wprowadzenie użytkownika na niebezpieczeństwo. Czasami część ich modelu biznesowego, który może być zbioru danych osobowych użytkownika. To coś w rodzaju drugiej kategorii, i dlatego niektórzy z tym złośliwym w porównaniu zaczyna krwawić uzasadnione, ponieważ istnieje ponad różnicę poglądów między tym, co użytkownik chce i co użytkownik uzna za ryzykowne i co programista aplikacji uważa ryzykowne. Oczywiście, to nie jest dane twórca aplikacji w większości przypadków. I w końcu, w inny sposób to się dzieje, deweloper może połączyć się wspólna biblioteka, która ma luki i to ryzykowne zachowania w nim wiemy o nich. Pierwsza kategoria jest wrażliwy wyciek danych, i to, gdy aplikacja zbiera informacje jak lokalizacja, książkę adresową, informacji właściciela i wysyła się urządzenia. I raz to od urządzenia, nie wiemy, co dzieje się z tymi informacjami. To może być przechowywane niezabezpieczony przez autora aplikacji. Widzieliśmy programiści się zagrożona, i dane, że są one przechowywanie zostanie podjęta. Stało się to kilka miesięcy temu deweloper na Florydzie gdzie ogromna liczba, to był iPad UUID i nazwy urządzeń wyciekły bo ktoś, myślę, że to było anonimowe, twierdził, aby to zrobić, włamali się do serwerów tego dewelopera i ukradł miliony iPad UUID i nazwy komputerów. Nie najbardziej ryzykowne informacje, ale co jeśli to było przechowywanie nazw użytkownika i haseł i adresy domowe? Istnieje wiele aplikacji, które przechowują tego rodzaju informacji. Ryzyko istnieje. Inna sprawa, że ​​może się zdarzyć, jeśli deweloper nie dbać do zabezpieczenia kanału danych, a to kolejny duży luka zamierzam o tym mówić, że dane są przesyłane w jasne. Jeśli użytkownik jest w publicznej sieci Wi-Fi czy ktoś gdzieś w internecie wąchania wzdłuż ścieżki, która dane są narażone. Jeden bardzo znany przypadek tego wycieku informacji stało się z Pandora, i to jest coś, co zbadane w Veracode. Słyszeliśmy, że nie było, myślę, że było Federalna Komisja Handlu Dochodzenie dzieje z Pandora. Powiedzieliśmy: "Co się tam dzieje? Zacznijmy kopanie w aplikacji Pandora". I co ustaliliśmy był wniosek Pandora klejnoty Twoja płeć i wiek, a także dostęp do Twojej lokalizacji GPS i aplikację Pandora zrobił to za to, co powiedział były uzasadnione powody. Muzyka grali-Pandora jest app-strumieniowego przesyłania muzyki muzyka grali licencjonowany tylko w Stanach Zjednoczonych, więc musieli sprawdzić, wywiązują się ze swoich umów licencyjnych, które mieli dla muzyki, że użytkownik był w Stanach Zjednoczonych. Chcieli również zgodne z Parental Advisory wokół języka dorosłych w muzyce, , a więc jest to dobrowolny program, ale chcieli przestrzegać, że jawne i nie grać piosenki dla dzieci 13 i mocy. Mieli uzasadnione przyczyny zbierania takich danych. Ich aplikacja miała uprawnienia, by to zrobić. Użytkowników, że to było uzasadnione. Ale co się stało? One połączone w 3 lub 4 różnych bibliotekach reklam. Teraz nagle wszystkich tych bibliotek reklam otrzymujesz dostęp do tej samej informacji. Biblioteki reklam, jeśli spojrzeć na kod w bibliotekach reklam co robią to co mówi reklama biblioteki "Czy moja aplikacja ma uprawnień do uzyskania lokalizacji GPS?" "Och, to nie? Dobrze, powiedz mi lokalizację GPS." Każda biblioteka ogłoszenie robi, i jeśli aplikacja nie ma uprawnień GPS nie będzie w stanie zdobyć, ale jeśli tak się stanie, będzie to dostać. To jest, gdy model biznesowy bibliotek reklam sprzeciwia się prywatność użytkownika. I nie było badań, które obecnie nie powie, jeśli wiesz, że wiek osoby i wiesz, ich lokalizacji gdzie spać w nocy, bo mają swoje współrzędne GPS , podczas gdy być może śpi, wiesz dokładnie, kim jest ta osoba , ponieważ można określić, które członek tego gospodarstwa domowego jest to, że osoba. Naprawdę jest to identyfikacji dla reklamodawców dokładnie to, kim jesteś, i wygląda na to, że to legalne. Chcę tylko moje strumieniowego przesyłania muzyki, i jest to jedyny sposób na to. No, to mamy narażone. Napisaliśmy to w kilku blogach, i okazało się, że ktoś z magazynu Rolling Stone Przeczytaj jeden z naszych blogach i napisał swój własny blog w Rolling Stone o tym, i następnego dnia Pandora, że ​​to dobry pomysł usunąć biblioteki reklam z ich stosowania. O ile wiem, oni tylko, że należy się pochwała. Myślę, że są tylko freemium typ aplikacji, który to uczynił. Wszystkie inne aplikacje Freemium ma ten sam problem, tak masz myśleć, jaki rodzaj danych dajesz te aplikacje Freemium, ponieważ wszystko dzieje się reklamodawców. Praetorian przeprowadził także badania na temat bibliotek współdzielonych i powiedział: "Spójrzmy na to, co wspólne biblioteki są najlepsze biblioteki współdzielone," i to było dane. Przeanalizowano 53.000 aplikacji, i wspólna biblioteka numer 1 był AdMob. To było rzeczywiście w 38% zastosowań tam, tak 38% wniosków jesteś korzystających są prawdopodobnie zbiór danych osobowych i wysłanie go do sieci reklamowych. Apache i Android są 8% i 6%, i te inne te na dole reklamy Google, Flurry, Mob Miasto i Tysiąclecia Media są to wszystkie firmy reklamowe, a następnie, co ciekawe, 4% związanych z biblioteki Facebooka Prawdopodobnie zrobić uwierzytelnianie przez Facebook więc aplikacja może uwierzytelnić Facebooka. Ale to oznacza również korporację Facebook kontroluje kod , który jest uruchomiony w 4% aplikacji mobilnych Android tam, i mają dostęp do wszystkich danych, które aplikacja ma uprawnień do uzyskania na. Facebook zasadniczo próbuje sprzedać powierzchnię reklamową. To jest ich model biznesowy. Jeśli spojrzeć na tego całego ekosystemu z tych uprawnień i biblioteki współdzielone zaczniesz widzieć, że masz dużo ryzyka w rzekomo uzasadnionego wniosku. Sam podobne rzeczy, które się z Pandora się z wnioskiem o nazwie ścieżka, i Ścieżka myśleli, że jest pomocny, przyjazny programistom. Byli po prostu staramy się dać wspaniałe doświadczenie użytkownika, i okazało się, że bez monitowania użytkownika lub mówienie użytkownikowi coś- i to się na iPhone i Android, Pandora aplikacja była na iPhone i Android- że wniosek Ścieżka została chwytając całą książkę adresową i przesłać go do ścieżki tylko po zainstalowaniu i pobiegł aplikacji i nie powiedzieli ci o tym. Myśleli, że to bardzo pomocne dla Ciebie aby móc podzielić się z wszystkimi ludźmi w książce adresowej że używasz aplikacji Path. No, oczywiście, że to była ścieżka wielki dla ich firmy. Nie tak świetne dla użytkownika. Musisz myśleć, że to jest jedna rzecz, czy może nastolatek jest za pomocą tej aplikacji, a ich dziesiątki przyjaciół są tam, ale co jeśli to prezes firmy, która instaluje Path a potem nagle ich całej książki adresowej jest tam? Masz zamiar uzyskać wiele cennych informacji kontaktowych potencjalnie dla wielu ludzi. Dziennikarz z New York Times, że możesz być w stanie uzyskać numer telefonu dla byłych prezydentów z ich książki adresowej, więc oczywiście wiele poufnych informacji zostanie przeniesiona z czymś takim. Nie było takie duże o tym, że klapka Ścieżka przeprosił. Zmienili ich aplikacji, a nawet wpływ Apple. Apple powiedział, "Mamy zamiar zmusić dostawców aplikacji, aby skłonić użytkowników jeśli zamierzamy zebrać całą swoją książkę adresową ". To wygląda jak to, co się tutaj dzieje jest gdy jest jeden duży naruszenie prywatności i sprawia, że ​​prasa widzimy zmianę tam. Ale oczywiście, nie ma innych rzeczy tam. Aplikacja LinkedIn zbiera wpisy w kalendarzu, ale Apple nie robi użytkownik poprosi o to. Pozycje kalendarza mogą mieć poufnych informacji w nich. Gdzie idziesz, aby narysować linię? To jest naprawdę rodzaju miejsce ewoluuje gdzie naprawdę nie ma tam dobry standard dla użytkowników, aby zrozumieć, gdy ich dane będzie zagrożone i kiedy oni będą wiedzieć, to pod uwagę. Napisaliśmy aplikację na Veracode nazwie Adios, i zasadniczo jest dozwolone, aby wskazać aplikację w katalogu iTunes i spojrzeć na wszystkie aplikacje, które zostały zbierających całą swoją książkę adresową. I jak można zobaczyć na tej liście tutaj, Angry Birds, AIM, AroundMe. Dlaczego Angry Birds trzeba książkę adresową? Nie wiem, ale to nie w jakiś sposób. To jest coś, że wiele, wiele aplikacji zrobić. Możesz sprawdzić kod do tego. Jest dobrze zdefiniowane interfejsy API dla iPhone, Android i BlackBerry aby w książce adresowej. Naprawdę można łatwo kontrolować za to, i to jest to, co zrobiliśmy w naszej aplikacji Adios. Kolejna kategoria, niebezpieczne Sensitive Magazynowanie danych, jest coś, gdzie deweloperzy wziąć coś jak pin lub numer konta lub hasło i przechowuj je w jasne, na urządzeniu. Co gorsza, mogą one przechowywać w miejscu, w telefonie który jest dostępny na całym świecie, podobnie jak karty SD. Widzisz to częściej na Androida, ponieważ Android pozwala na karcie SD. Urządzenia iPhone nie robić. Ale widzieliśmy nawet tak się stało w aplikacji Citigroup. Ich zastosowanie bankowości online przechowywane numery kont niezabezpieczony, tylko w jasne, więc jeśli utracone urządzenie, zasadniczo stracił swoje konto bankowe. To dlatego ja osobiście nie zrobić bankowości na moim iPhone. Myślę, że to zbyt ryzykowne teraz zrobić te rodzaje działalności. Skype zrobił to samo. Skype, oczywiście, ma stan konta, nazwę użytkownika i hasło że dostęp do tej równowagi. Byli przechowywania wszystkich informacji w jasny na urządzeniu mobilnym. Mam tu kilka przykładów tworzenia plików , które nie mają odpowiednich uprawnień lub zapisu na dysku i nie mając szyfrowanie zdarzyć, że. Ten następny obszar, niebezpieczne Sensitive przesyłania danych, Mam nawiązywał do tego kilka razy, i ze względu na publiczny Wi-Fi to jest coś, że aplikacje absolutnie trzeba zrobić, i to jest chyba to, co widzimy, nie udać się najbardziej. Chciałbym powiedzieć-naprawdę, myślę, że mam aktualne dane, ale jest to blisko połowa aplikacji mobilnych zepsuć robi SSL. Oni po prostu nie używają poprawnie API. To znaczy, wszystko co masz zrobić, to postępować zgodnie z instrukcjami i używać API, ale nie takie rzeczy nie sprawdzić, czy jest nieprawidłowy certyfikat na drugim końcu, nie sprawdzić, czy drugi koniec stara się zrobić atak protokół downgrade. Deweloperzy chcą, aby ich wyboru, prawda? Ich warunkiem jest, aby korzystać z tej sprzedaży. Oni używane to sprzedać. Wymóg nie jest w użyciu to sprzedać bezpiecznie, i tak jest to dlaczego wszystkie aplikacje korzystające z protokołu SSL w celu zabezpieczenia danych jak to jest przekazywane poza urządzenie naprawdę muszą być kontrolowane się upewnić, że zostały prawidłowo wdrożone. I tu mam kilka przykładów, gdzie można zobaczyć aplikację może być przy użyciu protokołu HTTP zamiast HTTPS. W niektórych przypadkach aplikacje spadnie z powrotem do protokołu HTTP jeśli HTTPS nie działa. Mam kolejny telefon tutaj na Android, gdzie oni wyłączył sprawdzanie certyfikatu, więc atak man-in-the-middle, może się zdarzyć. Nieprawidłowy certyfikat zostanie zaakceptowany. Są to wszystkie przypadki, w których napastnicy będą w stanie dostać się na samo połączenie Wi-Fi jako użytkownik i dostęp do wszystkich danych , który jest wysyłany przez Internet. I wreszcie ostatnia kategoria I tu jest zaszyta hasło i klucze. My rzeczywiście zobaczyć wiele osób używa tego samego stylu kodowania że oni, gdy byli tworzenia aplikacji serwera WWW, więc oni budowania aplikacji serwera Java, a oni hardcoding klucz. Cóż, kiedy jesteś budowania aplikacji serwera, tak, hardcoding klucz nie jest dobry pomysł. To sprawia, że ​​trudno jest zmienić. Ale to nie jest tak źle, po stronie serwera, bo kto ma dostęp do strony serwera? Tylko administratorzy. Ale jeśli ten sam kod i wlewa go do aplikacji mobilnych Teraz każdy, kto ma, że ​​mobilna aplikacja ma dostęp do tego klucza ustalony, i naprawdę zobaczyć wiele razy, i mam pewne statystyki o tym, jak często widzimy to się stało. To rzeczywiście była w przykładzie kodu MasterCard opublikowanego jak korzystać z ich usług. Przykładowy kod pokazał jak można po prostu wziąć hasło i umieścić go w ustalony ciąg tam, i wiemy, w jaki sposób programiści lubią kopiować i wklejać fragmenty kodu gdy próbują coś zrobić, więc skopiować i wkleić fragment kodu że dał jako przykład kodu i masz niepewnego aplikacji. A tu kilka przykładów. Ten pierwszy jest jednym widzimy dużo gdzie hardcode prawo dane do adresu URL, który jest wysyłany. Czasami widzimy hasło String = hasło. To dość łatwe do wykrycia, lub hasło ciąg na BlackBerry i Android. To rzeczywiście dość łatwe do sprawdzenia, bo prawie zawsze nazwy zmiennych, które programistów hasło trzyma pewne zróżnicowanie hasła. Wspomniałem, że robimy analizę statyczną w Veracode, tak Zbadaliśmy kilkaset aplikacji Android oraz iOS. Zbudowaliśmy pełne modele nich, a my jesteśmy w stanie ich skanować dla różnych luk, zwłaszcza słabych Mówiłem o, i mam tutaj pewne dane. 68,5% z aplikacji Android patrzyliśmy na złamał kod kryptograficzny, który dla nas, nie możemy wykryć, jeśli się własną rutynę kryptograficznego, nie, że to jest dobry pomysł, ale to jest rzeczywiście przy opublikowane API które znajdują się na platformie, ale wykonując je w taki sposób, że krypto byłoby narażone, 68.5. I to jest dla osób, które wysyłają do nas swoje aplikacje w rzeczywistości, ponieważ uważają, że to dobry pomysł, aby zrobić testy bezpieczeństwa. Są to osoby, które są już zapewne myśląc pewnie, tak to chyba jeszcze gorzej. I nie mówić o kontroli wtrysku nowego wiersza. To możemy sprawdzić za coś, ale to nie jest tak ryzykowne problem. Przeciek informacji, to jest, gdy poufne dane są przesyłane z urządzenia. Okazało się, że 40% wniosków. Czas i państwa, to są kwestie typu wyścigu, zazwyczaj dość trudne do wykorzystania, więc ja nie o tym mówić, ale patrzył na to. 23% miało problemy z SQL injection. Wiele osób nie wie, że wiele aplikacji użyj małej trochę bazy danych SQL na plecach koniec do przechowywania danych. Cóż, jeśli dane, że jesteś chwytając w sieci ma ciągi ataku SQL injection w nim ktoś może zagrozić przez to urządzenie, i tak myślę, że znajdziemy około 40% aplikacji internetowych mają tego problemu, który jest ogromny problem epidemii. Uważamy, że 23% czasu w aplikacjach mobilnych i to prawdopodobnie dlatego, że o wiele więcej aplikacji internetowych używa SQL niż telefon. A potem jeszcze zobaczyć trochę cross-site scripting, kwestie zezwoleń, i poświadczeń zarządzania, to gdzie masz ustalony hasła. W 5% wniosków widzimy. A potem mamy jakieś dane na temat iOS. 81% miało problemy z obsługą błędów. To jest bardziej problem jakości kodu, ale 67% miało problemy kryptograficznych, więc nie jest tak źle, jak Android. Może API są trochę łatwiejsze, kody przykładowe trochę lepiej na iOS. Ale wciąż bardzo wysoki odsetek. Mieliśmy 54% z wycieku informacji, o 30% z błędów zarządzania buforem. To miejsca, gdzie mogą potencjalnie powodować uszkodzenie zawartości pamięci. Okazuje się, że to nie jest tak wielkim problemem dla eksploatacji na iOS, ponieważ cały kod musi zostać podpisana, tak trudno jest atakującemu na wykonanie dowolnego kodu w systemie iOS. Jakość kodu, przejścia do innego katalogu, ale tutaj w zarządzanie poświadczenia 14,6%, tak gorzej niż na Androida. Mamy ludzi nie obsługi haseł poprawnie. A następnie błędy numeryczne i przepełnienie bufora, te są bardziej będzie zagadnienia jakości kodu na iOS. To było dla mojej prezentacji. Nie wiem, czy jesteśmy poza czasem, czy nie. Nie wiem, czy jest jakieś pytania. [Mężczyzna] szybkie pytanie wokół fragmentacji i Android Market. Posiada co najmniej jabłko łatania. Robią dobrą robotę się go tam natomiast mniej w Android przestrzeni. Prawie trzeba jailbreak telefon na bieżąco z bieżącej wersji Androida. Tak, to jest to ogromny problem, więc jeśli myślisz o- [Mężczyzna] Dlaczego nie możesz go powtórzyć? Och, tak, więc pytanie, co o fragmentacji systemu operacyjnego na platformie Android? Jak to wpływa na poziom ryzyka tych urządzeń? I faktycznie jest to ogromny problem, ponieważ to, co się dzieje, starsze urządzenia, gdy ktoś wyjdzie z jailbreak dla tego urządzenia, zasadniczo to zwiększenie uprawnień i do kiedy system operacyjny jest aktualizowany wszelkie złośliwe oprogramowanie może następnie wykorzystać tę lukę, aby całkowicie zagrozić urządzenia i to, co widzimy na Androida jest w celu uzyskania nowego systemu operacyjnego Google ma zgasić system operacyjny, a następnie producenta sprzętu musi go dostosować, a następnie przewoźnik musi dostosować go i dostarczyć go. Masz w zasadzie 3 części ruchomych tutaj, i to obracając się, że przewoźnicy nie obchodzi, oraz producenci sprzętu nie obchodzi, a Google nie jest im wystarczająco szturchać nic zrobić, więc w zasadzie ponad połowa urządzeń tam mają systemy operacyjne, które mają te luki przekroczenia uprawnień w nich, i tak, jeśli się złośliwego oprogramowania na urządzenia z systemem Android jest o wiele większy problem. Dobrze, dziękuję bardzo. [Oklaski] [CS50.TV]