安全分析报告: RM新时代 v5.4.0123

安全分数


安全分数 45/100

风险评级


等级

  1. A
  2. B
  3. C
  4. F

严重性分布 (%)


隐私风险

3

用户/设备跟踪器


调研结果

高危 5
中危 19
信息 3
安全 2
关注 3

高危 使用弱加密算法

使用弱加密算法
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x04g-Testing-Cryptography.md#identifying-insecure-andor-deprecated-cryptographic-algorithms-mstg-crypto-4

Files:
com/tencent/msdk/dns/core/n/b/a.java, line(s) 15,29

高危 应用程序使用带PKCS5/PKCS7填充的加密模式CBC。此配置容易受到填充oracle攻击。

应用程序使用带PKCS5/PKCS7填充的加密模式CBC。此配置容易受到填充oracle攻击。
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x04g-Testing-Cryptography.md#identifying-insecure-andor-deprecated-cryptographic-algorithms-mstg-crypto-4

Files:
com/qsf/taogin/businessModel/FingerprintIdentify.java, line(s) 103
com/qsf/taogin/utility/AESTool.java, line(s) 21,28
com/tencent/msdk/dns/core/n/a/a.java, line(s) 25,58

高危 默认情况下,调用Cipher.getInstance("AES")将返回AES ECB模式。众所周知,ECB模式很弱,因为它导致相同明文块的密文相同

默认情况下,调用Cipher.getInstance("AES")将返回AES ECB模式。众所周知,ECB模式很弱,因为它导致相同明文块的密文相同
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x04g-Testing-Cryptography.md#weak-block-cipher-mode

Files:
com/qsf/taogin/utility/AES.java, line(s) 25,57

高危 SSL的不安全实现。信任所有证书或接受自签名证书是一个关键的安全漏洞。此应用程序易受MITM攻击

SSL的不安全实现。信任所有证书或接受自签名证书是一个关键的安全漏洞。此应用程序易受MITM攻击
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x05g-Testing-Network-Communication.md#android-network-apis

Files:
com/qsf/taogin/rule/vi/RuleSubFragment.java, line(s) 31,32,33,34,35,36,4

中危 应用程序数据可以被备份

[android:allowBackup=true]
这个标志允许任何人通过adb备份你的应用程序数据。它允许已经启用了USB调试的用户从设备上复制应用程序数据。

中危 Service (com.qsf.taogin.service.UPushNotificationService) 受权限保护, 但是应该检查权限的保护级别。

Permission: android.permission.BIND_JOB_SERVICE [android:exported=true]
发现一个 Service被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。

中危 Activity设置了TaskAffinity属性

(com.umeng.message.notify.UPushMessageNotifyActivity)
如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名

中危 Activity设置了TaskAffinity属性

(com.umeng.message.UMessageNotifyActivity)
如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名

中危 Activity-Alias (com.umeng.message.UMessageNotifyActivity) 未被保护。

[android:exported=true]
发现 Activity-Alias与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。

中危 Broadcast Receiver (com.taobao.accs.EventReceiver) 未被保护。

[android:exported=true]
发现 Broadcast Receiver与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。

中危 文件可能包含硬编码的敏感信息,如用户名、密码、密钥等

文件可能包含硬编码的敏感信息,如用户名、密码、密钥等
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x05d-Testing-Data-Storage.md#checking-memory-for-sensitive-data-mstg-storage-10

Files:
com/qsf/taogin/CustomServiceDonateActivity.java, line(s) 112
com/qsf/taogin/account/MemberInfoItem.java, line(s) 130,130
com/qsf/taogin/betRanking/RankingMyRewardDetailsResponse.java, line(s) 195
com/qsf/taogin/betRanking/RankingPageResponse.java, line(s) 324
com/qsf/taogin/bigMatch/data/JavaLiveInfo.java, line(s) 58
com/qsf/taogin/bigMatch/data/MatchPublish.java, line(s) 56
com/qsf/taogin/market/gameBet/GameBetResultItem.java, line(s) 160
com/qsf/taogin/market/gameBet/GameBetV2ResultItem.java, line(s) 114
com/qsf/taogin/member/data/Data.java, line(s) 68
com/qsf/taogin/member/data/LoginAppResponse.java, line(s) 99
com/qsf/taogin/member/data/LoginResponse.java, line(s) 54
com/qsf/taogin/model/BetList.java, line(s) 157
com/qsf/taogin/model/CanRegisterResponse.java, line(s) 40
com/qsf/taogin/model/MemberLevelResponse.java, line(s) 228
com/qsf/taogin/model/MemberList.java, line(s) 77
com/qsf/taogin/model/MemberLoginAppResponse.java, line(s) 161
com/qsf/taogin/model/MemberLoginResponse.java, line(s) 61
com/qsf/taogin/model/MemberP2PFunctionResponse.java, line(s) 98
com/qsf/taogin/model/MicroBusinessNotPostedListDetailResponse.java, line(s) 94
com/qsf/taogin/model/MicroBusinessNotPostedListResponse.java, line(s) 237
com/qsf/taogin/model/MicroDepositWithdrawResponse.java, line(s) 124
com/qsf/taogin/model/MicroNetResponse/GetBetListDetailResponse.java, line(s) 206
com/qsf/taogin/model/MicroNetResponse/GetBetListDetailV2Response.java, line(s) 513
com/qsf/taogin/model/MicroNetResponse/GetContributionBetDetailResponse.java, line(s) 383,383
com/qsf/taogin/model/MicroNetResponse/GetContributionDetailResponse.java, line(s) 131
com/qsf/taogin/model/MicroNetResponse/GetLevelOneMemberRewardResponse.java, line(s) 182
com/qsf/taogin/model/MicroNetResponse/GetMemberInfoResponse.java, line(s) 166
com/qsf/taogin/model/MicroNetResponse/GetRewardDetailByUserResponse.java, line(s) 253
com/qsf/taogin/model/MicroNewRegistrationResponse.java, line(s) 163
com/qsf/taogin/model/RuleSetResponse.java, line(s) 342
com/qsf/taogin/model/TGMemberInfoResponse.java, line(s) 203,203
com/qsf/taogin/model/UsernameListResponse.java, line(s) 48
com/qsf/taogin/model/getUserReportDetail/ListData.java, line(s) 255
com/qsf/taogin/websocket/ChatWebSocketManager.java, line(s) 299
com/qsf/taogin/websocket/WebSocketManager.java, line(s) 140,193
com/tencent/msdk/dns/core/rest/share/e.java, line(s) 21
org/android/spdy/SpdyProtocol.java, line(s) 43

中危 MD5是已知存在哈希冲突的弱哈希

MD5是已知存在哈希冲突的弱哈希
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x04g-Testing-Cryptography.md#identifying-insecure-andor-deprecated-cryptographic-algorithms-mstg-crypto-4

Files:
com/danikula/videocache/ProxyCacheUtils.java, line(s) 45
com/qsf/taogin/jclModule/RareFunction.java, line(s) 40
ezy/boost/update/UpdateUtil.java, line(s) 92

中危 SHA-1是已知存在哈希冲突的弱哈希

SHA-1是已知存在哈希冲突的弱哈希
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x04g-Testing-Cryptography.md#identifying-insecure-andor-deprecated-cryptographic-algorithms-mstg-crypto-4

Files:
io/sentry/util/StringUtils.java, line(s) 27
org/java_websocket/drafts/Draft_6455.java, line(s) 183
org/repackage/a/a/a/a/c.java, line(s) 95

中危 应用程序可以读取/写入外部存储器,任何应用程序都可以读取写入外部存储器的数据

应用程序可以读取/写入外部存储器,任何应用程序都可以读取写入外部存储器的数据
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x05d-Testing-Data-Storage.md#external-storage

Files:
com/danikula/videocache/h.java, line(s) 16,33
com/orhanobut/logger/CsvFormatStrategy.java, line(s) 41
com/qsf/taogin/account/alipay/CompanyPayFragment.java, line(s) 402
com/qsf/taogin/account/pay3Way/Pay3Way_Fragment.java, line(s) 505
com/qsf/taogin/account/view/USDTPayFragment.java, line(s) 735
com/qsf/taogin/utility/DataCleanManager.java, line(s) 10
com/qsf/taogin/utility/RealPathHelper.java, line(s) 117,125
ezy/boost/update/UpdateManager.java, line(s) 123
ezy/boost/update/b.java, line(s) 127
io/sentry/android/core/c0.java, line(s) 266,154

中危 应用程序使用不安全的随机数生成器

应用程序使用不安全的随机数生成器
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x04g-Testing-Cryptography.md#weak-random-number-generators

Files:
com/qsf/taogin/service/UPushNotificationHelper.java, line(s) 25
com/scwang/smartrefresh/header/FunGameBattleCityHeader.java, line(s) 12
com/scwang/smartrefresh/header/TaurusHeader.java, line(s) 23
com/scwang/smartrefresh/header/storehouse/StoreHouseBarItem.java, line(s) 8
com/tencent/msdk/dns/d/d.java, line(s) 3
org/android/spdy/SpdyBytePool.java, line(s) 3

中危 应用程序创建临时文件。敏感信息永远不应该被写进临时文件

应用程序创建临时文件。敏感信息永远不应该被写进临时文件


Files:
com/qsf/taogin/TGCustomerServiceActivity.java, line(s) 70,74
com/theartofdev/edmodo/cropper/CropImageActivity.java, line(s) 209
com/theartofdev/edmodo/cropper/b.java, line(s) 93

中危 不安全的Web视图实现。可能存在WebView任意代码执行漏洞

不安全的Web视图实现。可能存在WebView任意代码执行漏洞
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x05h-Testing-Platform-Interaction.md#testing-javascript-execution-in-webviews-mstg-platform-5

Files:
com/qsf/taogin/TGCustomerServiceActivity.java, line(s) 245,234
com/qsf/taogin/thirdPartyGaming/ThirdPartyPlayFragment.java, line(s) 458,448

中危 可能存在跨域漏洞。在 WebView 中启用从 URL 访问文件可能会泄漏文件系统中的敏感信息

可能存在跨域漏洞。在 WebView 中启用从 URL 访问文件可能会泄漏文件系统中的敏感信息
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x05h-Testing-Platform-Interaction.md#static-analysis-6

Files:
com/qsf/taogin/TGCustomerServiceActivity.java, line(s) 237,234

中危 应用程序使用SQLite数据库并执行原始SQL查询。原始SQL查询中不受信任的用户输入可能会导致SQL注入。敏感信息也应加密并写入数据库

应用程序使用SQLite数据库并执行原始SQL查询。原始SQL查询中不受信任的用户输入可能会导致SQL注入。敏感信息也应加密并写入数据库
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x04h-Testing-Code-Quality.md#injection-flaws-mstg-arch-2-and-mstg-platform-2

Files:
com/danikula/videocache/sourcestorage/a.java, line(s) 6,7,78
com/tencent/msdk/dns/core/m/b/a.java, line(s) 6,7,261,271

中危 IP地址泄露

IP地址泄露


Files:
com/danikula/videocache/HttpProxyCacheServer.java, line(s) 110,268,272,278
com/qsf/taogin/api/TGapiCallback.java, line(s) 2689
com/tencent/msdk/dns/a.java, line(s) 55,55
org/android/spdy/SpdyRequest.java, line(s) 25,160,179,202,227,247,273,292,315,340

中危 此应用程序可能会请求root(超级用户)权限

此应用程序可能会请求root(超级用户)权限
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x05j-Testing-Resiliency-Against-Reverse-Engineering.md#testing-root-detection-mstg-resilience-1

Files:
io/sentry/android/core/internal/util/RootChecker.java, line(s) 40,40,40,40,40

中危 应用程序包含隐私跟踪程序

此应用程序有多个3隐私跟踪程序。跟踪器可以跟踪设备或用户,是终端用户的隐私问题。

中危 此应用可能包含硬编码机密信息

从应用程序中识别出以下机密确保这些不是机密或私人信息
"dialog_auth_method_mobile" : "Mobile"
"review_pass" : "Pass"
"registered_password" : "Withdrawal
Password"
"STR_KEY" : "STR_FROM_RESOURCE_VALUE"
"dialog_auth_method_mail" : "Email"
"dialog_auth_method_mail_common" : "Email:"
"user_name" : "Username"
"guide_user_name" : "MikeMikeMike..."
E3353787A66216BAD7A3C87950C2779DCBD9AC9CEB043B3BB10A5D2DAC06032E41CB48F54FDF0B881EC1FE19607746C5
E3353787A66216BAD7A3C87950C2779D3555E6F514268CE75D1BD5CA38DA6BB341CB48F54FDF0B881EC1FE19607746C5
E3353787A66216BAD7A3C87950C2779DF8F26624C377CDF0D9D35A6E87438CCE41CB48F54FDF0B881EC1FE19607746C5
E3353787A66216BAD7A3C87950C2779D5AAB6DDE780B1F51EB3DCD461037402E41CB48F54FDF0B881EC1FE19607746C5
63994ab1a2010b2c3f0ef7ee
69ffb02bdb7e9cdac7243b6eb2bf8933
258EAFA5-E914-47DA-95CA-C5AB0DC85B11

信息 应用程序记录日志信息,不得记录敏感信息

应用程序记录日志信息,不得记录敏感信息
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x05d-Testing-Data-Storage.md#logs

Files:
cn/bingoogolapple/qrcode/core/BGAQRCodeUtil.java, line(s) 74,84
com/contrarywind/view/WheelView.java, line(s) 401
com/davemorrissey/labs/subscaleview/SubsamplingScaleImageView.java, line(s) 405,409,521,525,594,863,185,966,974,990,999,1468
com/github/mikephil/charting/charts/BarChart.java, line(s) 38
com/github/mikephil/charting/charts/BarLineChartBase.java, line(s) 185,261,265,432,470,476
com/github/mikephil/charting/charts/Chart.java, line(s) 334,348,420,424,468,428
com/github/mikephil/charting/charts/CombinedChart.java, line(s) 129
com/github/mikephil/charting/charts/HorizontalBarChart.java, line(s) 95,65,69
com/github/mikephil/charting/data/PieEntry.java, line(s) 14
com/github/mikephil/charting/listener/BarLineChartTouchListener.java, line(s) 209
com/github/mikephil/charting/renderer/ScatterChartRenderer.java, line(s) 117
com/github/mikephil/charting/utils/Utils.java, line(s) 75
com/h6ah4i/android/widget/advrecyclerview/animator/GeneralItemAnimator.java, line(s) 41,49,57,70,187
com/h6ah4i/android/widget/advrecyclerview/animator/impl/ItemAddAnimationManager.java, line(s) 17,46
com/h6ah4i/android/widget/advrecyclerview/animator/impl/ItemChangeAnimationManager.java, line(s) 17,62
com/h6ah4i/android/widget/advrecyclerview/animator/impl/ItemMoveAnimationManager.java, line(s) 17,46
com/h6ah4i/android/widget/advrecyclerview/animator/impl/ItemRemoveAnimationManager.java, line(s) 17,46
com/hold1/pagertabsindicator/PagerTabsIndicator.java, line(s) 105,365,371,392,415,225
com/qsf/taogin/Splash/vi/SplashActivity.java, line(s) 178
com/qsf/taogin/account/memberInfoPage/HotKeySettingFragment.java, line(s) 134
com/qsf/taogin/api/retrofitUtility/ApiException.java, line(s) 27
com/qsf/taogin/bigMatch/home/BigMatchHomeCirleView.java, line(s) 68,69,72,73,74,81,84
com/qsf/taogin/bigMatch/promotion/BigMatchEventFragment.java, line(s) 51
com/qsf/taogin/bigMatch/view/stream_video_widget/VideoPlayerManager.java, line(s) 207
com/qsf/taogin/fcm/UPushReceiver.java, line(s) 50,51
com/qsf/taogin/home/vi/ActivityHallReviewFragment.java, line(s) 416,430
com/qsf/taogin/home/vi/EventFragment.java, line(s) 89
com/qsf/taogin/jclModule/MyExtensionKt.java, line(s) 265
com/qsf/taogin/jclModule/RareFunction.java, line(s) 21,32,25,17,27
com/qsf/taogin/member/QRScanActivity.java, line(s) 610
com/qsf/taogin/member/SimpleRegisterActivity.java, line(s) 1185
com/qsf/taogin/member/SimpleRegisterCustomUserNameActivity.java, line(s) 1585
com/qsf/taogin/member/SimpleRegisterHintActivity.java, line(s) 1285
com/qsf/taogin/member/SimpleRegisterWithBankActivity.java, line(s) 1591
com/qsf/taogin/micronet/acthall/MicronetActivityHallActivity.java, line(s) 391
com/qsf/taogin/micronet/acthall/MicronetActivityHallReviewFragment.java, line(s) 417,436
com/qsf/taogin/micronet/register/FragmentThree.java, line(s) 775
com/qsf/taogin/micronet/view/GrantRecordDetailsFragment.java, line(s) 75
com/qsf/taogin/micronet/view/MicroNetEventFragment.java, line(s) 102
com/qsf/taogin/micronet/view/MicronetMainFragment.java, line(s) 186
com/qsf/taogin/micronet/view/MineFragment.java, line(s) 119
com/qsf/taogin/micronet/view/QRCodeFragment.java, line(s) 127
com/qsf/taogin/micronet/view/VipMixFragment.java, line(s) 65
com/qsf/taogin/moneyV2/adapter/MoneySubMainAdapterV2.java, line(s) 212,213,214
com/qsf/taogin/utility/HelpView.java, line(s) 160,164,190,216,217,249,280,281,315,316,368
com/qsf/taogin/utility/Object2RequestBodyMap.java, line(s) 18
com/qsf/taogin/utility/SingleLiveEvent.java, line(s) 50
com/qsf/taogin/utility/SmsBroadcastReceiver.java, line(s) 27,45,46
com/qsf/taogin/utility/TGLog.java, line(s) 8,14,20,30
com/scwang/smartrefresh/header/waveswipe/WaveView.java, line(s) 70
com/scwang/smartrefresh/layout/SmartRefreshLayout.java, line(s) 1291
com/scwang/smartrefresh/layout/internal/pathview/PathParser.java, line(s) 379,384
com/tencent/msdk/dns/base/log/b.java, line(s) 17
com/theartofdev/edmodo/cropper/CropImageActivity.java, line(s) 41,133
com/theartofdev/edmodo/cropper/CropOverlayView.java, line(s) 201
com/theartofdev/edmodo/cropper/b.java, line(s) 102,458
com/transitionseverywhere/utils/ReflectionUtils.java, line(s) 34,105,117
ezy/boost/update/UpdateUtil.java, line(s) 82
github/hellocsl/layoutmanager/gallery/GalleryLayoutManager.java, line(s) 109
io/sentry/SystemOutLogger.java, line(s) 21,30,36
io/sentry/android/core/AndroidLogger.java, line(s) 80,78,70,74,82
io/sentry/transport/StdoutTransport.java, line(s) 17
org/android/spdy/NetTimeGaurd.java, line(s) 26,36
org/android/spdy/ProtectedPointerTest.java, line(s) 14,19,55
org/android/spdy/spduLog.java, line(s) 12,26,19,33,69,40,47
org/koin/android/logger/AndroidLogger.java, line(s) 34,40,42,38
pub/devrel/easypermissions/EasyPermissions.java, line(s) 122,124

信息 此应用程序将数据复制到剪贴板。敏感数据不应复制到剪贴板,因为其他应用程序可以访问它

此应用程序将数据复制到剪贴板。敏感数据不应复制到剪贴板,因为其他应用程序可以访问它
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x04b-Mobile-App-Security-Testing.md#clipboard

Files:
com/qsf/taogin/account/chargeBank/model/ModelOnlineBank.java, line(s) 4,18,30,19,31
com/qsf/taogin/account/tradeHistory/TradeHistoryAdapter.java, line(s) 4,257,258
com/qsf/taogin/utility/CS_contact.java, line(s) 6,464,548,627

信息 应用程序可以写入应用程序目录。敏感信息应加密

应用程序可以写入应用程序目录。敏感信息应加密


Files:
dev/b3nedikt/restring/Restring.java, line(s) 68,68

安全 此应用程序使用SSL Pinning 来检测或防止安全通信通道中的MITM攻击

此应用程序使用SSL Pinning 来检测或防止安全通信通道中的MITM攻击
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x05g-Testing-Network-Communication.md#testing-custom-certificate-stores-and-certificate-pinning-mstg-network-4

Files:
com/qsf/taogin/api/RetrofitClient.java, line(s) 113,145,80,149,153,159,163,167
com/qsf/taogin/bigMatch/api/BigMatchLiveRetrofitManager.java, line(s) 30,30
com/qsf/taogin/rule/vi/RuleSubFragment.java, line(s) 225,232,240,247,94

安全 此应用程序可能具有Root检测功能

此应用程序可能具有Root检测功能
https://github.com/OWASP/owasp-mstg/blob/master/Document/0x05j-Testing-Resiliency-Against-Reverse-Engineering.md#testing-root-detection-mstg-resilience-1

Files:
io/sentry/android/core/internal/util/RootChecker.java, line(s) 82,40,40,40,40,40,40

关注 应用程序可能与位于OFAC制裁国家 (中国) 的服务器 (www.jihai8.com) 通信。

{'ip': '47.95.126.66', 'country_short': 'CN', 'country_long': '中国', 'region': '北京', 'city': '北京', 'latitude': '39.907501', 'longitude': '116.397102'}

关注 应用程序可能与位于OFAC制裁国家 (中国) 的服务器 (live.leisu.com) 通信。

{'ip': '58.215.157.239', 'country_short': 'CN', 'country_long': '中国', 'region': '江苏', 'city': '无锡', 'latitude': '31.569349', 'longitude': '120.288788'}

关注 应用程序可能与位于OFAC制裁国家 (中国) 的服务器 (app.tpxdrme.cn) 通信。

{'ip': '221.228.32.13', 'country_short': 'CN', 'country_long': '中国', 'region': '江苏', 'city': '无锡', 'latitude': '31.569349', 'longitude': '120.288788'}

安全评分: ( RM新时代 5.4.0123)