漏洞分析

0

高危漏洞

5

中危漏洞

2

低危漏洞

6

警告

文件名 com.rytong.bankbj_371.apk
上传者 digit
文件大小 45.179643630981MB
MD5 78594c450ad3193f28a9458c101cbfae
包名 com.rytong.bankbj
Main Activity com.rytong.app.emp.EMPView
Min SDK 14
Target SDK 19

权限列表

# 名称 说明 提示
0 android.permission.CALL_PHONE 允许应用程序在您不介入的情况下拨打电话。恶意应用程序可借此在您的话费单上产生意外通话费。请注意,此权限不允许应用程序拨打紧急呼救电话。 警告
1 android.permission.READ_SMS 允许应用程序读取您的手机或SIM卡中存储的短信。恶意应用程序可借此读取您的机密信息。 警告
2 android.permission.ACCESS_COARSE_LOCATION 访问大概的位置源(例如蜂窝网络数据库)以确定手机的大概位置(如果可以)。恶意应用程序可借此确定您所处的大概位置。 注意
3 android.permission.ACCESS_FINE_LOCATION 访问精准的位置源,例如手机上的全球定位系统(如果有)。恶意应用程序可能会借此确定您所处的位置,并可能消耗额外的电池电量。 注意
4 android.permission.GET_TASKS 允许应用程序检索有关当前和最近运行的任务的信息。恶意应用程序可借此发现有关其他应用程序的保密信息。 注意
5 android.permission.INSTALL_PACKAGES 允许应用程序安装全新的或更新的Android包。恶意应用程序可能会借此添加其具有任意权限的新应用程序。 注意
6 android.permission.MODIFY_PHONE_STATE 允许应用程序控制设备的电话功能。拥有此权限的应用程序可自行切换网络、打开和关闭无线通信等,而不会通知您。 注意
7 android.permission.READ_CONTACTS 允许应用程序读取您手机上存储的所有联系人(地址)数据。恶意应用程序可借此将您的数据发送给其他人。 注意
8 android.permission.READ_PHONE_STATE 允许应用程序访问设备的手机功能。有此权限的应用程序可确定此手机的号码和序列号,是否正在通话,以及对方的号码等。 注意
9 android.permission.RECEIVE_BOOT_COMPLETED 允许应用程序在系统完成启动后即自行启动。这样会延长手机的启动时间,而且如果应用程序一直运行,会降低手机的整体速度。 注意
10 android.permission.RECEIVE_SMS 允许应用程序接收和处理短信。恶意应用程序可借此监视您的信息,或者将信息删除而不向您显示。 注意
11 android.permission.SYSTEM_ALERT_WINDOW 允许应用程序显示系统警报窗口。恶意应用程序可借此掌控整个手机屏幕。 注意
12 android.permission.ACCESS_NETWORK_STATE 允许应用程序查看所有网络的状态。 提示
13 android.permission.ACCESS_WIFI_STATE 允许应用程序查看有关WLAN状态的信息。 提示
14 android.permission.CAMERA 允许应用程序使用相机拍照,这样应用程序可随时收集进入相机镜头的图像。 提示
15 android.permission.CHANGE_NETWORK_STATE 允许应用程序更改网络连接的状态。 提示
16 android.permission.CHANGE_WIFI_STATE 允许应用程序连接到WLAN接入点以及与WLAN接入点断开连接,并对配置的WLAN网络进行更改。 提示
17 android.permission.FLASHLIGHT 允许应用程序控制闪光灯。 提示
18 android.permission.INTERNET 允许程序访问网络. 提示
19 android.permission.MODIFY_AUDIO_SETTINGS 允许应用程序修改整个系统的音频设置,如音量和路由。 提示
20 android.permission.MOUNT_UNMOUNT_FILESYSTEMS 允许应用程序装载和卸载可移动存储器的文件系统。 提示
21 android.permission.RESTART_PACKAGES 允许程序自己重启或重启其他程序 提示
22 android.permission.VIBRATE 允许应用程序控制振动器。 提示
23 android.permission.WAKE_LOCK 允许应用程序防止手机进入休眠状态。 提示
24 android.permission.WRITE_EXTERNAL_STORAGE 允许应用程序写入SD卡。 提示

四大组件

组件名称

com.rytong.app.emp.EMPView
com.rytong.specialwidget.guild.GuildeActivity
com.rytong.app.emp.HceActivity
com.rytong.bankbj.wxapi.WXEntryActivity
com.chinaums.pppay.WelcomeActivity
com.megvii.idcardlib.IDCardScanActivity
com.rytong.app.emp.ResultActivity
com.rytong.specialwidget.bankcard_lib.BankCardScanActivity
com.i2trust.auth.sdk.activity.FaceDetectActivity
com.hisign.CTID.facelivedetection.CTIDLiveDetectActivity

com.rytong.nfchce.ApduService
com.rytong.luafuction.UpdateService
com.rytong.nfchce.HceClientService
com.rytong.tools.androidpn.client.ExamineNotificationService
com.rytong.track.control.TrackService
com.rytong.floatwindow.FloatingWindowService
com.rytong.push.NotificationService
com.gieseckedevrient.android.pushclient.HcePushService
com.amap.api.location.APSService

com.rytong.push.NotificationReceiverInXml
com.gieseckedevrient.android.cpclientdemoapp.PushBroadCastReceiver
com.gieseckedevrient.android.hceclient.PushRecieveMsgReceiver

第三方库

# 库名 介绍
0 com.google.gson A Java serialization library that can convert Java Objects into JSON and back.
1 com.google.zxing Official ZXing ("Zebra Crossing") project home

静态扫描发现风险点

风险等级 风险名称

中危

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

位置: assets/qmf.apk
com.baidu.location.b.t;

当移动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

中危

检测到1处中间人攻击漏洞。

位置: assets/qmf.apk
com.baidu.location.b.n;->a(Lorg.apache.http.params.HttpParams;)Lorg.apache.http.client.HttpClient;

setHostnameVerifier方法设置ALLOW_ALL_HOSTNAME_VERIFIER,直接接受任意域名,可能造成中间人攻击漏洞。建议:
对SSL证书进行强校验,包括签名CA是否合法、证书是否是自签名、主机域名是否匹配、证书是否过期等。

参考案例:
http://www.wooyun.org/bugs/wooyun-2010-042710
http://www.wooyun.org/bugs/wooyun-2010-052339
http://www.wooyun.org/bugs/wooyun-2016-0190773

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

中危

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

位置: assets/qmf.apk
com.chinaums.pppay.service.NFCService;->onCreate()V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.baidu.location.m;->onServiceConnected(Landroid/content/ComponentName; Landroid/os/IBinder;)V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.baidu.location.a.a;->onDestroy()V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.baidu.location.a.a;->a(Landroid/content/Context;)V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.baidu.location.b.s;->run()V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.baidu.location.b.r;->run()V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.baidu.location.b;->a(Lcom/baidu/location/BDLocation; F)V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
a.a.a.a.a;->a(Ljava/lang/String; Ljava/lang/String;)I==>android.util.Log;->e(Ljava/lang/String; Ljava/lang/String;)I
com.chinaums.pppay.service.NFCService;->onDestroy()V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.baidu.location.b.q;->run()V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.baidu.location.b.p;->run()V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I
com.chinaums.pppay.service.c;->run()V==>android.util.Log;->d(Ljava/lang/String; Ljava/lang/String;)I

中危

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

位置: assets/qmf.apk
'10.0.0.172' used in: Lcom/baidu/location/b/n;->()V
'10.0.0.172' used in: Lcom/baidu/location/b/n;->a(Landroid/content/Context; Landroid/net/NetworkInfo;)I
'10.0.0.200' used in: Lcom/baidu/location/b/n;->a(Landroid/content/Context; Landroid/net/NetworkInfo;)I
'http://%s/%s' used in: Lcom/baidu/location/c/c;->a(Ljava/lang/String; Ljava/lang/String; Ljava/lang/String;)V
'http://144.131.254.53:25614/index.php/mp/eventdetail?cno=' used in: Lcom/chinaums/pppay/WebViewActivity;->f()V
'http://itsdata.map.baidu.com/long-conn-gps/sdk.php' used in: Lcom/baidu/location/e/r;->run()V
'http://loc.map.baidu.com/cc.php' used in: Lcom/baidu/location/e/p;->a()V
'http://loc.map.baidu.com/iofd.php' used in: Lcom/baidu/location/b/l;->()V
'http://loc.map.baidu.com/offline_loc' used in: Lcom/baidu/location/c/h;->()V
'http://loc.map.baidu.com/oqur.php' used in: Lcom/baidu/location/b/l;->()V
'http://loc.map.baidu.com/sdk.php' used in: Lcom/baidu/location/b/l;->()V
'http://loc.map.baidu.com/sdk_ep.php' used in: Lcom/baidu/location/b/l;->()V
'http://loc.map.baidu.com/statloc' used in: Lcom/baidu/location/b/w;->a()V
'http://loc.map.baidu.com/tcu.php' used in: Lcom/baidu/location/b/l;->()V
'http://loc.map.baidu.com/user_err.php' used in: Lcom/baidu/location/b/l;->()V
'http://loc.map.baidu.com/wloc' used in: Lcom/baidu/location/b/l;->()V
'http://m.happyums.com/index.php/mp/eventdetail?cno=' used in: Lcom/chinaums/pppay/WebViewActivity;->f()V
'http://www.chinaums.com/Info/2667695' used in: Lcom/chinaums/pppay/HelpActivity;->f()V
'http://www.chinaums.com/Info/2667775' used in: Lcom/chinaums/pppay/HelpActivity;->f()V
'http://www.chinaums.com/static/kjzf.html' used in: Lcom/chinaums/pppay/HelpActivity;->f()V
'https://sapi.skyhookwireless.com/wps2/location' used in: Lcom/baidu/location/b/l;->()V

中危

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

位置: assets/qmf.apk
com.chinaums.pppay.WebViewActivity;
com.chinaums.pppay.HelpActivity;

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/

低危

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

位置: assets/qmf.apk
com.chinaums.pppay.WebViewActivity;->e()V
com.chinaums.pppay.HelpActivity;->e()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/

低危

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

位置: assets/qmf.apk
Lcom/chinaums/pppay/b/d;->b([B [B)[B

使用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

警告

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

位置: assets/qmf.apk
com.chinaums.pppay.quickpay.service.QuickPayService;->b
com.chinaums.pppay.dt;->a
com.chinaums.pppay.au;->a

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

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

警告

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

activity com.hisign.CTID.facelivedetection.CTIDLiveDetectActivity
receiver com.gieseckedevrient.android.cpclientdemoapp.PushBroadCastReceiver
receiver com.gieseckedevrient.android.hceclient.PushRecieveMsgReceiver

建议:
(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属性。
com.rytong.app.emp.EMPView


在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

警告

检测到1潜在的XSS漏洞。

位置: assets/qmf.apk
com.chinaums.pppay.WebViewActivity;->e()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

警告

检测到2处IvParameterSpec的使用。

位置: assets/qmf.apk
com.baidu.location.f.b.a;->a(Ljava.lang.String; Ljava.lang.String; [B)[B
com.baidu.location.f.b.a;->b(Ljava.lang.String; Ljava.lang.String; [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

警告

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

位置: assets/qmf.apk
com.baidu.location.f.b.a;->b(Ljava.lang.String; Ljava.lang.String; [B)[B
com.baidu.location.f.b.a;->a(Ljava.lang.String; Ljava.lang.String; [B)[B

参考案例:
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跨站漏洞。
开发中...

应用证书