大众点评 web mtgsig 1.2分析

声明:

本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!
有相关问题请第一时间头像私信联系我删除博客!
前言

简单分析一下大众点评mtgsig1.2。

mtgsig

为了搞快点我就拿了一个脚手架弄了。

复制代码
const {VM, VMScript} = require('vm2');
const fs = require('fs');
const file = fs.readFileSync('./mtgsig.js')
// By providing a file name as second argument you enable breakpoints
const script = new VMScript(fs.readFileSync(file), file);
new VM().run(script)

然后开始补环境缺什么补什么。主要需要补的一些环境。

复制代码
XMLHttpRequest   = function XMLHttpRequest() { // 构造函数
};
catvm.safefunction(XMLHttpRequest);
XMLHttpRequest = catvm.proxy(XMLHttpRequest);
sessionStorage = {};
sessionStorage = catvm.proxy(sessionStorage);
indexedDB = {};
indexedDB = catvm.proxy(indexedDB);
document.createEvent = function createEvent(event_type) {
    if(event_type == 'TextEvent'){
        throw new TypeError("Illegal constructor");
    }
}
AudioContext = function AudioContext() { // 构造函数
};
catvm.safefunction(AudioContext);
AudioContext = catvm.proxy(AudioContext);
fetch = function fetch() { // 构造函数
}
catvm.safefunction(fetch);
fetch = catvm.proxy(fetch);
getOwnPropertyDescriptor_ = Object.getOwnPropertyDescriptor;
Object.getOwnPropertyDescriptor = function getOwnPropertyDescriptor(obj, prop) {
    return getOwnPropertyDescriptor_(obj, prop);
}
catvm.safefunction(Object.getOwnPropertyDescriptor);

token

这个随便抠一下代码就好了。

结果

总结

1.出于安全考虑,本章未提供完整流程,调试环节省略较多,只提供大致思路,具体细节要你自己还原,相信你也能调试出来。

侵权首页联系删除博客

相关推荐
Hello_wshuo4 分钟前
锅炉温控系统优化
linux·python·物联网
雪碧聊技术6 分钟前
如何界定人工智能和java开发二者的关系?
java·人工智能·二者关系界定
Chase_______8 分钟前
【JAVA基础指南(四)】快速掌握类和对象
java·开发语言
weixin_4707403610 分钟前
python生成环境部署
开发语言·python
piaopiaolanghua10 分钟前
Python中的SGP4轨道预报库
python·sgp4
Eiceblue10 分钟前
Python 实现 CSV 转 TXT 格式 (单文件 + 批量处理)
开发语言·python·visual studio code
Iridescent112111 分钟前
Iridescent:Day49
python
曲幽28 分钟前
从安装到上线:一份 Nginx 实战指南,让你的 Web 应用稳建安全
python·nginx·flask·fastapi·web·gunicorn·uvicorn
muxin-始终如一29 分钟前
Maven HTTP 仓库被阻止问题解决总结
java·http·maven
武斌33 分钟前
需要独立的作业队列?看看Quartz增强框架Quartz Plus
java·spring boot·后端