V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
hjue
V2EX  ›  问与答

下面是一段 js,有什么办法可以还原成原来的代码

  •  
  •   hjue · 2021-07-01 16:34:47 +08:00 · 1817 次点击
    这是一个创建于 520 天前的主题,其中的信息可能已经有所发展或是发生改变。

    代码比较长,文件可以在这里下载

    https://paste.ubuntu.com/p/6GR7qqwwDP/

    var _0x4a30=['c2NyZWVuVG9w','c2NyZWVuWQ==','c2NyZWVuTGVmdA==' ...
    

    可以看出数组的内容是一些关键词,是用 base64 编码的

    对还原 js 完全没有思路,谁能给提供一些思路呢?

    第 1 条附言  ·  2021-07-01 17:11:03 +08:00
    发现 paste.ubuntu 需要注册才能下载,提供一个码云的地址供下载
    第 2 条附言  ·  2021-07-01 17:11:18 +08:00
    第 3 条附言  ·  2021-07-01 18:56:04 +08:00
    刚才发现 gitee 的 gist 竟然只有自己可以访问,只能在换个先的地址 https://gitee.com/jasontm/snippets-code/blob/master/domxss.js
    18 条回复    2021-07-02 10:18:15 +08:00
    vinsony
        1
    vinsony  
       2021-07-01 16:42:46 +08:00
    是要 Base64 解码回去么?
    var _0x4a30 = ['c2NyZWVuVG9w', 'c2NyZWVuWQ==', 'c2NyZWVuTGVmdA==']

    var res = _0x4a30.map((v) => atob(v))

    console.log(res)
    zhuxiaoxi
        2
    zhuxiaoxi  
       2021-07-01 16:43:34 +08:00
    我看不到完整的代码,但这个开头看起来像 sojson 加密的
    liyang5945
        3
    liyang5945  
       2021-07-01 16:46:08 +08:00
    大哥,你这文件下载还要注册,有点麻烦
    hjue
        4
    hjue  
    OP
       2021-07-01 16:57:37 +08:00
    AoEiuV020
        5
    AoEiuV020  
       2021-07-01 16:58:02 +08:00
    刚知道 paste.ubuntu 居然这么糟,甚至能跑炸 chrome,
    hjue
        6
    hjue  
    OP
       2021-07-01 17:00:16 +08:00
    由于 paste.ubuntu 需要注册才能下载源代码,我把文件放到码云了
    hjue
        7
    hjue  
    OP
       2021-07-01 17:01:27 +08:00
    @vinsony 这只能得到一些关键字
    hjue
        8
    hjue  
    OP
       2021-07-01 17:07:25 +08:00
    @AoEiuV020 哈哈哈,代码太长了
    InDom
        9
    InDom  
       2021-07-01 17:08:07 +08:00
    这个不就是 所谓的 soj**n.v5 加密么。。。

    鄙人专业搞他,+v aW0yNzc4Ng== (收费破解)

    这是鄙人写过的文章,后面还有分析记录,不想花钱看一试着用我写的工具破解。
    https://www.qs5.org/Post/673.html
    AoEiuV020
        10
    AoEiuV020  
       2021-07-01 17:08:21 +08:00
    简单用 beautifier 处理了一下,还是乱,这混淆是真的狠,
    https://paste.ubuntu.com/p/TFYgd6Ts5f/
    hjue
        11
    hjue  
    OP
       2021-07-01 17:14:23 +08:00
    @InDom 这个不是 eval 类型的加密,应该是 base64+替换 AST
    InDom
        12
    InDom  
       2021-07-01 17:18:00 +08:00
    我知道 反正 变量名啥的肯定是丢失了,代码结构还是在的。

    你发的这俩都打不开,一个卡死,一个 403 。
    7v9TEc53
        13
    7v9TEc53  
       2021-07-01 17:22:27 +08:00
    这个简单,但是变量名没法恢复出来了
    7v9TEc53
        14
    7v9TEc53  
       2021-07-01 17:23:00 +08:00
    EPr2hh6LADQWqRVH
        15
    EPr2hh6LADQWqRVH  
       2021-07-01 17:33:55 +08:00
    hjue
        16
    hjue  
    OP
       2021-07-01 18:56:51 +08:00
    @InDom 码云的 gist 竟然只有自己的访问,换个地址 https://gitee.com/jasontm/snippets-code/blob/master/domxss.js
    v2byy
        17
    v2byy  
       2021-07-01 20:10:01 +08:00 via iPhone
    打断点调试
    hjue
        18
    hjue  
    OP
       2021-07-02 10:18:15 +08:00
    @7v9TEc53 赞,这个工具不错
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1313 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 55ms · UTC 19:09 · PVG 03:09 · LAX 11:09 · JFK 14:09
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.