1 ASLR机制

Address Space Layout Randomization=地址空间布局随机化;
    是一种针对缓冲区溢出的安全保护技术;
    没有ASLR时,每次进程执行,加载到内容中,代码所处堆栈stack的位置都是相同的,容易被破解;
    如果开启了ASLR,操作系统加载器会针对基地址再去加上一个随机生成的偏移地址,然后再去加载程序模块,通过对堆、栈、共享库映射等线性区布局的随机化,增加攻击者预测目的地址的难度。

地址随机化需要程序自身和操作系统的双重支持,会在PE头中设置IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE标识来说明支持ASLR。

此字段位于PE结构的可选头结构体中;可选头的概念可参阅此,

https://blog.csdn.net/bcbobo21cn/article/details/115032841

2 PE操作

下面来用010Editer操作看一下,打开010Editor,打开notepad.exe;
    根据资料,在 NtHeader 数据块内找到4081,然后修改为0081即可;或者找到WORD IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE这个字段 ,把值1改为0即可;

看下图NT头的区域;里面没有4081;也许版本发生了变化;

我截一个网友操作的图,大家了解一下此概念;

此图是用CFF Explorer进行操作,CFF Explorer可在此下载;
http://windows.dailydownloaded.com/zh/developer-tools/specialized-tools/14498-cff-explorer-download-install
这工具看上去是微软提供的;

然后找 IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE 字段;如下图,值为1,就是支持地址随机化;如果改为0,则不支持地址随机化;

根据PE结构资料;可选头的DllCharacteristics是一个WORD;

WORD    DllCharacteristics;

例如此文;https://cloud.tencent.com/developer/article/1015243

但是010Editor显示的,DllCharacteristics是一个结构体,里面又包含多个WORD;这可能是一个多个WORD或起来的值,最终是一个WORD;

3 VS相关选项

在VS开发环境设置中,对此有一个选项支持;如下图;链接器-高级-随机基址;默认生成的应用程序支持地址随机化;

Windows下ASLR机制(地址随机化)- 概念、PE操作、VS相关选项相关推荐

  1. windows下vs2015编译POCO及使用poco操作sqlite

    1.下载POCO https://pocoproject.org/releases/ 我们选择windows下的zip包下载,注意有两个版本 poco-1.9.4-all.zip poco-1.9.4 ...

  2. Windows下win32api下载地址

    http://sourceforge.net/projects/pywin32/files/ 虚拟环境Virtualenv下使用pywin32 首先要在第一步安装完后的基础上,找到pywin32.pt ...

  3. MSYS2:windows下获取ip地址对应的网卡名

    基本的原理就是用netsh interface ipv4 show address命令列出所有网卡的地址信息,然后用sed过滤掉无用的内容,具体实现如下: $ netsh interface ipv4 ...

  4. Windows 下的批处理脚本基础——批处理运算操作(代码可拿)

      自从优盘中毒,就开始发现学习批处理脚本的重要性.一起加油冲冲冲!!! https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注! 欢迎关注微信公众号:宝藏女孩 ...

  5. 本人64位windows下安装最新版XGBoost,附操作步骤图

    (这是16年的安装方式,现在早就直接pip install xgboost就可以) 最新更新的XGBoost与老版安装方式不再一样,具体安装步骤如下: 1. 材料 系统:win7 64位 sp5 (w ...

  6. ctf从零开始学 0x1:Windows下的二进制安全学习路线

    本文作者:rkvir(二进制小组组长) 转自某推文,链接找不到了. 一. 什么是二进制安全 在很久以前安全圈并没有把安全技术做出一个特别清晰的分类.在大部分人眼里,所谓的黑客,安全研究者指的就是研究渗 ...

  7. Windows下的工作组与域环境以及域的搭建管理流程

    Windows下工作组与域的概念 企业生产中工作组与域之间的优劣 域实现的核心思想:域控制器(DC)和活动目录(AD) 搭建活动目录并将计算机加入域中 通过域控实现用户的统一身份验证 通过组策略实现域 ...

  8. Linux与win2003下修改mac地址方法

    一.在Linux下修改MAC地址方法如下: 方法1:在文件"/etc/rc.local"中加入    ifconfig eth0 hw ether 00:D0:59:0D:9B:4 ...

  9. windows下安装sentinel

    windows下安装sentinel 地址: sentinel 启动jar包: java -jar sentinel-dashboard-1.8.5.jar 访问 localhost:8080 默认账 ...

最新文章

  1. 分布式存储Ceph 快速安装手册
  2. 教你十分钟构建好 SpringBoot + SSM 框架
  3. java char类型空值_展望Java的未来:空值类型
  4. lcd1602怎么利用按键清屏_边学边练,8个LCD1602精选电路方案大合辑
  5. * Dijkstra 堆优化
  6. 【Python】变量那些事
  7. Unity2020.1新功能探路:光照相关更新
  8. ssms中怎么设置自增_如何在SSMS状态栏中设置自定义颜色
  9. spring定时器时间表达式
  10. ppt flash倒计时器_央视都在分享的9个PPT小技巧 帮你搞定职场烦心事
  11. Labview软件开发—界面切换—选项卡的应用
  12. 渗透测试SQL注入——Sqlilabs关卡详解
  13. 【PADS_002】【添加泪滴】
  14. Workbench网格划分(1)
  15. 你的苹果Mac键盘锁住了要怎么办呢
  16. 代购“三十六计”:有着不同的运作模式
  17. 2012-11-1小光棍节【就在今天,我们进行了这学期的第一次考试】下面写下今天的考试心得~!
  18. RLC串并联谐振回路特性、如何判断容性感性
  19. 电工技术(1)-电路的基本概念与基本定律
  20. html语言br怎么用,HTML br 标签如何使用

热门文章

  1. win10 系统更新 Xerox - Extension - 7.208.0.0 驱动时“ 0x800f020b“ 错误。
  2. 我的世界潜影盒计算机存储器,我的世界:箱子、潜影盒、末影箱分别代表什么?硬盘、U盘、网盘...
  3. 卷积神经网络为什么如此有效
  4. DHCP静态地址分配和ARP绑定的理解
  5. 都说码农发展前景不好,那些35岁以上的大龄程序员未来之路在何方?
  6. 火遍全球的ChatGPT技术简介与主干网络代码
  7. keywords和description的正确用法
  8. 【C++】RC4加密算法
  9. win10壁纸不能幻灯片放映_怎么设置Win10系统在无电源情况下开启壁纸幻灯片放映?...
  10. 2020.11.02-11.09 人工智能行业每周技术精华文章汇总