eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС
выпущен 4 ноября!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

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

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

 eXeL@B —› Вопросы новичков —› Распознавать комбинации флагов при вызове Апи-функций
Посл.ответ Сообщение

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

Создано: 8 ноября 2019 21:29 New!
Цитата · Личное сообщение · #1

Как известно, в IDA можно посмотреть некоторые стандартные константы в параметрах функций, нажав клавишу 'М' (для более наглядного анализа, лучшего понимания, зачем тут идет вызов функций). Существует также очень хороший плагин --> idamagnum<-- , чтобы парсить значения с огромной базы https://www.magnumdb.com . Но - как быть в ситуациях, когда , допустим, есть комбинации двух и более значений (к примеру, GENERIC_READ | GENERIC_WRITE и так далее) ? Я пока делаю вручную, но мб есть какие-то плагины / софт для такого случая.


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

Создано: 8 ноября 2019 21:38 New!
Цитата · Личное сообщение · #2

даже самая древняя 6 версия иды это может из каробки

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

Создано: 8 ноября 2019 22:10 New!
Цитата · Личное сообщение · #3

reversecode
но как? Вот я написал код вида
Code:
  1. invoke CreateFileW,..,GENERIC_READ or GENERIC_WRITE,

это значение push C0000000 которое (при нажатии 'М' ) распознается хз как, но не так, как надо. Есть 2 Иды , обе 7ой версии.

Стоит SDK для 2008 студии и WinDDK какой-то.


Ранг: 312.4 (мудрец)
Статус: Участник

Создано: 8 ноября 2019 22:18 New!
Цитата · Личное сообщение · #4

Как вручную задать там, где ида пропустила?

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

Создано: 8 ноября 2019 22:24 New!
Цитата · Личное сообщение · #5

DenCoder
я комент пишу, а так не знаю, как оно правильно.


Ранг: 312.4 (мудрец)
Статус: Участник

Создано: 8 ноября 2019 22:28 New!
Цитата · Личное сообщение · #6

Да вот именно, что ида это умеет на знакомых функциях. Но как это делает - скрывает. В скриптах её копаться надо.

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

Создано: 8 ноября 2019 22:38 New!
Цитата · Личное сообщение · #7

morgot
Открываешь вкладку Enums, добавляешь стандартный енум MACRO_GENERIC и потом уже выбираешь для константы этот енум в качестве имени.

| Сообщение посчитали полезным: user99, morgot, Orlyonok


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

Создано: 8 ноября 2019 22:38 New!
Цитата · Личное сообщение · #8

DenCoder, Alt+F1 (или ПКМ на константе и пункт Manual)


Ранг: 312.4 (мудрец)
Статус: Участник

Создано: 8 ноября 2019 22:42 New!
Цитата · Личное сообщение · #9

rmn
А если комбинаций 2^16 ?

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

Создано: 8 ноября 2019 22:45 New!
Цитата · Личное сообщение · #10

DenCoder
Создаешь свой енум на 16 элементов, ставишь галочку, что это bitfield и по известной уже схеме...


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

Создано: 8 ноября 2019 22:53 New!
Цитата · Личное сообщение · #11

зачем вам интернет
если вы уже готового примера не можете найти на оф сайте


Ранг: 316.3 (мудрец)
Статус: Участник

Создано: 13 ноября 2019 17:53 New!
Цитата · Личное сообщение · #12

reversecode

ТС это может и быстро, можешь не сомневаться.

morgot

Это хорошо что Вас начали интересовать низкоуровневые вещи и прочие тех детали. Вот только выбор инструмента не правильный, используй обычный отладчик. В траблах с дизасмом закопаешься и забудешь что искал. Мне вот например ида нужна только что бы модуль посмотреть по быстрому с д-символами. Очень не удобный инструмент, говяного качества. Только самое просто может обработать. Почему так распиарен - потому что автоматизирован.

Ранг: 386.2 (мудрец)
Статус: Участник
"Тибериумный реверсинг"

Создано: 13 ноября 2019 19:19 New!
Цитата · Личное сообщение · #13

difexacaw пишет:
используй обычный отладчик

x64dbg из коробки при том же вызове CreateFileW (..., GENERIC_READ | GENERIC_WRITE, ...) и остальных WinAPI как-то не показывает вообще названия макросов, зато OllyDbg без проблем справляется с этой задачей.
Собственно, у меня вопрос - какими плагами или фиксами можно исправить это недоразумение в x64dbg?


Ранг: 316.3 (мудрец)
Статус: Участник

Создано: 13 ноября 2019 19:33 New!
Цитата · Личное сообщение · #14

ELF_7719116

Есть норм инструменты, это только по началу кажется виндебаг стрёмным. x64dbg это уровня разработки, это не отладчик с которым можно работать.
В любом случае какой инструмент не используй, сразу это не даст знаний. Нет смысла использовать то, что не приведёт к решению и цели, а создаст трудности. Если инструмент выглядит простым, у норм человека это должно вызвать недоверие, так как работа через него происходит с не простыми вещами.

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

Создано: 13 ноября 2019 20:08 New!
Цитата · Личное сообщение · #15

difexacaw
Да ты просто ниче структурно сложного не реверсил, вот тебе виндбг и хватает. Посмотрел бы я, как ты в нем полгиговый ехе на говнофреймворке разбирать будешь.

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

 eXeL@B —› Вопросы новичков —› Распознавать комбинации флагов при вызове Апи-функций

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS