我在缓冲区溢出中创建一个简单的 CTF 下面是示例代码:
#include <stdio.h>
void secretFunction()
{
printf("this is your flag!\n");
}
void echo()
{
char buffer[20];
printf("Enter some text:\n");
printf("%s", buffer);
printf("You entered: %s\n", buffer);
}
int main()
{
echo();
return 0;
}
编译:gcc vuln.c -o vuln -fno-stack-protector -m32
但是,如果我们strings vuln
直接显示实际标志,那么secretFunction
当用户在二进制文件中输入字符串时,my 是不可见的。