zoukankan      html  css  js  c++  java
  • js加密(三)企名片

    1. url: https://www.qimingpian.cn/finosda/project/pinvestment

    2. target:

     3. 简单分析

    3.1 打开调试窗口,刷新页面,看看都有哪些请求,哪些跟所需数据有关。于是找到了如下:

     

     两个ajax请求,他们都有一个加密的参数 “encrypt_data”,初步判断,这两个,或者其中一个就是我们需要的数据。为什么?猜的。

    3.2 用这个加密的参数去全局搜索,在一个名为“app****.js”的js文件中找到了几个匹配的地方。

     在附近打上断点看看。

    3.3 看到这里,有点像我想要找的东西,把它拿出来到console中执行一下:

     果然,就是它。下面,我们就看看它的解密过程。

    3.4 看看它用到了哪些函数:

     

     3.5 将所需js函数提取出来,稍微处理下,保存到本地js文件中,如下:

    一共就三个js函数:

     3.6 使用execjs执行一下,代码:

    import execjs
    import json
    
    encrypt_data = '**'
    
    with open('test.js') as f:
        js_encrypt = f.read()
    
    ctx = execjs.compile(js_encrypt)
    result = ctx.call('result',encrypt_data)
    print(result)
    json_data = json.loads(result)
    print(json_data)

    结果:

     其实js加密的网站,不像我以前想象中那么复杂。但凡加密,不管从服务器端怎么传输过来,客户端想要能够正常浏览,必定会把解密过程也给传过来。

  • 相关阅读:
    关于iframe页面里的重定向问题
    iframe跨域解决方案
    sql 查询优化小计
    年轻不能遇见太惊艳的人
    图片上传预览
    脚本
    前端常见跨域解决方案
    react
    react高阶组件
    React + MobX 状态管理入门及实例
  • 原文地址:https://www.cnblogs.com/zrmw/p/12083549.html
Copyright © 2011-2022 走看看