priyankchheda/chrome_password_grabber

ModuleNotFoundError: No module named 'Crypto'

Opened this issue · 3 comments

For some reason it doesn't detect that Crypto is installed.

Using Fedora Linux 32 64bit.

# pip install Crypto
WARNING: Running pip install with root privileges is generally not a good idea. Try `pip install --user` instead.
Collecting Crypto
  Downloading https://files.pythonhosted.org/packages/fc/bb/0b812dc02e6357606228edfbf5808f5ca0a675a84273578c3a199e841cd8/crypto-1.4.1-py2.py3-none-any.whl
Collecting shellescape
  Downloading https://files.pythonhosted.org/packages/d0/f4/0081137fceff5779cd4205c1e96657e41cc2d2d56c940dc8eeb6111780f7/shellescape-3.8.1-py2.py3-none-any.whl
Collecting Naked
  Downloading https://files.pythonhosted.org/packages/02/36/b8107b51adca73402ec1860d88f41d958e275e60eea6eeaa9c39ddb89a40/Naked-0.1.31-py2.py3-none-any.whl (590kB)
     |████████████████████████████████| 593kB 13.9MB/s 
Requirement already satisfied: requests in /usr/lib/python3.8/site-packages (from Naked->Crypto) (2.22.0)
Requirement already satisfied: pyyaml in /usr/local/lib64/python3.8/site-packages (from Naked->Crypto) (5.3.1)
Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /usr/lib/python3.8/site-packages (from requests->Naked->Crypto) (3.0.4)
Requirement already satisfied: idna<2.9,>=2.5 in /usr/lib/python3.8/site-packages (from requests->Naked->Crypto) (2.8)
Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /usr/lib/python3.8/site-packages (from requests->Naked->Crypto) (1.25.7)
Installing collected packages: shellescape, Naked, Crypto
Successfully installed Crypto-1.4.1 Naked-0.1.31 shellescape-3.8.1
/tmp/chrome_password_grabber$ python
Python 3.8.6 (default, Sep 25 2020, 00:00:00) 
[GCC 10.2.1 20200723 (Red Hat 10.2.1-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.

>>> from chrome import Chrome
>>> chrome_pwd = Chrome()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/tmp/chrome_password_grabber/chrome.py", line 113, in __init__
    self.chrome_os = ChromeLinux()
  File "/tmp/chrome_password_grabber/chrome.py", line 89, in __init__
    kdf = import_module('Crypto.Protocol.KDF')
  File "/usr/lib64/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 961, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 961, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 973, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'Crypto'
>>> 

In Debian I solved it with:

sudo apt install libpython3-dev
sudo pip install secretstorage pycrypto

pip3 install -r requirements_mac.txt

change the lib "crypto" file named to "Crypto"