ASLR技术及关闭与开启
ASLR技术会使PE文件每次加载到内存的起始地址随机变化,并且进程的栈和堆的起始地址也会随机改变。微软从windows vista/windows server 2008(kernel version 6.0)开始采用ASLR技术,主要目的是为了防止缓冲区溢出。
该技术需要操作系统和编译工具的双重支持(主要是操作系统的支持,编译工具主要作用是生成支持ASLR的PE格式)。
我们这里要动手关闭aslr,可以修改IMAGE_OPTIONAL_HEADER的DLL Characteristics字段,下面是DLL Characteristics的属性值,相或代表属性叠加。
#define IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE 0x0040 // DLL can move. ASLR
#define IMAGE_DLLCHARACTERISTICS_FORCE_INTEGRITY 0x0080 // Code Integrity Image
#define IMAGE_DLLCHARACTERISTICS_NX_COMPAT 0x0100 // Image is NX compatible DEP
#define IMAGE_DLLCHARACTERISTICS_NO_ISOLATION 0x0200 // Image understands isolation and doesn't want it
#define IMAGE_DLLCHARACTERISTICS_NO_SEH 0x0400 // Image does not use SEH. No SE handler may reside in this image
#define IMAGE_DLLCHARACTERISTICS_NO_BIND 0x0800 // Do not bind this image. // 0x1000 // Reserved.
#define IMAGE_DLLCHARACTERISTICS_WDM_DRIVER 0x2000 // Driver uses WDM model // 0x4000 // Reserved.
#define IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE 0x8000
将8140改为8100,也就是让DLL不能move,ASLR就被关掉了。
也可以通过修改注册表的方式取消系统的ASLR功能。该功能是一个安全选项,无特殊需要不建议关闭。
win+r,输入regedit,打开注册表,新建注册表项
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Manager\Memory Management] “MoveImages”=dword:00000000
就可关闭ASLR。
删除该键值项,就可以开启ASLR功能。
通过注册表修改ASLR需要重启机器。
参考:
https://blog.csdn.net/weixin_43742894/article/details/105702886
https://blog.csdn.net/m0_37809075/article/details/83041090
ASLR技术及关闭与开启相关推荐
- Linux下关闭和开启IPv6的方法
确认IPV6是否开启 在Linux下确认IPv6是否已经被启用,可以从三个方面确定. 1.使用ifconfig查看自己的IP地址是否含有IPv6地址. eth0 Link encap:Ethernet ...
- linux启动报错+centos关闭和开启ipv6
LINUX启动报错,dmesg | grep -i erro 当前位置:洪哥笔记 >Linux >centos 6关闭或开启ipv6 centos 6关闭或开启ipv6 关键词 ipv6 ...
- solaris系统关闭服务器,solaris系统中关闭和开启系统服务ftp,telnet,ssh,sendmail...
solaris系统中关闭和开启系统服务ftp,telnet,ssh,sendmail (2010-12-19 14:37:14) 标签: solaris ftp telnet sendmail ssh ...
- 鸿蒙系统桌面小艺建议怎么删除?鸿蒙系统小艺建议怎么设置关闭及开启
鸿蒙系统2.0已经正式发布了,目前不少的手机已经升级了,这次全新的桌面设计还在不错的,增加了小组件的风格,整体看起来更加的简洁,不过很多小伙伴在调整桌面的时候,其中的小艺建议不知道怎么删除,删除了不知 ...
- win10计算机管理没有蓝牙,Win10蓝牙在哪里?Win10蓝牙设置关闭或开启方法图解
目前,windows 10系统也支持笔记本中自带的蓝牙功能,那么,Win10蓝牙设置在哪里?如何设置win10蓝牙功能关闭或开启?针对此问题,本文就为大家进行解答.有兴趣的朋友们可以了解下哦. 很多笔 ...
- 抖音关闭单身开启恋爱模式设置教程分享
1.首先我们需要下载一款叫做"快剪辑"的手机软件. 2.点击打开快剪辑,在模板中进行查找.选中并且下载该模板,这样就可以进入编辑界面,从手机本地导入素材文件,再来进行下一步编辑. ...
- 戴尔 DELL 游戏笔记本电脑 - Windows 10 关闭或开启功能键 (Fn key)
戴尔 DELL 游戏笔记本电脑 - Windows 10 关闭或开启功能键 (Fn key) 1. 关闭或开启功能键 Fn + Esc 关闭或开启功能键 The Fn key, short form ...
- 【技术简史】1995-1996 开启的互联网时代范式:信息无处不在
[技术简史]1995-1996 开启的互联网时代范式:信息无处不在 目录 编辑
- android关闭或开启移动网络数据(关闭后,设备不可以上网,但可以打电话和发短信)...
//android关闭或开启移动网络数据(关闭后,设备不可以上网,但可以打电话和发短信) public void setMobileDataEnabled(boolean enabled) { Con ...
最新文章
- 读取 classpath 资源
- react实现汉堡_利用 React 高阶组件实现一个面包屑导航
- Red Hat Enterprise MRG 2.0 Installation And Configuration Guide
- ARM的编程模式和7种模式
- 如何使用Picterra的地理空间平台分析卫星图像
- Hello Qt(在Linux下编写运行Qt程序)
- LeetCode 241. 为运算表达式设计优先级(动态规划)
- 网络世界在某种程度上助长了人格的分裂
- java中数组的返回值是什么类型_java基础学习:数组的常用操作与基础二维数组用法、及基本数据类型和引用数据类型赋值的区别...
- 软件测试第五周 - 编码的 UI 测试
- inster into java_SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
- java 接口类型_Java-从接口类型而不是类声明
- js获取汉字拼音首字母
- 提高工作效率的软件推荐
- Nginx(1)基础部分
- 每日一佳——Trading Convexity for Scalability(Ronan Collobert et al. ,ICML,2006)
- Excel按照固定行数拆分为多个文件
- 使用python画出彩虹效果
- 有关计算机英语作文素材,英语作文素材范文
- 测试技术与信号处理实验报告