Linux上的Bash权限被拒绝

时间:2018-01-15 07:01:18

标签: c bash ubuntu

我正在http://pwnable.kr/play.php做“bof”问题 我下载了“bof”文件。但是当我使用gdb时,它表示如下:

Starting program: /home/henry/Downloads/bof 
/bin/bash: /home/henry/Downloads/bof: Permission denied
/bin/bash: line 0: exec: /home/henry/Downloads/bof: cannot execute: Permission denied
During startup program exited with code 126.

bof.c:

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
void func(int key){
    char overflowme[32];
    printf("overflow me : ");
    gets(overflowme);   // smash me!
    if(key == 0xcafebabe){
        system("/bin/sh");
    }
    else{
        printf("Nah..\n");
    }
}
int main(int argc, char* argv[]){
    func(0xdeadbeef);
    return 0;
}

1 个答案:

答案 0 :(得分:0)

您的权限存在问题。您目前没有执行bof文件的权限。

要解决此问题,请打开终端并使用chmod命令。

chmod +x /home/henry/Downloads/bof

这将授予您执行该文件的权限。您也可以使用chmod 744 /path/to/file之类的替代方法。这将授予您读取,写入和执行帐户的权限。

查看linode文档以了解file permissions