Home > Zupełnie inne > Jak usunąć wirusa na telefonie z Android

Jak usunąć wirusa na telefonie z Android

Do dziś wydawało mi się, że telefony z Androidem w codziennym użyciu są bezpieczne od wirusów. Jednak na telefonie znajomego spotkałem coś takiego: http://www.securitybloggersnetwork.com/author/yulong-zhang/

Objawy były następujące: telefon wyświetlał reklamy, działał wolno, grzał się, ściągał jakieś dziwolągi z sieci, bateria rozładowała się szybko.

Zainstalowałem dwa typowe programy antywirusowe z Android Marketu. Obydwa programy pokazały wirusy, jednak nie potrafiły ich usunąć. Dodatkowo, jeden z programów antywirusowych poinformował mnie, że mój telefon działa w trybie “root”. Programy antywirusowe nie radziły sobie z usuwaniem wirusów z partycji /system – partycji systemowej przeznaczonej dla producentów oprogramowania.

Postaram się napisać możliwie prostą instrukcję jak odwirusować telefon. Nie udzielam gwarancji, że zadziała, nie chcę też ponosić odpowiedzialności za problemy, gdy coś się nie powiedzie. Instrukcję piszę w dobrej wierze, jednak praca z telefonem w trybie “root” jest dla tego telefonu niebezpieczna. Korzystając z instrukcji ponosisz odpowiedzialność za sprzęt samemu.

W pierwszej kolejności zainstalowałem Android SDK. W skład SDK wchodzi polecenie adb.exe. Telefon trzeba przestawić w tryb programisty, na przykład korzystając z instrukcji: http://www.greenbot.com/article/2457986/how-to-enable-developer-options-on-your-android-phone-or-tablet.html

Po instalacji SDK możemy sprawdzić czy działa debugowania telefonu “adb devices”

adb.exe devices

List of devices attached

0123456789ABCDEF device

 

Jeżeli nasz telefon w trakcie pracy wirusa przełączył się do trybu “root”, to wykonując polecenie “adb shell” zobaczymy znak # – krzyżyk. W przeciwnym wypadku – normalny tryb pracy zobaczymy $ – dolara.

adb.exe shell

root@QUASAR:/ #

Trzeba przejrzeć zawartość folderu /system/app. Przeglądając daty plików znajdziemy podejrzane aplikacje. W moim przypadku pliki fabryczne były z datą 2014, pliki podejrzane z datą 2015. (Na moim komputerze mam jeszcze zainstalowanego grep http://gnuwin32.sourceforge.net/packages/grep.htm lub Cygwin).

adb.exe shell ls -l /system/app | grep 2015

-rw-r–r– root root 1626485 2015-09-14 10:39 27.apk

-rw-r–r– root root 1024535 2015-08-12 07:19 BackupTool.apk

-rw-r–r– root root 1759953 2015-07-06 19:53 HTMLViewer.apk

-rwxr-xr-x root root 24751 2015-06-26 15:30 SettingProvider.apk

-rw-r–r– root root 188747 2015-09-22 12:39 Sync.apk

-rwsr-sr-x root root 215557 2015-09-08 07:15 ThemeManags.apk

-rw-r–r– root root 53760 2015-07-22 13:34 android.service.apk

-rwsr-sr-x root root 486930 2015-09-08 07:14 cameraupdate.apk

-rwxrwxrwx root root 225771 2015-09-09 06:55 com.android.hardware.ext0.apk

-rwxrwxrwx u0_a101 u0_a101 559775 2015-09-08 07:15 com.android.wp.net.log.apk

-rwxr-xr-x u0_a97 u0_a97 198363 2015-09-08 07:15 providerCertificate.apk

 

Teraz możemy przystąpić do usuwanie niechcianych aplikacji. Lepiej jednak nie zepsuć partycji /system. Dlatego zamiast usuwać aplikację bezpośrednie przeniosą je do innego katalogu. Polecenie remount może nie być potrzebne.

adb.exe remount

adb.exe shell mkdir /system/bad

adb.exe shell mv /system/app/27.apk /system/bad/

 

Polecenie “mv” powtarzamy dla podejrzanych aplikacji aż natrafimy na błąd braku dostępu.

adb.exe shell mv /system/app/ThemeManags.apk /system/bad/

failed on ‘/system/app/ThemeManags.apk’ – Operation not permitted

 

Niestety, zwykła zmiana uprawnień pliku poleceniem “chmod” nie działa. Potrzebne jest polecenie “chattr” którego nie ma standardowo na Androidzie. Jednak, wraz z wirusem polecenie to skrycie instaluje się na naszym systemie. Ja wytropiłem je w katalogu /system/xbin/ pod nazwą “.sys.apk”

adb.exe shell ls -la /system/xbin/

-rwsrwsrwx root root 16080 2015-09-08 07:14 .b

-rwxrwxrwx root root 9008 2015-09-08 07:14 .df

-rwsrwsrwx root root 34312 2015-09-08 07:14 .ext.base

-rwsrwsrwx root root 34368 2015-09-29 20:41 .ld.js

-rwsrwsrwx root root 15560 2015-09-29 20:41 .ls

-rwxrwxrwx root root 9956 2015-09-08 07:15 .sys.apk

-rwxr-xr-x root shell 13672 2014-08-28 16:31 BGW

-rwxrwxrwx root root 1075144 2015-07-06 19:53 busybox

-rwxr-xr-x root shell 80256 2014-08-28 16:30 dexdump

-rwxr-xr-x root shell 1314816 2014-08-28 16:31 libmnlp_mt6582

-rwxr-xr-x root shell 30268 2014-08-28 16:31 mnld

-rwxr-xr-x root shell 9464 2014-08-28 16:31 showmap

-rwsr-sr-x root root 356332 2015-07-06 19:53 su

-rwxr-xr-x root root 652900 2014-08-28 16:31 tcpdump

 

W tym katalogu jest więcej dobra, które pochodzi od twórców wirusa – zwracam uwagi na datę.

Korzystając z polecenia “chattr” ukrytego pod nazwą “.sys.apk” możemy zmienić atrybuty plików na nie będące niezmienne (not immutable) i następnie usunąć niechciane pliki.

adb.exe shell /system/xbin/.sys.apk -a -i /system/app/ThemeManags.apk

adb.exe shell mv /system/app/ThemeManags.apk /system/bad/

 

W katalogu /system/etc/ czai się też coś złowrogiego:

adb.exe shell ls -la /system/etc/ | grep 2015

-rwxr-xr-x root root 53093 2015-09-29 21:41 install-recovery.sh

 

Ten plik jest zmieniany przez wirusa. W moim konkretnym przypadku, został on utworzony całkowicie od zera, więc mogę go po prostu usunąć. Wirus dopisuje się do tego pliku począwszy od linii “/system/bin/daemonnis –auto-daemon &”. Należy usunąć z tego pliku wszystko, co jest za wskazaną linią łącznie z nią. Można to zrobić korzystając z poleceń:

adb.exe shell /system/xbin/.sys.apk -a -i /system/etc/install-recovery.sh

adb.exe pull /system/etc/install-recovery.sh
adb.exe push install-recovery.sh /system/etc/

Zmieniamy atrybuty pliku, ściągamy pliku na dysk komputera (poleceniem pull), edytujemy plik w notatniku, usuwamy niechcianą zawartość i wgrywamy go ponownie do telefonu (poleceniem push).

Mam nadzieję, że podana instrukcja jest pełna.

 

 

 

Categories: Zupełnie inne Tags:
  1. No comments yet.
  1. No trackbacks yet.

Subscribe without commenting