0

在中间框架(MITMf)中安装人时,我得到一个 ImportError:No Module named capstone..

虽然 Capstone 已经安装在我的 Kali 机器中

我从https://github.com/byt3bl33d3r/MITMf下载了 MITMf

这是我得到的

root@kali:~/Desktop/MITMf# python mitmf.py --help
Traceback (most recent call last):
File "mitmf.py", line 36, in <module>
from plugins import *
  File "/root/Desktop/MITMf/plugins/filepwn.py", line 72, in <module>
    from libs.bdfactory import pebin
  File "/root/Desktop/MITMf/libs/bdfactory/pebin.py", line 49, in <module>
    from intel.intelCore import intelCore
  File "/root/Desktop/MITMf/libs/bdfactory/intel/intelCore.py", line 38, in <module>
    from capstone import *
ImportError: No module named capstone
root@kali:~/Desktop/MITMf# pip install capstone
Requirement already satisfied: capstone in /usr/lib/python3/dist-packages (3.0.5)
root@kali:~/Desktop/MITMf#
4

1 回答 1

1

需要安装python2.7版本的capstone。看起来你的 python 安装有点奇怪。在 Kali 等 Debian 系统上,pip 应该是 python2 包的安装程序,pip3 应该是 python3 包的安装程序。

从 pip 手册页:

在 Debian 上,pip 是安装 Python 2 软件包时使用的命令,而 pip3 是安装 Python 3 软件包时使用的命令。

您可能应该通过将 pip2 链接到 pip 来修复您的 pip 安装。我们这样做的方法是删除 pip 二进制文件并从 pip2 创建一个符号链接:

[k@box]$ sudo rm /usr/bin/pip
[k@box]$ sudo ln -s /usr/bin/pip2 /usr/bin/pip

那你应该可以用pip安装python2.7版本了

[k@box]$ pip install capstone

解释:

你已经安装了 python3.6 版本的 capstone。您可以在 pip install 命令的输出中看到:

root@kali:~/Desktop/MITMf# pip install capstone
Requirement already satisfied: capstone in /usr/lib/python3/dist-packages (3.0.5)

如果你查看脚本 mitmf.py,你会注意到最上面一行指定了 python2.7

[k@box]$ head -n3 mitmf.py
#!/usr/bin/env python2.7

# Copyright (c) 2014-2016 Moxie Marlinspike, Marcello Salvati
于 2019-10-28T17:58:44.450 回答