鸽子王带你玩wasm

简介: 鸽子王带你玩wasm

猿人学第十五题也出来啦

题目链接:http://match.yuanrenxue.com/match/15

十五题是一个WebAssembly类型简称wasm 看看介绍

下面 就由鸽子王小林弟弟来带你们玩




常规操作 先下一个XHR断点

然后堆栈找m的来源

能看到这里有加载了一个main.wasm 这就是我们今天的主角了

逻辑很清晰 但是 window.q是啥呢 要咋调用呢?咋玩呢?



无需担心 跟着我来

俩种玩法

node

由于node是支持WebAssembly的 所以直接导入wasm改写原来的代码就可以直接调用了

我直接手动把main.wasm文件转为Uint8Array

然后把手动改写代码

自己手敲一下理解一下


python

先装一个python-wasmer库

GitHub地址:https://github.com/wasmerio/wasmer-python

$ pip install wasmer==1.0.0a3
$ pip install wasmer_compiler_cranelift==1.0.0a3

GitHub里面就有使用方法

根据GitHub给出的方法再结合上网页上的使用方法

改写成python就是

顺便记一个小坑

Tips

如果安装好wasmer后运行不了

ImportError: Wasmer is not available on this system

经过咨询和观察 发现是python版本的问题 虽然作者说支持3.9 但是亲测不行

所以我手动将版本回滚到3.79 再次pip install wasmer后运行正常了

就这问题卡了我2个小时....害




最后Python运行

完美撒花 感谢各位大佬观看







[完]

相关文章
|
机器学习/深度学习
阿里Animate Anyone:让任何静态图像动起来
【2月更文挑战第17天】阿里Animate Anyone:让任何静态图像动起来
1254 3
阿里Animate Anyone:让任何静态图像动起来
|
6月前
|
开发工具 C++ 开发者
如何判断电脑上已安装了哪些版本的VC运行库?
本文介绍如何检测电脑中已安装的VC运行库(Microsoft Visual C++ Redistributable)版本,涵盖图形界面、命令行、注册表、批处理脚本及专业工具五种方法,适用于不同技术水平用户,帮助准确识别VC++各版本(如2010、2013、2015-2022)及系统架构(x86/x64),确保软件兼容性。
2611 12
|
Web App开发 监控 前端开发
前端必备浏览器调试工具
【8月更文挑战第19天】前端必备浏览器调试工具
887 0
|
数据安全/隐私保护
aes之ecb模式的加密解密
aes之ecb模式的加密解密
|
存储 弹性计算 Linux
使用ECS和OSS搭建个人网盘
本场景主要介绍如何基于ECS和OSS快速搭建一个个人网盘。
|
机器学习/深度学习 存储 算法
长短时记忆网络(LSTM)在序列数据处理中的优缺点分析
长短时记忆网络(LSTM)在序列数据处理中的优缺点分析
2450 1
长短时记忆网络(LSTM)在序列数据处理中的优缺点分析
|
机器学习/深度学习 分布式计算 监控
业界难题“模拟点击”,端上如何实时防守?
本文针对模拟点击的黑产实时防控问题,介绍过去2年蚂蚁集团在技术方面的工作,旨在介绍风险存在的原因、风险的特点、风险的技术分析以及风险的防控方法。
T盾AST混淆还原
T盾AST混淆还原
511 0
|
SQL 存储 分布式计算
Hudi:数据湖技术引领大数据新风口
Hudi:数据湖技术引领大数据新风口
475 0