js逆向·找到登录时目标网站的加密算法的几种方式

这篇具有很好参考价值的文章主要介绍了js逆向·找到登录时目标网站的加密算法的几种方式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

js逆向·找到登录时目标网站的加密算法的几种方式

为什么要去找到目标网站的加密密码方法:

为了要把我们的payload正确的带入目标网站的服务器进行逻辑验证,那么就需要知道对方使用的什么加密或者编码规则来处理数据的,比如说我们输入的密码被base64编码了,然后发送给后端,后端会进行解码过后再带入逻辑验证中去判断你输入的密码账号正确与否,那我们要测试有没有安全问题,输入一些恶意参数的话自然也需要把我们输入的payload进行同样的base64编码,这样在发送给服务器时,服务器才能正确的进行解码然后进行逻辑验证,如果你不用同样的编码规则的话,服务器无法正确解码,那逻辑验证就更不可能成功了。所以要记住一点,如果目标网站有加密或者编码数据的情况,一定要找出它然后同它保持一致。

前置知识:

作用域:简单来说就是程序运行起来时相关的数据值有哪些

调用堆栈:调用堆栈里的程序意思就是发起此请求时有哪些程序参与其中;这里面的程序执行顺序是从下到上的

js逆向·找到登录时目标网站的加密算法的几种方式

XHR:全称 XML HTTP Request

分析调试方法:

-文件流程断点

-代码全局搜索

-XHR提交断点

本文只介绍通过这三种方法找到加密算法的点;自己愿意用哪种就用哪种,反正学这三个的目的都只有一个。即找到目标网站的加密方法

  1. 第一种方法:文件流程断点

    • 点击登录之后,查看相关的数据包,可以在负载里发现我们输入的数据都被加密了;原本输入的明文手机号被加密成不认识的东西js逆向·找到登录时目标网站的加密算法的几种方式

    • 也可以在发起程序的选项卡里查看,发起此数据包时有哪些相关的程序参与其中​js逆向·找到登录时目标网站的加密算法的几种方式

      在相关的程序里选择一个你觉得最有可能是跟加密算法函数沾边的那个文件,然后点击进去查看(根据经验判断的,实在不行就一个个检查吧)我觉得最有可能的就是login.js文件了,所以我点击login那个js文件,跳转至相关代码上去了​​js逆向·找到登录时目标网站的加密算法的几种方式​​

      一看好多跟加密相关的东西那应该是找对了,找到关键的加密函数这,下一个断点在附近,然后再去点击一遍登录,让程序跑起来卡在这,然后再去控制台验证一下加密函数。

    • (为什么要断点后再去控制台进行验证呢?:因为如果不打断点的话程序一下就执行完成了,创建的变量啊,相关的数据也会直接在内存空间销毁,到时候你再去使用相关的函数方法,涉及到的变量什么的都已经不存在了,会报错提示你未定义相关函数或者变量,所以我们要设置断点让程序运行起来又不至于直接结束,趁相关方法还存在于内存当中的时候使用目标网站的相关函数达到目的)​js逆向·找到登录时目标网站的加密算法的几种方式

      这样就可以保证我们的payload跟目标网站使用相同的加密算法来加密数据了

  2. 第二种方法:全局代码搜索

    • 按住ctrl+shift+f在搜索里面去搜索关键字,什么加密啊,密码啊,password啊pass等关键字,快速定位到关键的相关代码上去,同样可以找到login.js这个加密文件,加密的函数方法也就在这个文件里面。怎么使用这个加密函数?同上面那个断点一样

      ​​js逆向·找到登录时目标网站的加密算法的几种方式​​

  3. 第三种方法:XHR提交断点

    • 在网络选项卡里找到此数据包请求的路径是哪个,然后把这个路径复制下来,到源代码选项卡里添加进去。

      js逆向·找到登录时目标网站的加密算法的几种方式js逆向·找到登录时目标网站的加密算法的几种方式添加完成后再次点击登录,就可以达到一个目的,即如果在运行程序的过程当中,如果URL涉及到你添加进去的路径时,程序会停下来。如下图:js逆向·找到登录时目标网站的加密算法的几种方式

      那就跟上面的一样了,在涉及的相关程序里找到你觉得跟加密方法相关的js文件,点进去找就行了。同样可以找到login.js 这个文件

最后再补充一点:​js逆向·找到登录时目标网站的加密算法的几种方式

上面说过作用域里面的值,就是程序运行到这一步时涉及到的相关的变量啊什么的此时的值。意思就是我刚才在网站输入的数据手机号啊,密码啊等明文数据,到这一步的时候,已经被加密成了密文了,那说明加密的动作也就在此之前了。找加密函数的时候也就该往上看了,或者就在附近。

但是我们在测试的时候需要测试的payload实在太多,一个一个这么试吗?显然是不太合适的。那就需要结合一些其它工具来批量实现了。这篇虽然简单,但是太长了,打算下一章再说。可以自己去了解一下jsEncrypter插件还有phantomjs-2.1.1-windows这两个东西,前者是burp的插件,后者是一个配合这个插件使用的可执行程序


Burp Suite--jsEncrypter插件

这个插件可以导入我们自定义的加密算法进去,作用是拿来对payload进行自定义批量加密处理的

使用方法:

  1. 下载phantomjs并把里面的bin目录添加环境变量

    https://phantomjs.org/download.html

  2. BurpSuite加载jsEncrypter插件下载地址和配置如下图:

    https://github.com/c0ny1/jsEncrypter/releases

    js逆向·找到登录时目标网站的加密算法的几种方式

  3. 对逆向的加密算法提取JS文件

    • 把目标网站负责加密的js文件下载到本地
    • ​​js逆向·找到登录时目标网站的加密算法的几种方式​​
  4. 把代码写入到模版中(引用JS和调用加密)

    jsEncrypter.0.3.2文件夹里的phantomjs_server.js:这个是模板文件,主要是这两块部分需要关注,如下图:

​​​js逆向·找到登录时目标网站的加密算法的几种方式​​​

  1. 运行刚写入的模版文件后插件连接测试

用phantomjs这个可执行程序,运行那个模板文件

js逆向·找到登录时目标网站的加密算法的几种方式

js逆向·找到登录时目标网站的加密算法的几种方式

  1. 正常设置发包后选择引用插件选项

    add添加一个扩展插件点击ok,然后就可以开始爆破了

js逆向·找到登录时目标网站的加密算法的几种方式文章来源地址https://www.toymoban.com/news/detail-711411.html

到了这里,关于js逆向·找到登录时目标网站的加密算法的几种方式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • JS逆向---国标哈希算法(MD5,SHA系列,HMAC加密以及相关案例详解)

    在 JavaScript 中和 Python中的基本实现方法,遇到 JS 加密的时候可以快速还原加密过程,有的网站在加密的过程中可能还经过了其他处理,但是大致的方法是一样的。 本篇文章主要讲述内容:消息摘要算法/安全哈希算法/散列消息认证码、密钥相关的哈希运算消息认证码:MD5、

    2024年02月03日
    浏览(61)
  • 【爬虫JS混淆分析】某网站票房响应数据加密(含JS补环境调用与Python解密算法)

    【作者主页】: 吴秋霖 【作者介绍】:Python领域优质创作者、阿里云博客专家、华为云享专家。长期致力于Python与爬虫领域研究与开发工作! 【作者推荐】:对JS逆向感兴趣的朋友可以关注《爬虫JS逆向实战》,对分布式爬虫平台感兴趣的朋友可以关注《分布式爬虫平台搭建

    2024年02月04日
    浏览(39)
  • 某网站DES加密逆向分析实战

    分析站点 : aHR0cDovL2VpcC5jaGFuZmluZS5jb20v 首先我们提交一下登陆信息: 搜索 j_password 查看加密函数: 把上图搜索到的 encryptPassword 函数拿出来分析一下:

    2024年02月11日
    浏览(29)
  • Js逆向教程-05明确js逆向的目标

    通过本地运行js代码那 实现脱离浏览器后 能够实现和浏览器上运行加密js的效果。 网站上完全都是JavaScript实现的加密,我们的目的要知道加密的整个过程,并且 本地 实现这个加密的过程,拿到和浏览器一样的加密的结果。 得到加密的结果之后就可以跳过浏览器,本地直接

    2024年02月10日
    浏览(28)
  • 爬虫逆向实战(二十)--某99网站登录

    主页地址:某99网站 1、抓包 通过抓包可以发现登录接口是AC_userlogin 2、判断是否有加密参数 请求参数是否加密? 通过查看“载荷”可以发现 txtPassword 和 aws 是加密参数 请求头是否加密? 无 响应是否加密? 无 cookie是否加密? 无 1、看启动器 查看启动器发现有一个 NDUser_L

    2024年02月11日
    浏览(37)
  • 爬虫+RPC+js逆向---直接获取加密值

    免责声明:本文仅做技术交流与学习,请勿用于其它违法行为;如果造成不便,请及时联系... 目录 爬虫+RPC+js逆向---直接获取加密值 target网址: 抓包 下断点 找到加密函数 分析参数 RPC流程 一坨: 二坨: 运行py,拿到加密值 优志愿_2024高考志愿填报系统-新高考志愿填报选科指南 数据往

    2024年04月14日
    浏览(23)
  • JS逆向分析某枝网的HMAC加密、wasm模块加密

    这是我2022年学做JS逆向成功的例子,URL:(脱敏处理)aHR0cHM6Ly93d3cuZ2R0di5jbi9hdWRpb0NoYW5uZWxEZXRhaWwvOTE= 逆向分析: 1、每次XHR的GET请求携带的headers包括: 2、该网站的JS文件采用webpack形式。找出关键的加密逻辑: 3、初步分析: (1)X-ITOUCHTV-Ca-Timestamp很明显是时间戳。 (2)X-ITO

    2024年02月08日
    浏览(33)
  • JS逆向案例:破解登录密码

    本人不是专业IT人员,但是对python爬虫这块非常感兴趣,在抖音上看了zhen老师的python全栈直播课程,果断选择加入zhen老师的VIP大家庭,给zhen老师投稿发文章还能挣钱, 50元 。 废话不多说,进入主题。最近在学习 JS逆向 方面的知识,由于之前做过12306的自动抢票软件,因此对

    2024年02月05日
    浏览(29)
  • webpack实战:某网站JS逆向分析

      好的逆向能够帮助我们了解加密实现,然后根据加密方式( md5,base64,res,des,rsa… )还原加密算法的过程。可以看看我之前的这篇文章:快速定位查找加密方式特征与技巧 目标站点 : aHR0cHM6Ly9hY2NvdW50LnBwZGFpLmNvbS9wYy9sb2dpbg== 此网站的用户名 userName 和密码 password 都是加密的,密

    2024年02月09日
    浏览(28)
  • JS加密在网页安全中的应用及逆向分析方法

    在当今互联网时代,网页加密技术的应用越来越广泛。在网页中,常见的加密方式包括三种:flash加密、密码控件加密和JS加密。虽然这三种方式各有优劣,但JS加密是目前最为普遍和灵活的加密方式。 JS加密的广泛应用主要源于它的灵活性和易用性。与flash加密相比,JS加密的

    2024年02月06日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包