ChatGPT 1.0.0安卓逆向分析,仅限中国分享

ChatGPT 1.0.0安卓逆向分析,仅限中国分享

本文将对ChatGpt Android版本1.0.0 APK进行静态解包分析和抓包分析,从ChatGpt Android APK功能的设计、校验过程和代码内包含的信息来预测OpenAI的大致走向。

image

Sensor Tower指出,在美国市场,iOS版ChatGPT应用下载量在6月份环比下降了38%;而根据Similarweb的数据,ChatGPT今年6月的全球桌面和移动设备流量较上月下降9.7%,其网站的独立用户访问量下降5.78%,6月的访客花在该网站上的时间也减少了8.5%。
《流量增长乏力 ChatGPT要进安卓 - 北京商报》

目前Android版本上线仅支持美国、印度、孟加拉国和巴西使用。但从今天应用上线的情况来看,截至7月26日早上,在Google Play上的下载数量为10+。然而,在几个小时后的下午,下载数量已经达到了100K+,这充分证明了AI的热度。尽管AI概念整体跌幅2%,但市场上对AI仍然持有浓厚兴趣。

Android版本目前还只处于灰度测试阶段,即在部分国家上线,一周内逐步覆盖其他可以使用Google Play的国家。目前需要强制绑定Google Play的服务,后文将介绍通过hook的方式解决这个问题,但不提供重打包APK的方法。

image

静态分析

这份分析报告提供了ChatGPT Android APK的各种信息,包括安全评分、文件信息、应用程序信息和活动等。其中,核心的内容包括:

  1. 安全评分:ChatGPT的安全评分为62/100,这意味着它在安全性方面存在一些潜在的风险。
  2. 文件信息:APK文件的名称为base.apk,大小为5.42MB,MD5为5ed65284c0962370b9dc9030a7342e61,SHA1为62a64392bca4fa127c70a7231dd38c72025a663a,SHA256为f66c90fdc3863c30cdbda0d84675c2cddb60cfbf36744df4718bcf6ec53f3498。
  3. 应用程序信息:ChatGPT的包名为com.openai.chatgpt,主要活动为com.openai.chatgpt.MainActivity,目标SDK为33,最小SDK为23
  4. 活动:ChatGPT包含4个活动、9个服务、2个接收器和0个提供程序。
  5. 导出的组件:ChatGPT中有1个导出的活动、1个导出的服务和2个导出的接收器。
  6. 文本信息:分析报告中还包含了一些文本信息,例如应用程序中使用的字符串和控件的名称。

支持最小Android版本为 6.0,对于首个版本而言,目标就是覆盖足够多的用户

权限分析

这个应用使用了以下权限:

  1. android.permission.RECEIVE_BOOT_COMPLETED
    允许ChatGpt 应用开机自启,即系统开机后自动启动,不过国内的OS上面,这种自启行为不会被支持。

  2. android.permission.RECORD_AUDIO
    允许应用程序访问音频记录路径, 目前ChatGpt Android版本是支持语音输入。

  3. android.permission.VIBRATE
    允许应用程序控制振动器,用来优化语音输入的体验

  4. android.permission.WAKE_LOCK
    这个权限用于,防止手机在和Chatgpt 聊天的过程中进入睡眠状态(灭屏)

  5. com.android.vending.CHECK_LICENSE
    用于 Android 应用程序中与 Google Play 商店(Google Play Store)的许可验证相关的广播。这个广播通常由 Google Play 服务自动发送,用于检查应用程序是否已经在设备上获得了有效的许可或授权。
    当你在应用程序中集成了 Google Play 许可验证服务时,应用程序将使用这个广播来与 Google Play 商店进行通信,以验证用户是否已经购买了该应用程序或应用程序内购买的许可,这对于防止未经授权的使用、确保用户购买了正版应用或在应用内购买中获得许可等方面非常有用。
    从这个权限上来看,目前ChatGpt的Android版本和Google Play的证书校验有一个强绑定关系,在短期内,Android市场上不会脱离Google Play,所以国内的用户想用上官方的Android 版本基本是不可能的。

  6. com.openai.chatgpt.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
    openai 自定义的权限

从定义的权限上来看,权限上中规中矩,没有涉及到信息的采集,强绑定了 Google Play服务,基础功能不多,但够稳定,属于稳定迭代的阶段,不足以看出 OpenAi 着急的情况。

界面

一共两个主要界面
com.auth0.android.provider.RedirectActivity
com.openai.chatgpt.MainActivity

统计分析

APK内除了OpenApi 自有的 域名,用来校验和数据传输实现基本的功能,还用了两家公司数据统计功能。

  • api.mixpanel.com

Progress is possible
Simple and powerful analytics that helps everyone make better decisions.

  • api.statsig.com
    Statsig是一个位于华盛顿州西雅图的新起的平台,它使产品团队能够评估新功能的影响并向客户交付产品,Statsig提供了一个平台,使产品开发人员能够运行快速、高质量的产品实验并分析用户如何响应新特性和功能,就像 Facebook、亚马逊、Airbnb 和优步的产品团队一样今天做。
    其实验分析和决策工具(例如 Pulse、Experiments+ 和 AutoTune)允许产品团队每周运行数百次实验并评估其产品每天的表现。

Vijaye Raji是初创公司Statsig的创始人兼CEO。这家公司致力于打造企业的测试和验证的工具,为产品决策提供数据支持,其灵感来源于Facebook用于试验新产品功能的内部工具。
在Vijaye看来,企业打造产品不可闭门造车,要尽快把最小可行产品推向潜在客户,并通过真实的数据推动决策,实践出真知。
“数据通常更多是在小范围内正确,跟着数据走,你就能找到这个范围内的最优解。”他说,“但想找到更优的结果,你就要扩大数据范围,将更多局部数据综合起来。你必须要对数据有一定的产品思维才行。”

这两个统计工具的目标均是进行简单的数据分析,为决策提供思路。OpenAI很可能通过小范围的灰度测试来实现数据驱动决策,并观察市场表现,以做出下一步的决策。

开源

OpenAI 是一个人工智能研究实验室,由营利组织 OpenAI LP 与母公司非营利组织 OpenAI Inc 所组成,目的是促进和发展友好的人工智能,使人类整体受益。OpenAI 成立于 2015 年底,总部位于旧金山,组织目标是通过与其他机构和研究者的“自由合作”,向公众开放专利和研究成果。

不过现在的所有功能和代码都不会有任何开源的可能性:

“no_licenses_available” : “This app does not have any open source licenses.”

强绑定Google Play

如果没有Google服务,安装后会出现
“Check that Google Play is enabled on your device and that you’re using an up-to-date version before opening the app. If the problem persists try reinstalling the app.”

然后你只能选择Close,然后退出应用。因此,没有Google Play的国家,基本上无法使用该Android版本。

image

简单分析了一下代码,然后发现有这段逻辑进行了控制:

private void showErrorDialog() {licenseCheckState = LicenseCheckState.CHECK_REQUIRED;try {this.activity.runOnUiThread(new LicenseClientV3$$ExternalSyntheticLambda4(this));} catch (RuntimeException ex) {Log.d(TAG, "Couldn't show the error dialog. " + Log.getStackTraceString(ex));}
}/* access modifiers changed from: package-private */
/* renamed from: lambda$showErrorDialog$2$com-pairip-licensecheck3-LicenseClientV3  reason: not valid java name */
public /* synthetic */ void m17x91ba8288() {new AlertDialog.Builder(this.activity).setTitle("Something went wrong").setMessage("Check that Google Play is enabled on your device and that you're using an up-to-date version before opening the app. If the problem persists try reinstalling the app.").setPositiveButton("Close", new LicenseClientV3$$ExternalSyntheticLambda1(this)).setCancelable(false).show();
}

一般情况下,我会通过基本的工具先做一个简单的测试。

console.log("loaded chatgpt js successfully");
Java.perform(function () {var Log = Java.use("android.util.Log");var LicenseClientV3 = Java.use('com.pairip.licensecheck3.LicenseClientV3');LicenseClientV3.showErrorDialog.implementation = function (){Log.d("10cl", 'intercept showErrorDialog' );//return this.showErrorDialog();};});

#file-chatgpt_android_hook-js-L5-L6

image

com.pairip.licensecheck3 这个是 Google Play的证书校验功能,当拦截后,点击登录,就会请求登录,然后请求跳转到浏览器登录, 301 跳转到chatgpt 的网页端, 输入账号密码
抓包的结果如下:

image

OpenAI属于AI公司,对Android安全和反编译方面可能没有做太多处理,主要逻辑依赖于三方公司,并直接禁用敏感地区。
如果允许在国内使用并且没有依赖Google Play,国内的玩家可以重打包并实现登录持久化,从而形成一个数据产生一层模糊网的产业。然而,OpenAI很可能不会在短期内允许这种情况发生。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/51961.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PC端微信网页打不开

首先,写这篇博客就是想吐槽一下。 我只是想看一片技术博文,手机上显示不太友好,有些代码没有超出边界被隐藏起来,想着在PC端应该更友好一些,结果在PC端打不开,不显示内容,然后浪费了一个下午的时…

无法打开网页但可以登录电脑微信 解决办法

今天遇到了电脑微信可以登录但网页打不开的情况,原因可能是DNS 配置出现问题。DNS(Domain Name System,域名系统)可以简单的理解成根据域名解析成对应IP的解码服务器。 解决办法 1. 打开控制面板 2. 选择网络和Internet - 网络和…

解决网络连接正常,网页打不开的问题

win10系统 1.打开‘控制面板-’->点击‘网络和Internet’ 2.点击‘Internet 选项’ 3.在弹出的‘Internet’属性窗口选择上方的‘连接’选项栏-->点击下方的‘局域网设置’ 4.在弹出的‘局域网(LAN)设置’窗口的‘代理服务器’部分,取…

网站浏览器可以打开,在微信中打不开,排查问题的过程

今天收到遇到一个诡异的问题:网站浏览器可以打开,在微信中打不开,耗费了很长时间才将问题排查出来,现在将排查的步骤记录下来,仅供参考: 在手机微信里输入访问地址:显示无法 打开网页。如图所示…

关于网络很快 但是打不开腾讯相关网页的解决办法 亲测有效!

刷新见效果 刷新见效果 刷新见效果 重要的事情要提三遍 近日 发现我的电脑打不开电脑版微信里面的网页内容,进而发现连腾讯的微信公众号的主页也打不开,经过网上的查询和大量的尝试,终于发现解决办法,立竿见影: 打…

【亲测有效】解决部分网页打不开的方法(特别是CSDN),电脑浏览器突然打不开某个网页,其他网页正常使用解决方法

问题描述 电脑可以正常上网使用,在确保浏览器清理了缓存之后,电脑始终打不开Gitee和CSDN。点击CSDN浏览器载入网页后一直处于加载状态,始终无法响应加载出页面,导致超时,加载失败。 使用Google浏览器打开CSDN&#x…

电脑能登录QQ和微信,但是打不开网页浏览器

工具:电脑管家或360安全卫士 分析:电脑不能上网的原因有很多,而电脑管家可以诊断电脑网页打不开的原因,并进行修复,这中傻瓜式的操作,为我们省去很多时间去找原因。 一、电脑管家 步骤: 打开…

微信、QQ可正常使用,但浏览器打不开网页解决办法

打开浏览器显示如下 解决办法:打开 ie 浏览器(找不到可以在开始菜单旁搜索框搜素ie),点击右上角齿轮状工具,选择Internet选项,进入对话框后,选择连接—局域网设置,然后在代理服务器…

stmp批量发送email包括图片和附件

应用场景: 女友工作因素,需要定期的与客户发送组织会议邀请,发送对象不同,内容基本相同,附件不同,每次发送时麻烦费事耽误时间,此工具的开发应用必然会深受女友的喜欢、大大减少其工作量。 设计…

C#发送邮件,包含发送附件

/// <summary> /// 发送邮件 /// </summary> /// <param name"sendEmail">收件人邮箱</param> /// <param name"fromEmail">发件人邮箱</param> /// <param name"fromName">发件人名称</param>…

邮件发送(带附件,)

1、拼装表格 //拼装表格startStringBuilder content new StringBuilder("<html><head></head><body><h2>【运管平收台预警提醒】&#xff1a;"DateUtil.format(new Date(),"yyyy年MM月dd日")"当前已交收资金&#xff…

发送邮件,加附件

需要参考3篇文章 第一篇&#xff0c;这个是基本代码 转载自&#xff1a;http://dove19900520.iteye.com/blog/2005303 运行后出现下面异常 异常&#xff1a;Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream 第二…

邮件发送程序(添加附件发送)

目标&#xff1a;实现一个基于Web的可以发送附件的邮件程序。&#xff08;涉及的知识点&#xff1a;文件上传邮件发送&#xff09; 知识点引入&#xff1a; 文件上传&#xff1a;开发的Web应用是基于HTTP协议的&#xff0c;工作在Request/Response模式下。在这种模式下&#…

邮件发送功能-带附件

JAVA邮件发送的大致过程是这样的的&#xff1a; 1、构建一个properties文件&#xff0c;该文件中存放SMTP服务器地址等参数。 2、通过构建的properties文件和javax.mail.Authenticator具体类来创建一个javax.mail.Session。Session的创建&#xff0c;就相当于登录邮箱一样。剩下…

Edge浏览器打不开任何网页!!!

错误代码: STATUS_INVALID_IMAGE_HASH 1、电脑搜索注册表 win键&#xff0c;然后输入“注册表” 2、增加项 找到路径&#xff1a;“计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge” 没有Edge的&#xff0c;直接在Microsoft下新建一个Edge文件夹 在Edge下&#…

未安装360系列应用情况下,Edge浏览器主页被360篡改,一直显示360导航

文章目录 修改浏览器设置系统扫描修复 修改浏览器设置 进入Edge浏览器进行以下操作&#xff1a; 右上角...图标&#xff0c;找到【设置】菜单&#xff0c;进入浏览器设置&#xff1b;左边菜单栏&#xff0c;找到【开始、主页和新建标签页】选项&#xff0c;进行操作&#xff…

vscode Live Server插件无法启动edge浏览器

平台 系统&#xff1a;mac os 10.14.6 默认浏览器 mircosoft edge vscode 相关参数 Version: 1.68.0 (Universal) Commit: 4af164ea3a06f701fe3e89a2bcbb421d2026b68f Date: 2022-06-08T11:44:00.250Z (1 mo ago) Electron: 17.4.7 Chromium: 98.0.4758.141 Node.js: …

Microsoft Edge 浏览器如何打开Axure RP文件

1.安装Microsoft Edge 浏览器 2.右上角如图点击进入扩展页面&#xff0c;搜索“Axure RP”-获取-安装 3.再次打开“扩展”查看已扩展的程序&#xff0c;启用&#xff0c;并点击“详细信息” 4.勾选“允许访问文件url” 5.选中本地文件夹中的index.html文件-选择打开方式&#…

edge浏览器ie模式设置方法介绍

1、打开edge浏览器&#xff0c;点击右上角的三个点&#xff0c;进入设置 2、选择默认浏览器 3、开启允许在internet explorer模式下重新加载网站 4、重启浏览器后&#xff0c;点击edge浏览器右上角的三个点&#xff0c;在更多工具中&#xff0c;可选择在internet explorer模式下…

Microsoft Edge浏览器只能在地址栏输入地址进入,不能进行搜索

Micrisoft Edge不能用搜索栏搜索 问题解决 问题 Microsoft Edge浏览器只能在web栏搜索网站&#xff0c;而不能用搜索栏搜索。 而且有一个很奇怪的现象&#xff0c;当我在搜索栏中搜索的时候&#xff0c;搜索内容自动填充进了web栏中&#xff0c;而搜索栏没有任何东西&#xff…