Jak dowiedzieć się, która aplikacja próbuje otworzyć strony ze spamem?

11

Niedawno kupiłem nowy smartfon z Androidem. Po skonfigurowaniu i załadowaniu moich kontaktów pomyślałem, że to będzie to.

Teraz po kilku dniach, za każdym razem, gdy odblokuję telefon, zajmuje kilka sekund, zanim otworzy domyślną przeglądarkę i otworzy stronę ze spamem. Próbowałem zobaczyć, co to spowodowało. Usunąłem wszystkie aplikacje, o których nie wiedziałem, że mogę im zaufać, ale problem nadal występował. Po pewnym czasie próbowałem go rozwiązać, poddałem się i zresetowałem telefon do ustawień fabrycznych. Teraz, po przywróceniu ustawień domyślnych, działał bez problemów przez około tydzień, zanim problem pojawił się ponownie.

Próbowałem odinstalować niektóre aplikacje, aby zobaczyć, czy miałyby to być przyczyną, ale po tym nic się nie zmieniło. Zauważyłem jednak, że jeśli wyłączę Wi-Fi, nawet nie spróbuję otworzyć przeglądarki (nie próbowałem danych mobilnych, ponieważ nie mam pakietu). To sprawia, że ​​mam wrażenie, że może to być związane z czymś w sieci, ale to nie wyjaśnia, dlaczego tylko ten telefon miałby problem, gdy w tej samej sieci jest co najmniej 6 telefonów z Androidem.

Mam nadzieję, że jest ktoś, kto może mi pomóc znaleźć przyczynę tego problemu i pomóc mi go rozwiązać.

TL; DR Po odblokowaniu mojego telefonu otwiera się przeglądarka i próbuje otworzyć stronę ze spamem. Ale robi to tylko po podłączeniu do Wi-Fi.

Rzeczy, których do tej pory próbowałem:

  • Przywracanie ustawień fabrycznych (tylko przez ograniczony czas)
  • Czyszczenie pamięci podręcznej przeglądarki i wszystkich powiązanych danych
  • Usuwanie dowolnej aplikacji, o której nie wiem, że jest niezawodna
  • Próba znalezienia tego, co je powoduje (wydaje się, że wymagane jest jakieś połączenie internetowe?)

Urządzeniem jest Doogee Shoot 1. Jeśli chodzi o przeglądarkę, domyślnie jest to przeglądarka na Androida, ale jeśli zmienię domyślną, równie dobrze będzie używać Chrome. Wygląda na to, że po prostu używa domyślnej przeglądarki.

maam27
źródło
@beeshyams próbowałem wyczyścić dane przeglądarki kilka razy, a jeśli wyczyszczenie tego nie zrobiło, przywrócenie ustawień fabrycznych powinno rozwiązać pliki cookie, ale po prostu wróciło jakiś czas później.
maam27
3
@beeshyams złośliwe oprogramowanie niekoniecznie przekształciło się w aplikację systemową (np. to nie wyjaśnia, dlaczego problem pojawił się tydzień po resecie do ustawień fabrycznych). Sprawdzałbym aplikacje ze słuchaczami transmisji odblokowującej ekran dla wąskich kandydatów (patrz: wykryj zdarzenie odblokowania telefonu , wydaje się, że najlepszy jest kandydat Intent.ACTION_USER_PRESENT).
Izzy
@izzy: Ważny punkt. Dzięki. Czy to nie znaczy, że będzie musiał odinstalować wszystkie aplikacje użytkownika jako łatwy sposób na izolację po utworzeniu kopii zapasowej danych?
beeshyams,
1
@beeshyams Nie powiedziałem „odinstaluj” - napisałem czek dla aplikacji, które mają takiego odbiornika, a następnie najpierw poradziłem sobie z nimi wyraźnie. Spójrz na Informacje o aplikacjach ( Playstore / FDroid / zrzut ekranu , zaznacz „Odbiorniki” tutaj).
Izzy
1
@Izyzy czy można pójść na czat i sprawdzić, czy możemy rozwiązać ten problem? ponieważ dzięki temu komentarze byłyby nieco krótsze
maam27

Odpowiedzi:

19

Opierając się na moich poradach OP, sprawdziło się jako aplikacja systemowa jako złośliwe oprogramowanie o nazwie System Locker z nazwą pakietu com.tihomobi.lockframe.syslocker . Problem wydaje się być wynikiem aktualizacji systemu dla niektórych użytkowników urządzenia.

Jak zwykle w przypadku aplikacji systemowej, jeśli skorzystasz z opcji Wyłącz w obszarze Ustawienia → Aplikacje → Aplikacje systemowe / Wszystkie aplikacje → sprawca, to zdecydowanie wyłącz tę aplikację, wymuś jej zatrzymanie lub zrestartuj system Android. Problem powinien zostać rozwiązany do momentu przywrócenia ustawień fabrycznych urządzenia.


Rozwiązywanie problemów nr 1

Oto jak dowiedziałem się o sprawcy. Wbudowane narzędzie dla systemu Android dumpsys pokazuje między innymi, która aplikacja została wywołana przez inną aplikację. Dzwoniący jest nazywany pakietem telefonicznym.

Pod warunkiem, że masz konfigurację i z powodzeniem na komputerze PC i urządzeniu z Androidem wykonaj następujące czynności:

  1. utrzymuj urządzenie podłączone do komputera
  2. uruchom ponownie urządzenie lub wymuś zatrzymanie tej domyślnej aplikacji przeglądarki
  3. pozwól złośliwemu oprogramowaniu wykonać swoją pracę, czyli uruchomić przeglądarkę automatycznie
  4. zaraz po uruchomieniu przeglądarki nie rób nic fizycznie z urządzeniem, ale uruchom następującą komendę adb na komputerze:

    adb shell dumpsys activity activities
    

Oto dane wyjściowe z urządzenia OP :

DZIAŁANIA ZARZĄDZAJĄCE AKTYWNOŚCIĄ (działania związane ze zrzutami)
Wyświetl 0 (działania od góry do dołu):
  Stos nr 1:
    Identyfikator zadania nr 2
    * TaskRecord {8190ba1 # 2 A = android.task.browser U = 0 sz = 1}
      userId = 0 efektywneUid = u0a64 mCallingUid = u0a26 mCallingPackage = com.tihomobi.lockframe.syslocker
      powinowactwo = android.task.browser
      intent = {act = android.intent.action.VIEW dat = http: //im.apostback.com/click.php? c = 362 i key = 9wl83884sg67y1acw3z56z90 & s4 = 8% 2FdNwcNuQFEjjaucho5IqA% 3D% 3D flg = 0x10000000 pkg. cmp przeglądarki = com.android.browser / .BrowserActivity}
      realActivity = com.android.browser / .BrowserActivity
...
...
Hist # 0: ActivityRecord {66cd59b u0 com.android.browser / .BrowserActivity t2}
          packageName = com.android.browser ProcessName = com.android.browser
          launchedFromUid = 10026 launchedFromPackage = com.tihomobi.lockframe.syslocker userId = 0
          app = ProcessRecord {5ad1810 4337: com.android.browser / u0a64}
          Intent {act = android.intent.action.VIEW dat = http://im.apostback.com/click.php?c=362&key=9wl83884sg67y1acw3z56z90&s4=8%2FdNwcNuQFEjjaucho5IqA%3D%3D flg = 0x10000000 pbr = com. cmp = com.android.browser / .BrowserActivity}

W wyniku:

  • com.android.browser to nazwa pakietu standardowej przeglądarki Android w twoim urządzeniu
  • com.tihomobi.lockframe.syslocker to nazwa pakietu aplikacji szkodliwego oprogramowania i jest nazywana pakietem wywołującym.

Jeśli znajdziesz złośliwe oprogramowanie, unikaj następnego rozwiązywania problemów i przejdź do nagłówka Nuke malware .


Rozwiązywanie problemów # 2

(W odpowiedzi na opublikowany tutaj duplikat - winowajcą była Farming Simulator 18 )

W niektórych okolicznościach powyższe rozwiązywanie problemów może nie być w stanie pomóc, na przykład podczas wywoływania nazwy pakietu to nazwa pakietu samej przeglądarki wyświetlana w danych wyjściowych programu dumpsys. W takim przypadku wolę. Skonfiguruj logcat w następujący sposób:

adb logcat -v długi, opisowy | grep "dat = http" # możesz również grepować wszystko z adresu URL. To zależy wyłącznie od Ciebie.
adb logcat -v długi, opisowy> logcat.txt # alternatywa; jeśli grep nie jest zainstalowany w twoim systemie operacyjnym. Musisz teraz przeszukać ten plik.

Teraz odblokuj urządzenie i pozwól, aby przeglądarka z tym adresem URL została uruchomiona automatycznie. Ponadto, naciśnij Ctrlz C, jeśli Oszczędzasz wyjście do pliku.

Dane wyjściowe, których szukamy, wyglądałyby podobnie do:

[11–27 16: 03: 22.592 3499: 6536 I / ActivityManager]
START u0 {act = android.intent.action.VIEW dat = https: //livemobilesearch.com / ... flg = 0x10000000 pkg = org.mozilla.firefox cmp = org.mozilla.firefox / .App} 

od UID 10021
...

[11–27 16: 03: 22.647 3499: 15238 I / ActivityManager]
START u0 {act = android.intent.action.VIEW dat = https: //livemobilesearch.com / ... pkg = org.mozilla.firefox cmp = org.mozilla.firefox / org.mozilla.gecko.BrowserApp} 

od Uid 10331

Zobacz dwa wyróżnione identyfikatory UID 10021 i 10331. Jeden z nich (w Twoim przypadku byłyby inne) dotyczy uruchomionej aplikacji przeglądarki, a jednym z nich jest złośliwe oprogramowanie żądające tego adresu URL. Jak więc znaleźć, co jest co?

Jeśli masz uprawnienia roota , po prostu wykonaj:

adb shell su -c 'ls -l / data / data / | grep u0_a 21 '
adb shell su -c 'ls -l / data / data / | grep u0_a 331 '

Dane wyjściowe będą wyglądać następująco:

drwx ------ 5 u0_a21 u0_a21 4096 01.01.2018 10:31 com.android.chrome 
drwx ------ 5 u0_a331 u0_a331 4096 01.01.2018 10:31 com.tihomobi.lockframe.syslocker

Jeśli nie masz dostępu do konta root , wykonaj:

adb shell dumpsys package > packages_dump.txt

Teraz wyszukaj wiersz ze swoimi identyfikatorami UID, takimi jak „userId = 10021” i „userId = 10331”. Linia nad wyszukiwaną linią dałaby ci nazwę pakietu i może wyglądać mniej więcej tak:

Pakiet [ com.android.chrome ] (172ca1a):
    userId = 10021
...
Pakiet [ com.tihomobi.lockframe.syslocker ] (172ca1a):
    userId = 10331

Dwie nazwy pakietów to com.android.chrome (dla przeglądarki Chrome - na pewno nie złośliwe oprogramowanie) i com.tihomobi.lockframe.syslocker . Aby poznać nazwę aplikacji z nazwy pakietu, skorzystaj z mojej odpowiedzi tutaj .


Nuke złośliwego oprogramowania

Teraz, gdy znasz już winowajcę, możesz go wyłączyć za pomocą GUI, jak wspomniano powyżej. Jeśli nie jest to możliwe, wykonaj:

adb shell pm disable-user PKG_NAME # wyłącza aplikację
adb shell pm odinstaluj - użytkownik 0 PKG_NAME # usuwa aplikację dla głównego użytkownika
adb shell am force-stop PKG_NAME # tylko wymusza zatrzymanie aplikacji

Zamień PKG_NAME na nazwę pakietu złośliwego oprogramowania, które zauważyłeś podczas powyższego rozwiązywania problemów.

To powinno wystarczyć. Ponadto możesz również rozważyć usunięcie aplikacji złośliwego oprogramowania na stałe dla wszystkich użytkowników, ale wymaga to jednak dostępu do konta root.

Firelord
źródło
1
Dziękujemy za przejęcie czatu, w którym musiałem wyjechać - i wspaniałą analizę, +1! Nauczyłem się w ten sposób nowej rzeczy dumpsys:)
Izzy
@Izzy Cieszę się, że ci się podoba. :)
Firelord
+1 Ładne głębokie kopanie 👍
Irfan Latif
@IrfanLatif dzięki.
Firelord
0

Nieco więcej informacji potrzebnych do rozwiązania problemu, chociaż postaram się znaleźć możliwe problemy. Która przeglądarka Jaki model telefonu? Czy został zakupiony z oficjalnych źródeł?

Teoretycznie przywrócenie ustawień fabrycznych powinno pomóc w rozwiązaniu tego problemu. Ponieważ tak się nie stało, istnieje kilka innych miejsc, w których można uzyskać jakąś formę adware. Po pierwsze powiedziałeś, że odinstalowałeś niektóre aplikacje? Które aplikacje w szczególności? Czy pojawił się po zainstalowaniu określonego oprogramowania?

Czy to twoje wifi czy korzystasz z publicznego? Jeśli jest publiczny, zwykle firmy stosunkowo często wysyłają żądania instalacji aplikacji i reklam za pośrednictwem Wi-Fi. Jeśli mieszkasz w / w pobliżu zatłoczonego miejsca, nie zdziwiłbyś się, gdyby był to ktoś, kto reklamuje swój produkt. Spróbuj użyć innego Wi-Fi lub czyjejś wifi, sprawdź, czy problem nie ustąpi. Jeśli nie. Jest to problem z siecią, której używasz, co oznacza, że ​​najprawdopodobniej będziesz musiał zmienić. Możesz spróbować skontaktować się ze swoim dostawcą, aby ci w tym pomóc (Miałem wcześniej taki problem, moi dostawcy usług internetowych pomogli mi po skontaktowaniu się z pomocą techniczną). Sprawdź także, czy sieć komórkowa wykazuje ten sam problem. Jeśli nie, możesz zmienić sieć, z której aktualnie korzystasz.

Josh Ross
źródło
Wszystkie aplikacje, które miałem na myśli, zostały zainstalowane ze sklepu z aplikacjami, ale zdaję sobie sprawę, że nie wszystkie z nich mogą być bezpieczne przez cały czas, a czasem sprawy wymykają się bezpieczeństwu. więc próbowałem usunąć niektóre, których nie wiedziałem, czy są całkowicie bezpieczne, czy nie. jeśli chodzi o internet, jest to prywatna sieć i nie mieszkam w zatłoczonym obszarze. Ale ponieważ używam karty przedpłaconej oznaczałoby to, że próbowanie danych mobilnych staje się kosztowne. Mogę spróbować czegoś, używając komputera jako punktu dostępowego, aby sprawdzić, czy ma to jakiekolwiek różnice w stosunku do Wi-Fi bezpośrednio.
maam27