网友通过本文主要向大家介绍了androguard,androguard下载,python androguard,android 微信支付,android 微信分享等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
Android安全专项-利用androguard分析微信
安装
做 Android 安全测试之前你应该知道的工具 (一)
分析
./androlyze.py -s
进入分析的交互界面
然后执行
apk,d,dx=AnalyzeAPK("./weixin_740.apk")
分析指定的APK,我们分析的是weixin_740.apk
是我在应用包刚刚下载的。
apk.get_permissions()
列出所有使用的权限的命令为apk.get_permissions()
:
使用到的权限如下:
'com.tencent.mm.plugin.permission.READ',
'com.tencent.mm.plugin.permission.WRITE',
'com.tencent.mm.permission.MM_MESSAGE',
'com.huawei.authentication.HW_ACCESS_AUTH_SERVICE',
'android.permission.ACCESS_NETWORK_STATE',
'android.permission.ACCESS_COARSE_LOCATION',
'android.permission.ACCESS_FINE_LOCATION',
'android.permission.CAMERA',
'android.permission.GET_TASKS',
'android.permission.INTERNET',
'android.permission.MODIFY_AUDIO_SETTINGS',
'android.permission.RECEIVE_BOOT_COMPLETED',
'android.permission.RECORD_AUDIO',
'android.permission.READ_CONTACTS',
'android.permission.READ_SMS',
'android.permission.VIBRATE',
'android.permission.WAKE_LOCK',
'android.permission.WRITE_EXTERNAL_STORAGE',
'android.permission.WRITE_CONTACTS',
'android.permission.WRITE_SETTINGS',
'com.android.launcher.permission.INSTALL_SHORTCUT',
'com.android.launcher.permission.UNINSTALL_SHORTCUT',
'com.android.launcher.permission.READ_SETTINGS',
'com.tencent.mm.location.permission.SEND_VIEW',
'android.permission.BLUETOOTH',
'android.permission.BLUETOOTH_ADMIN',
'android.permission.BROADCAST_STICKY',
'android.permission.SYSTEM_ALERT_WINDOW',
'android.permission.CHANGE_WIFI_STATE',
'android.permission.GET_PACKAGE_SIZE',
'android.permission.DOWNLOAD_WITHOUT_NOTIFICATION',
'android.permission.NFC',
'com.huawei.android.launcher.permission.CHANGE_BADGE',
'android.permission.WRITE_APP_BADGE',
'com.android.vending.BILLING',
'com.tencent.mm.ext.permission.READ',
'com.tencent.mm.ext.permission.WRITE',
'android.permission.USE_FINGERPRINT',
'android.permission.GET_ACCOUNTS',
'android.permission.MANAGE_ACCOUNTS',
'android.permission.AUTHENTICATE_ACCOUNTS',
'android.permission.READ_SYNC_SETTINGS',
'android.permission.WRITE_SYNC_SETTINGS',
'android.permission.READ_PROFILE',
'android.permission.NFC',
'com.google.android.c2dm.permission.RECEIVE',
'android.permission.GET_ACCOUNTS',
'com.tencent.mm.permission.C2D_MESSAGE',
'com.android.alarm.permission.SET_ALARM',
'com.tencent.mm.wear.message',
'android.permission.BODY_SENSORS',
'android.permission.WRITE_EXTERNAL_STORAGE',
'android.permission.CAMERA',
'android.permission.CAMERA',
'android.permission.USE_CREDENTIALS',
'android.permission.NFC',
'android.permission.ACCESS_WIFI_STATE',
'android.permission.READ_PHONE_STATE',
'android.permission.ACCESS_NETWORK_STATE'
show_Permissions(dx)
由于2.0的androguard已经没有了show_Permissions(dx)
方法,所以我切回到1.9版本。
In [2]: show_Permissions(dx)
WRITE_SETTINGS :
1 Lcom/tencent/c/a/a/p;->m(Ljava/lang/String; Ljava/lang/String;)Z (0x14) ---> Landroid/provider/Settings$System;->putString(Landroid/content/ContentResolver; Ljava/lang/String; Ljava/lang/String;)Z
1 Lcom/tencent/smtt/a/l;->Io(Ljava/lang/String;)V (0x12) ---> Landroid/provider/Settings$System;->putString(Landroid/content/ContentResolver; Ljava/lang/String; Ljava/lang/String;)Z
1 Lcom/tencent/smtt/sdk/WebView$3;->onClick(Landroid/view/View;)V (0x98) ---> Landroid/provider/Settings$System;->putString(Landroid/content/ContentResolver; Ljava/lang/String; Ljava/lang/String;)Z
1 Lcom/tencent/smtt/sdk/k$1;->handleMessage(Landroid/os/Message;)V (0x5c0) ---> Landroid/provider/Settings$System;->putString(Landroid/content/ContentResolver; Ljava/lang/String; Ljava/lang/String;)Z
1 Lcom/tencent/smtt/sdk/k$1;->handleMessage(Landroid/os/Message;)V (0x7e2) ---> Landroid/provider/Settings$System;->putString(Landroid/content/ContentResolver; Ljava/lang/String; Ljava/lang/String;)Z
1 Lcom/tencent/smtt/sdk/k$1;->handleMessage(Landroid/os/Message;)V (0xbbc) ---> Landroid/provider/Settings$System;->putString(Landroid/content/ContentResolver; Ljava/lang/String; Ljava/lang/String;)Z
1 Lcom/tencent/smtt/sdk/k$1;->handleMessage(Landroid/os/Message;)V (0x102c) ---> Landroid/provider/Settings$System;->putString(Landroid/content/ContentResolver; Ljava/lang/String; Ljava/lang/String;)Z
1 Lcom/tencent/smtt/sdk/m;->a(Lcom/tencent/smtt/sdk/m; Landroid/content/Context; Ljava/lang/String; I)V (0x230) ---> Landroid/provider/Settings$System;->putString(Landroid/content/ContentResolver; Ljava/lang/String; Ljava/lang/String;)Z
1 Lcom/tencent/a/a/a/a/e;->a(Ljava/lang/String;)V (0x1c) ---> Landroid/provider/Settings$System;->putString(Landroid/content/ContentResolver; Ljava/lang/String; Ljava/lang/String;)Z
1 Lcom/tencent/mm/modelsimple/s;->a(I I I Ljava/lang/String; Lcom/tencent/mm/network/o; [B)V (0x356) ---> Landroid/provider/Settings$System;->putString(Landroid/content/ContentResolver; Ljava/lang/String; Ljava/lang/String;)Z
1 Lcom/tencent/smtt/sdk/WebView$4;->onInstallFinish(I)V (0x86) ---> Landroid/provider/Settings$System;->putString(Landroid/content/ContentResolver; Ljava/lang/String; Ljava/lang/String;)Z
ACCESS_NETWORK_STATE :
1 Lcom/tencent/c/a/a/s;->T(Landroid/content/Context;)Z (0x12) ---> Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo;
1 Lcom/tencent/c/a/a/s;->ab(Landroid/content/Context;)Ljava/lang/String; (0x38) ---> Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo;
1 Lcom/tencent/mm/booter/MMReceivers$ConnectionReceiver;->onReceive(Landroid/content/Context; Landroid/content/Intent;)V (0x82) ---> Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo;
1 Lcom/tencent/mm/booter/e;->mQ()Z (0x46) ---> Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo;
1 Lcom/tencent/mm/compatible/d/u;->oN()I (0x1e) ---> Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo;
1 Lcom/tencent/mm/jni/platformcomm/PlatformComm$C2Java;->getAPNInfo()Lcom/tencent/mm/jni/platformcomm/PlatformComm$APNInfo; (0x1a) ---> Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo;
1 Lcom/tencent/mm/jni/platformcomm/PlatformComm$C2Java;->getCurWifiInfo()Lcom/tencent/mm/jni/platformcomm/PlatformComm$WifiInfo; (0x34) ---> Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo;
1 Lcom/tencent/mm/jni/platformcomm/PlatformComm$C2Java;->getNetInfo()I (0x28) ---> Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo;
1 Lcom/tencent/mm/model/at;->um()Ljava/lang/String; (0x1b4) ---> Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo;
1 Lcom/tencent/mm/model/at;->um()Ljava/lang/String; (0x1fe) ---> Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo;
1 Lcom/tencent/mm/modelcdntran/c;