当前位置: 首页 > news >正文

代码生成器在线/排名优化公司哪家靠谱

代码生成器在线,排名优化公司哪家靠谱,做网站的软件叫code,免费云电脑主机关于操作系统的ASLR地址随机化首先我们在实验之前需要了解以下ASLR机制。即linux平台下的地址随机化机制。它将进程中的某些内存空间地址进行随机化来增大入侵者预测目的地址的难度。从而降低被成功入侵的风险。当前Linux、Windows等主流操作系统都已经采用该技术。linux下的AS…

关于操作系统的ASLR地址随机化

首先我们在实验之前需要了解以下ASLR机制。即linux平台下的地址随机化机制。它将进程中的某些内存空间地址进行随机化来增大入侵者预测目的地址的难度。从而降低被成功入侵的风险。当前Linux、Windows等主流操作系统都已经采用该技术。

linux下的ASLR分为0,1,2三级,用户可以通过一个randomize_va_space进行等级控制。

  • 0:关闭ASLR。

  • 1:保留的随机化。共享栈、库、mmap()、以及VDSO将被随机化。

  • 2:完全的随机化。

现在我们来关闭linux地址随机化:

echo 0 >/proc/sys/kernel/randomize_va_space

不乐意记全路径的小伙伴可以直接使用命令:

find / -name randomize_va_space

关闭随机化后我们就可以直接开始我们的实验啦~

堆溢出实验代码(main.c)

#include #include void hello(){  printf("\rhello\n");} int fun(char *str){  char buf[10];  strcpy(buf, str);  printf("%s\n", buf);  return 0;} int main(int argc, char **argv){  int i=0;  char *str;  str=argv[1];  fun(str);  return 0;}

代码打好后,我们通过gcc来编译该源文件,使其成为二进制可执行文件(其中-g参数是为了方便我们进行gdb调试,execstack是指允许栈攻击):

gcc -g main.c -o main -z execstack -fno-stack-protector

GDB二进制调试

我们首先使用命令进入gdb调试模式:

gdb main

现在我们先在第12行和第21行下两个断点。

83844e284dcd61f7000d5ca576c4fe01.png

然后我们向内存中写入16个A来判断我们的猜想。

1ec085afc18e888c5fdc15df088f7b44.png

在linux操作系统中,内存的分布是从高地址往低地址扩展的。所以我们这里会先写入高地址,然后再写入低地址。然后我们分析各函数在整个程序中的位置,并分析漏洞产生原因。
我们使用disassemble命令来查看每个函数的反汇编。

2e2a0e2181fa2819a069bace038ba5e3.png034d9e82230d1f8cddcfd6bc4913592b.pngf3644684ea53ec513df6108f2c2f050d.png

通过分析反汇编可知。本机器的栈指针寄存器是64位的,有些电脑是32位的,那么反汇编出来的栈指针寄存器就是esp和ebp。不同电脑的地址和寄存器类型也都不一样。

通过分析main函数的反汇编可以知道:

在地址0x00005555555546f8的位置,调用了fun函数,并且fun函数的返回地址位0x00005555555546fd
而hello的函数的入口地址为:0x000055555555468a。现在我们可以用hello的首地址覆盖fun函数的返回地址来实现在函数main中调用hello函数。

执行hello函数

我们注入了16个A之后,可以通过栈指针寄存器和明显的看出,我们要溢出的地址就在0x00005555555546fd的位置,我们需要用0x000055555555468a去覆盖0x000055555555468a的地址。2bf867b4139697eaa000ea541c70c58c.png

我们可以通过计算得出,18个A然后加上hello的首地址即可实现覆盖0x555546fd。
我们现在向内存中写入数据。97e219df198a2d3743f605c7a391e411.png

然后进行单步调试,可以发现出现了溢出漏洞。e03606edb8f4b3e28f7767fcf5bbf028.png

不过由于堆溢出覆盖了函数的返回地址,所以函数无法正常停止,所以函数无法正常返回。但是hello函数正常执行。

http://www.lbrq.cn/news/1308637.html

相关文章:

  • 怎样建设文章网站/高端seo服务
  • 南山做网站联系电话/全网最好的推广平台
  • 软件开发流程有哪些步骤/seo排名优化课程
  • 有专门学做衣服网站/百度客服人工
  • 想自己做网站流程/肇庆百度快照优化
  • 深圳网站建设怎样容易/交换链接或称互惠链接
  • 做美陈网站/口碑营销策划方案
  • 推广网站优化怎么做/电脑培训零基础培训班
  • 做剧情网站侵权吗/培训心得体会总结
  • 真人做爰片免费观看网站/2023年新冠疫情最新消息
  • 做模板网站简单吗/域名归属查询
  • 现在自己做网站卖东西行么/网络营销以什么为中心
  • html动漫网站模板下载/无锡网站优化
  • 网站点击弹出下载框 怎么做的/百度竞价排名软件
  • 网站建设毕业设计指导老师意见/有创意的网络营销案例
  • 网站建设服务承诺包括什么/seo站长工具是什么
  • 泰兴做网站电话/百度识图在线识图
  • 黄石企业网站建设开发/seo教育
  • ps加dw做网站/西安seo外包公司
  • 绍兴建站模板厂家/申请域名
  • 网站建设中单页代码/单页站好做seo吗
  • 什么网站可以做国外生意/网址查询域名解析
  • 还有哪些免费的网站可以做H5/西安网站建设公司十强
  • 巫山网站设计/枸橼酸西地那非片功效效及作用
  • 成都网站设计制作公司/百度发布信息的免费平台
  • 青海网站建设哪家强/网络营销的十大特点
  • 广州网站设计联系方式/企业软文营销发布平台
  • 同一个域名两个网站/淘宝关键词推广
  • asp 网站图标/整站seo排名外包
  • 教育在线网站怎样做直播/google app
  • RuoYi-Cloud 定制微服务
  • 【Linux】第一个小程序—进度条
  • Matlab2025a软件安装|详细安装步骤➕安装文件|附下载文件
  • ESP32S3+VSCode+PlatformIO+Arduino+Freertos开发入门指南:基于Arduino框架的应用开发全流程
  • HALCON+PCL混合编程
  • HashMap详解