无痕HOOK方式=硬断+VEH
无痕HOOK方式=硬断+VEH
BOOL APIENTRY DllMain( HMODULE hModule,DWORD ul_reason_for_call,LPVOID lpReserved)
{switch (ul_reason_for_call){case DLL_PROCESS_ATTACH:{AddVectoredExceptionHandler(1, (PVECTORED_EXCEPTION_HANDLER)ExceptionHandler);SetHwBreakpoint();}case DLL_THREAD_ATTACH:{SetHwBreakpoint();}case DLL_THREAD_DETACH:case DLL_PROCESS_DETACH:break;}return TRUE;
}void SetHwBreakpoint()
{CONTEXT ctx;ctx.ContextFlags = CONTEXT_ALL;GetThreadContext(GetCurrentThread(), &ctx);ctx.Dr0 = 0x6f3a20dd;ctx.Dr1 = 0x6f361f7b;ctx.Dr7 = 0x405;SetThreadContext(GetCurrentThread(), &ctx);
}DWORD NTAPI ExceptionHandler(EXCEPTION_POINTERS * ExceptionInfo)
{if ((DWORD)ExceptionInfo->ExceptionRecord->ExceptionAddress == 0x6f3a20dd){//直接改eip模拟jmpExceptionInfo->ContextRecord->Eip += 0x34;return EXCEPTION_CONTINUE_EXECUTION;}else if ((DWORD)ExceptionInfo->ExceptionRecord->ExceptionAddress == 0x6f361f7b){//直接设eax为零模拟mov eax,0ExceptionInfo->ContextRecord->Eax = 0;ExceptionInfo->ContextRecord->Eip += 5;return EXCEPTION_CONTINUE_EXECUTION;}else{//在异常handler里重设drx防止断点被意外清除ExceptionInfo->ContextRecord->Dr0 = 0x6f3a20dd;ExceptionInfo->ContextRecord->Dr1 = 0x6f361f7b;ExceptionInfo->ContextRecord->Dr7 = 0x405;return EXCEPTION_CONTINUE_SEARCH;}
}
无痕HOOK方式=硬断+VEH相关推荐
- 各种HOOK方式和检测对抗方法
一.什么是HOOK? hook翻译过来是拦截的意思, 我们很多时候也叫钩子,其实是很形象的. hook有什么作用呢? 1.当代码执行到某行时,获取寄存器值和内存里的值,进行调试分析,例如hook明文包 ...
- Windows桌面实现之八(DirectX HOOK 方式截取特殊的全屏程序之二)
by fanxiushu 2019-04-18 转载或引用请注明原始作者. 接上文. WIN7以上系统WDDM虚拟显卡开发(WDDM Filter/Hook Driver 显卡过滤驱动开发之一) 这篇 ...
- 【Android 插件化】Hook 插件化框架 ( 使用 Hook 方式替换插件 Activity 的 mResources 成员变量 )
Android 插件化系列文章目录 [Android 插件化]插件化简介 ( 组件化与插件化 ) [Android 插件化]插件化原理 ( JVM 内存数据 | 类加载流程 ) [Android 插件 ...
- 怎么设置谷歌浏览器默认以无痕浏览方式打开
方法一:设置谷歌浏览器默认以无痕浏览方式打开的步骤是: 1.右击桌面上的谷歌浏览器图标: 2.然后点击属性: 3.打开的属性对话框中点击快捷方式: 4.在目标框中的内容后面按一个空格后再输入--inc ...
- WPF 海康威视网络摄像头回调方式实现断连提示,降低时延
项目需要使用海康威视网络摄像头接入实时视频数据,使用海康威视官方SDK开发,发现没有断连提示的功能,故开发了一个断连提示的功能 在开发过程中遇到以下问题: 1.延迟2S左右,后咨询海康威视技术支持,需 ...
- Android hook方式抓包
前言 在跟大佬学习的时候发现另一种抓包方式,采用frida hook socket 字节流即可,哪里还需要管什么证书绑定,双向认证? HTTP抓包原理 样本案例 class MainActivity ...
- (4.6.29.3)插件化之代码加载:启动Activity等四大组件之hook方式
文章目录 一.代理模式和Hook原理 1.1 Hook 原理 1.2 代理模式 二.Binder Hook 2.1 分析:系统服务的获取过程 2.2 寻找Hook点 2.3 hook Binder示例 ...
- 淘宝 APP 网络架构演进与弱网破障实践
作者:沈良炜 阿里大淘宝终端体验平台团队 面对移动互联网络下复杂多变的网络环境,如何提供更稳定可靠的请求性能,保障用户的加载浏览体验?本文将为大家分享淘宝APP统一网络库的演进. 一.引言 自2013 ...
- ce变速注入dll失败_[LAB]一种无痕Dll模块注入方式
0x00 前言 方式:CreateRemoteThread 需要:visual studio 2015 需要:进程模块查看器,如[PCHunter][ProcessHacker]等. 需要:创建一个用 ...
- 用Hook的方式实现防抖
需要进行页面防抖是前端编程时经常遇到的问题了.如果不太了解什么是防抖的话,可以参考浅谈 JS 防抖和节流. 这篇文章,我们分别用传统方式来实现防抖和用Hook方式实现防抖. 传统方式 const de ...
最新文章
- 获得html元素自身的宽度
- 【专升本计算机】甘肃省普通高等学校专升本考试计算机全真模拟试卷(一)
- AI Challenger 2018:细粒度用户评论情感分析冠军思路总结
- emmet语法 1127
- python爬虫框架源码_python爬虫的基本框架
- 你了解中国的中小企业了吗?
- 针对Android智能电视研发的,论Android智能电视盒子必装应用之一ES
- yyuc视图未更新,控制器修改可以看到,视图无法更新,提示Allowed memory size of exhausted
- jdy ble sdk android,JDY-18蓝牙模块 连接blinker超时
- stm32入门开发板选野火还是正点原子呢?
- 投票 java_Java基础之简单投票程序
- 拓嘉启远:拼多多购物运输中的商品能拒收吗
- SpringBoot电商项目之购物车下单(沙箱支付)
- Word里面怎么才能输入平方
- 注意!你的论文可能存在问题,论文引用失范的七大表现
- 关于关于_WIN32_WINNT的说明
- CentOS 安装 Docker 教程
- 小龙虾的做法大全 你想知道的做法全部安排上
- 程序员面试还不敢要高薪资?程序员面试谈薪资的6大技巧分享,最全Java架构师技能图谱
- IAR MSP430头文件中的一些解释