首页 > 其他分享 >网络安全实验教程【1.7】

网络安全实验教程【1.7】

时间:2024-04-02 23:29:20浏览次数:22  
标签:网络安全 10 教程 1.7 argv VC 实验 6.0 溢出

4.4 整型溢出实验

4.4.1 实验目的

本实验要求掌握整型溢出的原理,了解宽度溢出和符号溢出的发生过程。

4.4.2 实验内容及环境

1.实验内容
本实验使用 VC 6.0 的源码调试功能,尝试不同的程序输入,并跟踪变量和内存的变化,以观察不同整型溢出的原理。
2.实验环境
(1)靶机系统环境为 Windows XP SP3 32 位;
(2) VC 6.0,具体详见本书 4.3 节的介绍。

4.4.3 实验步骤

1.编译代码
通过 VC 6.0 将以下两段代码分别编译成 debug 版的 t1.exe 和 t2.exe。
//整型宽度溢出

1 intmain(intargc, char *argv[]){
2 unsigned short s;
3 inti;
4 char buf[10];
5 i = atoi(argv[1]);
6 s = i;
7 if(s >= 80){
8 printf("错误!输入不能超过 10! \n");
9 return -1;
10 }
11 memcpy(buf, argv[2], i);
12 buf[i] = '\0';
13 printf("%s\n", buf);
14 return 0;
15 }
//整型符号溢出
1 int main(intargc, char *argv[]){
2 char kbuf[800];
3 int size = sizeof(kbuf);
4 intlen = atoi(argv[1]);
5 if(len> size){
6 printf("错误!输入不能超过 800! \n");
7 return 0;
8 }
9 memcpy(kbuf, argv[2], len);
10 }

2.加载程序
使用 VC 6.0 调试 t1.exe,在程序参数栏填入“100aaaaaaaaaaaaaaaa”,如图 4.7 所示,按“Ctrl” +“F5”组合键运行。

3.检查参数
由于参数 i 的值大于 10,不能通过第 7 行的条件判断,程序运行显示“错误!输入不能超过 10!”后退出。
4.修改参数
修改参数 i 的值为 65537,并在第 6 行设置一个断点,按“F5”键运行。
5.观察运行环境
程序停在断点处,观察 VC 6.0 程序运行的上下文窗口,注意此时“i=0x00010001(65537)”,如图 4.8 所示。

标签:网络安全,10,教程,1.7,argv,VC,实验,6.0,溢出
From: https://blog.csdn.net/qq_43416206/article/details/137250199

相关文章

  • BF548/BF547/BF549系列DSP的开发教程二十一:NorFLASH编程-可烧写文件的生成
    作者的话BF54X系列DSP,是ADIBlackfin系列的4系列,在产品线做这个系列DSP的产品定义时,充分吸取了客户在BF53X上的痛点,把BF54X做成了外设最丰富的一类DSP,这个DSP曾经在车载视频,工控领域有不少的成功案例,OP作为2000年入坑的老鸟,自然也是用它做过很多项目。系列教程,说一说这个4......
  • CentOS7系统更新yum源教程
    在CentOS7系统中,yum是一个用于软件包管理的工具,它能够从特定的存储库中自动下载和安装软件包。然而,系统默认的yum源可能不包含所有软件包,因此需要手动更新yum源。以下是CentOS7系统更新yum源的步骤:1.备份当前的yum源cp/etc/yum.repos.d/CentOS-Base.repo/etc/yum.repos.d/C......
  • 自学黑客(网络安全),一般人我劝你还是算了!!
    网络安全在当今信息社会越来越受到重视,但不同于Java、C/C++等后端开发岗位有非常明晰的学习路线,网络安全更多是靠自己摸索,要学的东西又杂又多,难成体系。这也是为什么我经常劝别人不要入网络安全的坑,因为一般人真坚持不下去!但考虑到部分同学仍然对网络安全抱有幻想,今天我就根......
  • Linux上使用python处理docx转pdf教程
      今天在使用flask将生成好的docx文档转化为pdf的过程中,遇到了一些问题,本来在windows上转化的好好的,但是到了Linux上却是直接报错显示ModuleNotFoundError:Nomodulenamed'win32com'。  很明显他说的是在Linux系统下并没有win32com这个模块,所以通过百度发现python使用pdf2......
  • 26版SPSS操作教程(初级第十四章)
    前言#由于导师最近布置了学习SPSS这款软件的任务,因此想来平台和大家一起交流下学习经验,这期推送内容接上一次第十三章的学习笔记,希望能得到一些指正和帮助~粉丝及官方意见说明#针对官方爸爸的意见说的推送缺乏操作过程的数据案例文件澄清如下:1、操作演示的数据全部由我本人......
  • 26版SPSS操作教程(初级第十五章)
    前言#由于导师最近布置了学习SPSS这款软件的任务,因此想来平台和大家一起交流下学习经验,这期推送内容接上一次第十四章的学习笔记,希望能得到一些指正和帮助~粉丝及官方意见说明#针对官方爸爸的意见说的推送缺乏操作过程的数据案例文件澄清如下:1、操作演示的数据全部由我本人......
  • .NET Emit 入门教程:第六部分:IL 指令:3:详解 ILGenerator 指令方法:参数加载指令
    前言:在上一篇中,我们介绍了ILGenerator辅助方法。本篇,将详细介绍指令方法,并详细介绍指令的相关用法。在接下来的教程,关于IL指令部分,会将指令分为以下几个分类进行讲解:1、参数加载指令:ld开头的指令,单词为:loadargument2、参数存储指令:st开头的指令,单词为:store3、创建实......
  • nodeJs 实现视频的转换(超详细教程)
    前段时间拿到一个视频是4k的,没法播放,于是通过node.js  和 ffmpeg实现了视频的转换。在win10系统下实现。所需工具node16.19直接安装ffmpeg-5.1.1-essentials_build解压后重名ffmpeg放到C盘然后配置下环境变量Git-2.42.0.2-64-bit直接安装安装完建一个demo......
  • 有哪些常见的网络安全威胁?
    在现如今的互联网社会中,关于网络这个行业发展的越来越迅速,但所遭受到的网络安全威胁也越来越多了,今天我们就来聊一聊常见的网络安全威胁都有哪些吧!首先拒绝服务攻击是攻击者通常使用的攻击手段之一,主要是攻击者想办法让目标机器停止提供服务或者是资源访问,使系统无法向用户提......
  • windows环境下elasticsearch安装教程(超详细)
     一、安装jdkElasticSearch是基于lucence开发的,也就是运行需要javajdk支持。所以要先安装JAVA环境。由于ElasticSearch5.x往后依赖于JDK1.8的,所以现在我们下载JDK1.8或者更高版本。下载JDK1.8,下载完成后安装。二、安装ElasticSearch1.ElasticSearch下载地址:https:/......