C语言 指针——缓冲区溢出与缓冲区溢出攻击

目录

缓冲区溢出攻击

缓冲区溢出攻击实例

字符串的安全输入方法​编辑

防止缓冲区溢出的两个要点


缓冲区溢出攻击

网络黑客常针对系统和程序自身存在的漏洞,编写相应的攻击程序
对缓冲区溢出漏洞的攻击 ------ 最常见
几乎占到了网络攻击次数的一半以上
世界上第一个缓冲区溢出攻击
Internet 蠕虫 ------ 曾造成全球多台网络服务器瘫痪
何谓缓冲区溢出攻击?
利用缓冲区溢出漏洞进行的攻击
易引起缓冲区溢出攻击、不安全的函数
gets() scanf() strcpy() strcat() 等不限制字符串长度,不
检查数组越界,易导致有用的堆栈数据被覆盖,给黑客攻击以可乘之机
对缓冲区溢出漏洞进行攻击的后果
程序运行失败、系统崩溃和重启等
利用缓冲区溢出,执行非授权指令,甚至取得系统特权,进而进行各种
非法操作
防止和检测缓冲区溢出攻击
成为防御网络入侵和入侵检测的重点之一

缓冲区溢出攻击实例

字符串的安全输入方法

防止缓冲区溢出的两个要点

使用更安全的字符串处理函数
fgets() strncpy() strncat() 代替 gets() strcpy()
strcat() 等不限制字符串长度,不检查数组越界的函数
在向一块内存中写入数据之前确认这块内存是否可以写入,同时
检查写入的数据是否超过这块内存的大小

相关推荐
Hhy_110716 分钟前
【从零开始学数据结构 ⑥】:二叉树之堆——打破规则的优先队列
c语言·开发语言·数据结构·学习·visual studio
wengqidaifeng34 分钟前
2026 年电赛(TI 杯)H 题:完整测评流程、失败案例复盘、比赛策略与开源交付
c语言·单片机·嵌入式硬件
ysu_03141 小时前
【创作128天纪念】从新手村踏上征途
c语言
0x3F(小茶)1 小时前
FreeRTOS 任务相关 API 函数
c语言·arm开发·单片机
c238561 小时前
C/C++每日一练21
c语言·开发语言·c++
c2385610 小时前
MySQL 基础用法(上):库表管理与数据增删改
c语言·数据库·c++·mysql
李永奉10 小时前
C语言-嵌入式开发C语言常用预处理指令合集
c语言·开发语言
YuforiaCode12 小时前
第十六届蓝桥杯 2025 C/C++组 数列差分
c语言·c++·蓝桥杯
捷瑞电子工坊14 小时前
C语言二维数组在内存中是如何存储的?
c语言·二维数组·内存存储·数组底层
lilili也15 小时前
visual studio add matlab
c语言·c++