温馨提示:本平台仅供研究软件风险、安全评估,禁止用于非法用途。由于展示的数据过于全面,请耐心等待加载完成。如有疑问或建议, 可加入我们的微信群讨论

应用图标

应用评分

文件信息

文件名称 GrowCastle v1.38.10.apk
文件大小 49.72MB
MD5 f64a6081236888934a85dde494b24c28
SHA1 f5d820728b937d51c3574c13fe85508db5745173
SHA256 56a817edbba63f571052946e71bc200eadda1ca9d2f6922eb95da13e2598fb8c
病毒检测 ⚠️ 4 个厂商报毒⚠️

应用信息

应用名称 GrowCastle
包名 com.raongames.growcastle
主活动 com.raongames.player.MainActivity
目标SDK 33 最小SDK 22
版本号 1.38.10 子版本号 396
加固信息 未加壳
开发框架 Java/Kotlin
非法应用检测 (该功能即将上线,识别赌博、诈骗、色情和黑产等类型应用)

GooglePlay应用信息

标题 Grow Castle - Tower Defense
评分 4.424649
安装 10,000,000+   次下载
价格 0
Android版本支持
分类 街机
Play 商店链接 com.raongames.growcastle
开发者 RAON GAMES
开发者 ID 6730350414815951359
开发者 地址 Postal code (Zip code) : 34909 601, 12, Gangnam-daero 65-gil, Seocho-gu, Seoul, Republic of Korea
开发者 主页 https://www.raongames.com
开发者 Email help@raongames.com
发布日期 2016年4月25日
隐私政策 Privacy link

关于此应用
这是一款防御游戏,可保护城堡免受敌人的攻击。
如果成长可以放置在城堡塔楼和每个楼层的英雄。
升级越多,城镇弓箭手变得越强大。

超过120个英雄可以使用自己的技能。
一些英雄被赋予了强大的弓箭手,而另一个英雄则是被诅咒的敌人。
这个策略很重要,因为只有一个英雄最多可以坐骑九个。

当您建立殖民地并雇用工人时,您可以赚取更多黄金。

清除到更高级别,挥手并查看您的排名。
创建或加入在线公会。您可以与世界各地的人交流和玩耍。

※ 特点
在线公会系统
实时排名
英雄晋升系统
无缘无故上瘾
建造自己的城堡

组件导出信息

反编译代码

Manifest文件 查看
Java源代码 查看 -- 下载

文件列表

    证书信息

    二进制文件已签名
    v1 签名: True
    v2 签名: True
    v3 签名: False
    v4 签名: False
    主题: C=US, ST=California, L=Mountain View, O=Android, OU=Android, CN=Android, E=android@android.com
    签名算法: rsassa_pkcs1v15
    有效期自: 2008-02-29 01:33:46+00:00
    有效期至: 2035-07-17 01:33:46+00:00
    发行人: C=US, ST=California, L=Mountain View, O=Android, OU=Android, CN=Android, E=android@android.com
    序列号: 0x936eacbe07f201df
    哈希算法: sha1
    证书MD5: e89b158e4bcf988ebd09eb83f5378e87
    证书SHA1: 61ed377e85d386a8dfee6b864bd85b0bfaa5af81
    证书SHA256: a40da80a59d170caa950cf15c18c454d47a39b26989d8b640ecd745ba71bf5dc
    证书SHA512: 5216ccb62004c4534f35c780ad7c582f4ee528371e27d4151f0553325de9ccbe6b34ec4233f5f640703581053abfea303977272d17958704d89b7711292a4569
    公钥算法: rsa
    密钥长度: 2048
    指纹: f9f32662753449dc550fd88f1ed90e94b81adef9389ba16b89a6f3579c112e75
    找到 1 个唯一证书

    应用程序权限

    权限名称 安全等级 权限内容 权限描述 关联代码
    android.permission.INTERNET 危险 完全互联网访问 允许应用程序创建网络套接字。
    android.permission.SYSTEM_ALERT_WINDOW 危险 弹窗 允许应用程序弹窗。 恶意程序可以接管手机的整个屏幕。
    android.permission.ACCESS_NETWORK_STATE 普通 获取网络状态 允许应用程序查看所有网络的状态。
    com.android.vending.BILLING 普通 应用程序具有应用内购买 允许应用程序从 Google Play 进行应用内购买。
    android.permission.BLUETOOTH 危险 创建蓝牙连接 允许应用程序查看或创建蓝牙连接。
    android.permission.WAKE_LOCK 危险 防止手机休眠 允许应用程序防止手机休眠,在手机屏幕关闭后后台进程仍然运行。
    com.google.android.gms.permission.AD_ID 普通 应用程序显示广告 此应用程序使用 Google 广告 ID,并且可能会投放广告。
    android.permission.FOREGROUND_SERVICE 普通 创建前台Service Android 9.0以上允许常规应用程序使用 Service.startForeground,用于podcast播放(推送悬浮播放,锁屏播放)

    证书安全分析

    高危
    0
    警告
    1
    信息
    1
    标题 严重程度 描述信息
    已签名应用 信息 应用程序使用代码签名证书进行签名

    MANIFEST分析

    高危
    0
    警告
    3
    信息
    0
    屏蔽
    0
    序号 问题 严重程度 描述信息 操作
    1 应用程序数据存在被泄露的风险
    未设置[android:allowBackup]标志
    警告 这个标志 [android:allowBackup]应该设置为false。默认情况下它被设置为true,允许任何人通过adb备份你的应用程序数据。它允许已经启用了USB调试的用户从设备上复制应用程序数据。
    2 Service (androidx.work.impl.background.systemjob.SystemJobService) 受权限保护, 但是应该检查权限的保护级别。
    Permission: android.permission.BIND_JOB_SERVICE
    [android:exported=true]
    警告 发现一个 Service被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。
    3 Broadcast Receiver (androidx.work.impl.diagnostics.DiagnosticsReceiver) 受权限保护, 但是应该检查权限的保护级别。
    Permission: android.permission.DUMP
    [android:exported=true]
    警告 发现一个 Broadcast Receiver被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。

    可浏览的Activity组件

    ACTIVITY INTENT

    网络通信安全

    序号 范围 严重级别 描述

    API调用分析

    API功能 源码文件
    调用java反射机制
    组件-> 启动 Service com/unity3d/ads/picture/UnityAdsAdvertisingId.java
    一般功能-> IPC通信
    隐私数据-> 录制音频行为 org/fmod/a.java
    一般功能-> 文件操作
    命令执行-> getRuntime.exec() adrt/ADRTLogCatReader.java
    com/stericson/RootShell/execution/Shell.java
    组件-> 启动 Activity com/raongames/PhoneUtil/DummyActivity.java
    com/raongames/PhoneUtil/PhoneUtil.java
    com/stericson/RootTools/internal/RootToolsInternalMethods.java
    组件-> 发送广播 adrt/ADRTSender.java
    加密解密-> Base64 加密 com/github/megatronking/stringfog/xor/StringFogImpl.java
    com/raongames/PhoneUtil/PhoneUtil.java
    加密解密-> Base64 解密 com/github/megatronking/stringfog/xor/StringFogImpl.java
    加密解密-> 信息摘要算法 com/raongames/PhoneUtil/PhoneUtil.java
    com/stericson/RootTools/internal/Installer.java
    隐私数据-> 获取已安装的应用程序 com/raongames/PhoneUtil/PhoneUtil.java

    安全漏洞检测

    高危
    1
    警告
    4
    信息
    1
    安全
    0
    屏蔽
    0
    序号 问题 等级 参考标准 文件位置 操作
    1 应用程序记录日志信息,不得记录敏感信息 信息 CWE: CWE-532: 通过日志文件的信息暴露
    OWASP MASVS: MSTG-STORAGE-3
    升级会员:解锁高级权限
    2 启用了调试配置。生产版本不能是可调试的 高危 CWE: CWE-919: 移动应用程序中的弱点
    OWASP Top 10: M1: Improper Platform Usage
    OWASP MASVS: MSTG-RESILIENCE-2
    升级会员:解锁高级权限
    3 应用程序可以读取/写入外部存储器,任何应用程序都可以读取写入外部存储器的数据 警告 CWE: CWE-276: 默认权限不正确
    OWASP Top 10: M2: Insecure Data Storage
    OWASP MASVS: MSTG-STORAGE-2
    升级会员:解锁高级权限
    4 此应用程序可能会请求root(超级用户)权限 警告 CWE: CWE-250: 以不必要的权限执行
    OWASP MASVS: MSTG-RESILIENCE-1
    升级会员:解锁高级权限
    5 SHA-1是已知存在哈希冲突的弱哈希 警告 CWE: CWE-327: 使用了破损或被认为是不安全的加密算法
    OWASP Top 10: M5: Insufficient Cryptography
    OWASP MASVS: MSTG-CRYPTO-4
    升级会员:解锁高级权限
    6 MD5是已知存在哈希冲突的弱哈希 警告 CWE: CWE-327: 使用了破损或被认为是不安全的加密算法
    OWASP Top 10: M5: Insufficient Cryptography
    OWASP MASVS: MSTG-CRYPTO-4
    升级会员:解锁高级权限

    Native库安全分析

    序号 动态库 NX(堆栈禁止执行) PIE STACK CANARY(栈保护) RELRO RPATH(指定SO搜索路径) RUNPATH(指定SO搜索路径) FORTIFY(常用函数加强检查) SYMBOLS STRIPPED(裁剪符号表)
    1 armeabi-v7a/libKinzModznan.so
    True
    info
    二进制文件设置了 NX 位。这标志着内存页面不可执行,使得攻击者注入的 shellcode 不可执行。
    动态共享对象 (DSO)
    info
    共享库是使用 -fPIC 标志构建的,该标志启用与地址无关的代码。这使得面向返回的编程 (ROP) 攻击更难可靠地执行。
    True
    info
    这个二进制文件在栈上添加了一个栈哨兵值,以便它会被溢出返回地址的栈缓冲区覆盖。这样可以通过在函数返回之前验证栈哨兵的完整性来检测溢出
    Full RELRO
    info
    此共享对象已完全启用 RELRO。 RELRO 确保 GOT 不会在易受攻击的 ELF 二进制文件中被覆盖。在完整 RELRO 中,整个 GOT(.got 和 .got.plt 两者)被标记为只读。
    None
    info
    二进制文件没有设置运行时搜索路径或RPATH
    None
    info
    二进制文件没有设置 RUNPATH
    False
    warning
    二进制文件没有任何加固函数。加固函数提供了针对 glibc 的常见不安全函数(如 strcpy,gets 等)的缓冲区溢出检查。使用编译选项 -D_FORTIFY_SOURCE=2 来加固函数。这个检查对于 Dart/Flutter 库不适用
    True
    info
    符号被剥离
    2 armeabi-v7a/libmain.so
    True
    info
    二进制文件设置了 NX 位。这标志着内存页面不可执行,使得攻击者注入的 shellcode 不可执行。
    动态共享对象 (DSO)
    info
    共享库是使用 -fPIC 标志构建的,该标志启用与地址无关的代码。这使得面向返回的编程 (ROP) 攻击更难可靠地执行。
    True
    info
    这个二进制文件在栈上添加了一个栈哨兵值,以便它会被溢出返回地址的栈缓冲区覆盖。这样可以通过在函数返回之前验证栈哨兵的完整性来检测溢出
    Full RELRO
    info
    此共享对象已完全启用 RELRO。 RELRO 确保 GOT 不会在易受攻击的 ELF 二进制文件中被覆盖。在完整 RELRO 中,整个 GOT(.got 和 .got.plt 两者)被标记为只读。
    None
    info
    二进制文件没有设置运行时搜索路径或RPATH
    None
    info
    二进制文件没有设置 RUNPATH
    False
    warning
    二进制文件没有任何加固函数。加固函数提供了针对 glibc 的常见不安全函数(如 strcpy,gets 等)的缓冲区溢出检查。使用编译选项 -D_FORTIFY_SOURCE=2 来加固函数。这个检查对于 Dart/Flutter 库不适用
    True
    info
    符号被剥离

    文件分析

    序号 问题 文件

    行为分析

    编号 行为 标签 文件
    00022 从给定的文件绝对路径打开文件 文件
    升级会员:解锁高级权限
    00013 读取文件并将其放入流中 文件
    升级会员:解锁高级权限
    00063 隐式意图(查看网页、拨打电话等) 控制
    升级会员:解锁高级权限
    00005 获取文件的绝对路径并将其放入 JSON 对象 文件
    升级会员:解锁高级权限

    敏感权限分析

    恶意软件常用权限 2/30
    android.permission.SYSTEM_ALERT_WINDOW
    android.permission.WAKE_LOCK
    其它常用权限 5/46
    android.permission.INTERNET
    android.permission.ACCESS_NETWORK_STATE
    android.permission.BLUETOOTH
    com.google.android.gms.permission.AD_ID
    android.permission.FOREGROUND_SERVICE

    恶意软件常用权限 是被已知恶意软件广泛滥用的权限。
    其它常用权限 是已知恶意软件经常滥用的权限。

    IP地理位置

    恶意域名检测

    手机号提取

    URL链接分析

    URL信息 源码文件
    https://growcastle-e47b7.firebaseio.com
    自研引擎-A

    Firebase配置检测

    邮箱地址提取

    第三方追踪器

    名称 类别 网址
    Google AdMob Advertisement https://reports.exodus-privacy.eu.org/trackers/312
    Google Firebase Analytics Analytics https://reports.exodus-privacy.eu.org/trackers/49
    Unity3d Ads Advertisement https://reports.exodus-privacy.eu.org/trackers/121

    敏感凭证泄露

    已显示 11 个secrets
    1、 AdMob广告平台的=> "com.google.android.gms.ads.APPLICATION_ID" : "ca-app-pub-9178847554913325~8167121493"
    2、 Google_Drive_API_Key: AIzaSyCvrkCMPtrizNnXurASTADhlWTQ6iPWcgw
    3、 BjUwSBglJiNLXScxKE5dJnQxTEt1NiNIVnUxKExaOTEiAxgCNS9ZUTszZktXJ3QhTFUwdCpEWnUgKQ1aMHQqQlkxMSIDFnteTGtXJzcjDVQ6NSINVTA6Mw1VNC1mQ1chdCddSDktZkBXMSdmRFYmICdDTDktaA1hOiFmWlcgOCINVjAxIg1MOnQ0SFk2IC9bWSExZllQMDlmTF80PSg=
    4、 NjsrA1kxJjIDegcRB2ZoGh0IeWcdHRI=
    5、 NDoiX1c8MGhEViExKFkWNDcyRFc7ehBkfQI=
    6、 aTYpSUF1JzJUVDBpZEBZJzMvQwJ1ZH0NSDQwIkRWMm5mHRpr
    7、 ECY0Qkp7dAFMVTBzNQ1VND0oDVk2IC9bUSEtZklXMCdmQ1chdCNVUSYg
    8、 NjsrA007PTJUCzF6NkFZLDE0A207PTJUaDk1P0hKFDcyRE48ID8=
    9、 HDcpQxg9PSJJXTt6Zn9dODErT10ndDJFXXU8L0lcMDpmRFs6OmZdVyY9MkRXOw==
    10、 EjUrSBg9NTUNWyc1NUVdMXQzQ10tJCNOTDAwKlQ=
    11、 eicyQko0MyMCXTghKkxMMDBpHRcROyVYVTA6Ml4X

    字符串信息

    建议导出为TXT,方便查看。

    第三方SDK

    SDK名称 开发者 描述信息
    Unity Unity Technologies Unity 游戏使用 Il2Cpp 后端时产生的游戏代码。
    Google Play Billing Google Google Play 结算服务可让您在 Android 上销售数字内容。本文档介绍了 Google Play 结算服务解决方案的基本构建基块。要决定如何实现特定的 Google Play 结算服务解决方案,您必须了解这些构建基块。
    Google Play Service Google 借助 Google Play 服务,您的应用可以利用由 Google 提供的最新功能,例如地图,Google+ 等,并通过 Google Play 商店以 APK 的形式分发自动平台更新。 这样一来,您的用户可以更快地接收更新,并且可以更轻松地集成 Google 必须提供的最新信息。
    File Provider Android FileProvider 是 ContentProvider 的特殊子类,它通过创建 content://Uri 代替 file:///Uri 以促进安全分享与应用程序关联的文件。
    Jetpack App Startup Google App Startup 库提供了一种直接,高效的方法来在应用程序启动时初始化组件。库开发人员和应用程序开发人员都可以使用 App Startup 来简化启动顺序并显式设置初始化顺序。App Startup 允许您定义共享单个内容提供程序的组件初始化程序,而不必为需要初始化的每个组件定义单独的内容提供程序。这可以大大缩短应用启动时间。
    Jetpack WorkManager Google 使用 WorkManager API 可以轻松地调度即使在应用退出或设备重启时仍应运行的可延迟异步任务。
    Jetpack Room Google Room 持久性库在 SQLite 的基础上提供了一个抽象层,让用户能够在充分利用 SQLite 的强大功能的同时,获享更强健的数据库访问机制。

    污点分析

    当apk较大时,代码量会很大,造成数据流图(ICFG)呈现爆炸式增长,所以该功能比较耗时,请先喝杯咖啡,耐心等待……
    规则名称 描述信息 操作
    病毒分析 使用安卓恶意软件常用的API进行污点分析 开始分析  
    漏洞挖掘 漏洞挖掘场景下的污点分析 开始分析  
    隐私合规 隐私合规场景下的污点分析:组件内污点传播、组件间污点传播、组件与库函数之间的污点传播 开始分析  
    密码分析 分析加密算法是否使用常量密钥、静态初始化的向量(IV)、加密模式是否使用ECB等 开始分析  
    Callback 因为Android中系统级的Callback并不会出现显式地进行回调方法的调用,所以如果需要分析Callback方法需要在声明文件中将其声明,这里提供一份AndroidCallbacks.txt文件,里面是一些常见的原生回调接口或类,如果有特殊接口需求,可以联系管理员 开始分析