UltraDebug

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: A C D R G Y M Z X S P
公益项目,接受捐赠
查看: 1411|回复: 0
收起左侧

[Web逆向] wasm转c调用实战

[复制链接]
applecloudcom

主题

0

回帖

UD

新手上路

UID
21
积分
33
注册时间
2022-2-12
最后登录
1970-1-1
2022-2-12 15:21:59 | 显示全部楼层 |阅读模式
本篇文章共介绍两个案例。在本篇文章中,之前文章讲过的内容会进行跳过,主要讲新的内容和知识,所以建议先看前置阅读

案例一:猿人学2022新春题

新学习的知识:
  • 导入函数环境检测处理
  • 二级指针取值
  • 编译为命令行方式调用
打开网址用f12抓包
wasm转c调用实战 - applecloudcom_UltraDebug
看到参数中有一个sign,通过调用堆栈,很容易找到其是调用sign函数计算的结果

wasm转c调用实战 - applecloudcom_UltraDebug

打断点后跟入,发现是调用wasm的导出函数

wasm转c调用实战 - applecloudcom_UltraDebug
搜索wasm下载,转成c文件

wasm转c调用实战 - applecloudcom_UltraDebug
在头文件中,可以看到有很多的导入函数,这里需要实现用到的函数的逻辑,最粗暴的方法是在所有的导入函数下断点,哪个运行到了就补哪一个

wasm转c调用实战 - applecloudcom_UltraDebug
例如这里调用了导入函数__wbindgen_is_undefined,根据js逻辑,就可以直接改为

[C] 纯文本查看 复制代码
u32 wbindgen_is_undefined(u32 p0i32){
    return 0;
}
SyntaxHighlighter Copyright 2004-2013 Alex Gorbatchev.
其他的如此类推,一直没有执行过的就直接赋值NULL
还有更多的精彩内容,作者设置为付费后可见
UltraDebug免责声明
✅以上内容均来自网友转发或原创,如存在侵权请发送到站方邮件9003554@qq.com处理。
✅The above content is forwarded or original by netizens. If there is infringement, please send the email to the destination 9003554@qq.com handle.
回复 打印

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|站点地图|UltraDebug ( 滇ICP备2022002049号-2 滇公网安备 53032102000034号)

GMT+8, 2025-11-8 20:18 , Processed in 0.033206 second(s), 11 queries , Redis On.

Powered by Discuz X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表