【抓包分析】通过ChatGPT解密还原某软件登录算法实现绕过手机验证码登录-CSDN博客
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
文章目录
前言
由于C站版权太多所有的爬虫相关均为记录不做深入
今天发现github上没有这个东西抓包后发现软件上的安全防护做的很多通过对比发现cookie和软件接口请求一样所以可以通过网页接口代替APP接口最后的数据都是一样的
实现效果
APP登录效果
虽然被短信验证码卡住了但如果能有其他办法跳过我会选择后者
绕过后效果
通过手机号和密码换算加密后的字符串进行登录换到Cookie 和token
成品
广告
Python爬虫项目实战系列文章
⭐⭐欢迎订阅⭐⭐
【Python爬虫项目实战一】获取Chatgpt3.5免费接口文末付代码过Authorization认证
【Python爬虫项目实战二】Chatgpt还原验证算法-解密某宝伪知网数据接口
⭐⭐欢迎订阅⭐⭐
抓包分析
一、定位加密文件
找到加密js
代码如下
var t = $("#t").val();
if(t == "true"){
var transferKey = "u2oh6Vu^HWe4_AES";
pwd = encryptByAES(pwd, transferKey);
console.log(pwd);
}
找到加密方法
代码如下
function encryptByAES(message, key){
let CBCOptions = {
iv: CryptoJS.enc.Utf8.parse(key),
mode:CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
};
let aeskey = CryptoJS.enc.Utf8.parse(key);
let secretData = CryptoJS.enc.Utf8.parse(message);
let encrypted = CryptoJS.AES.encrypt(
secretData,
aeskey,
CBCOptions
);
return CryptoJS.enc.Base64.stringify(encrypted.ciphertext);
}
二、编辑JS启用本地替换
1、编辑代码保存开启断点调试
写入console.log(pwd);进行调试将产生的账号密码填入我的接口进行请求测试
2、运行后产生账号和密码
复制产生的加密账号和密码给我的程序接口进行测试登录
3、复制到接口程序进行测试
返回登录成功以及cookie数据表明这个数据的确是通过上述方法进行加密的
利用Chatgpt进行代码转换
由于代码是JS写的于是我想将他转换成Python这个事情交到了我的好伙伴Chatgpt的身上了
from Crypto.Cipher import AES
import base64
def encrypt_by_aes(message, key):
key = key.encode('utf-8')
message = message.encode('utf-8')
# 使用AES的CBC模式进行加密
cipher = AES.new(key, AES.MODE_CBC, iv=key)
# 对消息进行填充使用PKCS7填充
block_size = AES.block_size
padded_message = message + (block_size - len(message) % block_size) * chr(block_size - len(message) % block_size).encode()
# 加密消息
ciphertext = cipher.encrypt(padded_message)
# 返回Base64编码的密文
return base64.b64encode(ciphertext).decode('utf-8')
# 在这里设置密钥和消息
transferKey = "u2o****S"
message = "qw******"
phone="15*********9"
# 使用函数进行加密
we = encrypt_by_aes(phone, transferKey)
passw = encrypt_by_aes(message, transferKey)
print("加密后的消息:", we)
print("password:", passw)
获取计划任务id
通过cookie换取token后进行请求发送换取pcid
and pcmajorid
#获取签到任务id
cookies = {
'source': '""'
}
headers = {
'Host': 'sx.chaoxing.com',
'Connection': 'keep-alive',
'Upgrade-Insecure-Requests': '1',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 17_0_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.0.1 Mobile/15E148 Safari/604.1',
'Referer': 'http://i.mooc.chaoxing.com/',
'Accept-Language': 'zh-CN,zh-Hans;q=0.9',
}
params = {
's': '',
}
response = requests.get('http://sx.chaoxing.com/dgsx/space', params=params, cookies=cookies, headers=headers)
print(response.text)
模拟数据请求
将数据进行替换
data = {
'id': '0',
'type': '0',
'pcid': '7**1',
'pcmajorid': '2***1',
'address': '广东********号',
'geolocation': '9*8.5***2,24.4****7',
'remark': '',
'workStart': '',
'workEnd': '',
'images': '',
'allowOffset': '3000',
'offset': 'NaN',
'offduty': '0',
'changeLocation': '',
}
发送请求后的模拟结果
登陆成功
p1: 9**4, p2: 24***2
{"success":true,"msg":"打卡成功","info":{"id":100383225,"status":1}}
打卡成功
{'url': 'http%3A%2F%2Fmooc1-2.***.com%2Fvisit%2Fcourses%2Fstudy%3Fs%3D83e3800a41848cf6c0a327c3a174de78', 'status': True}
登陆成功
p1: **4, p2: 3***
{"success":true,"msg":"打卡成功","info":{"id":100383227,"status":1}}
打卡成功
完结撒花由于版权问题相关代码不能放出来以上仅是一个逆向分析记录
最后
以上就是今天的抓包分析
通过ChatGPT解密还原某软件登录算法实现绕过手机验证码登录的教程本文章仅用于学习记录
希望你能喜欢我的其他作品
《记一次云之家签到抓包》
《记一次视频抓包m3u8解密过程》
《抓包部分软件时无网络+过代理检测 解决办法 安卓黄鸟httpcanary+vmos》
《Python】记录抓包分析自动领取芝麻HTTP每日免费IP成品+教程》
《某课抓包视频 安卓手机黄鸟+某课app+VirtualXposed虚拟框架》
推荐专栏
该专栏往期文章
《【Python爬虫项目实战一】获取Chatgpt3.5免费接口文末付代码过Authorization认证》
如果感觉看完文章还不过瘾欢迎查看我的其它专栏
如果你也喜欢爬虫抓包分析请关注我我还完成过很多独立的项目例如滇医通等等脚本但是由于版权的原因下架了爬虫这一类审核比较严谨稍有不慎就侵权违规了所以在保证质量的同时会对文章进行筛选
如果对爬虫感兴趣请收藏或者订阅该专栏哦《Python爬虫脚本项目实战》如果你有项目欢迎联系我我会同步教程到本专栏
Python爬虫项目实战系列文章
⭐⭐欢迎订阅⭐⭐
【Python爬虫项目实战一】获取Chatgpt3.5免费接口文末付代码过Authorization认证
【Python爬虫项目实战二】Chatgpt还原验证算法-解密某宝伪知网数据接口
⭐⭐欢迎订阅⭐⭐
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |