1. 慎用压缩选项

当驱动有导出函数时,需慎用压缩选项。系统并不一定会调用模块的入口函数,导致没解压就访问导出函数。此时很大概率导出函数所在地址不可访问,或内容奇异。

2.绝逼不要启用COMDAT折叠

该选项会将内容完全相同的函数就保存一份,一般情况下也不会出现内容完全相同的函数。但是当使用

__try{xxxxx
}__except(1){
xxxxx
}

时,__except(1)中的1 会被编译器翻译成一个返回1的函数,这个自动生成的函数想必不会少。当vmp加密使用__try __except的函数时,会修改这个返回1的函数,试了几个版本的vmp,发现都是将这个函数全写成了0xcc。这会导致其他没被保护的函数发生异常时,异常不能正确的处理。正常函数会发生异常时会调用这个0xcc,然后再异常,然后再0xcc.... 直到堆栈用完后蓝屏,错误代码7f(double fault)。

说起这个double fault,大部分情况都是栈被用完了...

Vmprotect 驱动加壳踩坑相关推荐

  1. html table的边框线怎么变圆角_CSS偶有所得 - table 边框加圆角踩坑

    1.发现问题 看到代码里,关于表格,大家不是很喜欢用原生的table,基本都是div来做.究其原因,大概是table的样式有时候难把控,不像直接操作div那么方便.比如:我们想做一个表格,然后希望这个 ...

  2. 神舟电脑装linux双系统,神舟+win10+ubuntu16.04+256GSSD+1THHD双系统安装加openssl踩坑之旅...

    上海最近搞活动调休,要搞深度学习,win上还是不方便,准备弄个ubuntu.于是有以下回忆文字. 在机器上装了个双系统.花了两天.再也不想玩了. 准备用ubuntu来做深度学习的. 本文写于2019年 ...

  3. centos8 安装nvidia 显卡驱动(一路踩坑一路填)

    最近在安装centos8的nvidia显卡驱动,遇到了一些问题,希望能在大家的帮助下共同解决.共同学习.废话不多说,直接上内容 1 首先确认内核版本和发行版本,再确认显卡型号 (1)uname -a ...

  4. Exsi上ubuntu虚拟机显卡tesla p100 驱动和cuda踩坑。

    1. 显卡直通后无法开启电源 报错如下: Module 'DevicePowerOn' power on failed. 解决方法: 在虚拟机高级选项里面添加参数 (note:这个其实是ubuntu ...

  5. VMProtect进行加壳

    尊重原创:http://blog.csdn.net/xiaocaiju/article/details/8088298 介绍两种方式: 1. map方式 2. sdk方式 废话不多说,begin~~~ ...

  6. 18 | 在索引字段上加函数踩坑经验

    一.条件字段上加函数操作 背景:现有交易记录表 tradelog 包含交易流水号(tradeid).交易员 id(operator).交易时间(t_modified)等字段: mysql> CR ...

  7. vmprotect的加壳的授权模式,锁定硬件码

    生成机器码: int nSize = VMProtectGetCurrentHWID(NULL, 0); char* buf = new char[nSize]; VMProtectGetCurren ...

  8. 深思数盾使用脚本加密(加壳)踩的坑

    深思数盾使用脚本加密(加壳)踩的坑 商业化软件要盈利离不开加密,目前项目上选择的加密软件是深思数盾. 一般来说加密都是由实施人员来做的,但是本项目又个特殊的地方,需要和二次开发者写作开发,这样就需要将 ...

  9. 7代cpu能装虚拟xp系统吗_Intel 10代PC/笔记本安装Win7踩坑记 amp; 驱动分享

    免责声明:本文只是从技术角度进行讨论,主要因我自己的兴趣而引发测试.只代表个人观点,与任何组织机构无关. 目录 -  从赛扬G5900"亮机"CPU说起 -  10代Core Wi ...

  10. LittleVGL踩坑指南03:Arduino下显示和触摸驱动配置(TFT_eSPI)

    文章版本7.10,LVGL更新极快,不同版本配置方法可能存在差异 前言   触摸搞了好几天,坑太多了,好在总算飞过来了.顺便把显示驱动也写了:提前说一下,我的硬件是2.4寸ILI9341驱动屏幕+XP ...

最新文章

  1. jpg怎么合成一份_哪些超实用的有机化学知识点---之有机合成工具包
  2. Linux修改密码是提示“passwd: 鉴定令牌操作错误”问题的处理办法
  3. activiti 5.15.1 动态手动通过java编码方式,实现创建用户任务,动态指定个人,用户组,角色,指定监听的实现...
  4. 说明使用assert和防错代码的区别
  5. php 请求转发 重定向,PHP怎么实现页面重定向?(图文+视频)
  6. 聚集索引和非聚集索引(整理)
  7. java位移运算符2 转
  8. Oracle 通过字段名查询其所在的表
  9. ajax 参数带百分号,Ajax请求中带有IPv6地址后的百分号的问题
  10. 数据处理-Batch Normalization
  11. 截取数组中的第i个元素,并返回截取后的结果
  12. random number in groovy
  13. 在eclipse中搭建struts2框架的详细过程
  14. cv_load_image_anycolor 什么意思_LOL英雄联盟手游use a ping什么意思?怎么给队友发信号?...
  15. 分享Java中模拟Ping操作的一个类
  16. 个人对游戏加速器行业看法(二):加速器现有架构梳理
  17. c语言中可以使用setw函数吗,string和stringstream+setw()用法总结
  18. office转换pdf [doc,docx,xls,xlsx]
  19. jquery.uploadView.js图片上传插件
  20. 3d可视化产品爆炸图案例

热门文章

  1. 工具类 --UUIDUtil ---32位UUID生成器
  2. 绘制微信小程序画布时钟
  3. java贪吃蛇_Java贪吃蛇游戏完善版
  4. shell脚本编程基础(三)
  5. matlab模糊数学隶属问题,模糊数学模型matlab
  6. 反诈题库---合计100道(解析版最新)
  7. 百度文档免费下载+PDF转word
  8. 新高考成绩分析教师增值评价系统1:新高考等级赋分转换
  9. CTF中的RSA套路
  10. Protel 99 SE 的坑