我正在尝试将CMU的二进制炸弹作为一个独立的项目来学习一些x86 Assembly和逆向工程。 (这不是与类(class)相关的自动评分版本。)

我从http://csapp.cs.cmu.edu/public/labs.html下载bomb.tar。

根据CMU的实验室描述:



将其保存到适当的文件夹后,我在终端中运行了以下命令:

tar xvf bomb.tar
  • 它确实提取了一个名为bomb的文件(无文件扩展名),但我认为它也会给我bomb.c,这也对引用有所帮助。
  • 我无法运行“炸弹”。这是我尝试过的:
    bomb
    bomb: command not found
    
    ./bomb
    bash: ./bomb: No such file or directory
    
  • 虽然我意识到要解决它需要在gdb中逐步解决它,但我什至不能在BASH中运行它,并且还给自己一个错误的答案!一点帮助将是神奇的。
  • 最佳答案

    正如其他答案所建议的那样,这似乎是CPU体系结构兼容性问题。通过安装位于AskUbuntu.com上的软件包,我能够在Ubuntu 15.04 64位上解决此问题How to run 32-bit programs on a 64-bit system [duplicate]

    具体而言,以下命令有所帮助。

    sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0
    

    08-07 21:42