当前位置:   article > 正文

简单的js逆向教程

js逆向教程

其实做web端的爬虫,最常见到的就是js逆向方面的问题,既是重点也是难点,所以加强这方面的学习才是提升我们业务技能的重要突破点。接下来讲一下两个小实例,看一下基础的js逆向的破解(浅层篇)。

第一种加密情况:

①分析请求:

先打开目标网站---》打开控制台---》切换至XHR

然后刷新一下就会看到下面的情况

 这里要解决的有两个:

  • 返回的密文
  • 请求中的token

接下来定位加密位置

②定位加密位置与分析加密

按照之前的套路,我们第一步是要搜索加密参数名token

打开search,搜索参数名就找到我们要的token了。

 按照搜索的结果文件名,不难发现是第二个结果,点击打开可以找一下token的生成代码。

 

var token = md5(String(page) + String(num) + String(timestamp));

这段代码我们可以用js实现也可以用python

偷懒一点用python实现token加密算法:

 接着按照请求里看到的参数生成token试试

 现在有了token参数之后接下来看看这个解密是怎么搞:

右键查看源代码发现了这个:

 图中ip列表的位置是没有数据的,只有id ip_list,这是唯一值,所以值的再搜索一下。

 追进去之后就可以看到下面的代码了:

打上断点,执行两步可以看到decode_str 后就开始出现我们需要的数据了,所以这里的decode_str就是我们要的解密方法:

 我们复制到编辑器里调试运行一下:

 

 可以看到Base64未定义,我们追进去把Base64的算法复制出来:

 

 再次运行,根据提示缺失window对象,根据之前的方式是缺啥补啥,但是我们接下来分析一下这里调用的方法:

 这里调用的是String.fromCharCode方法,我们替换一下再次运行:

 可以看到这里就解出来了。

第二种加密情况:

分析请求

这次要分析的网站不同上一个的是,这次网站使用的是cookie加密,cookie的有效期过了之后就会返回一段js

 使用有效的cookie请求我们需要的数据就再返回的网页中,所以我们只要解决这段js就好了。

 分析加密

把返回的js复制到编辑器里格式化,可以看到代码分为两个部分:

参数定义部分:

 函数执行部分:

 直接执行没得出结果,为了方便知道这段代码发生了什么,我们复制到浏览器console里看看:

为了方便观察,我们把第二段的eval修改为console.log

可以看到这段代码写入了cookie

 继续分析,我们把这段cookie相关的代码复制出来执行一下:

 可以看到这里成功生成了一段cookie值和我们在网页上看到的一样!

 到这里就分析完了。

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/90548
推荐阅读
相关标签
  

闽ICP备14008679号