分类: 逆向

20 篇文章

thumbnail
「さくら、もゆ。」的空白字体列表——一次逆向问题定位过程实录
大家好,好久不见,我是某昨。 复习之余摸鱼「さくら、もゆ。」,结果遇到了这样的问题: 之前还没在意,打开一看果然如此: 字体列表空绝对很奇怪吧!但是咕咕噜上没有任何类似的问题反馈。于是借着这个机会,把 Notion 最小化,我开始摸鱼了( 初期调查 字符串 既然是字体相关的问题,那首先想到的就是去找字体。我上来先是在 Strings Window …
[前端逆向] Shinym@s 初探(7) 入口、脚本加载与 Webpack
enza 已抛弃本文中的 eval 脚本执行方案,本文仅作为历史文件供考古使用。 对于 SC,或者说对任何 Webpack 打包的应用而言,最重要的一步就是加载脚本。Webpack 将目录合并成了文件,减小了整体的请求次数的同时也增加了逆向的分析难度。这种难度增加体现在多个维度:一、Webpack 通常生成单个较大文件,对浏览器开发者工具而言难以解…
[前端逆向] Shinym@s 初探(4) 资源获取(4) – resource_hash
才过去一天,我又在研究 SC 的东西了(你的作业呢!!!!!!!! 嘛,我感觉我要死了,但是研究都研究了,时间也花了,没研究出什么不是很浪费,于是抱着这样的心态我开始接触 WASM。估计大部分人初次接触 WebAssembly 应该都是以各种其他语言开始的吧,然而谁让我在逆向呢(悲)。 WebAssembly 文本格式 这部分的内容由于校赛需要被移…
[前端逆向] Shinym@s 初探(3) 资源获取(3) – 获取卡面信息
大家好,好久(几天)不见,我是某昨。 自从上篇结语提了一句查卡器,我就在思考查卡这件事情到底能不能行。从内容来看,一个查卡器需要以下的基本数据: 卡面素材,包括图标、图片等卡面属性,包括技能等 有了这二者打底,其他的其实都可有可无了(比如语音之类,可以有,但相对就没那么重要了)。上一篇某种意义上可以说是解决了第一个问题,而第二个问题完全没有碰过。因…
[前端逆向] Shinym@s 初探(2) 资源获取(2) – hash
嘛,本来只有上下两篇的,上篇讲 JS 相关,下篇试着看看能不能摸出点 WASM 的东西,结果…… 这谁顶得住,正好趁这个机会了解一下 SC 音乐资源的编号方式,不也挺好的吗( 结果 总之今天的目的是(早就)达到了,结果在这里: demo demo main main 资源加载 我们知道,SC 有大量的资源需要加载,这在客户端下载资源的时长以及浏览器…
[前端逆向] Shinym@s 初探(1) 资源获取(1) – 加密与解密
SC 现在的资源获取方式是我最为在意的一个方面,一来,这方面的内容使用了最高级的保护措施——WebAssembly,二来是我们要获取资源不可避免的就是与其打交道。 旧版的获取方式 对于旧版的 SC 而言,资源获取是明文的,现在你还可以看到一些明文获取资源的痕迹,比如: # 可以通过这个简单的脚本获取偶像 ID <= 16 的 Spine 文件…
[前端逆向] Shinym@s 初探(0) 开始
最近对那个 SC 的汉化脚本很感兴趣,简单了解了一下,发现是通过 prismJsp 实现的注入。正好个人对 SC 的代码也很感兴趣,于是就有了这系列(前提不咕)的文章。 在这里提前注明,这个系列中所有的脚本、测试的环境均为 Chrome 隐身模式,测试链接为 https://shinycolors.enza.fun/tutorial 。(期待后文吃…