一个简单软件阻碍OD调试的方式:

1.

API函数

IsDebuggerPresent

确定调用进程是否由用户模式的调试器调试。

语法

BOOL WINAPI IsDebuggerPresent(void);

参数

该函数没有参数

返回值

如果当前进程运行在调试器的上下文,返回值为非零值。

如果当前进程没有运行在调试器的上下文,返回值是零。

2.第一个示例:

该程序通过IsDebuggerPresent  函数的返回值为1(非零值)使程序以不同的方式结束,阻止调试软件OD对自己调试,返回值为1时让调试过程跳进系统领空,不能进行操作的区域,使程序(进程)异常终止。

3.第二个示例:

该程序通过IsDebuggerPresent  函数的返回值为1(非零值)使程序无条件直接跳转到(JMP跳转)程序结束的位置,使程序(进程)运行结束。

4.第三个示例:

该程序通过IsDebuggerPresent  函数的返回值为1(非零值)使程序无条件直接跳转到一个受保护的地址,使程序崩溃(我认为是被操作系统踢出来的)。

程序阻碍OD调试的方式1相关推荐

  1. 【Windows 逆向】OD 调试器工具 ( CE 工具通过查找访问的方式找到子弹数据基地址 | 使用 OD 工具附加游戏进程 | 在 OD 工具中查看子弹数据地址 | 推荐 )

    文章目录 前言 一.CE 工具通过查找访问的方式找到子弹数据基地址 二.使用 OD 工具附加游戏进程 三.在 OD 工具中查看 058E2F1C 地址数据 前言 上一篇博客 [Windows 逆向]O ...

  2. 【Windows 逆向】OD 调试器工具 ( CE 工具通过查找访问的方式找到子弹数据基地址 | 使用 OD 工具附加游戏进程 | 在 OD 工具中查看 05869544 地址数据 | 仅做参考 )

    文章目录 一.CE 工具通过查找访问的方式找到子弹数据基地址 二.使用 OD 工具附加游戏进程 三.在 OD 工具中查看 05869544 地址数据 一.CE 工具通过查找访问的方式找到子弹数据基地址 ...

  3. OD 调试带启动参数的程序

    看到有这样一个问题: 怎么调试需要命令行启动的软件??没有命令行启动程序就自动关闭,命令行不是固定的,用od怎么调试这种软件? 带参数程序的调试 模拟一个需要命令行的Demo [cpp] view p ...

  4. OD调试3--reverseMe

    OD调试3:reverseMe.exe(reverse就是逆向的意思) 运行效果图: 1关于寄存器 寄存器就好比是CPU身上的口袋,方便CPU随时从里边拿出需要的东西来使用.今天的程序中涉及到九个寄存 ...

  5. 通过WiFi对STC单片机程序下载和调试

    简 介: 设计了基于WiFi-UART的STC单片机下载调试模块,这样便于对嵌入式系统进行远程调试开发,特别是在一些具有移动功能的平台,强电平台以及需要实时监视和修改程序的应用场合. 关键词: STC ...

  6. OD调试9—实例:深入分析代码完成软件破解

    OD调试9-实例:深入分析代码完成软件破解  爆破,是最初级的解决方案,不到万不得已,我们不直接修改JNZ通关.因为这样子的话,我们就享受不到破解.逆向的真正乐趣了. 了解程序背后按照剧情发展经常会出 ...

  7. 【Windows 逆向】OD 调试器工具 ( OD 调试数据时硬件断点对应的关键代码 | 删除硬件端点恢复运行 )

    文章目录 前言 一.OD 调试数据时硬件断点对应的关键代码 二.删除硬件端点恢复运行 前言 在 [Windows 逆向]OD 调试器工具 ( CE 中获取子弹动态地址前置操作 | OD 中调试指定地址 ...

  8. 【Windows 逆向】OD 调试器工具 ( CE 中获取子弹动态地址前置操作 | OD 中调试指定地址的数据 )

    文章目录 一.CE 中获取子弹动态地址前置操作 二.OD 中调试子弹数据 一.CE 中获取子弹动态地址前置操作 在上一篇博客 [Windows 逆向]OD 调试器工具 ( CE 工具通过查找访问的方式 ...

  9. stc8g1k08程序范例_通过WiFi对STC单片机程序下载和调试

    简介 本文设计了基于WiFi-UART的STC单片机下载调试模块,这样便于对嵌入式系统进行远程调试开发,特别是在一些具有移动功能的平台,强电平台以及需要实时监视和修改程序的应用场合. 本文相关的下载资 ...

  10. Redux简介以及Redux应用程序中的状态更新方式

    by Syeda Aimen Batool 通过Syeda Aimen Batool Redux简介以及Redux应用程序中的状态更新方式 (An intro to Redux and how sta ...

最新文章

  1. 不占用多余空间实现值的交换——异或运算
  2. 用友2020校招java笔试题_用友Java类笔试题大全
  3. 动漫App下载单页界面HTML源码带弹幕
  4. mysql geocode_百度地图Geocoding API获取特定地区或地址的经纬度信息,然后在MySql数据库多表循环遍历更新...
  5. php 实现ftp 多文件,php – 使用一个连接读取FTP目录中每个文件的内容
  6. Ubuntu 16.04 LTS 安装Mongodb 3.4
  7. Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件
  8. 哨兵系列卫星_美国宇航局 quot;哨兵6quot;海平面与气候观测卫星发射任务将于11月进行...
  9. knockoutjs入门要点
  10. 索尼中兴,平井封神?(转)
  11. 全面解读流程图|附共享单车摩拜ofo案例分析
  12. 研发基于GUI的随机数据生成工具(V4.0完整版:设置新窗口显示数据并写入文本文件)
  13. RFQ 、IFB、RFP 、RFI的区别是什么
  14. 2023年进入TK海外直播公会,应该怎么玩?怎么申请?
  15. C语言零基础入门级数据类型+运算符+控制流+ASCII 码表+面试题【系统学习第二天】
  16. Map集合及三层嵌套
  17. Tekton笔记(四)之Authentication及catalog skopeo
  18. 2022年国自然正式放榜,如何解读基金立项结果?(附查询方法)
  19. echarts 动态数据动画效果
  20. 计算机操作系统学习之吸烟者问题

热门文章

  1. python解释型语言_python是解释型语言吗?会被编译吗?
  2. appiumpython框架实例_GitHub - feiyangzhu/python-appium: 基于PageObject UI自动化测试框架,支持Android/iOS...
  3. php 获取小数精度,php小数精度问题
  4. python优秀源码2019_SUCTF2019,python源码分析,漏洞原理
  5. wordpresd免登录发布接口php_实现wordpress的ajax接口请求学会admin-ajax.php的利用
  6. 小区物业管理代码实现_全区58个老旧小区有了新“管家”
  7. ccf小明种苹果(续)
  8. 用PHP写距离圣诞节还有多久,距离圣诞节还有多少天
  9. matlab中idwt,matlab图片处理
  10. 如果有一天不做程序员了,还能入什么行业?