![]() |
eXeL@B —› Вопросы новичков —› Установить плагин keypatch в IDA |
Посл.ответ | Сообщение |
|
Создано: 05 марта 2017 18:19 · Личное сообщение · #1 В 4-й главе сериала для IDA Нарваха рассматривает работу плагина keypatch.py для патчинга кода. Этот плагин использует питоновский пакет keystone-engine, который для этого требуется установить в систему Python, что оказалось совсем не простой задачей. Нарваха прикрепляет этот пакет в формате *.msi, но не указывает как его установить. На сайте разработчиков этого пакета по сути не детализируют установку. Там озабочены лишь рекламированием его всеядности. Может кто-то сможет скаать как установить этот пакет?! ![]() |
|
Создано: 05 марта 2017 19:53 · Личное сообщение · #2 По-английски понимаешь? Описание установки со страницы 2. Install Install Keystone core & Python binding for Python 2.7 from Copy file keypatch.py to IDA Plugin folder, then restart IDA Pro to use Keypatch. On Windows, the folder is at C:\Program Files (x86)\IDA 6.9\plugins On MacOS, the folder is at /Applications/IDA\ Pro\ 6.9/idaq.app/Contents/MacOS/plugins On Linux, the folder may be at /opt/IDA/plugins/ NOTE On Windows, if you get an error message from IDA about "fail to load the dynamic library", then your machine may miss the VC++ runtime library. Fix that by downloading & installing it from Как пользоваться: Итого, пошаговая установка: 1. Ставишь 2. Ставишь Keystone Python module for Windows - Binaries: 3. Копируешь 4. Запускаешь IDA Pro и пользуешься Keypatch в соответствии с ----- EnJoy! ![]() |
|
Создано: 05 марта 2017 20:39 · Личное сообщение · #3 Jupiter - такой текст я уже видел. Требуется конкретика установки пакета keystone-engine. Указанный там способ python setup.py install начинает запрашивать к исходному дистрибутиву неизвестное какое число дополнений типа byteyears.py, checkpyc.py, copytime.py,... Причём, ладно бы сразу все, а то по-одному! Дашь ему один - он при следующем запуске просит другой! ![]() |
|
Создано: 05 марта 2017 21:07 · Личное сообщение · #4 ksol пишет: такой текст я уже видел Его должно быть достаточно. ksol пишет: Требуется конкретика установки пакета keystone-engine. Ой, это прекрасно! Ты пришёл с "очень конкретным" вопросом, а теперь тебе снова чего-то не хватает. Чтобы тебе можно было помочь, опиши проблему более конкретно. Какая версия питона у тебя установлена, какая у тебя система (Win32/Win64/Mac), какой дистриб ты ставишь. При установке какого конкретно модуля возникает ошибка. Я специально проверил по тем шагам, которые тебе описал - всё работает. ----- EnJoy! ![]() |
|
Создано: 05 марта 2017 21:52 · Поправил: Psalmopoeus Pulcher · Личное сообщение · #5 |
|
Создано: 06 марта 2017 10:18 · Личное сообщение · #6 у меня он не работает на чистой системе, нужны dll из vcredist_x86.exe (на х64 аналогично) К python-2.7 подходит только keystone-0.9.1-python-win32.msi (или keystone-0.9.1-python-win64.msi). То есть, ставишь python-2.7, затем keystone-0.9.1 (который не встанет, если нет vcredist), копируешь плаг в соответствующую папку IDA. ![]() |
|
Создано: 06 марта 2017 10:35 · Личное сообщение · #7 |
|
Создано: 06 марта 2017 10:52 · Личное сообщение · #8 parfetka, redlord Обо всём этом уже написано в И про "VC++ runtime library", и про тип инсталлятора (Keystone Python module for Windows - Binaries: keystone-0.9.1-python-win32.msi). Но, как я вижу, лёгких путей тут никто не ищет )) ----- EnJoy! ![]() |
|
Создано: 06 марта 2017 18:40 · Личное сообщение · #9 parfetka, redlord - python27 у меня установился автоматом при установке IDA, а пакет keystone-0.9.1-python-win32.msi я взял из 4-й главы Нарвахи. На сайте разработчиков взял то что они называют ядром фреймворка: keystone-0.9.1-win32.zip. И как они предлагают, запустил из командной строки setup.py install. Результат один и тот же что для пакета .msi, что для .zip, о котором я писал выше. У команды install есть ещё, так называемый, префикс инсталляции (--prefix), которым может быть можно указать директорию для дополнительных файлов. А есть ещё более новые питоновские установщики: easy_install и pip ! ![]() |
|
Создано: 06 марта 2017 19:00 · Личное сообщение · #10 |
|
Создано: 06 марта 2017 19:06 · Личное сообщение · #11 ksol 1. Питон лучше поставить тот, который актуальный на офсайте, а не тот, который с идой шёл. 2. Инсталлятор Keystone Python module for Windows тоже нужно ставить с офсайта, а не "из 4-й главы Нарвахи". 3. Отдельно "ядро" ставить не нужно, поскольку Keystone Python module for Windows уже включает всё необходимое. Вывод? Если бы ты просто сделал, как я тебе посоветовал, то избежал бы всех этих сложностей. Ну и ещё раз повторю то, что я тебе уже писал в 1. Ставишь 2. Ставишь Keystone Python module for Windows - Binaries: ----- EnJoy! ![]() |
|
Создано: 06 марта 2017 22:05 · Личное сообщение · #12 ksol пишет: А есть ещё более новые питоновские установщики: easy_install и pip К которым внезапно еще нужны компиляторы, поскольку многие пакеты идут в исходном коде. Если есть возможность установить собранную версию, лучше так и сделать, поскольку сборка некоторых пакетов далеко не тривиальная задача из за сложности настройки окружения. keypatch устанавливается без каких либо проблем из инсталятора, как и большинство плагинов для IDA, проблемы могут возникнуть лишь с установкой Qt пятой версии на python 2.7, других проблем за все время использования ни разу не встречал. ![]() |
|
Создано: 07 марта 2017 18:36 · Личное сообщение · #13 |
|
Создано: 08 марта 2017 10:23 · Поправил: shellstorm · Личное сообщение · #14 ksol пишет: shellstorm - вы устанавливали keystone-0.9.1 питоновским или виндовским установщиком? себе через pip, у меня среда настроена, а вам советую через виндовс установщик, версия все равно такая же, единственная разница, что после установщика будет болтаться uninstall.exe в папке python, у меня много библиотек и поэтому стараюсь обходиться по возможности pip, а так было бы все равно через что устанавливать, лишь бы работало. Python 2.7.X это python 2.7, последней цифрой можно пренебречь, в 99,9% случаев это не критично. ![]() |
|
Создано: 08 марта 2017 19:02 · Личное сообщение · #15 shellstorm пишет: вам советую через виндовс установщик виндовс установщик у меня отказывается работать с этим пакетом. Наверно, это и понятно, т.к. он состоит из одних питоновских файлов. А стандартная команда 'setup.py install' просит системные файлы и упорно не видит их в соседней ситемной директории. А как ей подсказать не возможно понять из хэлпа команды install ! Установил easy_install - он ничего не дал. Вызывает он setup.py, а та начинает свою песню про дополнительные файлы! Хэлп у easy_install такой же! ![]() |
|
Создано: 09 марта 2017 01:36 · Личное сообщение · #16 ksol пишет:А стандартная команда 'setup.py install' просит системные файлы и упорно не видит их в соседней ситемной директории Переменные среды настроены, все пути правильно указаны? установите pip, после установки в cmd pip install %module_name% или pip install "%module_hdd_path%" но можно не писать путь, а просто кинуть архив в консоль после install пробел. архив распаковывать не нужно. ![]() |
|
Создано: 09 марта 2017 19:47 · Личное сообщение · #17 shellstorm - спасибо! У вас keystone в IDA отображается? keypatch работает? Я вынудил easy_install заработать! Дошла до конца, установила папку keystone в Python27, но где-то напортачила - нет связи с Идой. Пришлось эти нужные ей файла вручную раскидать по трём папкам, причём одна должна быть в корне диска с:\ . В дальнейшем, как видно из лога установки, она их отуда не брала, а нашла всё же и брала из системы Python27 ! ------------------------------ shellstorm, а для pip мой Python2.7.6 надо апгрейдить? И тогда старую версию надо вначале удалять? А какая версия pip ? И, если можно, откуда? ![]() |
|
Создано: 09 марта 2017 20:11 · Личное сообщение · #18 ksol пишет:нет связи с Идой У вас python установлен в корень диска C и папка не переименованная? Если нет, удалите установленную версию и установите по дефолтному пути на диск C, это избавит вас от множества проблем. Раскидывания по папкам это не решение, во многих библиотеках хардкод, альтернативные пути нужно добавлять в переменные среды и добавлять пути в реестре, лучше установите по человечески. ksol пишет: У вас keystone в IDA отображается? keypatch работает? Конечно, иначе с чего мне советовать пути решения. ![]() ksol пишет: А какая версия pip ? Не принципиально, лишь бы была поддержка whl, установите последнюю и не ошибетесь. ![]() Старую версию незачем удалять, новая удалит при установке или откатится на старую при ошибке. Скорее всего что то напортачили при установке, снесите все и почистите реестр от упоминаний предыдущих установок\путей, начисто установите чистую, официальную версию по стандартному пути, установите pip, а после через pip устанавливайте необходимые библиотеки, советую перед этим через тот же pip установить огрызок студийного компилятора и gcc, многие пакеты идут в исходном коде, и при установке запускается сборка. ![]() |
|
Создано: 10 марта 2017 18:25 · Личное сообщение · #19 |
|
Создано: 24 марта 2017 17:54 · Личное сообщение · #20 Уговорил я всё-таки установщик Windows поставить питоновский пакет! Оказалось, что для него имеет существенное значение откуда происходит установка. Но плагин не работает, теперь ошибка идёт из загрузки DLL-ки keystone.dll из операции типа cdll.LoadLibrary('keystone.dll') , хотя адрес библиотеки установлен правильный, а возникает исключение. ![]() |
|
Создано: 25 марта 2017 02:47 · Личное сообщение · #21 ksol пишет: Оказалось, что для него имеет существенное значение откуда происходит установка. Естественно имеет, путь к библиотекам python прописан в переменных средах. Разрядность тоже имеет значение, 32 битные библиотеки устанавливаются на соответствующую версию python, как и 64 битные библиотеки. ![]() |
|
Создано: 25 марта 2017 17:51 · Личное сообщение · #22 |
|
Создано: 25 марта 2017 18:14 · Личное сообщение · #23 ksol пишет: пожалуйста, поясните, что там у вас в файле? все необходимые файлы для правильной работы, версия 32 бита. ksol пишет: а почему в корень питона, а не в site-packages ? потому что в архиве сохранен путь \lib\site-packages\keypatch и если закинуть в таком виде в директорию python, библиотека автоматом полетит в site-packages ![]() |
|
Создано: 25 марта 2017 18:22 · Личное сообщение · #24 |
![]() |
eXeL@B —› Вопросы новичков —› Установить плагин keypatch в IDA |
Эта тема закрыта. Ответы больше не принимаются. |