遇到了需要 Hook 一些函数的情况,WinAPI 的 __stdcall 或是 IDA 分析出来的 __usercall,留此纪录。测试环境为 Win32,编译器为 MSVC。
分类: 其它
OpenWrt 打通 IPv6 校园网
搞到了个校内 PT 站的邀请码,结果发现那站只有用 CERNET2 IPv6(≈校园网)才能访问……在宿舍里放个 NAS 显然不是那么现实,于是只能想个办法打通校园网,将主要数据存放在云服务器上。(就先不追求延迟和速度了,毕竟那个破烂路由器的 CPU 和宿舍里的百兆网口不是很允许……)这里采用的就是 OpenWrt 当中转的方案。

Legacy Toolset(纪念用)
Wireguard Network, Chaining and Routing
最近自刀了一个深港 IPLC(吃不起饭啦),分有深圳端和香港端两公网 IP 和两内网 IP,内网走的是 IPLC。如果只用 NAT / Port Forwarding 的话未免也太逊了点,对不起我这个钱啊(不x)!于是就尝试通过一些奇妙的操作想把它们 “串” 起来,然而过程可想而知并不是那么的顺利……(
apache2 & Ubuntu 配置优化
比较穷,买不起独服 / 高端 VPS,只能拿 1GB 内存的破烂凑合一下建站。
众所周知,apache2 非常吃资源,经常内存就直接给吃满,所以这时候优化就显得十分重要。
(其实是懒得改成 nginx ///
CSP-S 2019 退役游记 && 破百纪念
现在时间 UTC+8 18:18 2019/11/15,距 CSP-S 2019 还有约 14 个小时。
是时候,准备离开机房了。
(刚好也是本 blog 第 100 篇文章,顺便纪念一下www
Ablenet VPS 测评 k-opti 机房
日本 vps 也找了不少,一直在犹豫到底哪个比较好。
aws、sakura、kagoya、conoha、gmocloud、cloudgarage、idcf、webarena、阿里jp。。。。。。
不是太贵就是线路差,要不然就是对国人不大友好。
(有异想天开的同学,三色图上

日本回国直连线路主要有:BBTEC、NTT、IIJ、KDDI、163,这次的 Ablenet 就是双程 IIJ 路线。
一周年 && Lightsail评测
时光悄然流逝,不知不觉一年(多)已经过去了。
回想去年的这个时候,就会发觉这一年来,经历了许多,许多。
特此纪念一下这一年来发生的一些重大事件,以及现在在用的 Lightsail 测评。… Read the rest
T-Rex Runner 机房回忆??!
Google Chrome的彩蛋,不用说大家都知道的。
MCPE去除Xbox登录验证,愉快的玩耍服务器
前几天又把Minecraft PE下载下来了,更新的还真的很快,我最后一次玩好像是在0.10版本左右,现在已经更新到了1.6了。
成功的利用PocketMine搭了个服务器,但是我发现不知道从什么时候开始MCPE连服务器的时候竟然需要登录Xbox账号!!!
这个可以算是非常烦人。虽然我的手机上有Google全家桶,但是要和别人联机这就不好玩了。如果把Google Play Service的依赖弄掉,那么Xbox的验证就无法成功。如果要成功登录Xbox,手机里就必须装有Google Play Service。这个真的是非常烦人。
所以我决定把Xbox验证的功能手动弄掉。(注:直接用幸运破解器弄掉Google Play Service的验证)
首先把整个APK解包出来,来到./com.mojang.minecraftpe/lib/armeabi-v7a,底下有两文件。

其中那个50多MB的libminecraftpe.so就是我们的目标文件。
用IDA6.8打开它(IDA7.0我只有x64的)(IDA6.8下载地址:Click Here)
然后就是长达3个多小时的分析过程。。。。。。。。。。。(强烈吐槽IDA的单线程
)


(PS:是真的三个多小时)
首先快速定位到字符串xbox.externalServer.title
详细的字符串信息可在./assets/resource_packs/vanilla/texts/zh_CN.lang找到
然后一个F5下去,寻找一下代码,立马就发现一个登录验证函数
isSignedIn()的返回值给v14,然后在底下判断是否成功

来到汇编代码,BLX就是ARM中的执行函数指令,且返回值保存在R0寄存器
(Intel汇编call为执行函数指令,返回值保存在eax)

因为IDA不支持ARM的汇编直接修改,所以必须转换为Hex才可以修改。


观察到相同的部位,所以直接修改。

4F F0 01 04 = MOV R0, #1
00 BF = NOP
修改过后就变成这样,这就很开心了

但是还不能开心的太早,这里还有一句验证登陆的语句。
跟刚才一样弄掉。



这样所有的验证就都弄掉了,应用这个Patch,然后重新打包APK,就可以得到一个很开心的最新版本的MCPE Stable 1.6.0.14
只要在设置里更改名字就好了,再也不需要Xbox和GooglePlayService的登录验证了。
.idb下载:libminecraftpe.idb
Thanks to https://bbs.pediy.com/thread-230034.htm,帮我节省了很多寻找验证的时间。
