漏洞分析

0

高危漏洞

6

中危漏洞

4

低危漏洞

6

警告

文件名 ntcpv316.apk
上传者 zy1234
文件大小 37.291463851929MB
MD5 8cf4920ed4e43c2c18776ad58be129dc
包名 com.games.nantongcpgame
Main Activity org.cocos2dx.cpp.AppActivity
Min SDK 11
Target SDK 11

权限列表

# 名称 说明 提示
0 android.permission.ACCESS_COARSE_LOCATION 访问大概的位置源(例如蜂窝网络数据库)以确定手机的大概位置(如果可以)。恶意应用程序可借此确定您所处的大概位置。 注意
1 android.permission.ACCESS_FINE_LOCATION 访问精准的位置源,例如手机上的全球定位系统(如果有)。恶意应用程序可能会借此确定您所处的位置,并可能消耗额外的电池电量。 注意
2 android.permission.READ_PHONE_STATE 允许应用程序访问设备的手机功能。有此权限的应用程序可确定此手机的号码和序列号,是否正在通话,以及对方的号码等。 注意
3 android.permission.RECORD_AUDIO 允许应用程序访问录音路径。 注意
4 android.permission.WRITE_SETTINGS 允许应用程序修改系统设置方面的数据。恶意应用程序可借此破坏您的系统配置。 注意
5 android.permission.ACCESS_NETWORK_STATE 允许应用程序查看所有网络的状态。 提示
6 android.permission.ACCESS_WIFI_STATE 允许应用程序查看有关WLAN状态的信息。 提示
7 android.permission.CHANGE_NETWORK_STATE 允许应用程序更改网络连接的状态。 提示
8 android.permission.CHANGE_WIFI_STATE 允许应用程序连接到WLAN接入点以及与WLAN接入点断开连接,并对配置的WLAN网络进行更改。 提示
9 android.permission.CHANGE_WIFI_STATE 允许应用程序连接到WLAN接入点以及与WLAN接入点断开连接,并对配置的WLAN网络进行更改。 提示
10 android.permission.DISABLE_KEYGUARD 允许应用程序停用键锁和任何关联的密码安全设置。例如,在手机上接听电话时停用键锁,在通话结束后重新启用键锁。 提示
11 android.permission.INTERNET 允许程序访问网络. 提示
12 android.permission.MANAGE_ACCOUNTS 允许应用程序执行添加、删除帐户及删除其密码之类的操作。 提示
13 android.permission.MOUNT_UNMOUNT_FILESYSTEMS 允许应用程序装载和卸载可移动存储器的文件系统。 提示
14 android.permission.READ_LOGS 允许应用程序从系统的各日志文件中读取信息。这样应用程序可以发现您的手机使用情况,但这些信息不应包含任何个人信息或保密信息。 提示
15 android.permission.WAKE_LOCK 允许应用程序防止手机进入休眠状态。 提示
16 android.permission.WRITE_EXTERNAL_STORAGE 允许应用程序写入SD卡。 提示

四大组件

组件名称

org.cocos2dx.cpp.AppActivity
com.games.nantongcpgame.wxapi.WXEntryActivity

第三方库

# 库名 介绍
0 com.tencent.map.geolocation 腾讯地图定位SDK是一套基于Android 2.1及以上版本设备的应用程序接口,通过该接口,您可以轻松使用腾讯地图定位服务,构建LBS应用程序。
定位SDK包括GPS定位与网络定位,实现了经纬度坐标偏转与当前位置的POI名称、地址或者行政区划的查询。采用了移动缓存策略,节省流量与电量。定位原理
定位SDK使用当前设备的GPS、基站信号和WiFi信号生成定位依据,并将定位依据发送到腾讯的定位服务器。
定位服务器对定位依据进行计算得到定位结果,最后将结果返回给定位SDK。
1 com.tencent.bugly 腾讯Bugly,面向移动开发者提供最专业的Crash监控、崩溃分析等质量跟踪服务,为您修复用户的每一次Crash!
2 com.tencent.map 腾讯地图Android SDK是一套基于Android2.3及以上设备的应用接口,通过该接口,您可以方便地访问腾讯地图为您提供的高质量地点数据和服务,构建丰富而实用的地图及位置服务类应用。腾讯地图Android SDK除提供创建底图、缩放、平滑移图等基础功能外,还提供定位、地址解析、反地址解析、周边搜索、路线方案等拓展服务,助你在应用开发中事半功倍。腾讯地图Android SDK的服务需要注册,免费的向第三方提供,任何非盈利性网站均可使用。
3 com.tencent.mm.sdk 微信支付
4 com.chukong.cocosplay CocosPlay-SDK
5 com.tencent.connect 腾讯开放平台
6 com.tencent.tauth 腾讯QQ互联平台为广大开发者整理了SDK列表,辅助开发者快速接入QQ登录、分享等功能。QQ互联是腾讯旗下的开放平台,通过QQ互联,网站主和开发者可以申请接入QQ登录、用户可以使用QQ账号登录接入的站点,通过添加分享和赞组件,将站点内容分享到QQ空间和朋友网,通过获取API授权,网站主还可以将用户操作同步到QQ空间和朋友网。
7 com.tencent.tencentmap 腾讯地图Android SDK是一套基于Android2.3及以上设备的应用接口,通过该接口,您可以方便地访问腾讯地图为您提供的高质量地点数据和服务,构建丰富而实用的地图及位置服务类应用。腾讯地图Android SDK除提供创建底图、缩放、平滑移图等基础功能外,还提供定位、地址解析、反地址解析、周边搜索、路线方案等拓展服务,助你在应用开发中事半功倍。腾讯地图Android SDK的服务需要注册,免费的向第三方提供,任何非盈利性网站均可使用。

静态扫描发现风险点

风险等级 风险名称

中危

检测到当前标志被设置成true或没设置,这会导致adb调试备份允许恶意攻击者复制应用程序数据,造成数据泄露。

中危

检测到1处证书弱校验漏洞。

位置: classes.dex
com.aliyuncs.http.X509TrustAll;

当移动App客户端使用https或ssl/tls进行通信时,如果不校验证书的可信性,将存在中间人攻击漏洞,可导致信息泄露,传输数据被篡改,甚至通过中间人劫持将原有信息替换成恶意链接或恶意代码程序,以达到远程控制等攻击意图。建议:
对SSL证书进行强校验,包括签名CA是否合法、证书是否是自签名、主机域名是否匹配、证书是否过期等。

参考案例:
www.wooyun.org/bugs/wooyun-2014-079358

参考资料:
http://drops.wooyun.org/tips/3296
http://wolfeye.baidu.com/blog/webview-ignore-ssl-error/
https://jaq.alibaba.com/blog.htm?id=60

中危

该app需要移除大部分日志打印代码。
经扫描该包仍存在大量打日志代码,共发现155处打日志代码.(此处扫描的日志打印代码,是指调用android.util.Log.* 打印的.)
详情如下:

位置: classes.dex
com.tencent.a.a.a.a.h;->b(Landroid/content/Context;)Ljava/lang/String;==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.wxop.stat.b.r;->b(Landroid/content/Context;)Ljava/lang/String;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.cpp.AppActivity$1;->run()V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getUserData(Landroid/content/Context; Ljava/lang/String;)Ljava/lang/String;==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.stat.common.StatLogger;->error(Ljava/lang/Object;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxWebView;->(Landroid/content/Context; I)V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getUserSceneTagId(Landroid/content/Context;)I==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.honghu.androidqp.wxapi.WXEntryActivity;->onResp(Lcom/tencent/mm/sdk/modelbase/BaseResp;)V==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->closeBugly()V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->putUserData(Landroid/content/Context; Ljava/lang/String; Ljava/lang/String;)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getUserDatasSize(Landroid/content/Context;)I==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxBitmap;->newPaint(Ljava/lang/String; I)Landroid/text/TextPaint;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.honghu.androidqp.wxapi.WXEntryActivity;->onReq(Lcom/tencent/mm/sdk/modelbase/BaseReq;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
YYProjectJni.Util;->readFromFile(Ljava/lang/String; I I)[B==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
YYProjectJni.Util;->readFromFile(Ljava/lang/String; I I)[B==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.newsdk.demo.api_ThirdPay.StartThirdPay;->start(Ljava/lang/String;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.mm.sdk.b.b;->f(Ljava/lang/String; Ljava/lang/String;)V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setCrashFilter(Ljava/lang/String;)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.proguard.x;->a(I Ljava/lang/String; [Ljava/lang/Object;)Z==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxLocalStorage$DBOpenHelper;->onUpgrade(Landroid/database/sqlite/SQLiteDatabase; I I)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.BuglyLog;->w(Ljava/lang/String; Ljava/lang/String;)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->startCrashReport()V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxGLSurfaceView$1;->handleMessage(Landroid/os/Message;)V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxGLSurfaceView;->dumpMotionEvent(Landroid/view/MotionEvent;)V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.Bugly;->init(Landroid/content/Context; Ljava/lang/String; Z Lcom/tencent/bugly/BuglyStrategy;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getAppVer()Ljava/lang/String;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setCrashRegularFilter(Ljava/lang/String;)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.cpp.AppActivity;->onNewIntent(Landroid/content/Intent;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.BuglyLog;->d(Ljava/lang/String; Ljava/lang/String;)V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setUserSceneTag(Landroid/content/Context; I)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
YYProjectJni.JniHelper;->weixinShareFromLocal(Ljava/lang/String; Ljava/lang/String; Ljava/lang/String; Ljava/lang/String; Z)V==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setIsAppForeground(Landroid/content/Context; Z)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.wxop.stat.b.b;->b(Ljava/lang/Object;)V==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxActivity$Cocos2dxEGLConfigChooser;->chooseConfig(Ljavax/microedition/khronos/egl/EGL10; Ljavax/microedition/khronos/egl/EGLDisplay;)Ljavax/microedition/khronos/egl/EGLConfig;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getUserId()Ljava/lang/String;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getSdkExtraData()Ljava/util/Map;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.mm.sdk.openapi.WXApiImplV10$ActivityLifecycleCb;->onActivityResumed(Landroid/app/Activity;)V==>android.util.Log;->v(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxLocalStorage;->getItem(Ljava/lang/String;)Ljava/lang/String;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setJavascriptMonitor(Landroid/webkit/WebView; Z Z)Z==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.stat.common.StatLogger;->debug(Ljava/lang/Object;)V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setIsDevelopmentDevice(Landroid/content/Context; Z)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.a.a.a.a.b;->b()Ljava/lang/String;==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
YYProjectJni.JniHelper;->weixinShareFromUrl(Ljava/lang/String; Ljava/lang/String; Z)V==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.stat.common.StatLogger;->verbose(Ljava/lang/Object;)V==>android.util.Log;->v(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->testJavaCrash()V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setUserId(Landroid/content/Context; Ljava/lang/String;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.a.a.a.a.d;->b()Ljava/lang/String;==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->closeCrashReport()V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.cpp.AppActivity;->onStatusUpdate(Ljava/lang/String; I Ljava/lang/String;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setBuglyDbName(Ljava/lang/String;)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setUserId(Ljava/lang/String;)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.wxop.stat.b.b;->error(Ljava/lang/Object;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxHttpURLConnection;->setVerifySSL(Ljava/net/HttpURLConnection; Ljava/lang/String;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getSdkExtraData(Landroid/content/Context;)Ljava/util/Map;==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
YYProjectJni.JniHelper;->GetMac(I)Ljava/lang/String;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getUserId()Ljava/lang/String;==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.honghu.androidqp.wxapi.WXEntryActivity;->AnalyticalOpenID(Ljava/lang/String;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxHttpURLConnection;->getResponseContent(Ljava/net/HttpURLConnection;)[B==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getUserData(Landroid/content/Context; Ljava/lang/String;)Ljava/lang/String;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.stat.common.StatLogger;->info(Ljava/lang/Object;)V==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setBuglyDbName(Ljava/lang/String;)V==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.proguard.x;->a(I Ljava/lang/String; [Ljava/lang/Object;)Z==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->removeUserData(Landroid/content/Context; Ljava/lang/String;)Ljava/lang/String;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->testANRCrash()V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setAppChannel(Landroid/content/Context; Ljava/lang/String;)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.newsdk.demo.util.ConfigurationTools;->getMerchantId(Landroid/content/Context;)Ljava/lang/String;==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getAppID()Ljava/lang/String;==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getAppVer()Ljava/lang/String;==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.mm.sdk.b.b;->e(Ljava/lang/String; Ljava/lang/String;)V==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.wxop.stat.b.r;->W(Landroid/content/Context;)Z==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxHttpURLConnection;->setRequestMethod(Ljava/net/HttpURLConnection; Ljava/lang/String;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxHttpURLConnection;->getResponseCode(Ljava/net/HttpURLConnection;)I==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.b;->a(Landroid/content/Context; Lcom/tencent/bugly/BuglyStrategy;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->closeNativeReport()V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setSessionIntervalMills(J)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
YYProjectJni.Util;->extractThumbNail(Ljava/lang/String; I I Z)Landroid/graphics/Bitmap;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.a.a.a.a.h;->c(Landroid/content/Context;)Ljava/lang/String;==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->testANRCrash()V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
YYProjectJni.JniHelper;->weixinShareFromInternet(Ljava/lang/String; Ljava/lang/String; Ljava/lang/String; Ljava/lang/String; Z)V==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxHttpURLConnection;->str2Seconds(Ljava/lang/String;)Ljava/lang/String;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.b;->a(Landroid/content/Context; Ljava/lang/String; Z Lcom/tencent/bugly/BuglyStrategy;)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
YYProjectJni.Util;->extractThumbNail(Ljava/lang/String; I I Z)Landroid/graphics/Bitmap;==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getSdkExtraData()Ljava/util/Map;==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
YYProjectJni.JniHelper;->weixinShareFromScreen(Ljava/lang/String; Z)V==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.cpp.AppActivity;->getCurrentDW()V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.cpp.AppActivity;->onRequestPermissionsResult(I [Ljava/lang/String; [I)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setAppPackage(Landroid/content/Context; Ljava/lang/String;)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.a.a.a.a.d;->b(Ljava/lang/String;)V==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxWebView$Cocos2dxWebViewClient;->shouldOverrideUrlLoading(Landroid/webkit/WebView; Ljava/lang/String;)Z==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getAllUserDataKeys(Landroid/content/Context;)Ljava/util/Set;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.BuglyLog;->e(Ljava/lang/String; Ljava/lang/String;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.a.a.a.a.b;->b(Ljava/lang/String;)V==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setUserId(Landroid/content/Context; Ljava/lang/String;)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setAppVersion(Landroid/content/Context; Ljava/lang/String;)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->isLastSessionCrash()Z==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setSdkExtraData(Landroid/content/Context; Ljava/lang/String; Ljava/lang/String;)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setUserId(Ljava/lang/String;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.b;->a(Landroid/content/Context; Lcom/tencent/bugly/BuglyStrategy;)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->putSdkData(Landroid/content/Context; Ljava/lang/String; Ljava/lang/String;)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->testJavaCrash()V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.mm.sdk.b.b;->g(Ljava/lang/String; Ljava/lang/String;)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxHttpURLConnection;->getResponseMessage(Ljava/net/HttpURLConnection;)Ljava/lang/String;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.wxop.stat.b.b;->debug(Ljava/lang/Object;)V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.wxop.stat.b.r;->c(Landroid/content/Context;)Ljava/lang/String;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.a.a.a.a.e;->b()Ljava/lang/String;==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getAppID()Ljava/lang/String;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.BuglyLog;->i(Ljava/lang/String; Ljava/lang/String;)V==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.proguard.x;->a(I Ljava/lang/String; [Ljava/lang/Object;)Z==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->testNativeCrash()V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxVideoView;->onMeasure(I I)V==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.newsdk.demo.util.Tools;->getAppId(Landroid/content/Context;)Ljava/lang/String;==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.BuglyLog;->v(Ljava/lang/String; Ljava/lang/String;)V==>android.util.Log;->v(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->postCatchedException(Ljava/lang/Throwable; Ljava/lang/Thread; Z)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.stat.common.StatLogger;->warn(Ljava/lang/Object;)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setJavascriptMonitor(Lcom/tencent/bugly/crashreport/CrashReport$WebViewInterface; Z Z)Z==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setAuditEnable(Landroid/content/Context; Z)V==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxVideoView$4;->onError(Landroid/media/MediaPlayer; I I)Z==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.mm.sdk.b.b;->h(Ljava/lang/String; Ljava/lang/String;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.a.a.a.a.e;->b(Ljava/lang/String;)V==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.wxop.stat.b.r;->X(Landroid/content/Context;)Lorg/json/JSONArray;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->isLastSessionCrash()Z==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getUserDatasSize(Landroid/content/Context;)I==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getAllUserDataKeys(Landroid/content/Context;)Ljava/util/Set;==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.proguard.x;->a(I Ljava/lang/String; [Ljava/lang/Object;)Z==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.cpp.AppActivity;->onLocationChanged(Lcom/tencent/map/geolocation/TencentLocation; I Ljava/lang/String;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.honghu.androidqp.wxapi.WXEntryActivity$1;->run()V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxActivity;->isAndroidEmulator()Z==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getUserSceneTagId(Landroid/content/Context;)I==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->removeUserData(Landroid/content/Context; Ljava/lang/String;)Ljava/lang/String;==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.cpp.AppActivity;->onCreate(Landroid/os/Bundle;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.stat.common.StatLogger;->error(Ljava/lang/Exception;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setAuditEnable(Landroid/content/Context; Z)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.newsdk.demo.api_ThirdPay.StartThirdPay;->getMerchantId(Landroid/content/Context;)Ljava/lang/String;==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxHttpURLConnection;->sendRequest(Ljava/net/HttpURLConnection; [B)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
YYProjectJni.Util;->readFromFile(Ljava/lang/String; I I)[B==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.b;->a(Landroid/content/Context; Ljava/lang/String; Z Lcom/tencent/bugly/BuglyStrategy;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->testNativeCrash()V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.honghu.androidqp.wxapi.WXEntryActivity;->onResp(Lcom/tencent/mm/sdk/modelbase/BaseResp;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.mm.sdk.openapi.WXApiImplV10$ActivityLifecycleCb$2;->run()V==>android.util.Log;->v(Ljava/lang/String; Ljava/lang/String;)I
YYProjectJni.Util;->extractThumbNail(Ljava/lang/String; I I Z)Landroid/graphics/Bitmap;==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.mm.sdk.openapi.WXApiImplV10$ActivityLifecycleCb;->onActivityPaused(Landroid/app/Activity;)V==>android.util.Log;->v(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getAppChannel()Ljava/lang/String;==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.cpp.ExtAudioRecorder;->writeDateTOFile()V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->setUserSceneTag(Landroid/content/Context; I)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.wxop.stat.b.b;->warn(Ljava/lang/Object;)V==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->getAppChannel()Ljava/lang/String;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxHttpURLConnection;->connect(Ljava/net/HttpURLConnection;)I==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.wxop.stat.b.r;->W(Landroid/content/Context;)Z==>android.util.Log;->w(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxMusic;->playBackgroundMusic(Ljava/lang/String; Z)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
org.cocos2dx.lib.Cocos2dxHttpURLConnection;->createHttpURLConnection(Ljava/lang/String;)Ljava/net/HttpURLConnection;==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.newsdk.demo.util.ConfigurationTools;->getAppId(Landroid/content/Context;)Ljava/lang/String;==>android.util.Log;->i(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->postCatchedException(Ljava/lang/Throwable; Ljava/lang/Thread; Z)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.bugly.crashreport.CrashReport;->closeNativeReport()V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.games.nantongcpgame.wxapi.WXEntryActivity;->onReq(Lcom/tencent/mm/sdk/modelbase/BaseReq;)V==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.tencent.mm.sdk.openapi.WXApiImplV10$ActivityLifecycleCb$1;->run()V==>android.util.Log;->v(Ljava/lang/String; Ljava/lang/String;)I

中危

检测到1个WebView远程执行漏洞。

位置: classes.dex
com.tencent.bugly.crashreport.CrashReport$1;->addJavascriptInterface(Lcom.tencent.bugly.crashreport.crash.h5.H5JavaScriptInterface; Ljava.lang.String;)V

Android API < 17之前版本存在远程代码执行安全漏洞,该漏洞源于程序没有正确限制使用addJavaScriptInterface方法,攻击者可以通过Java反射利用该漏洞执行任意Java对象的方法,导致远程代码执行安全漏洞。
(1)API等于高于17的Android系统。出于安全考虑,为了防止Java层的函数被随意调用,Google在4.2版本之后,规定允许被调用的函数必须以@JavascriptInterface进行注解。
(2)API等于高于17的Android系统。建议不要使用addJavascriptInterface接口,以免带来不必要的安全隐患,如果一定要使用该接口,建议使用证书校验。
(3)使用removeJavascriptInterface移除Android系统内部的默认内置接口:searchBoxJavaBridge_、accessibility、accessibilityTraversal。

参考案例:
www.wooyun.org/bugs/wooyun-2015-0140708
www.wooyun.org/bugs/wooyun-2016-0188252
http://drops.wooyun.org/papers/548

参考资料:
http://jaq.alibaba.com/blog.htm?id=48
http://blog.nsfocus.net/android-webview-remote-code-execution-vulnerability-analysis
https://developer.android.com/reference/android/webkit/WebView.html

中危

检测到87条敏感明文信息,建议移除。

位置: classes.dex
'10.0.0.172' used in: Lcom/tencent/stat/common/k;->a(Landroid/content/Context;)Lorg/apache/http/HttpHost;
'10.0.0.172' used in: Lcom/tencent/wxop/stat/b/l;->v(Landroid/content/Context;)Lorg/apache/http/HttpHost;
'10.0.0.172' used in: Lc/t/m/g/o;->e()V
'10.0.0.200' used in: Lcom/tencent/stat/common/k;->a(Landroid/content/Context;)Lorg/apache/http/HttpHost;
'10.0.0.200' used in: Lcom/tencent/wxop/stat/b/l;->v(Landroid/content/Context;)Lorg/apache/http/HttpHost;
'10.0.0.200' used in: Lc/t/m/g/o;->e()V
'http://121.43.224.226:8080/weChatpay/notify.jsp' used in: Lcom/newsdk/demo/api_ThirdPay/StartThirdPay;->start(Ljava/lang/String;)V
'http://analy.qq.com/cgi-bin/mapp_apptrace' used in: Lcom/tencent/open/yyb/a$b;->a([Landroid/os/Bundle;)Ljava/lang/Void;
'http://android.bugly.qq.com/rqd/async' used in: Lcom/tencent/bugly/crashreport/common/strategy/StrategyBean;->()V
'http://appact.qzone.qq.com/appstore_activity_task_pcpush_sdk' used in: Lcom/tencent/open/TaskGuide;->showTaskGuideWindow(Landroid/app/Activity; Landroid/os/Bundle; Lcom/tencent/tauth/IUiListener;)V
'http://appact.qzone.qq.com/appstore_activity_task_pcpush_sdk' used in: Lcom/tencent/open/TaskGuide;->e(I)V
'http://appsupport.qq.com/cgi-bin/appstage/mstats_batch_report' used in: Lcom/tencent/open/b/g$5;->run()V
'http://appsupport.qq.com/cgi-bin/qzapps/mapp_addapp.cgi' used in: Lcom/tencent/connect/auth/AuthAgent$FeedConfirmListener;->(Lcom/tencent/connect/auth/AuthAgent; Lcom/tencent/tauth/IUiListener;)V
'http://appsupport.qq.com/cgi-bin/qzapps/mapp_addapp.cgi' used in: Lcom/tencent/connect/auth/AuthAgent$FeedConfirmListener;->a()V
'http://c.isdspeed.qq.com/code.cgi' used in: Lcom/tencent/open/b/d;->a(I Ljava/lang/String; Ljava/lang/String; Ljava/lang/String; Ljava/lang/String; Ljava/lang/Long; I I Ljava/lang/String;)V
'http://cgi.connect.qq.com/qqconnectopen/openapi/policy_conf' used in: Lcom/tencent/open/utils/OpenConfig$1;->run()V
'http://cgi.qplus.com/report/report' used in: Lcom/tencent/open/utils/Util$1;->run()V
'http://fusion.qq.com/cgi-bin/prize_sharing/exchange_prize.cgi' used in: Lcom/tencent/open/GameAppOperation$3;->run()V
'http://fusion.qq.com/cgi-bin/prize_sharing/get_activity_state.cgi' used in: Lcom/tencent/open/GameAppOperation$4;->run()V
'http://fusion.qq.com/cgi-bin/prize_sharing/make_share_url.cgi' used in: Lcom/tencent/open/GameAppOperation$1;->run()V
'http://fusion.qq.com/cgi-bin/prize_sharing/query_unexchange_prize.cgi' used in: Lcom/tencent/open/GameAppOperation$2;->run()V
'http://fusion.qq.com/cgi-bin/qzapps/mapp_lbs_delete.cgi' used in: Lcom/tencent/open/LocationApi;->deleteLocation(Landroid/app/Activity; Landroid/os/Bundle; Lcom/tencent/tauth/IUiListener;)V
'http://fusion.qq.com/cgi-bin/qzapps/mapp_lbs_getnear.cgi' used in: Lcom/tencent/open/LocationApi;->a(Landroid/location/Location;)V
'http://fusion.qq.com/cgi-bin/qzapps/unified_jump?appid=%1$s&from=%2$s&isOpenAppID=1' used in: Lcom/tencent/connect/share/QzoneShare;->shareToQzone(Landroid/app/Activity; Landroid/os/Bundle; Lcom/tencent/tauth/IUiListener;)V
'http://fusion.qq.com/cgi-bin/qzapps/unified_jump?appid=%1$s&from=%2$s&isOpenAppID=1' used in: Lcom/tencent/connect/share/QQShare;->shareToQQ(Landroid/app/Activity; Landroid/os/Bundle; Lcom/tencent/tauth/IUiListener;)V
'http://lbs.map.qq.com/loc?c=1' used in: Lcom/tencent/map/b/f$b;->(Lcom/tencent/map/b/f; Ljava/lang/String;)V
'http://ls.map.soso.com/deflect?c=1' used in: Lcom/tencent/map/b/b$b;->run()V
'http://ls.map.soso.com/monitor/monitor.html' used in: Lcom/tencent/map/b/q;->a(Ljava/lang/String; Z)Ljava/net/HttpURLConnection;
'http://lstest.map.soso.com/loc?c=1' used in: Lcom/tencent/map/b/f$b;->(Lcom/tencent/map/b/f; Ljava/lang/String;)V
'http://m.wsq.qq.com/direct?' used in: Lcom/tencent/open/yyb/AppbarAgent;->c(Ljava/lang/String;)Ljava/lang/String;
'http://openmobile.qq.com/oauth2.0/m_authorize?' used in: Lcom/tencent/connect/auth/AuthAgent;->a(Z Lcom/tencent/tauth/IUiListener;)I
'http://openmobile.qq.com/oauth2.0/m_jump_by_version?' used in: Lcom/tencent/connect/common/BaseApi;->getCommonDownloadQQUrl(Ljava/lang/String;)Ljava/lang/String;
'http://pingma.qq.com:80/mstat/report' used in: Lcom/tencent/stat/StatConfig;->()V
'http://pingma.qq.com:80/mstat/report' used in: Lcom/tencent/wxop/stat/c;->()V
'http://qzs.qq.com' used in: Lcom/tencent/open/SocialApiIml;->writeEncryToken(Landroid/content/Context;)V
'http://qzs.qq.com/open/mobile/brag/sdk_brag.html?' used in: Lcom/tencent/open/SocialApiIml;->brag(Landroid/app/Activity; Landroid/os/Bundle; Lcom/tencent/tauth/IUiListener;)V
'http://qzs.qq.com/open/mobile/brag/sdk_brag.html?' used in: Lcom/tencent/open/SocialApiIml;->challenge(Landroid/app/Activity; Landroid/os/Bundle; Lcom/tencent/tauth/IUiListener;)V
'http://qzs.qq.com/open/mobile/invite/sdk_invite.html?' used in: Lcom/tencent/open/SocialApiIml;->invite(Landroid/app/Activity; Landroid/os/Bundle; Lcom/tencent/tauth/IUiListener;)V
'http://qzs.qq.com/open/mobile/jsbridge/demo.htm' used in: Lcom/tencent/open/yyb/AppbarJsBridge;->share(Landroid/net/Uri; I Ljava/lang/String; Ljava/lang/String;)V
'http://qzs.qq.com/open/mobile/login/qzsjump.html?' used in: Lcom/tencent/connect/auth/AuthDialog$LoginWebViewClient;->onReceivedError(Landroid/webkit/WebView; I Ljava/lang/String; Ljava/lang/String;)V
'http://qzs.qq.com/open/mobile/login/qzsjump.html?' used in: Lcom/tencent/connect/common/BaseApi;->handleDownloadLastestQQ(Landroid/app/Activity; Landroid/os/Bundle; Lcom/tencent/tauth/IUiListener;)V
'http://qzs.qq.com/open/mobile/login/qzsjump.html?' used in: Lcom/tencent/connect/auth/AuthDialog;->a()Ljava/lang/String;
'http://qzs.qq.com/open/mobile/not_support.html?' used in: Lcom/tencent/open/SocialApiIml;->a(Landroid/app/Activity; Landroid/os/Bundle; Lcom/tencent/tauth/IUiListener;)V
'http://qzs.qq.com/open/mobile/rate/sdk_rate.html?' used in: Lcom/tencent/open/SocialApiIml;->grade(Landroid/app/Activity; Landroid/os/Bundle; Lcom/tencent/tauth/IUiListener;)V
'http://qzs.qq.com/open/mobile/reactive/sdk_reactive.html?' used in: Lcom/tencent/open/SocialApiIml;->reactive(Landroid/app/Activity; Landroid/os/Bundle; Lcom/tencent/tauth/IUiListener;)V
'http://qzs.qq.com/open/mobile/request/sdk_request.html?' used in: Lcom/tencent/open/SocialApiIml;->a(Landroid/app/Activity; Ljava/lang/String; Landroid/os/Bundle; Lcom/tencent/tauth/IUiListener;)V
'http://qzs.qq.com/open/mobile/sendstory/sdk_sendstory_v1.3.html?' used in: Lcom/tencent/open/SocialApiIml;->story(Landroid/app/Activity; Landroid/os/Bundle; Lcom/tencent/tauth/IUiListener;)V
'http://rqd.uu.qq.com/rqd/sync' used in: Lcom/tencent/bugly/crashreport/common/strategy/StrategyBean;->()V
'http://ue.indoorloc.map.qq.com/' used in: Lc/t/m/g/cy;->a(Landroid/os/Looper;)V
'http://ue.indoorloc.map.qq.com/?wl' used in: Lc/t/m/g/cy$a;->handleMessage(Landroid/os/Message;)V
'http://webpresence.qq.com/getonline?Type=1&' used in: Lcom/tencent/open/wpa/WPA;->getWPAUserOnlineState(Ljava/lang/String; Lcom/tencent/tauth/IUiListener;)V
'http://wspeed.qq.com/w.cgi' used in: Lcom/tencent/open/b/g$4;->run()V
'http://www.e7e7u.com/MobileProviders/PayCallBackUrl?payID=110' used in: LYYProjectJni/JniHelper$1;->run()V
'http://www.myapp.com/forward/a/45592?g_f=990935' used in: Lcom/tencent/open/wpa/WPA;->startWPAConversation(Landroid/app/Activity; Ljava/lang/String; Ljava/lang/String; Ljava/lang/String;)I
'http://www.w3.org/2001/XMLSchema' used in: Lcom/aliyuncs/utils/XmlUtils;->validateXml(Lorg/w3c/dom/Node; Ljava/io/InputStream;)V
'https://api.weixin.qq.com/sns/oauth2/access_token?appid=' used in: Lcom/games/nantongcpgame/wxapi/WXEntryActivity;->onResp(Lcom/tencent/mm/sdk/modelbase/BaseResp;)V
'https://api.weixin.qq.com/sns/oauth2/access_token?appid=' used in: Lcom/honghu/androidqp/wxapi/WXEntryActivity;->onResp(Lcom/tencent/mm/sdk/modelbase/BaseResp;)V
'https://api.weixin.qq.com/sns/userinfo?access_token=' used in: Lcom/honghu/androidqp/wxapi/WXEntryActivity;->AnalyticalOpenID(Ljava/lang/String;)V
'https://api.weixin.qq.com/sns/userinfo?access_token=' used in: Lcom/games/nantongcpgame/wxapi/WXEntryActivity;->AnalyticalOpenID(Ljava/lang/String;)V
'https://cc.map.qq.com/?get_c' used in: Lc/t/m/g/cf$b;->a()Lorg/json/JSONObject;
'https://graph.qq.com/weiyun/check_record' used in: Lcom/tencent/open/weiyun/RecordManager;->checkRecord(Ljava/lang/String; Lcom/tencent/tauth/IUiListener;)V
'https://graph.qq.com/weiyun/create_record' used in: Lcom/tencent/open/weiyun/RecordManager;->createRecord(Ljava/lang/String; Ljava/lang/String; Lcom/tencent/tauth/IUiListener;)V
'https://graph.qq.com/weiyun/delete_music' used in: Lcom/tencent/open/weiyun/FileManager;->()V
'https://graph.qq.com/weiyun/delete_photo' used in: Lcom/tencent/open/weiyun/FileManager;->()V
'https://graph.qq.com/weiyun/delete_record' used in: Lcom/tencent/open/weiyun/RecordManager;->deleteRecord(Ljava/lang/String; Lcom/tencent/tauth/IUiListener;)V
'https://graph.qq.com/weiyun/delete_video' used in: Lcom/tencent/open/weiyun/FileManager;->()V
'https://graph.qq.com/weiyun/download_music' used in: Lcom/tencent/open/weiyun/FileManager$DownLoadImp;->getDownloadUrl(Lcom/tencent/open/weiyun/FileManager$WeiyunFileType;)Ljava/lang/String;
'https://graph.qq.com/weiyun/download_photo' used in: Lcom/tencent/open/weiyun/FileManager$DownLoadImp;->getDownloadUrl(Lcom/tencent/open/weiyun/FileManager$WeiyunFileType;)Ljava/lang/String;
'https://graph.qq.com/weiyun/download_video' used in: Lcom/tencent/open/weiyun/FileManager$DownLoadImp;->getDownloadUrl(Lcom/tencent/open/weiyun/FileManager$WeiyunFileType;)Ljava/lang/String;
'https://graph.qq.com/weiyun/get_music_list' used in: Lcom/tencent/open/weiyun/FileManager;->()V
'https://graph.qq.com/weiyun/get_photo_list' used in: Lcom/tencent/open/weiyun/FileManager;->()V
'https://graph.qq.com/weiyun/get_photo_thumb' used in: Lcom/tencent/open/weiyun/FileManager$DownLoadImp;->getDownloadUrl(Lcom/tencent/open/weiyun/FileManager$WeiyunFileType;)Ljava/lang/String;
'https://graph.qq.com/weiyun/get_record' used in: Lcom/tencent/open/weiyun/RecordManager;->getRecord(Ljava/lang/String; Lcom/tencent/tauth/IUiListener;)V
'https://graph.qq.com/weiyun/get_video_list' used in: Lcom/tencent/open/weiyun/FileManager;->()V
'https://graph.qq.com/weiyun/modify_record' used in: Lcom/tencent/open/weiyun/RecordManager;->modifyRecord(Ljava/lang/String; Ljava/lang/String; Lcom/tencent/tauth/IUiListener;)V
'https://graph.qq.com/weiyun/query_all_record' used in: Lcom/tencent/open/weiyun/RecordManager;->queryAllRecord(Lcom/tencent/tauth/IUiListener;)V
'https://graph.qq.com/weiyun/upload_music' used in: Lcom/tencent/open/weiyun/FileManager$UploadFileImp;->getRequestUrl(Lcom/tencent/open/weiyun/FileManager$WeiyunFileType;)Ljava/lang/String;
'https://graph.qq.com/weiyun/upload_photo' used in: Lcom/tencent/open/weiyun/FileManager$UploadFileImp;->getRequestUrl(Lcom/tencent/open/weiyun/FileManager$WeiyunFileType;)Ljava/lang/String;
'https://graph.qq.com/weiyun/upload_video' used in: Lcom/tencent/open/weiyun/FileManager$UploadFileImp;->getRequestUrl(Lcom/tencent/open/weiyun/FileManager$WeiyunFileType;)Ljava/lang/String;
'https://openmobile.qq.com/' used in: Lcom/tencent/open/utils/HttpUtils;->request(Lcom/tencent/connect/auth/QQToken; Landroid/content/Context; Ljava/lang/String; Landroid/os/Bundle; Ljava/lang/String;)Lorg/json/JSONObject;
'https://openmobile.qq.com/' used in: Lcom/tencent/open/utils/HttpUtils;->upload(Lcom/tencent/connect/auth/QQToken; Landroid/content/Context; Ljava/lang/String; Landroid/os/Bundle;)Lorg/json/JSONObject;
'https://openmobile.qq.com/user/user_login_statis' used in: Lcom/tencent/connect/auth/AuthAgent;->a(Lcom/tencent/tauth/IUiListener;)V
'https://openmobile.qq.com/v3/user/get_info' used in: Lcom/tencent/connect/auth/AuthAgent;->b(Lcom/tencent/tauth/IUiListener;)V
'https://up-hl.3g.qq.com/upreport' used in: Lc/t/m/g/al;->a([B I Z Ljava/lang/Object; Lc/t/m/g/ap$a;)Z
'https://yun-hl.3g.qq.com/halleycloud' used in: Lc/t/m/g/br;->run()V
'javascript:window.JsBridge&&JsBridge.callback(' used in: Lcom/tencent/open/a$a;->a(Ljava/lang/Object;)V
'javascript:window.JsBridge&&JsBridge.callback(' used in: Lcom/tencent/open/a$a;->a()V

中危

检测到4处setSavePassword密码明文存储漏洞。

位置: classes.dex
org.cocos2dx.lib.Cocos2dxWebView;
com.tencent.open.SocialApiIml;
com.tencent.bugly.crashreport.CrashReport$1;
com.tencent.open.yyb.AppbarActivity;

webview的保存密码功能默认设置为true。Webview会明文保存网站上的密码到本地私有文件”databases/webview.db”中。对于可以被root的系统环境或者配合其他漏洞(如webview的同源绕过漏洞),攻击者可以获取到用户密码。
建议:显示设置webView.getSetting().setSavePassword(false)。

参考案例:
www.wooyun.org/bugs/wooyun-2010-021420
www.wooyun.org/bugs/wooyun-2013-020246

参考资料:
http://wolfeye.baidu.com/blog/
www.claudxiao.net/2013/03/android-webview-cache/

低危

检测到1个WebView系统隐藏接口未移除。

位置: classes.dex
com.tencent.bugly.crashreport.CrashReport$1;->setJavaScriptEnabled(Z)V

android webview组件包含3个隐藏的系统接口:searchBoxJavaBridge_,accessibilityTraversal以及accessibility,恶意程序可以利用它们实现远程代码执行。
如果使用了WebView,那么使用WebView.removeJavascriptInterface(String name) API,显示的移除searchBoxJavaBridge_、accessibility、accessibilityTraversal这三个接口。

参考资料:
http://wolfeye.baidu.com/blog/android-webview/
http://blog.csdn.net/u013107656/article/details/51729398
http://wolfeye.baidu.com/blog/android-webview-cve-2014-7224/

低危

检测到2处使用了DES弱加密算法。

位置: classes.dex
'DES/CBC/PKCS5Padding' used in: Lcom/tencent/bugly/proguard/af;->a([B)[B
'DES/CBC/PKCS5Padding' used in: Lcom/tencent/bugly/proguard/af;->b([B)[B

使用弱加密算法会大大增加黑客攻击的概率,黑客可能会破解隐私数据、猜解密钥、中间人攻击等,造成隐私信息的泄漏,甚至造成财产损失。建议使用AES加密算法。

参考资料:
http://drops.wooyun.org/tips/15870
https://developer.android.com/training/articles/keystore.html
http://wolfeye.baidu.com/blog/weak-encryption/
http://www.freebuf.com/articles/terminal/99868.html

低危

检测到1处AES/DES弱加密风险。

位置: classes.dex
Lc/t/m/g/b$a;->a(Ljava/lang/String; Ljava/lang/String; I)Ljava/lang/String;

使用AES/DES/DESede加密算法时,如果使用ECB模式,容易受到攻击风险,造成信息泄露。建议在使用AES/DES/DESede加密算法时,应显示指定使用CBC或CFB加密模式

参考资料:
http://blog.csdn.net/u013107656/article/details/51997957
https://developer.android.com/reference/javax/crypto/Cipher.html
http://drops.wooyun.org/tips/15870
https://developer.android.com/training/articles/keystore.html
http://wolfeye.baidu.com/blog/weak-encryption/
http://www.freebuf.com/articles/terminal/99868.html

低危

非debug包,需要通过打包平台proguard脚本,移除大部分系统输出代码。
经扫描该包仍存在大量系统输出代码,共发现6处系统输出代码.(此处扫描的系统输出代码,是指调用System.out.print*输出的,本应在打包平台移除的系统输出代码.)
各个bundle系统输出代码详情如下:

位置: classes.dex
com.aliyuncs.regions.DescribeEndpointServiceImpl;
com.tencent.open.utils.Util;
org.cocos2dx.cpp.AppActivity$WifiChangeBroadcastReceiver;
com.tencent.bugly.proguard.f;
org.cocos2dx.lib.Cocos2dxHttpURLConnection;
com.aliyuncs.regions.RemoteEndpointsParser;

警告

检测到6处addFlags使用Intent.FLAG_ACTIVITY_NEW_TASK。

位置: classes.dex
com.tencent.mm.sdk.a.a;->a
com.tencent.connect.auth.AuthDialog$LoginWebViewClient;->shouldOverrideUrlLoading
com.tencent.open.TDialog$FbWebViewClient;->shouldOverrideUrlLoading
YYProjectJni.JniHelper;->installApk
com.tencent.open.utils.Util;->a
com.tencent.open.PKDialog;->loadUrlWithBrowser

APP创建Intent传递数据到其他Activity,如果创建的Activity不是在同一个Task中打开,就很可能被其他的Activity劫持读取到Intent内容,跨Task的Activity通过Intent传递敏感信息是不安全的。建议:
尽量避免使用包含FLAG_ACTIVITY_NEW_TASK标志的Intent来传递敏感信息。

参考资料:
http://wolfeye.baidu.com/blog/intent-data-leak

警告

检测到1个导出的组件接收其他app的消息,这些组件会被其他app引用并导致dos攻击。

activity com.games.nantongcpgame.wxapi.WXEntryActivity

建议:
(1)最小化组件暴露。对不会参与跨应用调用的组件建议显示添加android:exported="false"属性。
(2)设置组件访问权限。对provider设置权限,同时将权限的protectionLevel设置为"signature"或"signatureOrSystem"。
(3)组件传输数据验证。对组件之间,特别是跨应用的组件之间的数据传入与返回做验证和增加异常处理,防止恶意调试数据传入,更要防止敏感数据返回。

参考案例:
http://www.wooyun.org/bugs/wooyun-2010-0169746
http://www.wooyun.org/bugs/wooyun-2010-0104965

参考资料:
http://jaq.alibaba.com/blog.htm?spm=0.0.0.0.Wz4OeC&id=55
《Android安全技术解密与防范》

警告

检测1处組件設置了android.intent.category.BROWSABLE属性。
org.cocos2dx.cpp.AppActivity


在AndroidManifest文件中定义了android.intent.category.BROWSABLE属性的组件,可以通过浏览器唤起,这会导致远程命令执行漏洞攻击。建议:
(1)APP中任何接收外部输入数据的地方都是潜在的攻击点,过滤检查来自网页的参数。
(2)不要通过网页传输敏感信息,有的网站为了引导已经登录的用户到APP上使用,会使用脚本动态的生成URL Scheme的参数,其中包括了用户名、密码或者登录态token等敏感信息,让用户打开APP直接就登录了。恶意应用也可以注册相同的URL Sechme来截取这些敏感信息。Android系统会让用户选择使用哪个应用打开链接,但是如果用户不注意,就会使用恶意应用打开,导致敏感信息泄露或者其他风险。

參考案例:
http://www.wooyun.org/bugs/wooyun-2014-073875
http://www.wooyun.org/bugs/wooyun-2014-067798

参考资料:
http://wolfeye.baidu.com/blog/intent-scheme-url/
http://www.jssec.org/dl/android_securecoding_en.pdf
http://drops.wooyun.org/mobile/15202
http://blog.csdn.net/l173864930/article/details/36951805
http://drops.wooyun.org/papers/2893

警告

检测到7潜在的XSS漏洞。

位置: classes.dex
com.tencent.connect.auth.AuthDialog;->d()V
com.tencent.open.yyb.AppbarActivity;->initViews()V
org.cocos2dx.lib.Cocos2dxWebView;->(Landroid.content.Context; I)V
com.tencent.bugly.crashreport.CrashReport$1;->setJavaScriptEnabled(Z)V
com.tencent.open.PKDialog;->initViews()V
com.tencent.open.SocialApiIml;->writeEncryToken(Landroid.content.Context;)V
com.tencent.open.TDialog;->b()V

允许WebView执行JavaScript(setJavaScriptEnabled),有可能导致XSS攻击。建议尽量避免使用。
(1)API等于高高于17的Android系统。出于安全考虑,为了防止Java层的函数被随意调用,Google在4.2版本之后,规定允许被调用的函数必须以@JavascriptInterface进行注解。
(2)API等于高高于17的Android系统。建议不要使用addJavascriptInterface接口,以免带来不必要的安全隐患,如果一定要使用该接口,建议使用证书校验。
u(3)使用removeJavascriptInterface移除Android系统内部的默认内置接口:searchBoxJavaBridge_、accessibility、accessibilityTraversal。

参考案例:
www.wooyun.org/bugs/wooyun-2015-0140708
www.wooyun.org/bugs/wooyun-2016-0188252

参考资料:
http://jaq.alibaba.com/blog.htm?id=48
http://blog.nsfocus.net/android-webview-remote-code-execution-vulnerability-analysis

警告

检测到5处IvParameterSpec的使用。

位置: classes.dex
com.tencent.bugly.proguard.z;->a(I [B [B)[B
com.tencent.bugly.proguard.ae;->a([B)[B
com.tencent.bugly.proguard.ae;->b([B)[B
com.tencent.bugly.proguard.af;->a([B)[B
com.tencent.bugly.proguard.af;->b([B)[B

使用IVParameterSpec函数,如果使用了固定的初始化向量,那么密码文本可预测性高得多,容易受到字典攻击等。建议禁止使用常量初始化矢量构造IVParameterSpec,使用聚安全提供的安全组件。

参考资料:
http://drops.wooyun.org/tips/15870
https://developer.android.com/training/articles/keystore.html
http://wolfeye.baidu.com/blog/weak-encryption/
http://www.freebuf.com/articles/terminal/99868.html

警告

检测到6处使用了加解密算法。密钥处理不当可能会导致信息泄露。

位置: classes.dex
com.tencent.bugly.proguard.z;->a(I [B [B)[B
com.tencent.bugly.proguard.ae;->b([B)[B
com.tencent.bugly.proguard.ae;->a([B)[B
com.aliyuncs.auth.ShaHmac1;->signString(Ljava.lang.String; Ljava.lang.String;)Ljava.lang.String;
com.aliyuncs.auth.ShaHmac256;->signString(Ljava.lang.String; Ljava.lang.String;)Ljava.lang.String;
c.t.m.g.b$a;->a(Ljava.lang.String; Ljava.lang.String; I)Ljava.lang.String;

参考案例:
http://www.wooyun.org/bugs/wooyun-2010-0105766
http://www.wooyun.org/bugs/wooyun-2015-0162907
http://www.wooyun.org/bugs/wooyun-2010-0187287

参考资料:
http://drops.wooyun.org/tips/15870
https://developer.android.com/training/articles/keystore.html


动态扫描发现风险点

风险等级 风险名称

服务端分析

风险等级 风险名称

警告

检测到?处XSS漏洞。
开发中...

警告

检测到?处XSS跨站漏洞。
开发中...

应用证书