当前位置: 首页 > news >正文

seo优化网站查询网站备案的服务器

seo优化网站查询,网站备案的服务器,3d建模是干什么的,设计软件的软件网址(加密后):aHR0cHM6Ly93d3cuaWNpYmEuY29tL3RyYW5zbGF0ZQ 文章目录 抓包sign值结果加密 逆向sign值第一步第二步1.2.3. 解密content第一步1.2.3. 抓包 F12 -> 翻译框输入spider -> 点击Fetch/XHR -> 找到接口 index.php? 开头的…

网址(加密后):aHR0cHM6Ly93d3cuaWNpYmEuY29tL3RyYW5zbGF0ZQ==

文章目录

    • 抓包
      • sign值
      • 结果加密
    • 逆向sign值
      • 第一步
      • 第二步
        • 1.
        • 2.
        • 3.
    • 解密content
      • 第一步
        • 1.
        • 2.
        • 3.

抓包

F12 -> 翻译框输入spider -> 点击Fetch/XHR -> 找到接口 index.php? 开头的接口

得到如下界面:

sign值

在这里插入图片描述

结果加密

在这里插入图片描述

逆向sign值

经过测试,sign是与单词有关的,现在进入代码进行跟栈

点击 发起程序

在这里插入图片描述

经过逐个查看,takeResult 处应该是加解密的地方

点击跳转

在这里插入图片描述

跳转到 v 开头的行,在这里下个断点,重新输入spider,浏览器会在这里断住

仔细观察右边的作用域,发现出现了sign的值

在这里插入图片描述

由此可知,sign的值是r的值,故在上面的r处打上断点,重新输入spider

第一步

var r = u()("6key_web_new_fanyi".concat(s.LI).concat(t.q.replace(/(^\s*)|(\s*$)/g, ""))).toString().substring(0, 16);
  1. (“6key_web_new_fanyi”.concat(s.LI).concat(t.q.replace(/(^\s*)|(\s*$)/g, “”))
    经过多次测试,s.LI是 6dVjYLFyzfkFkk
    先看这段,别看他又臭又长,其实进行的操作只是将s.Li和t的q值加入到"6key_web_new_fanyi"后,而查看作用域可以发现,
    t.q = spider
    所以这段的结果就是 6key_web_new_fanyi6dVjYLFyzfkFkkspider,其中spider就是你输入的词
    经过多次测试,这个是定值,也就是说,u()函数的参数是一个定值

  2. u()
    在进入e函数时,得到如下函数:

    function(e) {return function(t, r) {return new e.init(r).finalize(t)}
    }
    

    这里面的e.init®并无任何作用,只是起到初始化进行迷惑我们的操作,所以直接不看,现在我们需要进入finalize()函数,因为这个函数才是接收主要参数的函数,此前任何和init有关的函数都不是我们需要的finalize函数

    进入主要函数之后,我们会看到,在init函数之后,会进入reset函数

    在这里插入图片描述

​ 在reset之后,我们继续下一步,会进入_doReset函数

在这里插入图片描述

​ 这里我们可以清楚的看到,使用的是MD5加密算法,而_hash对于我们来说并没有任何用处,所以我们不需要他,只需要知道这个是MD5加密就行

​ 在知道u()函数具体是做什么的之后,可能会有如下疑惑:

在这里插入图片描述

​ 为什么我们在控制台输出u()(定值)后,会需要toString()才能变为密文,我们只需要知道,在js中,实现md5加密后需要加上toString()来完成这一神奇操作,而在python中,只需要简单的进行md5加密后就可以得到与之一样的密文

  1. .subString(start: end)

    这个就是将字符串进行切片,从start到end,且不包含end,所以我们需要用到的其实只是密文的前16位

进行到这里,我们只是完成了sign加密的第一步,获取到第一次加密的密文,这个密文将会作为第二次加密的明文

第二步

进行完第一步之后,我们需要在他的下一步打上断点:

1.

在这里插入图片描述

这里传的参数r就是上一步最后得到的16位的密文

废话不多说,直接进入函数

2.

在这里插入图片描述

返回l,继续跟

又回到第一点,由此可知,这个(0, _.$Q) = $Q 且返回函数l,参数为第一步的16位密文

继续跟

3.

在这里插入图片描述

到这里,局势已经非常明了,这个第二次加密就是AES加密,前面两步时在对加密的参数进行调整

(1)不管如何变,t一直是最后面那一串字符

(2)将t传入到s()函数,根据多次测试,s函数就是将t进行解编码之后(利用urllib.parse.unquote可以解编码), 再通过字符运算将其转化为16位的字母+数字的字符串,再s()函数的结果擦混入到parse函数,得到加密的key

​ 进入parse函数:

在这里插入图片描述

parse的括号里的参数并未起到任何作用,不用管

直接继续跟:

在这里插入图片描述

得到这个,经过不同单词测试,这个key也是固定值,一个数组:

[1278502466, 1950627174, 1279473990, 1366766130]

(3)将需要加密的数据和密钥传入AES.encrypt即可得到密文

(4)效果一样,将对象转化为字符串

至此,sign逆向完成,后面我会将js代码和python代码贴出

解密content

在这里插入图片描述

观察这段代码,不难发现,这是对翻译接口进行了post请求,后面的&sign就是我们上面得到的sign值,拼接起来进行请求,返回了data值,也就是e

在then中,对e做了处理,所以我们可以判断,content处就是结果的解密处

第一步

给content处打上断点,重新输入spider,发现会在这里断住:

1.

在这里插入图片描述

可以看到,和我们预期的一样,e就是返回的加密数据

废话不多说,直接跟

2.

在这里插入图片描述

B6返回了f,继续跟

ok,还是回到了第一点,我们继续往下跟

3.

在这里插入图片描述

看到这里,解密函数也出来了,又是AES,解密数据是e,也就是返回的密文,密钥key是r,不出意外r是根据t的值进行生成的,跟上面的加密sign值一样,这里的r经过我的测试,生成逻辑和上述一样,只是参数不一样,且为固定值:

[1633773667, 861169273, 1715684717, 1163014963]

在后续,对解密之后的数据进行了解码为utf-8的操作,不仅如此,解密之后还可能出现中文字符序列化的情况,这个时候就需要python的json.loads()进行转化

在这里插入图片描述

http://www.yayakq.cn/news/611136/

相关文章:

  • htm网站模板无锡网络推广外包
  • 做一个网站平台的流程是什么合肥网站建设哪家专业
  • 有网站做点什么好怎么做网站的广告
  • 珠海服务好的网站建设矿泉水瓶手工制作大全
  • 单页网站seo优化深圳建设集团有限公司怎么样
  • 绚丽的网站微餐饮网站建设平台
  • 用php建设一个简单的网站wordpress 多梦
  • 为女足世界杯创建一个网站重庆提供行业网站建站报价
  • 泉州网站建设方案开发广告设计与制作专业分析
  • 各大网站注册记录网站建设专业课程
  • wap网站模式百度关键词优化技巧
  • 宁波做网站公司天津建设网官方网站
  • 移动端网站怎么提交seo网站诊断价格
  • 个人网站创建营销型网站建设明细报
  • 如何做英文ppt模板下载网站网站制作出名的公司
  • 微网站和手机网站网站注册费计入什么科目
  • 室内设计做效果图可以接单的网站网站的赚钱方式
  • 音乐影视类网站建设杭州网站建设网络
  • 鞍山企业做网站手机网站返回跳转页面代码
  • 纪检网站建设动态主题wordpress信用卡
  • 有没有免费做网站的小程序开发教程文档
  • 咸宁网站建设价格帮别人做网站交税
  • 南宁 网站建设 公司做贺卡 网站
  • 温州做网站最好的用wordpress开发网站
  • 外贸类网站建设全国最大房产网络平台
  • 如何破解wordpress站长工具推荐seo综合查询
  • 品牌建设的作用和意义关键词优化上海
  • 佛山网站推广成都私家花园设计公司哪家好
  • 吉林省建设厅网站查询东莞建设教育网站
  • 做培训的网站建设中国林业工程建设协会官方网站