在IsDebuggerPresent下断,步入得到如下代码:

750E38F0 |  A1            | mov eax,dword ptr fs:[]               | eax:std::cout
750E38F6 | 8B | mov eax,dword ptr ds:[eax+] | eax:std::cout
750E38F9 | 0F B6 | movzx eax,byte ptr ds:[eax+] | eax:std::cout
750E38FD | C3 | ret |
750E38FE | CC | int3 |
750E38FF | CC | int3 |
750E3900 | CC | int3 |
750E3901 | CC | int3 |
750E3902 | CC | int3 |

在fs:[18]下断点得出

其中fs:[18] =7EFDD000

eax+30就是这里

再来看看7EFDE000里的值

ds:[eax+2]   = 1 .所以是调试状态
 
那么c++一行代码直接可以修改这个值,使IsDebuggerPresent失效了
*((unsigned char *)(*(DWORD*)(__readfsdword(0x18) + 0x30)) + 0x2) = ;
 

最新文章

  1. c# 调用 matlab
  2. hover事件优化(延时操作)
  3. Selenium2学习-023-WebUI自动化实战实例-021-获取浏览器显示区域大小,通过 WebDriver 截图功能
  4. Linux下Nagios的安装与配置
  5. 幸运数字(number)
  6. swift语言学习之UITableView分割线左边到头的解决
  7. Consumer Client Re-Design (翻译)
  8. jquery mobile 移动web
  9. UITableView的分割线不满屏的解决方法
  10. ASP.NET MVC 3: Razor中的@:和语法
  11. Tomcat启动慢解决方法(本人CentOS7.4系统)
  12. 浅析vue2.0的diff算法
  13. 服务集群session问题
  14. css里px em rem特点(转)
  15. SQL Server查询数据库所有存储过程、触发器、索引信息SQL分享
  16. mongoose事务操作,参考官网
  17. TFS online build change web.config
  18. LeetCode 206 Reverse Linked List 解题报告
  19. vue 的进度条组件
  20. uint8_t / uint16_t / uint32_t /uint64_t

热门文章

  1. git合并
  2. MySql与python交互
  3. datetime.timedelta类
  4. hdu 1237 简单计算器 (表达式求值)【stack】
  5. snmp 里面oid对应的信息 MIB
  6. angular笔记_8(事件)
  7. CSS选择器、样式、盒模型
  8. wiki Confluence 百科介绍
  9. BZOJ.1492.[NOI2007]货币兑换(DP 斜率优化 CDQ分治/Splay)
  10. 潭州课堂25班:Ph201805201 django 项目 第二十八课 新闻elasticsearch搜索前后功台能实现 (课堂笔记)