0

高危漏洞

2

中危漏洞

0

低危漏洞

5

警告

文件名 loan-ppd-7.12.8.apk
上传者 xytest
文件大小 20.885580062866MB
MD5 be4620175909a469c6962af6aaac93a2
包名 com.ppdai.loan
Main Activity com.ppdai.loan.business.splash.PPDSplashActivity
Min SDK 17
Target SDK 26

权限列表

# 名称 说明 提示
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.BLUETOOTH 允许应用程序查看本地蓝牙手机的配置,以及建立或接受与配对设备的连接。 注意
5 android.permission.BROADCAST_STICKY 允许应用程序发送顽固广播,这些广播在结束后仍会保留。恶意应用程序可能会借此使手机耗用太多内存,从而降低其速度或稳定性。 注意
6 android.permission.GET_TASKS 允许应用程序检索有关当前和最近运行的任务的信息。恶意应用程序可借此发现有关其他应用程序的保密信息。 注意
7 android.permission.READ_CONTACTS 允许应用程序读取您手机上存储的所有联系人(地址)数据。恶意应用程序可借此将您的数据发送给其他人。 注意
8 android.permission.READ_PHONE_STATE 允许应用程序访问设备的手机功能。有此权限的应用程序可确定此手机的号码和序列号,是否正在通话,以及对方的号码等。 注意
9 android.permission.RECEIVE_BOOT_COMPLETED 允许应用程序在系统完成启动后即自行启动。这样会延长手机的启动时间,而且如果应用程序一直运行,会降低手机的整体速度。 注意
10 android.permission.SYSTEM_ALERT_WINDOW 允许应用程序显示系统警报窗口。恶意应用程序可借此掌控整个手机屏幕。 注意
11 android.permission.WRITE_SETTINGS 允许应用程序修改系统设置方面的数据。恶意应用程序可借此破坏您的系统配置。 注意
12 android.permission.ACCESS_NETWORK_STATE 允许应用程序查看所有网络的状态。 提示
13 android.permission.ACCESS_WIFI_STATE 允许应用程序查看有关WLAN状态的信息。 提示
14 android.permission.BATTERY_STATS 允许修改收集的电池使用情况统计信息。普通应用程序不能使用此权限。 提示
15 android.permission.BLUETOOTH_ADMIN 允许应用程序配置本地蓝牙手机,以及发现远程设备并与其配对。 提示
16 android.permission.CAMERA 允许应用程序使用相机拍照,这样应用程序可随时收集进入相机镜头的图像。 提示
17 android.permission.CHANGE_NETWORK_STATE 允许应用程序更改网络连接的状态。 提示
18 android.permission.CHANGE_WIFI_STATE 允许应用程序连接到WLAN接入点以及与WLAN接入点断开连接,并对配置的WLAN网络进行更改。 提示
19 android.permission.DISABLE_KEYGUARD 允许应用程序停用键锁和任何关联的密码安全设置。例如,在手机上接听电话时停用键锁,在通话结束后重新启用键锁。 提示
20 android.permission.FLASHLIGHT 允许应用程序控制闪光灯。 提示
21 android.permission.GET_ACCOUNTS 允许应用程序获取手机已知的帐户列表。 提示
22 android.permission.INTERNET 允许程序访问网络. 提示
23 android.permission.KILL_BACKGROUND_PROCESSES 无论内存资源是否紧张,都允许应用程序结束其他应用程序的后台进程。 提示
24 android.permission.MANAGE_ACCOUNTS 允许应用程序执行添加、删除帐户及删除其密码之类的操作。 提示
25 android.permission.MOUNT_UNMOUNT_FILESYSTEMS 允许应用程序装载和卸载可移动存储器的文件系统。 提示
26 android.permission.READ_LOGS 允许应用程序从系统的各日志文件中读取信息。这样应用程序可以发现您的手机使用情况,但这些信息不应包含任何个人信息或保密信息。 提示
27 android.permission.RESTART_PACKAGES 允许程序自己重启或重启其他程序 提示
28 android.permission.USE_CREDENTIALS 允许应用程序请求身份验证标记。 提示
29 android.permission.VIBRATE 允许应用程序控制振动器。 提示
30 android.permission.WAKE_LOCK 允许应用程序防止手机进入休眠状态。 提示
31 android.permission.WRITE_EXTERNAL_STORAGE 允许应用程序写入SD卡。 提示

四大组件

组件名称

com.ppdai.loan.business.speed.ui.activity.RepaymentListActivity
com.ppdai.loan.business.speed.ui.activity.RepaymentInAdvanceActivity
com.ppdai.loan.business.speed.ui.activity.RepaymentPaySubmitActivity
com.ppdai.loan.business.speed.ui.activity.RepaymentPaySubmitWithInputActivity
com.ppdai.loan.business.speed.ui.activity.RepaymentPayResultActivity
com.ppdai.loan.business.speed.ui.activity.RepaymentPlanActivity
com.ppdai.loan.business.home.account.PPDLoanLimitActivity
com.ppdai.loan.business.home.account.PPDLoanRecordActivity
com.ppdai.loan.business.tender.PPDTenderSJSHTipActivity
com.ppdai.loan.business.splash.PPDSplashActivity
com.ppdai.loan.business.borrow.borrowingprogress.PPDBorrowingProgressActivity
com.ppdai.loan.business.withdraw.AccountWithdrawalsActivity
com.ppdai.loan.business.repayment.confirm.PPDRepayConfirmActivity
com.ppdai.loan.business.repayment.repaymentlist.PPDWaitingRepaymentListActivity
com.ppdai.loan.business.repayment.repaycommit.PPDRepayCommitActivity
com.ppdai.loan.business.repayment.plan.PPDRepaymentPlanActivity
com.ppdai.loan.business.repayment.RepaymentSuccessActivity
com.ppdai.loan.auth.portrait.ImageCaptureActivity
com.ppdai.loan.business.repayment.RepayingActivity
com.ppdai.loan.business.repayment.AheadRepaymentSuccesActivity
com.ppdai.sdk.faceauth.ui.LivenessActivity
com.ppdai.loan.business.message.NotificationListActivity
com.ppdai.loan.business.message.NotificationDetailActivity
com.ppdai.loan.business.snapshot.PPDSnapshotFeedbackActivity
com.ppdai.loan.business.account.SettingsActivity
com.ppdai.loan.business.limit.contact.PPDImportantContactsActivity
com.ppdai.loan.business.feedback.DiscontentsListsActivity
com.ppdai.loan.business.feedback.FeedBackThanksActivity
com.ppdai.loan.business.feedback.FeedBackActivity
com.ppdai.loan.business.pay.PPDBankCardActivity
com.ppdai.loan.business.splash.PPDRecoveryActivity
com.ppdai.loan.business.cityloan.realname.PPDOcrScanActivity
com.ppdai.loan.business.cityloan.realname.OCRScanInstructionActivity
com.ppdai.loan.webui.PPDWebUIActivity
com.ppdai.loan.business.test.PPDMultiplScreenSupportTestActivity
com.ppdai.loan.business.home.PPDHomeActivity
com.ppdai.loan.business.creditcard.BindCreditCardActivity
com.ppdai.loan.business.amount.evaluate.PPDAmountEvaluateProcessActivity
com.ppdai.loan.business.limit.realname.PPDRealNameAuthActivity
com.ppdai.loan.business.limit.realname.PPDUserIDAuthActivity
com.ppdai.loan.business.limit.userinfo.PPDUserInfoAuthActivity
com.ppdai.loan.business.limit.userinfo.PPDOldUserInfoAuthActivity
com.ppdai.loan.business.amount.raise.PPDNewRaiseAmountActivity
com.ppdai.loan.business.amount.raise.PPDRaiseAmountActivityV3
com.ppdai.loan.business.amount.raise.PPDNewAuthCommitActivity
com.ppdai.loan.business.amount.moreauth.PPDMoreAuthActivity
com.ppdai.loan.business.limit.bindcard.PPDBindBankCardActivity
com.ppdai.loan.business.limit.bindcard.PPDOldBindBankCardActivity
com.ppdai.loan.auth.mobile.PPDMobileAuthActivity
com.ppdai.loan.business.cityloan.common.SingleSelectActivity
com.ppdai.loan.business.limit.replenishinfo.PPDReplenishInfoActivity
com.ppdai.loan.business.limit.replenishinfo.selectoption.PPDOptionSelectActivity
com.ppdai.loan.business.limit.replenishinfo.addr.PPDAddrSelectActivity
com.ppdai.loan.business.tender.PPDCouponSelectActivity
com.ppdai.loan.network.NetCanceledActivity
com.ppdai.loan.business.limit.contact.PPDEmergencyContactActivity
com.ppdai.loan.business.limit.face.PPDFaceAuthActivity
com.ppdai.loan.business.limit.idauth.PPDIdAuthActivity
com.ppdai.loan.business.limit.idauth.PPDRateIdCardAuthActivity
com.ppdai.loan.business.amount.evaluate.PPDAmountEvaluateResultActivity
com.ppdai.loan.business.yxd.ocr.PPDYXDOCRAuthActivity
com.ppdai.loan.business.yxd.realname.PPDYXDRealNameAuthActivity
com.ppdai.loan.business.yxd.completeinfo.PPDYXDCompleteInfoActivity
com.ppdai.loan.wxapi.WXEntryActivity
com.ppdai.loan.business.snapshot.PictureActivity
com.ppdai.loan.business.newpassport.PPDNewPassportActivity
com.ppdai.loan.business.newpassport.onekeylogin.PPDOneKeyLoginActivity
com.ppdai.loan.common.ocr.PPDBankCardScanActivity
com.ppdai.loan.business.amount.evaluate.PPDNewAmountEvaluateResultActivity
com.ppdai.loan.business.amount.raise.PPDAmountRecordActivity
com.ppdai.loan.auth.face.PPDNewFaceAuthActivity
com.ppdai.loan.business.city.list.CityChooseActivity
com.ppdai.loan.business.city.cascade.CityCascadeActivity
com.ppdai.loan.business.limit.userinfo.PPDPostalAddressActivity
com.ppdai.loan.sdk.permission.core.PermissionActivity
com.tencent.tauth.AuthActivity
com.tencent.connect.common.AssistActivity
com.linkface.idcard.IDCardActivity
com.linkface.bankcard.BankCardActivity
com.linkface.card.ConfirmPictureActivity
com.ppdai.sdk.passport.PassportContractWebActivity
com.sdk.mobile.ui.OauthActivity
com.sdk.base.module.permission.PermissionActivity
com.cmic.sso.sdk.activity.OAuthActivity
com.cmic.sso.sdk.activity.LoginAuthActivity
com.chuanglan.shanyan_sdk.view.ShanYanOneKeyActivity
com.chuanglan.shanyan_sdk.view.CTCCPrivacyProtocolActivity
com.ppdai.sdk.test.WebViewTestActivity
com.ppdai.sdk.test.WebUITestActivity
com.ppdai.sdk.ppdpush.PushReceiveActivity
com.ppdai.sdk.ppdpush.xiaomi.PermissionActivity
com.huawei.android.hms.agent.common.HMSAgentActivity
com.huawei.hms.activity.BridgeActivity
com.huawei.updatesdk.service.otaupdate.AppUpdateActivity
com.huawei.updatesdk.support.pm.PackageInstallerActivity
com.vivo.push.sdk.LinkProxyClientActivity
com.ppdai.sdk.card.mvp.ui.activity.RootActivity
com.ppdai.sdk.card.mvp.ui.activity.PayCodeActivity
com.ppdai.sdk.card.mvp.ui.activity.ValidateIdentifyActivity
com.ppdai.sdk.card.mvp.ui.activity.ComplianceActivity
com.ppdai.sdk.card.mvp.ui.activity.PayResultActivity
com.ppdai.sdk.card.mvp.ui.activity.InitActivity
com.ppdai.sdk.card.mvp.ui.activity.BindBankCardActivity
com.ppdai.sdk.card.mvp.ui.activity.WebViewActivity
com.ppdai.sdk.card.mvp.ui.activity.SuggestActivity
com.ppdai.sdk.card.mvp.ui.activity.CardStateActivity
com.soundcloud.android.crop.CropImageActivity
com.tencent.android.tpush.XGPushActivity
com.igexin.sdk.PushActivity
com.igexin.sdk.GActivity

com.xiaomi.push.service.XMPushService
com.xiaomi.push.service.XMJobService
com.xiaomi.mipush.sdk.PushMessageHandler
com.xiaomi.mipush.sdk.MessageHandleService
com.huawei.updatesdk.service.deamon.download.DownloadService
com.ppdai.sdk.ppdpush.getui.PPDGTIntentService
com.ppdai.sdk.ppdpush.getui.PPDGTPushService
com.vivo.push.sdk.service.CommandClientService
com.ppdai.sdk.card.service.PayResultPollingService
com.ppdai.sdk.card.service.OpenAccountPollingService
com.tencent.android.tpush.rpc.XGRemoteService
com.tencent.android.tpush.service.XGPushServiceV3
com.igexin.sdk.PushService
com.taobao.accs.ChannelService
com.taobao.accs.data.MsgDistributeService
com.taobao.accs.internal.AccsJobService
com.taobao.accs.ChannelService$KernelService
org.android.agoo.accs.AgooService
com.umeng.message.UmengIntentService
com.umeng.message.XiaomiIntentService
com.umeng.message.UmengMessageIntentReceiverService
com.umeng.message.UmengMessageCallbackHandlerService
com.umeng.message.UmengDownloadResourceService

com.ppdai.loan.common.receiver.CompleteReceiver
com.ppdai.sdk.ppdpush.xinge.XGPushReceiver
com.xiaomi.push.service.receivers.NetworkStatusReceiver
com.xiaomi.push.service.receivers.PingReceiver
com.ppdai.sdk.ppdpush.xiaomi.XiaoMiReceiver
com.ppdai.sdk.ppdpush.huawei.HWPushReceiver
com.huawei.hms.support.api.push.PushEventReceiver
com.ppdai.sdk.ppdpush.vivo.PushMessageReceiverImpl
com.tencent.android.tpush.XGPushReceiver
com.igexin.sdk.PushReceiver
com.taobao.accs.EventReceiver
com.taobao.accs.ServiceReceiver
com.taobao.agoo.AgooCommondReceiver
com.umeng.message.NotificationProxyBroadcastReceiver

com.ppdai.loan.utils.PPDFileProvider
com.sensorsdata.analytics.android.sdk.SensorsDataContentProvider
com.huawei.hms.update.provider.UpdateProvider
com.huawei.updatesdk.fileprovider.UpdateSdkFileProvider
android.support.v4.content.FileProvider
com.tencent.android.tpush.XGPushProvider
com.tencent.android.tpush.SettingsContentProvider
com.tencent.mid.api.MidProvider
com.umeng.message.provider.MessageProvider

第三方库

# 库名 介绍
0 android.support.multidex DEPRECATED
1 android.support.transition A backport of the new Transitions API for Android.

静态扫描发现风险点

风险等级 风险名称

中危

检测到3个未移除的敏感Test或Debug组件

com.ppdai.loan.business.test.PPDMultiplScreenSupportTestActivity
com.ppdai.sdk.test.WebViewTestActivity
com.ppdai.sdk.test.WebUITestActivity

建议:
在正式发布app前移除敏感的Test或Debug组件

中危

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

位置: classes.dex
'http://schemas.android.com/apk/res/android' used in: Landroid/support/v4/content/res/b;->a(Lorg/xmlpull/v1/XmlPullParser; Ljava/lang/String;)Z

警告

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

activity com.ppdai.loan.wxapi.WXEntryActivity
activity com.tencent.tauth.AuthActivity
activity com.ppdai.sdk.ppdpush.PushReceiveActivity
activity com.soundcloud.android.crop.CropImageActivity
activity com.igexin.sdk.GActivity
service com.xiaomi.mipush.sdk.PushMessageHandler
service com.ppdai.sdk.ppdpush.getui.PPDGTPushService
service com.vivo.push.sdk.service.CommandClientService
service com.tencent.android.tpush.rpc.XGRemoteService
service com.tencent.android.tpush.service.XGPushServiceV3
service com.igexin.sdk.PushService
service com.taobao.accs.ChannelService
service com.taobao.accs.data.MsgDistributeService
service org.android.agoo.accs.AgooService
service com.umeng.message.UmengIntentService
service com.umeng.message.XiaomiIntentService
service com.umeng.message.UmengMessageIntentReceiverService
receiver com.ppdai.loan.common.receiver.CompleteReceiver
receiver com.ppdai.sdk.ppdpush.xinge.XGPushReceiver
receiver com.xiaomi.push.service.receivers.NetworkStatusReceiver
receiver com.ppdai.sdk.ppdpush.xiaomi.XiaoMiReceiver
receiver com.ppdai.sdk.ppdpush.huawei.HWPushReceiver
receiver com.huawei.hms.support.api.push.PushEventReceiver
receiver com.ppdai.sdk.ppdpush.vivo.PushMessageReceiverImpl
receiver com.tencent.android.tpush.XGPushReceiver
receiver com.igexin.sdk.PushReceiver
receiver com.taobao.accs.EventReceiver
receiver com.taobao.accs.ServiceReceiver
receiver com.taobao.agoo.AgooCommondReceiver

建议:
(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安全技术解密与防范》

警告

检测到8个导出的隐式Service组件。
service com.tencent.android.tpush.rpc.XGRemoteService
service com.igexin.sdk.PushService
service com.taobao.accs.ChannelService
service com.taobao.accs.data.MsgDistributeService
service org.android.agoo.accs.AgooService
service com.umeng.message.UmengIntentService
service com.umeng.message.XiaomiIntentService
service com.umeng.message.UmengMessageIntentReceiverService

建议:为了确保应用的安全性,启动Service时,请始终使用显式Intent,且不要为服务声明Intent过滤器。使用隐式Intent启动服务存在安全隐患,因为您无法确定哪些服务将响应Intent,且用户无法看到哪些服务已启动。从Android 5.0(API 级别 21)开始,如果使用隐式 Intent 调用 bindService(),系统会抛出异常。

参考资料:
https://developer.android.com/guide/components/intents-filters.html#Types

警告

检测3处組件設置了android.intent.category.BROWSABLE属性。
com.ppdai.loan.business.splash.PPDSplashActivity
com.tencent.tauth.AuthActivity
com.ppdai.sdk.ppdpush.PushReceiveActivity


在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

警告

检测到4处provider的grantUriPermissions设置为true。
com.ppdai.loan.utils.PPDFileProvider
com.huawei.hms.update.provider.UpdateProvider
com.huawei.updatesdk.fileprovider.UpdateSdkFileProvider
android.support.v4.content.FileProvider


grant-uri-permission若设置为true,可被其它程序员通过uri访问到content provider的内容,容易造成信息泄露。

参考资料:
https://security.tencent.com/index.php/blog/msg/6

警告

这个app应该声明permission的"android:protectionLevel"属性值为"signature"或者"signatureOrSystem",保证其他app无法注册或者从这个app接收消息。有安全隐患的permission如下:
android.permission.WRITE_SETTINGS normal
getui.permission.GetuiService.com.ppdai.loan normal

动态扫描发现风险点

风险等级 风险名称

服务端分析

风险等级 风险名称

警告

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

警告

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

应用证书