js逆向 万博体育登录

郑重声明

  • 郑重声明:本项目的所有代码和相关文章, 仅用于经验技术交流分享,禁止将相关技术应用到不正当途径,因为滥用技术产生的风险与本人无关。

1、进入万博登陆页面,输入错误的账号和密码,进行抓包分析

接口1:

  • url:https://cn.fawmx.com/service/verifycode?x=0.508143619757889
  • 请求方式:get
  • 查询参数:x=Math.random()
  • 响应:验证码图片

接口2:

  • url:https://cn.fawmx.com/service/vpkey

  • 请求方式:get

  • 响应:

    {"exponent":"AQAB","modulus":"ALk9dqw5X2JguUTJbSpaDckwAmcePQXhGb3W+0wJD/5Y35Ad8LVpqLtkg7jb8qhLVyGKTvH0GMXsj/NiSISnDCqJwtL4IxM8GIY4JUu/BeRwoQ6/EufYFCE3S7PupEaHXBi6Kq4knpBnWy012tVOr4Ag9pUElsN2Joq8Foj6xxrZ"}
    

接口3:

  • url:https://cn.fawmx.com/ee/loginverification

  • 请求方式:post

  • 请求体:

    eeblackbox: 0002MDAwN0xTVE9LRU4wMDI0ZTM2MDFiNzctZjk3Ni00YWZkLTl......
    info: ssgdfgefs
    p:
    fkey: 0
    
  • 响应:

    {"success":true,"response":"4b765548c92RfvwhK5NndYk7MGAUY8SIZ\/vdywgTzbqcONFR9nrZVGgYum7yqrPqaYe648ruOKRRZeyT+Dv5xwijVtqs2O7jutYKCzS+4\/Y+VYKM\/tsh+os\/qSX0d4|||","msg":""}
    

接口4:

  • url:https://cn.fawmx.com/kz/member/loginAdvance?r=0.49279420817772324

  • 请求方式:post

  • 查询参数:r=Math.random()

  • 请求体:

    loginpwd: MaVdHe0mUbcIJvdBqsMaYmE.....  // 加密后的密码,需破解
    loginame: ssgdfgefs         // 用户名
    verifycode: asdf            // 验证码
    fkey: 4b765548c92RfvwhK5NndYk7MGA......  // 接口3返回的,需破解
    captchaMethod: 0
    captchaToken:
    loginMethod: 0
    
  • 响应体:

    {"c":1002,"m":"user doesn't exists","d":null}
    

很明显,接口4是登陆接口,需要破解它,通过搜索 loginpwd 定位参数位置,并调试。

注意看rs就是接口2返回的,pwd就是密码,RSAKey则是rsa非对称加密。

RSAKey对象来自将rsa.js文件。

将此文件和关键代码复制到本地,并简单补一下环境,就能成功运行。

navigator = {};
window= global;
navigator.appName = 'Netscape';
window.crypto = require('crypto');
......// rsa.js文件代码省略
function start(rs,pwd) {let rsaKey = new RSAKey();rsaKey.setPublic(b64tohex(rs.modulus), b64tohex(rs.exponent));return hex2b64(rsaKey.encrypt(pwd));
};

接下来需要破解 fkey 参数,fkey参数由接口3返回,首先搜索eeblackbox

在元素中继续搜索,这里其实是一个坑,eeblackbox并不是静态的,我也是使用requests库请求后才知道的

继续在元素中搜索eeblackbox,定位到关键位置

通过E2GetBlackbox函数进入关键文件EagleEye.js

通过调试EagleEye.js,发现这个文件会收集浏览器上的一些基本指纹(plugins, userAgent, platform…)和EagleEye.js文件中的一些字符串(这些字符串是动态的),加密生成eeblackbox。

如果把此文件复制到本地,进行补环境的话,则耗费时间精力过大,最好的解决方法是扣代码,将关键代码扣取到本地,魔改魔改,就能成功获取eeblackbox参数。

var _i_e_frmt = {......};
var _b_6 = {......};
var _i_cs = {......};
function encrypt(e) ......;
function E2GetBlackbox() ......;
function start(_i_gh) {_i_cs._i_gh = _i_gh;return E2GetBlackbox();
}

得到eeblackbox参数后,携带eeblackbox请求接口3,就能获取fkey参数。

js逆向 万博体育登录相关推荐

  1. android 微博分享回调函数,【JS逆向】新浪微博登录RSA+其他 | 每日JS

    已迁移平台:segmentfault,搜索 erma0 换平台了,简书发什么都锁定,广告一堆,趁早倒闭吧. 第六天 JavaScript逆向练习6 0x01 目标网址 0x02 定位JS 1. 随便输 ...

  2. 你一定不知道爬虫js逆向还能登录芒果TV吧!

    前言 最近在捣鼓js这一块的知识,顺便给大家分享一个练手学习的小项目,让自己在多了解一下爬虫的魅力,js逆向登录芒果TV 目标地址 网址:8ec200330de7c741bd39afc56e043e6 ...

  3. Js 逆向:微博登录

    1.先分析参数: su,sp是必要的. 其中su是加密后的账号,很简单就是个bs64,不再说了. 2.直接搜参数,这个时候要搜代表性的,特殊的.例如pwencode. 很好只有一个 两种加密,一个是R ...

  4. 【JS 逆向百例】Fiddler 插件 Hook 实战,某创帮登录逆向

    关注微信公众号:K哥爬虫,QQ交流群:808574309,持续分享爬虫进阶.JS/安卓逆向等技术干货! 声明 本文章中所有内容仅供学习交流,抓包内容.敏感网址.数据接口均已做脱敏处理,严禁用于商业用途 ...

  5. 人人网登录并写留言板(Requests,js逆向)

    一.简介 主要实现人人网登录以及发布留言板信息 requests js逆向 二.实现过程 2.1 登录(案例使用账号为18888888888 密码123456 后面成功登录使用的是自己的账号) 登录链 ...

  6. js逆向加密五邑大学教务系统密码AES实现模拟登录(仅供参考)

    最近下班无聊,就看了一下之前写的教务系统模拟登录代码(python-爬虫),整体逻辑大概自己总结了一下: 1.请求验证码图片. 2.对输入的密码进行加密. 3.封装账号,密码,验证码,发送post请求 ...

  7. JS逆向steam登录

    JS逆向steam登录 前言: 我们爬虫有时候,会遇到登录才能获取到数据的情况,最开始的时候我们只需要加入请求的data参数就可以,可是现在网站为了反爬,对登录的密码或者账号都做了加密处理,如果我们不 ...

  8. 2021-09-29 微博扫码登录获取cookie,附带账号密码js逆向解密过程(完结)

    一.前言 作者:tiezhu 接下来就是微博的js逆向了,这里需要使用到WebStorm WebStorm下载 本文章仅供学习研究,如若侵犯到贵公司权益请联系229456906@qq.com第一时间进 ...

  9. JS逆向之美团网模拟登录h5Fingerprint、password(RSA)加密参数解析

    文章目录 前言 一.页面分析 二.加密解析 1.password解析 加密定位 参数解密 2.h5Fingerprint解析 加密定位 参数解密 3.python调用模拟请求 总结 前言 最近和几位大 ...

最新文章

  1. LeetCode 817. Linked List Components
  2. k8s实现jenkins master-slave分布式构建方案
  3. layui按钮展开、_layui框架,点击某个按钮,让layui的日期插件选中的值清空
  4. 在VS 2010中查询和导航代码
  5. mysql按日期查询数据_mysql按日期查询数据
  6. 《Redis设计与实现》学习笔记-单机数据库
  7. 计算机一级题库百度云0,全国计算机等级考试一级题库完整.pdf
  8. 如何用计算机求矩阵的逆矩阵,逆矩阵的求法
  9. iOSRGB常用的色值
  10. 这一年,我所阐释的Linux哲学
  11. 【python--爬虫】彼岸图网高清壁纸爬虫
  12. MFC中ShowWindow函数
  13. 计算机的数字音乐,论数字音乐作曲
  14. 让老公“寒心”的对话 (转)
  15. STM32通过IIC读取MPU6050原始数据过程详解
  16. Prometheus监控docker容器
  17. php利用表格敬将所选择的数据显示出来,单元格下拉筛选设置/Excel对筛选后的单元格进行下拉填充...
  18. Android 微信分享与QQ分享功能(原生实现)
  19. CTA 策略分享之一
  20. 中国象棋棋盘java_Java中国象棋博弈程序探秘[2]——棋盘的表示

热门文章

  1. 8.一键生成微信个人专属数据报告(了解你的微信社交历史)
  2. qt通过ui设计师添加界面到代码步骤
  3. 线性电源与开关电源的比较
  4. 方法论只能用来避坑,提高下限
  5. 8道Python高级面试题
  6. 二分归并算法实验报告
  7. 九 Python 类与对象详解,这是软件工程师的分水岭
  8. 使用python加PyQt5,利用QMediaPlayer写一个简易的音乐播放器(进度条拖动,音量改变,播放停止切换,歌曲列表))
  9. Swing贪吃蛇游戏(四):增加游戏得分排行榜功能
  10. configure: error: Cannot find php-config.