22:05
21/9/2015

Świat obiega właśnie pełna paniki informacja, że Apple sprząta swój sklep z aplikacjami z kilkuset złośliwych aplikacji. Jak to możliwe, skoro proces weryfikacji aplikacji przed jej publikacją na App Store jest taki skrupulatny? No i jak to możliwe, że tylu różnych developerów zaczęło nagle wytwarzać złośliwe aplikacje? Na te pytania odpowiadamy poniżej.

Naciągana depesze Reutersa

Burzę rozpętała niezbyt bogata w szczegóły depesza Reutersa, która sugeruje, że AppStore właśnie odnotował swój “pierwszy potężny atak“. Depesza przywołuje raport badaczy z Palo Alto Networks, który mieli znaleźć w kilkuset aplikacjach ślady złośliwego oprogramowania. Pada jego nazwa — XcodeGhost — ale niestety Reuters nie tłumaczy co konkretnie złośliwego wykonuje ten kod.

Sięgnijmy zatem do źródła, czyli do publikacji Palo Alto Networks. Już na jej wstępie, badacze podkreślają, ze złośliwy kod, który zidentyfikowali w …39 aplikacjach ma bardzo ograniczone możliwości czynienia zła, a badaczom nie udało się potwierdzić, aby którakolwiek z aplikacji była w stanie wykradać dane użytkowników lub w jakikolwiek inny sposób działać na ich szkodę. Złośliwie zmodyfikowane aplikacje co prawda ustanawiały połączenie z serwerem Command & Control i przekazywały doń identyfikator urządzenia, czas, informacje o kraju ofiary i adresację sieci, z której korzysta — ale nie robiły niczego więcej.

Krótko mówiąc — badacze Palo Alto Networks zauważyli elementy złośliwego kodu w kilkudziesięciu aplikacjach, ale nie udało im się odnotować jego aktywności. Same aplikacje też raczej nie należą do zbyt popularnych w Polsce (słyszeliście o WeChat, Didi Kuaidi albo NetEase?).

XcodeGhost-2-500x168

To nie oznacza, ze XcodeGhosta należy bagatelizować. W kodzie posiada on bowiem zaimplementowane funkcjonalności, które mają na celu wykradać dane ze schowka (groźne przy korzystaniu z np. 1passworda na telefonie) oraz pozyskiwać dane dostępowe do iClouda. Kradzież haseł nie następuje jednak wprost z telefonu, a poprzez wyświetlenie w obrębie aplikacji okna, proszącego o podanie loginu i hasła (tzw. phishing). Na razie brak wiarygodnych informacji, aby którakolwiek z aplikacji z AppStore wykradała dane w ten sposób.

Jak doszło do infekcji aplikacji?

I to jest w tej całej sprawie najciekawsze — ale wcale nie innowacyjne. Otóż większość developerów, w których aplikacjach znaleziono złośliwy kod to Chińczycy. Xcode, czyli środowisko programistyczne potrzebne do tworzenia aplikacji na iOS pobrali oni nie z Apple… a z lokalnego chińskiego serwera (bo gwarantował szybszy transfer).

xcode2-500x683

Linki do zmodufikowanego Xcode ktoś opublikował na poświęconych tworzeniu mobilnego oprogramowania chińskich forach. Zmodyfikowana wersja Xcode do tworzonych przez nią aplikacji wstrzykiwała złośliwe fragmenty kodu (XcodeGhost) — analiza po chińsku dostępna jest tutaj, a kod źródłowy tu.

Jak twierdzą niektórzy, aby zainstalować tak zmodyfikowaną wersją Xcode, należało świadomie zignorować ostrzeżenie Gatekeepera (oprogramowania typu antywirus, które jest wbudowane w system OS X) — zainfekowani developerzy musieli więc należeć do grupy bardzo nierozsądnych…

CPX6pnQUwAA7utp

Czy jestem zainfekowany?

iPhony, które posiadają zainstalowane aplikacje skompilowane przy pomocy złośliwego Xcode nawiązują połączenia do http://init.icloud-analysis.com. Pełną listę zainfekowanych aplikacji można znaleźć tutaj.

Jeśli jesteś developerem i nie pobrałeś Xcode z oficjalnego źródła, zweryfikuj, czy posiadasz plik Library/Frameworks/CoreServices.framework/CoreService w katalogu /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/ — jeśli tak, twój Xcode jest zainfekowany.

Przełomowy atak?

Dopóki brak dowodów na jakiekolwiek złośliwe działanie, ciężko ten incydent nazwać przełomowym. Pokazuje on jednak, że mechanizmy weryfikacji stosowane przez Apple nie są doskonałe (chyba, że faktycznie, złośliwy kod nie robił niczego, czego nie może zrobić zwykła aplikacja). Ale już wcześniej przez cenzurę Apple do AppStore przeniknęły takie złośliwe aplikacje jak LBTM, InstaStock, FindAndCall, Jekyll czy FakeTor. Fanom Andorida, którzy chcieliby za to wbić szpilę miłośnikom jabłek przypominamy, że do Google Play, czyli oficjalnego androidowego sklepu z aplikacjami, złośliwe aplikacje są dodawane non stop, a 99% mobilnego złośliwego oprogramowania dotyczy Androida

Warto też nadmienić, że sama podmiana Xcode (czy też tzw. compiler malware) to nie nowość. Trojanowanie środowiska programistycznego Xcode było już stosowane przez amerykańskie służby — pół roku temu ujawniono projekt NSA o nazwie Strawhorse. Można było podejrzewać, że przestępcy szybko skopiują pomysł służb.

Zastanawiamy się też, czy Apple wykorzysta do sprzątania wbudowanego w iOS kill switcha, czyli możliwość zdalnego, siłowego odinstalowania złośliwych aplikacji bezpośrednio z iPhonów ofiar.

PS. Wygląda na to, że już nie tylko użytkownicy końcowi i serwisy internetowe, jak np. banki, są na celowniku przestępców. Programiści, jak widać, też stanowią łakomy kąsek. Od tego zresztą zaczął się atak na Facebooka (por. Facebook zhackowany).

Przeczytaj także:



19 komentarzy

Dodaj komentarz
  1. Właśnie przeczytałem że ludzie z Rovio (twórcy Angry Birds) w Chinach się na to nabrali: https://support.rovio.com/hc/en-us/articles/210094088-Is-Angry-Birds-2-infected-with-malware-. Serio? Jak bardzo słaby musi być net, że zamiast pobrać darmową aplikację XCode ze sklepu Mac App Store, woleli pobrać ją z jakiegoś forum? Bez sensu. Oczywiście może to wina jakiś tłumaczy chińskich, ale nadal…

    • Transfer to pierdoła.
      – Apple przeważnie oferuje download wyłącznie najnowszej wersji XCode.
      – Najnowsza wersja XCode często wymaga najnowszego OSX.
      – Najnowszy OSX uniemożliwia testowanie aplikacji ze starszą wersją systemu.
      – Starsza wersja systemu jest niezbędna na części developerskich maszyn, jeżeli ktoś chce jak najszerszy target dla oprogramowania.
      – Na części developerskich maszyn trzeba korzystać ze starszego XCode.
      – Starszy XCode trzeba pobrać z innego źródła.
      – Apple swoją paranoją strzela sobie w stopę.
      Do tego dochodzi czas wymagany na aktualizację systemu. Ktoś tego procesu musi dopilnować, a Apple za ten czas płacić nie będzie.
      Przy okazji, praca z XCode to nowy, ciekawy i intrygujący wymiar walenia głową w ścianę. Aż powstała strona z częścią absurdów tego IDE: http://www.textfromxcode.com/ ;)

    • @Incognito
      Ależ bzdury piszesz.
      https://developer.apple.com/downloads/
      Stąd sobie ściągałem jeszcze nie tak dawno Xcode pod OS X Lion. Xcode do wersji 2.3 włącznie jest dostępne z serwerów Apple i szczerze jako niedzielnemu programiście pod OSX do głowy by mi nie przyszło ściąganie XCode z “mirrorów”.

      Applowi trzeba zarzucić lamerstwo przy weryfikacji aplikacji, czepiają się kompletnych dupereli a nie potrafią wykryć tworzonego botnetnu.

    • Eh, dokładnie, sam mam kilka wersji Xcode’a bo różne jego wersje miały różne bugi lub wycięte funkcje, które uniemożliwiały pracę… i wszystkie zawsze można było pobrać z oficjalnej strony, wystarczy mieć konto developerskie, nikt nie każe ściągać Xcode’a z AppStore (tam rzeczywiście jest dostępna tylko jedna, najnowsza wersja).

  2. Przy takiej okazji nie sposób nie wspomnieć o hacku Kena Thompsona (tak, tego Kena Thompsona). Zmodyfikował kompilator tak, że podczas kompilacji wstrzykiwał do kodu aplikacji login strzegącej dostępu do komputera backdoor, który umożliwiał zalogowanie się używając hasła zaszytego w binarce. Rekompilacja kompilatora też nie pomagała: zawirusowany kompilator rozpoznawał że kompiluje kompilator i dodawał do niego kod wirusa. Jedynym sposobem na pozbycie się złośliwego kodu było skompilowanie kompilatora innym kompilatorem i użycie czystej wersji do przekompilowania logina.
    Szczegóły: https://www.win.tue.nl/~aeb/linux/hh/thompson/trust.html

  3. Jeśli wspomniany GateKeeper wyświetla jedynie taki komunikat jak na screenshocie to nie dziwię się, że niektórzy ten plik otwierali. Wykrzyknik powinien być większy, czerwony, a w treści pogrubioną czcionką informacja o tym, że plik może zawierać złośliwe oprogramowanie.

  4. Historia nieprawdopodobna lub Apple już poprawiło lukę. Przedwczoraj próbowaliśmy opublikować wersję wysłaną z XCode 7 GM na El Captain Beta 8 i odrzucało, jako, że niby pochodziło ze złej wersji. Musieliśmy ponownie zainstalować XCode i system Mac OS z Mac App Store, aby dało się przesłać nową binarkę. Wcześniej nie było z tym nigdy problemów. Wydaje się, że dodali dodatkowe zabezpieczenia właśnie dla takich sytuacji, gdy binarka będzie pochodzić z fałszywego XCode.

  5. Tyle że w androidzie myślący user na wstępie po zainstalowaniu apki blokuje wszelkie dziwne permisje i wyrzuca apke jak nie bedzie działać bez jakiejś dziwnej permisji (na przykład dostęp do kamery w aplikacji typu odtwarzacz muzyki :v xD)

    • Podejrzewam że myślących userów systemu Android można liczyć w promilach w stosunku do całości ;)

    • Permisje? serio?!

  6. O WeChat słyszałem od kolegi, któremu polecałem świetnego konsolowego klienta IRC i jego port na Androidy – WeeChata. Krajan znalazł co innego. ;-)

  7. NetEase to właściciel jednego z największych portali internetowych w Chinach…

  8. Tyle że to malware nie próbuje nawet uzyskać dostępu do kamery. Zbiera jedynie podstawowe dane identyfikujące. Biorąc pod uwagę, że aplikacje to, m. in. komunikatory – przesyłanie UDID na zewnętrzny serwer jest prawdopodovnie dopuszczalną praktyką. Więc podejrzane są głównie popupy. Jakoś mnie bardzo nie dziwi, że się prześlizgnęło. A uwzględniając legendy o appkach wrzuconych przez ludzi od JB pozwalających na JB wlasnie – tym bardziej człowiek przestaje się dziwić…

  9. Ahh jak przyjemnie miec telefon na okienkach, mozna sie smiac do rozpuchu z antka i szajsosu ;]

  10. Nie oszukujmy się ale kto zostawia włączonego Gatekeepera? Toż to wyraźna oznaka chęci być strzyżonym przez Apple.

  11. Ale nowosc – czy juz wszyscy zapomnieli o millerze ktoremu fapple zablokowalo konto deva w syfstore – poniewaz wrzucil tam malware omijajac zabezpieczenia ?

  12. Na razie znaleźli ich aż 25…
    http://www.apple.com/cn/xcodeghost/

  13. Saudi Sh3ll 3.0. Dowiecie się co robił jeszcze z inicjatywy iCloude, gdy trafi na telefon prezydenta USA i paru innych ważnych osób.

    Podana witryna prawdopodobnie miała namierzyć telefon ważnych osób, zaś później zostałyby użyte inne exploity by z nich wyciągnąć dane.

  14. Istotnie pierdola. ..jakby coś takiego na andka się znalazło to zakrzyczalbys pewnie wszystkich?

Twój komentarz

Zamieszczając komentarz akceptujesz regulamin dodawania komentarzy. Przez moderację nie przejdą: wycieczki osobiste, komentarze nie na temat, wulgaryzmy.

RSS dla komentarzy: