C语言 缓冲区溢出并运行乘法而不是加法? 您所在的位置:网站首页 scanf用法举例加法 C语言 缓冲区溢出并运行乘法而不是加法?

C语言 缓冲区溢出并运行乘法而不是加法?

#C语言 缓冲区溢出并运行乘法而不是加法? | 来源: 网络整理| 查看: 265

#include int num1; int num2; int res; static int add(void) { res = num1 + num2; printf("\nAnswer: %u", res); } static int sub(void) { res = num1 - num2; printf("\nAnswer: %u", res); } static int mal(void) { res = num1 * num2; printf("\nAnswer: %u", res); } static int div(void) { res = num1 / num2; printf("\nAnswer: %u", res); } void do_operator() { char op[1]; printf("Enter an operator (+, -, *, /):"); scanf("%s", &op); if (*op == '+') { add(); } else if (*op == '*') { mal(); } else if (*op == '-') { sub(); } else if (*op == '/') { div(); } else { printf("\nNo valid input: %s", op); } } int main() { printf("\nEnter number-1:"); scanf("%u", &num1); printf("\nEnter number-2:"); scanf("%u", &num2); do_operator(); return 0; }

嘿,我是缓冲区溢出攻击的新手。我正在尝试运行此代码,当输入时,使用缓冲区溢出运行乘法函数\*,而不是加法函数+。我尝试了多种不同的方法,但没有成功缓冲区溢出利用给予代码执行乘法函数\*,但给定的运算符是加法函数+



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有