南瓜电影signature_nonce&signature_secret算法破解

南瓜电影signature_nonce&signature_secret算法破解-聆风小站
南瓜电影signature_nonce&signature_secret算法破解
此内容为付费阅读,请付费后查看
199
立即购买
您当前未登录!建议登陆后购买,可保存购买订单,凭订单享受售后更新服务
付费阅读

介绍

在爬取南瓜电影(https://www.vcinema.cn/)视频播放链接时,会验证接口请求头里的参数,有些是固定的可以直解复制粘贴,有些是需要算法生成的需要破解。

请求头参数

参数名称参数值是否固定是否必须
Api_versionAPI版本,如:5.1.9
App_versionAPP版本,如:3.3.1
Channel通道,如:PC02
Cid5abb1633e-a6a10d-ef79
Content-typeapplication/json; charset=UTF-8
Credentialsinclude
Device_id同Cid
Device_infoWindows_Chrome(129.0.0.0)
FormatJSON
Platform6
Platform_nametv-pc
Session_id0
Signature_nonce签名随机数
Signature_secret签名密钥
Timestamp13位时间戳
User-Agent设备UA
User_id用户ID,随意,默认0
Verify_info验证信息
以上参数中,Cid/Device_id和Verify_info可直接访问网页源代码获取!

结合上表,参数中只有Signature_nonce和Signature_secret需要破解生成方式。

Signature_nonce和Signature_secret破解

打开开发者工具搜索“signature_nonce”可发现此参数在“7bc7b6d.js”文件中,如图1:

图片[1]-南瓜电影signature_nonce&signature_secret算法破解-聆风小站
图1

进入此文件搜索“signature_nonce”,可定位至生成函数”_(0, r)“,r为13位时间戳,如图2

图片[2]-南瓜电影signature_nonce&signature_secret算法破解-聆风小站
图2

打个断点可发现”_“函数的具体内容,如图3,此函数中,r为0~65536之间的随机整数,n为传入的13为时间戳字符串,再对r和n拼接成的新字符串进行加密,最后得到signature_nonce参数。

图片[3]-南瓜电影signature_nonce&signature_secret算法破解-聆风小站
图3

在Object(l.b)处打个断点,可发现加密函数内容,如图4,可知这是AES-CBC加密,密钥key和偏移量iv都已经知晓。

图片[4]-南瓜电影signature_nonce&signature_secret算法破解-聆风小站
图4

再往下走可找到Signature_secret参数生成函数,如图5,可以看到先通过hmacsha1加密(e为加密字符串,t为盐),再进行一次加密,得到最后的Signature_secret参数。

图片[5]-南瓜电影signature_nonce&signature_secret算法破解-聆风小站
图5

在stringify处断点可以找到第二次加密的函数,如图6:

图片[6]-南瓜电影signature_nonce&signature_secret算法破解-聆风小站
图6

通过断点调试可知,字符串e为:POST&%2F&action%3D%252Fmedia%252Fget_play_movie_urls_v3%26api_version%3D5.1.9%26app_version%3D3.3.1%26cid%3D0866b88ad-a8beeb-7284%26device_id%3D0866b88ad-a8beeb-7284%26format%3DJSON%26platform_name%3Dtv-pc%26session_id%3D0%26signature_nonce%3Dac80a63d8a90dce64cc6d521e46fcfe0213b70801414ff600687a1e59bb3c4a7%26timestamp%3D1727972213294%26user_id%3D0,此字符串并不是固定的,其中POST为请求方式,根据不同接口请求方式变化;media%252Fget_play_movie_urls_v3为接口路径(https://open-web-api-v2.vcinema.cn/v5.0/media/get_play_movie_urls_v3),随不同接口而变化;其它参数和header里的对应。

t为token拼接”&“后的值,token有两个获取方法:一是之间访问网页源代码,通过正则获取;二是通过接口:https://oauth-api.vcinema.cn/apply_api_token获取,GET请求,header携带上表所有参数,signature_secret值留空即可。

图片[7]-南瓜电影signature_nonce&signature_secret算法破解-聆风小站
接口https://open-web-api-v2.vcinema.cn/v5.0/media/get_play_movie_urls_v3测试

Signature_nonce和Signature_secret的PHP函数

备注

有基础的可以自己根据方法写,如果不会的就拿成品吧!


—— 本页内容已结束,喜欢请分享 ——
© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容