[逆向] 分析steam赠key网站giveaway.su的脚本检测原理 | 祭夜博客
  • 欢迎光临,这个博客颜色有点多

[逆向] 分析steam赠key网站giveaway.su的脚本检测原理

JavaScript msojocs 3年前 (2021-07-04) 1746次浏览 已收录 0个评论 扫描二维码
文章目录[隐藏]

前言

白嫖,我是认真的!

[逆向] 分析steam赠key网站giveaway.su的脚本检测原理

不用多说,想必已经知道此篇文章的目的了吧

分析思路

  1. 该网站需要安装一个浏览器插件才能加载出任务列表,所以可能改插件中存在相关验证步骤
  2. 网站前端js进行验证步骤

分析

寻找验证字段,在尝试提交任务时会提示验证码,如下:

[逆向] 分析steam赠key网站giveaway.su的脚本检测原理

在验证码表单中,发现了名为checkData的字段,应该为验证字段:

[逆向] 分析steam赠key网站giveaway.su的脚本检测原理

查看值结构似乎为base64编码,于是尝试拿去解码:

[逆向] 分析steam赠key网站giveaway.su的脚本检测原理

认真一看,这不就是网页源码吗。。。

于是,解决方案就很明了了

解决

自动任务脚本会对网页进行代码注入,实现UI,

那么,可以在提交任务之前(点击“Grab key”之前)将注入的代码删除即可

[逆向] 分析steam赠key网站giveaway.su的脚本检测原理

 

额外分析

真·分析,对代码进行分析,在检查之后,得知关键代码在前端的main.js
分析过程有待补充

//$(_0x3a8e8c(0x12c))["val"](window[_0x3a8e8c(0x162)](unescape(encodeURIComponent(document['documentElement'][_0x3a8e8c(0x165)]))) + '' + $(_0x3a8e8c(0x12c))["val"]());
// checkData算法
// 提交的时候直接移除添加的HTML?
let html = document['documentElement']['innerHTML'];
let _encodeURIComponent = encodeURIComponent(html);
$("#modal-captcha input[name='checkData']")["val"](window['btoa'](unescape(_encodeURIComponent)) +
      '' + $("#modal-captcha input[name='checkData']")["val"]());

// actionsData算法
var resultArr = [];
$('#actions [data-result]')["each"](function(_0x7e5ae3, ele) {
  // ele - 绿色打勾元素
  resultArr["push"]($(ele)["data"]("result"));
});
$("#modal-captcha input[name='actionsData']")["val"](window['btoa'](unescape(encodeURIComponent(resultArr['join'](',') + ''))));
$("#form-captcha")['attr']("action", $("#getKey a")["attr"]("href"));
$("#modal-captcha")["modal"]("show");

 


祭夜の咖啡馆 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:[逆向] 分析steam赠key网站giveaway.su的脚本检测原理
喜欢 (4)
[1690127128@qq.com]
分享 (0)
发表我的评论
取消评论
OwO表情
贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址