Blog (57)
Komentarze (10k)
Recenzje (1)

Odzyskiwanie MMS

@BerionOdzyskiwanie MMS24.11.2021 13:15

Android, jak przystało na każdy szanujący się system szpiegujący, gromadzi o użytkowniku przeróżne jego dane, a nawet je przed nim samym ukrywa. I tak jest w omawianym przypadku. Skasowane wiadomości MMS nie są kasowane, a jedynie usuwane z baz danych, jednak pliki te dalej leżą sobie w pamięci wewnętrznej telefonu czekając na spontaniczny, darmowy backup w chmurach: Google, producenta telefonu, operatora komórkowego, autorów instalowanego na życzenie adware z Google Play jak i autorów wszytych chińskich rootkitów (na poziomie OS, a nawet niżej). O! Byłbym zapomniał – ewentualnie czekają na samego właściciela lub nowego właściciela, który „nabył drogą kupna” telefon bez uprzedniego przywrócenia go do ustawień fabrycznych (choć i z tym różnie bywa, bo każdy „wuj na swój strój” i nie zawsze wszystko jest czyszczone jak nazwa opcji sugeruje). Scenariuszy jest nawet więcej, jak choćby nasza policja czy rogaty mąż. A wszystko to dzięki Google’owskiemu „broken by design”.

Opisany niżej sposób wymaga fizycznego dostępu do telefonu z włączoną opcją "debugowanie po USB". W nowszych Androidach niż „żelek” (4.1.x) jest nie tylko domyślnie wyłączona, ale i wszystkie opcje programistyczne ukryte (odkryć zwykle można via kilkukrotne popukanie w wersję kernela lub przytrzymując trybik w „szufladzie” tak długo aż nie zacznie się kręcić i w opcjach deweloperskich UI odblokować te programistyczne – kto miał do czynienia dłużej „z zielonym robocikiem”, ten w cyrku się nie śmieje ;)).

[1/2]
[2/2]

Dodatkowo, użytkownik musi pobrać Android Studio (a tak naprawdę to potrzebny jest sam Android Debug Bridge) i zainstalować sterowniki aby w ogóle dogadać się z adb via USB (najłatwiej, aczkolwiek zupełnie nierozsądnie jest skorzystać z Android Driver Installer, rozsądniej z Universal ADB Drivers a racjonalnie z tych udostępnianych przez producentów telefonów).

Oczywiście sposób ten jest dla telefonów z Androidem bez tzw. roota. Szczęśliwi, którzy „zrótowali” nie muszą się tak gimnastykować bo mają wszystkie dane na wyciągnięcie ręki…

Kopia systemowa

Aby wykonać backup (teoretycznie) wszystkich danych na telefonie. należy najpierw uruchomić program Android Debug Bridge (znajdziesz w Android Studio, w platform_tools; są to pliki: "adb.exe", "AdbWinApi.dll" i "AdbWinUsbApi.dll"). Nie ma interfejsu graficznego, dlatego musisz to zrobić via CMD lub PowerShell.

Przejdź do katalogu z adb (w moim przypadku: "cd C:\gmeranina") i wklep "adb devices". Powinien zostać wyświetlony twój telefon. Jeśli się tam nie pojawi, to znaczy że brakuje sterowników. Telefon zapyta czy zezwolić komputerowi na kontakt z adb, co oczywiście zatwierdzasz.

Następnie wpisz "adb backup -apk -all -system -f C:\gmeranina\backup.ab".

Telefon zapyta o hasło do kopii (niestety jest obowiązkowe od bodajże Androida v5), którym archiwum zostanie zaszyfrowane. Po wpisaniu jakiegoś, zapamiętaj je i dotknij w "UTWÓRZ KOPIĘ ZAPASOWĄ DANYCH". Odczekaj aż adb zakończy rozmawiać z telefonem i będziesz mógł go odłączyć (nie ma żadnego paska postępu, więc musisz po prostu zaczekać kiedy znowu zacznie migać kursor w linii poleceń ;}).

Konwersja AB do TAR

Po wykonaniu systemowej kopii *.ab, trzeba ją teraz zamienić w *.tar (którym de facto jest). Kopie bez hasła (stare Androidy nie wymagają, nowe wymuszają) nie są szyfrowane i wystarczy obciąć androidowe śmieci plus dokleić standardowy nagłówek tarballa. Z szyfrowanymi jest sporo więcej zachodu, dlatego najszybciej i najprościej jest przepuścić archiwum przez program Android Backup Extractor, który wszystkie te operacje wykona za nieszczęśnika. Dla własnego zdrowia psychicznego polecam pingwinią dystrybucję wszystko-mającą, czyli cynamonowy Mint 20.1 (nie trzeba instalować), ale jeśli masz żelazne nerwy i nadmiar wolnego czasu to na Windows możesz próbować walczyć z Javą. ;)

Wrzuć do katalogu z systemową kopią plik "abe-all.jar", otwórz terminal i tam się przeprowadź poleceniem "cd". W moim przypadku jest to "/media/mint/WINDOWS/gmeranina" ponieważ u mnie Windowsowi dałem etykietę "WINDOWS", a w "/media" Mint montuje partycje spoza fstab. O ile zwykle bawię się na Windows 7 na którym problemów żadnych nie ma, o tyle na Windows 8 i nowszych, z włączoną hibernacją i/lub fastboot będziesz mieć problem z dostępem do (używając microsoftowej nomenklatury) "C:\gmeranina". Dlatego jeśli używasz tych systemów operacyjnych z tą jakże zbędną funkcją to wrzuć sobie te pliki na pendrive, inną partycję itp. Jak ci wygodniej.

Nemo (manager plików w Mint) domyślnie traktuje wszystkie dane na partycjach z systemem plików NTFS i rodzinie FAT (FAT12, FAT16, FAT32, exFAT, TexFAT) jako te z atrybutem wykonywalnym. Jeśli plik przerzuciłeś na partycję z dowolnym fs linuksowym to pamiętaj aby zmienić tenże atrybut (np. we właściwościach pliku pod prawym przyciskiem myszy). W przeciwnym razie, nie uruchomisz programu.

Parametr "unpack" konwertuje *.ab do *.tar. "backup.ab" to w moim przypadku nazwa pliku źródłowego, a "backup.tar" docelowego. "x" jest hasłem, które niestety musiałem wybrać podczas tworzenia kopii na telefonie.

Konwersja MMS do JPG

Wróć na Windows i wypakuj zawartość folderu "backup.tar|apps\com.android.mms\f\pduFiles\". Jeśli go nie masz, oznacza to że "com.android.mms" i jego zasoby zostały oflagowane jako „niedołączalne” do kopii (tak jak np. większość aplikacji komercyjnych) i cały poradnik przeczytałeś na marne! ;) Jeśli jakimś cudem masz również "com.android.providers.telephony" to tam znajdziesz bazę z SMSami i MMSami czyli "mmssms.db" (pduFiles to tylko cache, choć nieczyszczone) – i ponownie – wtedy dalsze czytanie tekstu nie ma sensu.

Posortuj sobie widok na malejący, względem rozmiaru plików. MMSy będą ważyć co najmniej kilkadziesiąt KiB, resztę usuń bo nie będzie potrzebna.

Otwórz jakikolwiek plik edytorem heksadecymalnym (dowolnym, ja używam prostego HxD) i obetnij zbędne meta dane, zostawiając wyłącznie nagłówek *.jpg.

A więc obetnij wszystko przed wartością FFD8FFE1h. Zapisz kastrata jako *.jpg (np. "test.jpg") i od tej pory będziesz mógł go otworzyć/podejrzeć w dowolnej przeglądarce zdjęć, managerze plików itp. Z tego co pamiętam, standard MMS nie przewiduje innych formatów niż JPEG (pamiętaj, że MMS to już skonwertowany plik w znacząco niższej jakości niż plik źródłowy, więc nawet jeśli załączasz bezstratny *.png to i tak w MMS będzie siedział podły *.jpg). Gdyby jednak standard się zmienił lub gdybym się mylił, zasada pozostanie identyczna, a zmieni się jedynie nagłówek fotki adekwatny do nowego formatu (i rzecz jasna sam format). W plikach MMS, poza nagłówkiem jest jeszcze „podnóżek” (stopka, footer ;)), ale nie musisz go kasować, w niczym nie przeszkadza, a kolejna transformacja programem graficznym tylko zmniejszy i tak już niską jakość.

Jeśli zdjęcie posiada dane EXIF (o czym świadczy tekst "Exif" zamiast "JFIF") to możesz wyciągnąć z niego takie informacje jak miejsce wykonania (o ile fotografujący miał włączony GPS) lub datę utworzenia co można wykorzystać np. w ten sposób, do nadania sensownych nazw plikom.

MMS może zawierać więcej niż jedno zdjęcie, wtedy dla drugiego musisz wykonać tę samą operację, włączając w to również pierwszy JPG. Analogicznie dla kolejnych.

Jak zapewne zauważyłeś, meta dane obejmują m.in. numer wysyłającego (na przykładzie wyżej, to spam z Play dlatego w miejscu numeru jest id) jak i odbierającego. Może zawierać także treść wiadomości, ale nie musi.

PS: Nie, nie proście teraz swoich żon: „kochanie, pokaż mi na chwilę telefon, chciałbym coś tam sprawdzić”! W małżeństwie trzeba sobie ufać. ;)

Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.