Sandboxie源码分析【hook源头分析】

本文深入探讨Sandboxie如何在启动子进程时进行hook操作。通过分析汇编代码,揭示了在64位和32位环境下,Sandboxie介入的关键点在于FindActCtxSectionString函数,以此接管进程加载,实现全面的hook工作。文章详细阐述了函数调用链,并以流程图形式总结了整个过程。
摘要由CSDN通过智能技术生成

研究Sandboxie知道,在Sandboxie一开始加载子进程时,就已经开始了hook工作。
那Sandboxie究竟是在哪一节点开始介入的呢?
本篇进行追根溯源。

上一篇提到,Dll_InitInjected()中对许多模块进行了初始化:
初始化
这时候,Sandboxie已经在对子进程模块进行hook工作了。

Dll_InitInjected()的上一层是Dll_Ordinal1(),再上一层就是汇编代码了。而汇编代码的调用又有64位和32位的区别。

注意:本文提到的64位是指,在64位操作系统下运行的64位程序。32位是指,在64位操作系统下运行的32位程序,即wow64

在64位中,Dll_Ordinal1()entry_asm.asm中被调用:
entry_asm
32位在lowlevel_code.c中调用:

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值