Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

怎么用啊谁能教教我怎么用啊 #52

Open
gullibly opened this issue Oct 30, 2024 · 1 comment
Open

怎么用啊谁能教教我怎么用啊 #52

gullibly opened this issue Oct 30, 2024 · 1 comment

Comments

@gullibly
Copy link

No description provided.

@xmexg
Copy link
Owner

xmexg commented Oct 31, 2024

环境准备篇

  1. 安装mumu模拟器
  2. 模拟器安装并运行小猿口算
  3. 根据官方教程开启adb调试https://mumu.163.com/help/20240807/40912_1073151.html
  4. 根据官方教程安装maigk模块https://mumu.163.com/help/20240807/40912_1136675.html
  5. 下载frida-server-xxx-android-x86_64.xz解压, 使用adb push frida-server-xxx /data/local/推送到模拟器
  6. 电脑安装python和pip, 用pip install frida-tools安装frida工具
  7. 电脑使用adb devices查看所有adb设备,有时模拟器需要打开一下诊断页面,然后重新启动一边才能获取到
    使用adb shell连接设备,
    使用su获取模拟器root权限
    使用chmod +x /data/local/frida-server-xxx赋予可执行权限
    使用/data/local/frida-server-xxx保持软件运行,不要关闭此终端
  8. 新开终端随便找个目录,使用git clone --depth 1 https://github.com/xmexg/xyks.git下载项目
  9. 使用cd xyks/frida/auto_answer/demo/auto_submit_multiprocess_demo进入答题目录

获取cookie及请求参数篇,方法不唯一

  • 需要获取带match(获取试题及答案)的url和带submit(提交答案)的url, url里有重要参数, 每个人的不一样, 同时两次请求头里均有需要用到的cookie,这些参数一般不会改变

常规软件抓包法

比如可通过proxypin等抓包软件获取cookie和pk界面获取试题的url参数和提交答案的url参数

使用webview法

在准备好环境后再安装LSPosed-v1.9.2-7024-zygisk-release.zip算法助手pro

算法助手Pro版本下载https://www.123pan.com/s/7G8aTd-g3T4H.html提取码:u7Zn

算法助手设置小猿口算允许webview调试, 重新打开小猿口算pk页面, 打开chromeedge浏览器的chrome://inspectedge://inspect页面等待发现带match(获取试题及答案)的url和带submit(提交答案)的url,具体可见项目/video/webview.mp4文件

使用hook_cookie.js

该方法由GalacticDevOps贡献, 我尚未测试
使用cd命令进入项目/frida/get_cookie目录
使用python get_cookie.py获取cookie

正式开始

  1. 模拟器打开小猿口算
  2. 使用说明可查看readme.md
  3. 进入项目答题目录/frida/auto_answer/demo/auto_submit_multiprocess_demo, 编辑main.py文件
"""
请填写cookie
(可能)只需要填下面3个关键cookie即可
ks_persistent, sess, userid
"""
cookies = {
    "YFD_U": "",
    "__sub_user_infos__": "",
    "g_loc": "",
    "g_sess": "",
    "ks_deviceid": "",
    "ks_persistent": "此处必填",
    "ks_sess": "",
    "persistent": "",
    "sess": "此处必填",
    "sid": "",
    "userid": "此处必填"
}

"""
此处填写获取试题答案和提交答案的url, 要带上参数, 每个人的YFD_U和version不一样, 但不会改变, 请自行抓包获取
注意把sign值替换成{sign}, 用于后续填充
"""
url = {
    "get_question": "https://xyks.yuanfudao.com/leo-game-pk/android/math/pk/match/v2?pointId=2&_productId=611&platform=android32&version=3.93.2&vendor=xiao_mi&av=5&sign={sign}&deviceCategory=pad",
    "submit_answer": "https://xyks.yuanfudao.com/leo-game-pk/android/math/pk/submit?_productId=611&platform=android32&version=3.93.2&vendor=xiao_mi&av=5&sign={sign}&deviceCategory=pad"
}
  1. 使用pip install -r requirements.txt安装依赖
    使用python main.py --fakeq=1 --processes=20运行项目
  2. 回到小猿口算刷新查看刷题效果

只有初次运行需要完整过程, 再次运行只需要执行python main.py --fakeq=1 --processes=20运行项目即可

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants