吾爱破解 - LCG - LSG |安卓破解|病毒分析|破解软件|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4341|回复: 46

[Android 原创] FGO 1.20 修改抓包简单破解战斗过程

  [复制链接]
发表于 2018-4-28 22:42 | 显示全部楼层
本帖最后由 我是大哥陈 于 2018-5-3 14:49 编辑

FGO之前的版本Assembly-CSharp.dll文件都没加密,可以随意修改;
而最近1.20版不仅dll文件加密了,连libmono.so也加壳了,IDA解析不出也没法动态调试,看了下https://www.52pojie.cn/thread-697357-1-1.html大神的教程,并没有学会;
想了想,就算dump出了dll文件,也没法加密回去重新打包使用,看来只能放弃修改本地文件了,只能在抓包上搞点东西;
话不多说,直接开始:
1.安装fiddler,在fiddler的设置中打开允许远程连接,并设置模拟器代{过}{滤}理,准备抓包。
QQ截图20180428215650.jpg
2.测试了发现抓到的都是unknown,原来是手机没装证书。。。在fiddler里设置解密HTTPS连接,并在手机上安装证书。
QQ截图20180428215623.jpg
3.运行游戏,进入战斗,终于能抓到ac.php了,但是返回的都是加密数据,https://www.52pojie.cn/thread-698928-1-1.html的楼主写了破解脚本,但是似乎没带base64解密功能,我还不会fiddler的base64解密语法怎么写。。。尴尬
QQ截图20180428222408.jpg
4.无奈退出战斗,抓到游戏发出了一个战斗结果的请求,惊喜地发现里面居然是明文,而且其中还带着battleresult字段,因为之前搞过未加密的FGO,知道这个字段1代表胜利,2代表失败,3代表退出。
QQ截图20180428222813.jpg
5.写规则将battleresult强行改为1,果然成功了!每次进战斗只要退出就算胜利。
[Java] 纯文本查看 复制代码
1
2
3
4
5
6
7
static function OnBeforeRequest(oSession: Session) {
if (oSession.url.Contains("ac.php")){
var str = oSession.GetRequestBodyAsString();
str = str.replace("battleResult%22%3a3", "battleResult%22%3a1");
oSession.utilSetRequestBody(str);
}
}

6.为了保险,又正常刷了个图,比较一下正常请求和修改请求的区别:
正常请求:
{"battleId":63315937,"battleResult":1,"scores":"","action":"","elapsedTurn":3,"aliveUniqueIds":[],"battleStatus":3404360355,"voicePlayedList":"[]"}
修改的请求:
{"battleId":63315800,"battleResult":1,"scores":"","action":"","elapsedTurn":1,"aliveUniqueIds":[4,5,6,7,8,9,10,11],"battleStatus":2776095253,"voicePlayedList":"[]"}

发现elapsedTurn和aliveUniqueIds有很大不同,elapsedTurn应该是回合数,修改版1回合就结束战斗了,太假;aliveUniqueIds应该是存活的怪物ID,修改版还有这么多怪活着呢阿喂怎么就胜利了呢!
7.修改脚本,伪装elapsedTurn和aliveUniqueIds:
[Java] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
static function OnBeforeRequest(oSession: Session) {
if ((null != gs_ReplaceToken) && (oSession.url.indexOf(gs_ReplaceToken)>-1)) {   // Case sensitive
            oSession.url = oSession.url.Replace(gs_ReplaceToken, gs_ReplaceTokenWith);
        }
                if (oSession.url.Contains("ac.php")){
                        oSession["ui-color"] = "red";
                        var str = oSession.GetRequestBodyAsString();
                        if(str.Contains("battleResult%22%3a2") || str.Contains("battleResult%22%3a3"))
                                {
                                if(str.Contains("battleResult%22%3a3"))
                                        {
                                        str = str.replace("elapsedTurn%22%3a1%2c%22","elapsedTurn%22%3a8%2c%22");
                                        str = str.replace("elapsedTurn%22%3a2%2c%22","elapsedTurn%22%3a8%2c%22");
                                        }
 
                                str = str.replace("battleResult%22%3a3", "battleResult%22%3a1");
                                str = str.replace("battleResult%22%3a2", "battleResult%22%3a1");
                                var regex1 = /aliveUniqueIds%22%3a%5b([\d+,%2c]+)%5d/gi;
                                str = str.replace(regex1,"aliveUniqueIds%22%3a%5b%5d");
 
                                //FiddlerObject.log(str);
                                oSession.utilSetRequestBody(str);
                                }
 
 
                }

8.试了一下,最终修改后的请求和正常刷图的请求暂时没发现太大不同,只要过图时间不要太短,应该没啥问题。
附上脚本文件,祝大家肝的开心。
就是操作有些繁琐,暂时又没找到手机上能抓包并修改的App,如果各位见过麻烦推荐下。
fgo_1.20.1_sem_545125.zip (314.59 KB, 下载次数: 214)

免费评分

参与人数 24吾爱币 +33 热心值 +23 收起 理由
qtfreet00 + 9 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
レトルト + 1 + 1 谢谢@Thanks!
慢速爬行的蜗牛 + 1 + 1 谢谢@Thanks!
偷税.改 + 1 + 1 厉害了我的楼主
八云紫轩 + 1 + 1 谢谢@Thanks!
lookerJ + 1 + 1 用心讨论,共获提升!
aopdnf + 1 + 1 谢谢@Thanks!
Ouyang520 + 1 + 1 谢谢@Thanks!
苏小小 + 1 + 1 谢谢@Thanks!
15808244862 + 2 + 1 可以,投个币
九门提督定风波 + 1 + 1 热心回复!
xiangyuruchu520 + 1 + 1 热心回复!
123456789we + 1 + 1 用心讨论,共获提升!
STSnaive + 1 + 1 我很赞同!
13813532597 + 1 谢谢@Thanks!
TinyBad + 1 + 1 谢谢@Thanks!
WeCBo + 1 + 1 谢谢@Thanks!
yyp6457024 + 1 + 1 此为违规行为,请遵守论坛版规!
网站安全师 + 1 + 1 用心讨论,共获提升!
tianwei625 + 1 + 1 谢谢@Thanks!
lin_xop + 1 + 1 热心回复!
拿破仑骑乌龟 + 1 + 1 我很赞同!
世夕 + 1 + 1 肝疼 期待
nishuona + 1 + 1 我很赞同!

查看全部评分

本帖被以下淘专辑推荐:

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-4-30 07:35 | 显示全部楼层
昨天按照楼主说的,尝试了一下,确实能成功,手机只要下个官网的fgo,不需要什么破解,连上电脑的WiFi,准备工作完成后,进战斗开图,退出就能获胜,材料,经验,奖励都会给,只是没结算页面而已。可以说是秒刷了,但这容易被服务端检测出来,因为时间太短了,数据包那里有个lasttime之类的东西,进图前会记录一次,结束后会记录一次,就是战斗时间,只要进图后等个一两分钟,然后退出,加上楼主的回合数和剩余怪的修改,基本上只要不要刷得太快,应该很难检测出来,当然,奉劝一句,别拿大号作死,用挂迟早会被封的。

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-4-29 18:56 | 显示全部楼层

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-4-28 23:13 | 显示全部楼层

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-4-29 00:12 | 显示全部楼层
感谢分享!!!

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-4-29 00:30 | 显示全部楼层
学习大牛的作品!!

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-4-29 00:40 | 显示全部楼层
利害。。。曲线救国呀。。。思路很清析,谢谢分享

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-4-29 01:26 | 显示全部楼层
感谢大佬教程

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-4-29 01:29 | 显示全部楼层
感谢楼主分享

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-4-29 01:51 来自手机 | 显示全部楼层
跪看大佬

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-4-29 02:39 | 显示全部楼层
这个思路有点类似于之前iOS科技的思路哇

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2018-4-29 06:39 | 显示全部楼层
观摩观摩....

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则


免责声明:
吾爱破解所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:Service@52PoJie.Cn

快速回复 收藏帖子 返回列表 搜索

RSS订阅|手机版|小黑屋|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2018-5-7 10:14

Powered by Discuz!

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表