Русский / Russian English / Английский

Сейчас на форуме: (+7 невидимых)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS ·

 eXeL@B —› Основной форум —› Использование IDA Pro (part 2)
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 18 . 19 . >>
Посл.ответ Сообщение


Ранг: 2011.1 (!!!!)
Статус: Модератор
retired

Создано: 27 марта 2017 11:54 New!
Цитата · Личное сообщение · #1

Обмен опытом использования и настройки интерактивного дизассемблера и отладчика IDA Pro.
Прошлый топик Использование IDA Pro

| Сообщение посчитали полезным: oxfemale, gent0o0


Ранг: 19.7 (новичок)
Статус: Участник

Создано: 3 февраля 2018 17:38 · Поправил: RevCred New!
Цитата · Личное сообщение · #2

ага, но если чуть точней, то -
"The microcode API for C++ will be available in the next version of IDA"
"Python API won't be available yet"


Ранг: 1030.5 (!!!!)
Статус: Участник

Создано: 3 февраля 2018 17:43 · Поправил: reversecode New!
Цитата · Личное сообщение · #3

само собой апи

но писать плугин который будет геренить некий микрокод из любой платформы mips/avr/итд - скормить hexrays для декомпиляции - думаю можно будет, возможно не без хаков

самое главное интернал структуры и енумы микрокода

Добавлено спустя 4 часа 51 минуту
презенташка на гугле что бы онлайн просмотреть а не инсталить павер поинт --> Link <--

| Сообщение посчитали полезным: plutos



Ранг: 196.6 (ветеран)
Статус: Участник

Создано: 5 февраля 2018 15:05 New!
Цитата · Личное сообщение · #4

пишу loader-плагин (на с++), нужна ваша помощь.
Суть такая, есть несколько бинарников, каждый одного типа - заголовок и сжатые секции, грузить их нужно в определенном порядке один за другим, так как прыжки и вызовы процедур там сквозные между файлами.
я хочу вручную в плагине назагружать эти файлы и поместить по нужным адресам.

Собственно вопрос: как в функции idaapi load_file(linput_t* li, ushort neflags, const char* fileformatname) узнать путь к тому файлу, который грузится?
он передается в функции accept_file, но к моменту вызова функции load_file(), ИДА уже успевает закрыть плагин и открыть

Ранг: 586.6 (!)
Статус: Модератор

Создано: 5 февраля 2018 16:56 New!
Цитата · Личное сообщение · #5

[wl]
нельзя ввести какие-либо признаки с сохранить в глобальном массиве путь и все что тебе нужно и потом сопоставлять в другой функции?


Ранг: 196.6 (ветеран)
Статус: Участник

Создано: 5 февраля 2018 18:19 New!
Цитата · Личное сообщение · #6

костыли какие-то можно придумать, например, из accept_file в качестве fileformatname передавать прямо имя файла, ну или все файлы загружать вручную в основному через меню. Я думал, может есть какой-ибудь кошерный способ...

Ранг: 71.2 (постоянный)
Статус: Участник

Создано: 5 февраля 2018 19:13 · Поправил: kunix New!
Цитата · Личное сообщение · #7

Я делал так. Лежат файлы:
C:\base_dir\qwe.my_loader
C:\base_dir\module1.exe
C:\base_dir\module2.exe
Вы грузите в IDA qwe.my_loader.
Он нужен лишь для того, чтобы ваш плагин знал, что надо запуститься.
А далее, при вызове load_file(...), GetCurrentDirectory(...) вернет вам "C:\base_dir".
Проходитесь по "C:\base_dir", получаете список модулей.


Ранг: 196.6 (ветеран)
Статус: Участник

Создано: 5 февраля 2018 20:07 New!
Цитата · Личное сообщение · #8

kunix
Благодарю, похоже такой способ подойдет, в каталоге среди исполнимых файлов есть файл метаданных, не знал, что при загрузке текущий каталог будет указывать на то, что грузится в иду


Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 7 февраля 2018 07:08 New!
Цитата · Личное сообщение · #9

В своей презентации "Decompiler internals: microcode" Ilfak Guilfanov говорит следующее:

"The microcode API for C++ will be available in the next
version of IDA

Check out the sample plugins that show how to use the
new API"

О каких именно sample plugins он говорит и где их можно найти?
Искал на оффициальном сайте ИДЫ, но то ли не туда смотрел, то ли их там пока нет...


Ранг: 1030.5 (!!!!)
Статус: Участник

Создано: 7 февраля 2018 10:07 New!
Цитата · Личное сообщение · #10

плагины будут в новом сдк в новой иде, как и новое апи
возможно как и все сдк оно потом будет доступно в документации доксиген на самом сайте

| Сообщение посчитали полезным: plutos



Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 14 февраля 2018 00:02 New!
Цитата · Личное сообщение · #11

может кто-нибудь знает, что говорится (и говорится ли вообще) в оффициальной документации ИДЫ по поводу backward and forward compatibility of processor modules developed for different versions of IDA SDK?
Т.е. будет ли processor module разработаный под IDA SDK 5.6 (к примеру) работать с будущими версиями ИДЫ и наоборот, из настоящего в прошлое (backward)?
Интересует как оффициально высказаное мнение Ильфака (если таковое было высказано), так и личный опыт участников.

Ранг: 44.8 (посетитель)
Статус: Участник

Создано: 14 февраля 2018 09:36 New!
Цитата · Личное сообщение · #12

plutos пишет:
Т.е. будет ли processor module разработаный под IDA SDK 5.6 (к примеру) работать с будущими версиями ИДЫ и наоборот

Будет какое-то время. Но Ильфак не заморачивается на "compatibility" и может через какое-то время всё кардинально поменять. В версии 7.0 он так и сделал со своим СДК, к примеру. Может не быть обратной совместимости. Это уже не первый случай в его практике.
Какой-то функционал может даже исчезнуть вообще!!! Так что иллюзий строить не надо.

| Сообщение посчитали полезным: plutos



Ранг: 1030.5 (!!!!)
Статус: Участник

Создано: 14 февраля 2018 20:07 · Поправил: reversecode New!
Цитата · Личное сообщение · #13

microcode api полное, как и ожидалось, все структуры которые кто то так хотел - есть
то что на слайдах в презентации ильфака тоже можно увидеть плагином, их(плагинов примеров) на ~+5 в декомпилере больше
апи идет только в иде в том же одном файле что и был, сразу все в одном файле,
в sdk что идет к иде отдельно его нет

в остальном скучно, багфиксов мало
нового - апи дебагера поменяли
остальное на мой взгляд по мелочи

| Сообщение посчитали полезным: plutos



Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 15 февраля 2018 03:29 · Поправил: plutos New!
Цитата · Личное сообщение · #14

reversecode пишет:
в остальном скучно, багфиксов мало

хочу уточнить: речь идет уже про ИДУ 7.1 и ее SDK?


Ранг: 1030.5 (!!!!)
Статус: Участник

Создано: 15 февраля 2018 21:37 New!
Цитата · Личное сообщение · #15

changelog ida 7.1 b1--> Link <--

| Сообщение посчитали полезным: plutos, Vintersorg



Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 16 февраля 2018 03:06 New!
Цитата · Личное сообщение · #16

reversecode пишет:
changelog ida 7.1 b1


почему же они молчат про этот release?
На оффсайте сказано про IDA 7.0.171130 (SP1) (November 30, 2017), а про ida 7.1 b1 ни слова.
А на Pastebin уже все известно.
Просто хочу понять, как работает все эта система.


Ранг: 1030.5 (!!!!)
Статус: Участник

Создано: 16 февраля 2018 08:56 · Поправил: reversecode New!
Цитата · Личное сообщение · #17

это бета тестирование для нескольких пользователей
обкатают на них, потом будет релиз

буковка б говорит о том что это бета
вам показали приватную инфо


Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 17 февраля 2018 11:11 New!
Цитата · Личное сообщение · #18

reversecode пишет:
буковка б говорит о том что это бета


А ведь я знал, что b означает beta, ей-Богу, знал, но случилось со мной то, что англичане называют
"brain fart"!
Ну, с кем не бывает....

Ранг: 33.8 (посетитель)
Статус: Участник

Создано: 18 февраля 2018 17:06 New!
Цитата · Личное сообщение · #19

Господа, а есть ли какой аналог natvis / autoexp.dat для сабжа?

Ранг: 23.7 (новичок)
Статус: Участник

Создано: 18 февраля 2018 18:09 · Поправил: parfetka New!
Цитата · Личное сообщение · #20

есть текстовый файл, содержащий что-то примерно такого:
00404E48: 'AnsiString',0
или
A 00004248: AnsiString
Как (помогите/подскажите) написать скрипт (idc или лучше py), который его пропарсит и добавит строки в комментарии? Застрял на парсинге после открытия файла
filepath = idaapi.askfile_c(False, "*.txt", "String log file");
imagebase = idaapi.get_imagebase();
Какие функции мне понадобятся перехода на новую строку в текстовом файле, поиска смещения и добавления комментария в IDA? Дело в том, что примеров с пояснениями мало, а функций много, они не структурированы по назначению.

Ранг: 152.2 (ветеран)
Статус: Участник

Создано: 18 февраля 2018 21:08 · Поправил: rmn New!
Цитата · Личное сообщение · #21

parfetka
readstr(), strstr(), substr(), atol(), set_cmt()

А вообще, зачем тебе в скрипте на питоне парсить текстовики апишками иды? Самим питоном не удобнее?

| Сообщение посчитали полезным: parfetka



Ранг: 170.1 (ветеран)
Статус: Участник

Создано: 21 февраля 2018 06:24 New!
Цитата · Личное сообщение · #22

parfetka пишет:
Какие функции мне понадобятся


Пример.


{ Атач доступен только для участников форума } - IDC example.7z

| Сообщение посчитали полезным: parfetka



Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 22 февраля 2018 09:19 New!
Цитата · Личное сообщение · #23

Народ у нас строгий, так что если про этот tool все знают, то уж сильно не пинайте.
Но может кому-то пригодится.

--> IDBTOOL<--
A tool for extracting information from IDA databases. idbtool knows how to handle databases from all IDA versions since v2.0, both i64 and idb files. You can also use idbtool to recover information from unclosed databases.

idbtool works without change with IDA v7.0.

Ранг: 0.0 (гость)
Статус: Участник

Создано: 22 февраля 2018 10:17 New!
Цитата · Личное сообщение · #24

plutos пишет: Народ у нас строгий, так что если про этот tool все знают, то уж сильно не пинайте.

я постил в этой же теме.
подкину еще плагинов
JARVIS
Code:
  1. Why JARVIS?
  2. JARVIS means "Just Another ReVersIng Suite" or whatever other bullshit you can think of :)
  3.  
  4. What is it?
  5. It is a small bughunting suite comprising three elements, namely:
  6. A fuzzer (to be released)
  7. A tracer based on INTEL PIN
  8. A plugin for IDA Pro thought to assist you with the most common reversing tasks. It integrates with the tracer.
  9.  
  10. Isn't there already something similar?
  11. Yes, "curious minds often converge on the same idea" :) and by the way, there is nothing new under the sun. Now seriously, Alex and Daniel got it right with the code organization of their IDAScope plugin, so I used it as a skeleton for mine. Kudos to them!
  12.  
  13. Why does the code suck so much?
  14. Don't let physicists do computer science.

https://github.com/carlosgprado/JARVIS

MazeWalker
Code:
  1. MazeWalker’s goal is to reduce malware analysis time by automating runtime data collection and better visualization eventually helping a researcher to concentrate on static analysis and less on its dynamic part.

https://github.com/0xPhoeniX/MazeWalker

Ранг: 23.7 (новичок)
Статус: Участник

Создано: 22 февраля 2018 19:10 · Поправил: parfetka New!
Цитата · Личное сообщение · #25

JARVIS - выглядит на картинке красиво. Требует Python 2.7, NetworkX и pyqt. Вот этот pyqt не идёт в составе питона, не ставится ни через свой инсталлятор (либо в нём не хватает библиотек), ни через "pip install pyqt5". Как его поставить? Также "Pin 71313 (vc12)" не устанавливается, похоже, хочет установленную студию..


shellstorm пишет:
https://github.com/x64dbg/PyQt5/releases
ну, надеюсь, хоть у тебя этот плагин работает, раз его предлагаешь..)

Ранг: 0.0 (гость)
Статус: Участник

Создано: 23 февраля 2018 13:14 New!
Цитата · Личное сообщение · #26

parfetka пишет: ни через "pip install pyqt5"

https://github.com/x64dbg/PyQt5/releases

parfetka пишет: Также "Pin 71313 (vc12)" не устанавливается, похоже

tools всегда собирается под платформу, в виде dll не распространяют.

Добавлено спустя 4 часа 34 минуты
parfetka пишет: ну, надеюсь, хоть у тебя этот плагин работает, раз его предлагаешь

работает, как и большая часть других. учитывая, что практически все новые плагины распространяются подобным образом, тут остается учиться собирать или же забить на плагины.
вроде бы ничего сложного, скачать pin, студию под версию pin или самому править инклюды. именно этот плагин собирается без каких либо плясок с бубном, открыл проект, нажал собрать, вот и вся дохуясложная задача.)


Ранг: 1030.5 (!!!!)
Статус: Участник

Создано: 27 февраля 2018 18:56 New!
Цитата · Личное сообщение · #27

7.1 релиз оф --> Link <--


Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 28 февраля 2018 04:34 · Поправил: plutos New!
Цитата · Личное сообщение · #28

reversecode пишет:
7.1 релиз оф --> Link <--


With this version of IDA we publish the decompiler intermediate language: the microcode. We were planning to do it since very long time but the microcode was constantly evolving, we could not do it. After ten years of evolution it looks mature and ready to be published.
We believe that it will permit our users to implement much more powerful and higher level analysis algorithms than before.

У меня вопрос к reversecode или к любому человеку, который захочет ответить:
Обьясните пожалуйста на примерах, "на пальцах", что именно имеется ввиду в последнем предложении?
Речь идет об написании plug-in'oв и processor modules? Или что-то еще?
Я в этом области делаю только первые шаги и очень хотелось бы разобраться.
Заранее спасибо!

Ранг: 0.0 (гость)
Статус: Участник

Создано: 28 февраля 2018 07:31 New!
Цитата · Личное сообщение · #29

plutos пишет: Речь идет об написании plug-in'oв и processor modules?

и первое и второе, дают доступ к IL декомпилятора. близкие аналогии это байткод java или .net платформы, байткод один, а языков с диалектами куча, другая близкая аналогия, это интроспекция с рефлексией, можно писать свои препроцессоры, которые могут значительно улучшить вывод декомпилятора. очень мощная штука, без всего этого plugin api рельс сильно ограничен.

| Сообщение посчитали полезным: plutos



Ранг: 1030.5 (!!!!)
Статус: Участник

Создано: 28 февраля 2018 11:21 New!
Цитата · Личное сообщение · #30

плагины к рейсу для манипуляции микрокодом IR
можно теперь паттерн матчинги сворачивать в свои узнаваемые конструкции
к примеру когда то рейс плохо последовательность movs movs матчил в memcpy
теперь можно было бы написать свой плагин который их будет узнавать и сразу генерить функцию memcpy
правда ильфак это уже и так улучил

--> Link <--
вон народ уже оказывается развлекается с микрокодом

| Сообщение посчитали полезным: plutos


Ранг: 11.9 (новичок)
Статус: Участник

Создано: 2 марта 2018 03:41 · Поправил: TOM_RUS New!
Цитата · Личное сообщение · #31

IDA 7.1 SDK нада?

| Сообщение посчитали полезным: plutos

<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 18 . 19 . >>
 eXeL@B —› Основной форум —› Использование IDA Pro (part 2)

Видеокурс ВЗЛОМ