Windows, python 3.6.7, felraktam a frida modul-t:
pip install frida-tools
Elvileg(!) felment, leellenőrizni mondjuk nem tudom hogy kellene, de látszólag sikeres volt az install.
Utána be akarnám tölteni ezt a modult:
C:\programok\Python\Python36>python.exe
Python 3.6.7 (v3.6.7:6ec5cf24b7, Oct 20 2018, 13:35:33) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import frida
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'frida'
>>>
Na itt áll meg a tudományom, hogy hova merre miért meddig. https://frida.re/docs/quickstart/ se részletezi agyon, mi lehet a gond.
- 563 megtekintés
Hozzászólások
A tippem az, hogy nem ment fel a modul, csak azt gondolod rola.
Ha nyitsz egy terminalt, ott kiadod azt, hogy `pip install <csomag_neve>`, akkor az a csomag a global namespace-be fog telepulni. Ahhoz, hogy oda telepits, nehany rendszeren admin jog kell, Windows-on szerintem konfig kerdese. Ha adminisztrator modban inditod el a `cmd.exe`-t, akkor eselyesebb, hogy sikerulni fog a telepites, de inkabb azt javaslom, hogy a globalis namespace hasznalatot mellozzed, mert egy ido utan, --de legalabbis a kezdeti betanulasi szakaszod soran biztosan-- egy osszekutyult, atlathatatlan rendetlenseg lesz belole.
Ismerkedj meg a virtual environment ( https://docs.python.org/3.6/tutorial/venv.html ) fogalmaval, ami lehetove teszi azt, hogy izolalt kornyezeteket hozz letre, azokban telepits python csomagokat valamit azokon belul elinditsad a Python shell-t, ami csak azokat a modulokat fogja latni, amik abban a virtualenv-ben vannak telepitve.
Ha egy ilyen shell-ben telepitesz es inditasz Python, menni fog:
C:\Users\riverman>python -m venv hup
C:\Users\riverman>hup\Scripts\activate.bat
(hup) C:\Users\riverman>pip install frida-tools
Collecting frida-tools
Downloading https://files.pythonhosted.org/packages/55/54/2574f8a4a5dd05e0334dc77df876df7335e7e5b31a4d222887efda5b767a/frida-tools-8.0.1.tar.gz (96kB)
|████████████████████████████████| 102kB 1.3MB/s
Collecting colorama<1.0.0,>=0.2.7 (from frida-tools)
Downloading https://files.pythonhosted.org/packages/c9/dc/45cdef1b4d119eb96316b3117e6d5708a08029992b2fee2c143c7a0a5cc5/colorama-0.4.3-py2.py3-none-any.whl
Collecting frida<13.0.0,>=12.10.4 (from frida-tools)
Downloading https://files.pythonhosted.org/packages/91/da/8a0cf544e7d9a0d87be6d7d1600560ba67ad3843225299d06be878b9d752/frida-12.10.4.tar.gz
Collecting prompt-toolkit<4.0.0,>=2.0.0 (from frida-tools)
Downloading https://files.pythonhosted.org/packages/e4/a7/81b39aa50e9284fe2cb21cc7fb7de7817b224172d42793fd57451d38842b/prompt_toolkit-3.0.5-py3-none-any.whl (351kB)
|████████████████████████████████| 358kB 3.3MB/s
Collecting pygments<3.0.0,>=2.0.2 (from frida-tools)
Downloading https://files.pythonhosted.org/packages/2d/68/106af3ae51daf807e9cdcba6a90e518954eb8b70341cee52995540a53ead/Pygments-2.6.1-py3-none-any.whl (914kB)
|████████████████████████████████| 921kB 6.4MB/s
Collecting wcwidth (from prompt-toolkit<4.0.0,>=2.0.0->frida-tools)
Downloading https://files.pythonhosted.org/packages/59/7c/e39aca596badaf1b78e8f547c807b04dae603a433d3e7a7e04d67f2ef3e5/wcwidth-0.2.5-py2.py3-none-any.whl
Installing collected packages: colorama, frida, wcwidth, prompt-toolkit, pygments, frida-tools
Running setup.py install for frida ... done
Running setup.py install for frida-tools ... done
Successfully installed colorama-0.4.3 frida-12.10.4 frida-tools-8.0.1 prompt-toolkit-3.0.5 pygments-2.6.1 wcwidth-0.2.5
WARNING: You are using pip version 19.2.3, however version 20.1.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.
(hup) C:\Users\riverman>python
Python 3.8.2 (tags/v3.8.2:7b3ab59, Feb 25 2020, 23:03:10) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import frida
>>>
Roses are red
Violets are blue
Unexpected '}' on line 32
- A hozzászóláshoz be kell jelentkezni
Köszönet a tippet. Az a nagy harci helyzet, hogy nincsenek terveim a pythonnal, pusztán egy frida szkriptet kellene nagyon lefuttatnom egy gépen. Ha az sikeres, többet nincs dolgom pythonnal.
- A hozzászóláshoz be kell jelentkezni
fent van a kettes python is, es az ala tetted fel :)
“Any book worth banning is a book worth reading.”
- A hozzászóláshoz be kell jelentkezni
Ezt miből gondolod?
- A hozzászóláshoz be kell jelentkezni
Tipp: abból, hogy pip és nem pip3? :)
- A hozzászóláshoz be kell jelentkezni
Leginkább tipp volt, de ez lenne az első dolog, amit megnéznék.
pip3-at kell használni, mint ahogy feljebb írták, abból nem lehet baj.
“Any book worth banning is a book worth reading.”
- A hozzászóláshoz be kell jelentkezni
És tényleg! Volt fent egy Python 2.7, az alá pakolta be.
Hálistennek a Frida help nagyvonalúan csak "pip"-et írt, így mivel foglalmam sem volt róla h. ez számít (tényleg nem értek a Python-hoz, nem szégyellem bevallani), valóban rossz helyre rakta be.
A python3 könyvtár \scripts alól futtatva a pip-et (ami valóban ugyanaz mint a pip3 ugyanebben a könyvtárban), már jó helyre telepítette, és az import se dobott hibát.
Most ott állok, hogy beimportálta, de a következő sornál megint elhasal:
>>> devmgr = frida.get_device_manager() >>> devmgr.add_remote_device('192.168.1.50') Device(id="socket@192.168.1.50", name="192.168.1.50", type='remote') >>> rdev = frida.get_device('tcp@192.168.1.50')
--> ennél az utolsónál kapok hibát:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\programok\Python\Python36\lib\site-packages\frida\__init__.py", line 86, in get_device
return get_device_manager().get_device(id, timeout, **kwargs)
File "C:\programok\Python\Python36\lib\site-packages\frida\core.py", line 48, in get_device
return self.get_device_matching(lambda d: d.id == id, timeout, **kwargs)
File "C:\programok\Python\Python36\lib\site-packages\frida\core.py", line 26, in wrapper
return f(*args, **kwargs)
File "C:\programok\Python\Python36\lib\site-packages\frida\core.py", line 58, in get_device_matching
return Device(self._impl.get_device_matching(lambda d: predicate(Device(d)), raw_timeout))
frida.InvalidArgumentError: device not found
>>>
- A hozzászóláshoz be kell jelentkezni
A telepitett csomagokat tobb modon is ellenorizheted:
pip list
python -m pip list
Ha a ketto nem ugyanazt a listat adja, akkor a pip es a python nem ugyanahhoz a telepiteshez tartozik.
Ha a pip install masik, akkor vagy azt atalitod, hogy a megfelelot futtassa, vagy:
python -m pip install frida-tools
- A hozzászóláshoz be kell jelentkezni
Teljesen offtopic, de nem python3 -t kéne mostanában már írni?
- A hozzászóláshoz be kell jelentkezni
ha nincs python2 telepitve, akkor a pip es a python is alias a python3 es pip3 executable-re.
szerk: igen, tudom hogy elcseszett dolog :)
- A hozzászóláshoz be kell jelentkezni
és extrém esetben a pip és a python közül az egyik a 2-re, a másik a 3-ra is tud mutatni :(
“Any book worth banning is a book worth reading.”
- A hozzászóláshoz be kell jelentkezni