分享个浏览器插件,网页上的八门神器/金山游侠~ - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
krapnik
V2EX    分享创造

分享个浏览器插件,网页上的八门神器/金山游侠~

  •  3
     
  •   krapnik
    krapnikkk 2022-07-11 20:04:55 +08:00 3150 次点击
    这是一个创建于 1212 天前的主题,其中的信息可能已经有所发展或是发生改变。

    写在前面

    这个插件很早的时候就新建文件夹了,由于各种原因一直搁置,在上家公司离职前处于交接时期,六月底抽空摸鱼又盘了起来,想着好好打磨一番,写篇文字记录实现过程之类的。接踵而来的 996 生活让人身心疲惫,终于花了两个周末的时间完善了一下,算是给自己一个交待。

    起源

    以前玩单机游戏的时候,因为数值因素导致的卡关,使用 [金山游侠 /八门神器] 魔改一波数值,就能轻松过关。现在网页 H5 游戏那么多,却没有这么一个好用的工具(虽然有更高级的方法),于是想着造个轮子,整个 toy project ,于是先新建个文件夹!

    这是什么

    在 chrome 扩展环境下,使用Babel基于 AST 将页面引用的 script 标签的内容进行篡改注入 hook 方法,通过 hook 方法对运行时中的数据进行查询或更改。

    起初技术调研想到用的是 esprima 重新造轮子,后面发现 Babel 更流行,分别对 esprima 和 Babel 进行了解析时长对比,发现差异不大,另外 Babel 的工具链比较完善;同时找到[ast-hook-for-js-RE]这个项目,于是拿来主义,虽然 Babel 基于 nodejs 环境,但是一波 StackOverflow 后,成功在 chrome 环境跑起来了~ 

    全局 API

    注入 hook 方法中,提供了一下全局 API 进行操作[纯控制台操作(写 UI 界面好麻烦呀)]

    方法 说明
    search(arg:string|number) 检索出现过某个值的所有堆栈信息
    view(execOrder:number) 通过堆栈调用序号查看查看该堆栈信息详情
    hijack(execOrder:number,newValue:string|number) 劫持堆栈调用中的值篡改为指定的值
    cancelHijack(execOrder:number) 取消劫持
    clearHijack() 清空所有劫持记录

    怎么使用

    扩展地址

    hijacker

    写在最后

    本扩展属于 toy project ,仅仅是为了验证个人的一个想法并为之实现它,该项目并不能适配所有 H5 游戏哦~

    感谢

    项目地址

    Hijacker jcetxg.png

    8 条回复    2022-07-14 12:27:38 +08:00
    dream7758522
        1
    dream7758522  
       2022-07-11 20:26:25 +08:00 via Android
    这个好啊。
    lzgshsj
        2
    lzgshsj  
       2022-07-11 20:36:21 +08:00
    挺有意思的,不过看了一下果然是 v2 的 manifest ,不长久了啊
    israinbow
        3
    israinbow  
       2022-07-11 21:45:00 +08:00
    笑死, 这个梦回 4399 7k7k 破解版.
    penzi
        4
    penzi  
       2022-07-12 12:36:40 +08:00
    好棒。search 能搜索一个数值范围吗。

    如果要搜索变量名好搜吗,最近和视频网站斗智斗勇,如果一个工具能自动搜索有 play 方法的对象就好了
    cardsix
        5
    cardsix  
       2022-07-13 17:01:10 +08:00
    似乎 io 类网页游戏搜索不了
    krapnik
        6
    krapnik  
    OP
       2022-07-13 19:15:48 +08:00
    @cardsix toy project ,很多情况都没有处理,而且 io 类都是长链接的,改本地也不能影响线上的呀
    krapnik
        7
    krapnik  
    OP
       2022-07-13 19:16:12 +08:00
    @maggch97 控制台 [ctrl+shift+F] 直接搜索 play 方法更快哦~
    Damn
        8
    Damn  
       2022-07-14 12:27:38 +08:00
    这两个词好有年代感,多少年没听到过了。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     4755 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 03:58 PVG 11:58 LAX 19:58 JFK 22:58
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86