Aufruf einer verdächtigen Methode nicht auffindbar

Status
Dieses Thema wurde gelöst! Zur Lösung springen…
P

ppp

Neues Mitglied
2
Hallo,
ich habe eine App als apk bekomme, die ich mir näher angeguckt habe, u.a. mit jadx-gui. Es handelt sich um eine Spiele App, die laut der Manifestdatei ungewöhnlich viele Permissions hat. Habe das Spiele auf einem Testphone installiert und gespielt. Die angeforderten Permissions sind für das Spiel überhaupt nicht berechtigt. Habe in dem Code eine Klasse mit der folgenden verdächtigen Methode gefunden:
Java:
public void Do()
{
...
String deviceId = ((TelephonyManager) this.a.getSystemService("phone")).getDeviceId();
...
a.add(new BasicNameValuePair(new String("imei"), deviceId)); // a ist eine ArrayListe
...

try {
            httpPost.setEntity(new UrlEncodedFormEntity(a));
        } catch (UnsupportedEncodingException e) {
...
Methode sammelt sensible Daten und verschickt sie per http.
Ich sehe aber nicht, dass diese Klasse mit dieser Methode aufgerufen wird. Habe nach dem Namen der Methode gesucht, aber nichts gefunden. Gibt es Möglichkeiten diese Methode aufzurufen ohne dass ich das in der jadx-gui sehe?
Andernfalls frage ich mich wieso diese Methode implementiert wurde, wenn sie nie benutzt wird.
Ist die Tatsache, dass so eine Methode(unabhängig, ob sie benutzt wird oder nicht) in der apk drin ist + die unnötigen Permissions verdächtig?
Ich bin kein Entwickler von Android Apps. Entwickle andere Sachen in anderen Programmiersprachen.
 
Empfohlene Antwort(en)
Dann fragt die App auch die Permissions an und die Funktion hätte wieder einen Sinn.

Ja , natürlich kann sie verwendet werden - du siehst schon alleine , dass der Decompiler in der Deklaration die
Funktion trivial als "Do" benannt hat .
An der Stelle , wo sie aufgerufen wird , kann ein anderer Name verwendet sein.
Einsprungsadressen im Binary werden willkürlich benannt, das kommt auf das verwendete Tool an.

P.S Ich denke, das dürfte an dieser Stelle zum Thema auch genügen, ich möchte auch hier keine Ausnahme machen :)
 
Zuletzt bearbeitet:
Alle Antworten (6)
Hallo ppp,

eingangs erlaube ich mir , höflichst darauf hinzuweisen , dass das decomplieren von Apps leider unzulässig ist.
I.d.R. gibt es auch deshalb hier keinen Support in dieser Richtung :)

Grundsätzlich :
Das decomplieren von Biniaries ist eher unbrauchbar, weshalb es durchaus sein kann , dass deine Suche
erfolglos war , auch wenn die deklarierte Funktion verwendet wurde.
Wenn in der Manifest nicht READ_PHONE_STATE als Permission angefragt ist, dann macht auch deine Schleife
oben eh keinen Sinn.
Da müsstest du schon den Entwickler fragen , warum er ein Array durch die Gegend schicken "wollte" :)
 
Zuletzt bearbeitet:
OK. Danke. Also es kann sein, dass diese Methode aufgerufen wird, obwohl ich diesen Aufruf im Decompiler nicht sehe.

In der Manifest-Datei ist die Permission angegeben.

XML:
...
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
...
 
Dann fragt die App auch die Permissions an und die Funktion hätte wieder einen Sinn.

Ja , natürlich kann sie verwendet werden - du siehst schon alleine , dass der Decompiler in der Deklaration die
Funktion trivial als "Do" benannt hat .
An der Stelle , wo sie aufgerufen wird , kann ein anderer Name verwendet sein.
Einsprungsadressen im Binary werden willkürlich benannt, das kommt auf das verwendete Tool an.

P.S Ich denke, das dürfte an dieser Stelle zum Thema auch genügen, ich möchte auch hier keine Ausnahme machen :)
 
Zuletzt bearbeitet:
Ja, die Permission READ_PHONE_STATE und viele weitere wurden abgefragt, wenn ich die App zum ersten mal starte. Das hat mich stutzig gemacht. Es ist ein simples Spiel und es braucht so viele Permissions? Deswegen habe ich da mal näher reingeguckt.
 
Zuletzt bearbeitet:
Na da möchte Einer eindeutig die IMEI haben :)
 
Nicht nur die IMEI...
 
Status
Dieses Thema wurde gelöst! Zur Lösung springen…

Ähnliche Themen

Helmut1A
  • Helmut1A
Antworten
7
Aufrufe
1.125
Helmut1A
Helmut1A
D
  • Data2006
Antworten
14
Aufrufe
483
jogimuc
J
B
Antworten
3
Aufrufe
1.305
swa00
swa00
Zurück
Oben Unten