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

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


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

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

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

 eXeL@B —› Софт, инструменты —› Mr.eXoDia x64 dbg
<< 1 ... 9 . 10 . 11 . 12 . 13 . 14 . 15 . 16 . >>
Посл.ответ Сообщение

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

Создано: 11 декабря 2013 11:49 · Поправил: 3 мая 2016 21:30 Ra1n0 New!
Цитата · Личное сообщение · #1

Актуальные ссылки:

sourceforge.net
http://x64dbg.com
https://github.com/x64dbg/x64dbg
scyllahide

Документациия по отладчику - --> Link <--

Новый проект от Mr.eXoDia и др.

Features:

Open-source
Intuitive and familiar, yet new user interface
C-like expression parser
Full-featured debugging of DLL and EXE files (TitanEngine)
IDA-like sidebar with jump arrows
IDA-like instruction token highlighter (highlight registers etc.)
Memory map
Symbol view
Thread view
Content-sensitive register view
Fully customizable color scheme
Dynamically recognize modules and strings
Import reconstructor integrated (Scylla)
Fast disassembler (BeaEngine)
User database (JSON) for comments, labels, bookmarks etc.
Plugin support with growing API
Extendable, debuggable scripting language for automation
Multi-datatype memory dump
Basic debug symbol (PDB) support
Dynamic stack view
Built-in assembler (XEDParse)
View your patches and save them to disk
Built-in hex editor
Find patterns in memory




| Сообщение посчитали полезным: ff0h, Gideon Vi, nick8606, Artem_N, JKornev, DimitarSerg, daFix, Rio, n0x90, DenCoder, Maximus, ELF_7719116, exprxp, Error13Tracer, Gerpes, SDFnik, VanHelsing, marius, jangle, hello, Bronco, mushr00m, HandMill, Johnatalbi, kassane, BAHEK, zNob, mkdev, Haoose-GP, HAOSov, mr qubo, Tyrus, kurorolucifer, Relax_, esa_r, Styx, Creckerhack, RootKey, RoKZaR, CKAP



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

Создано: 7 июля 2018 02:18 New!
Цитата · Личное сообщение · #2

plutos пишет:
Если у вас такой скормный опыт, то начинать с х64 dbg по меньшей мере неразумно.

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

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

Создано: 7 июля 2018 04:29 New!
Цитата · Личное сообщение · #3

yashechka пишет: Кто пробовал собирать сей софт?

Собирал и модифицировал, часто, и часто с нервами.
У тебя скорее всего проблема с настройками Qt, точнее они отсутствуют, попробуй собрать семплы которые идут с Qt, вангую, что они не соберутся.

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

Создано: 7 июля 2018 06:29 New!
Цитата · Личное сообщение · #4

Я решил его изучить, узнать как всё это дело работает изнутри. По одной из специальности я программист. У меня есть опыт на си, си плас-плас и Qt 4 версии. Вечером попробую собрать проект из примеров. Также докачается VS с 5 апдэйтом. Попробую на ней собрать.

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

Создано: 7 июля 2018 07:22 New!
Цитата · Личное сообщение · #5

yashechka пишет: Также докачается VS с 5 апдэйтом. Попробую на ней собрать.

это не обязательно, достаточно поддержки std-11, но версия Qt должна соответствовать версии студии, иначе возникнет конфликт рантайма. установленную версию желательно удалить и зачистить следы установки в реестре, и установить нормальную, официальную версию, а не хз из какой файловой помойки. у меня тоже возникали проблемы со сборкой, одна программа сломала build скриптом настройки Qt и при сборке тоже были портянки ошибок, решилось стандартны ремонтом установщика.

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

Создано: 7 июля 2018 11:29 · Поправил: jinoweb New!
Цитата · Личное сообщение · #6

shellstorm пишет:
Собирал и модифицировал, часто, и часто с нервами.
У тебя скорее всего проблема с настройками Qt, точнее они отсутствуют, попробуй собрать семплы которые идут с Qt, вангую, что они не соберутся.


Около года назад пробовал собирать. Переплевался но собрал. После этого решил что это садо-мазо не для меня. Никак не соберусь написать вменяемый сборщик, например на cmake

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

Создано: 7 июля 2018 11:46 · Поправил: shellstorm New!
Цитата · Личное сообщение · #7

jinoweb пишет: Переплевался но собрал.

со сборкой у меня нет проблемы, не считая единичной проблемы с Qt, нервы были только из-за причины пересборки, у мистера наверное уши горели. cmake давно стандарт или ninja, как альтернатива, но не все умеют пользоваться, нужно сразу прикладывать инструкцию. если будешь делать сборщик, добавь подтягивание зависимостей, git --recursive тоже не все умеют.)

Bronco пишет: я зА... солюшен в каждом проекте

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


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

Создано: 7 июля 2018 14:55 New!
Цитата · Личное сообщение · #8

shellstorm пишет:
тоже не все умеют.)

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

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

Создано: 10 июля 2018 10:02 New!
Цитата · Личное сообщение · #9

Проект собрался без запинок с UPDATE 5.
Кто-нибудь с форума участвует в разработке? Я вижу, что есть русский интерфейс. Меня заинтересовал этот проект, потому что он собирается сначала в студии, а потом ещё раз, но уже в QT. Я хотел бы в нём разобраться.

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

Создано: 10 июля 2018 10:30 · Поправил: VOLKOFF New!
Цитата · Личное сообщение · #10

yashechka пишет:
Проект собрался без запинок с UPDATE 5

ставь еще

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

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


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

Создано: 10 июля 2018 10:59 New!
Цитата · Личное сообщение · #11

Если не секрет, почему олли64 не такой популярный. Или вообще не популярный?

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

Создано: 10 июля 2018 11:12 New!
Цитата · Личное сообщение · #12

yashechka пишет: Если не секрет, почему олли64 не такой популярный. Или вообще не популярный?

потому что если и существует то только у разработчика на жестком диске. x64dbg хоть и с недостатками, но он есть.

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

Создано: 10 июля 2018 11:22 New!
Цитата · Личное сообщение · #13

А как же это?
http://ollydbg.de/odbg64.html
February 05,2014 - the progress is steady.


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

Создано: 10 июля 2018 11:28 · Поправил: f13nd New!
Цитата · Личное сообщение · #14

yashechka пишет:
А как же это?
http://ollydbg.de/odbg64.html
February 05,2014 - the progress is steady.

Учитывая то, сколько версия 2.0 существовала без плагинов, к выходу 128битного интела олли64 успеет выйти.

What is even not an alpha, buggy as hell and can't debug? - OllyDbg 64! (This is a joke).Звучит как "не свистит и в ж.пу не влезает? - свисток для ж.пы!"

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

Создано: 10 июля 2018 14:52 New!
Цитата · Личное сообщение · #15

А еще документация имеет видимость правильной и полной, но половину приходится додумывать и искать прецеденты )
Например нужно вывети в [лог|файл|месаджбокс|хоть куда-нибудь] х байт по y адресу по срабатыванию условной BP, как это сделать хз, валидации в окне редактирования BP походу вообще нет, сам догадайся, правильный синтаксис|команды, или неалё



так не сохраняет (может и не должно). Есть идеи?
Плюс вообще все чекбоксы с данным стилем не работают от слова совсем


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

Создано: 10 июля 2018 15:18 · Поправил: Bronco New!
Цитата · Личное сообщение · #16

VOLKOFF пишет:
Например нужно вывети в [лог|файл|месаджбокс|хоть куда-нибудь] х байт по y адресу по срабатыванию условной BP

скриптом делается, и мсг то же, а без него в логе только адрес бп автоматом.
насчёт длины не уверен, в скрипте макси 8 байт для формата.
а по настройкам не пробовал, возможно в поле команды, надо перед условием трасеинто или что то в этом духе, а с ней колво евентов надо ставить.
как видно просто условие не срабатывает.
Bronco пишет:
Вот такая противоречивая документация

что на одном дыхании успели сделать, то и жуём, остальное всё интуитивно по прототипам из сдк.
хорошо хоть для скрипта дыхалки хватило.

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


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

Создано: 10 июля 2018 17:06 New!
Цитата · Личное сообщение · #17

Да, скриптом норм, однако я поэкспериментировал и вставил скриптовую команду (те что в разделе доков Script Commands) в окно редактирования BP и... оно тоже работает. Вот такая противоречивая документация


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

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

f13nd пишет:
а потом в mr. exodia's debugger'е контекстные меню с лагом отрисовываются

брал отсюда, ибо это наболевшее, частично решение здесь, мистер эксодиа любезно дал рабочий пример. в принципе, если по времени не критично можно юзать апи бриджа GuiProcessEvents().

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


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

Создано: 13 июля 2018 08:55 · Поправил: BlackCode New!
Цитата · Личное сообщение · #19

При аттаче отладчик постоянно останавливается на NtQueryInformationProcess.
Причем останавливается не однократно.
Внизу отладчика пишет, что Breakpoint reached not in list!
Я прохожу это по Shift+F9.
Но какова причина этого бряка? И как это пофиксить?


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

Создано: 14 июля 2018 08:38 New!
Цитата · Личное сообщение · #20

BlackCode пишет:
Но какова причина этого бряка? И как это пофиксить?

Причина наверное в том, что int3 туда воткнул не отладчик. В ольге это делается в exceptions-ignore following-int3 breaks, в эксодии очевидно аналог этой опции engine-skip int3 stepping, либо engine-ignore inconsistent breakpoints (ну или может само исключение добавить. в исключения исключений).


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

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

Это баг или как понимать?

вставляю:
mov qword ptr ds:[rsp+0x20], 0xFFFFFFFFFFFFFFFF
Instruction encoded successfully

ну а мне немешало бы записывать qword с разными данными, и, к примеру:
mov qword ptr ds:[rsp+0x20], 0xF00FFFFFFFFFFFFF
Instruction encoding error

С какого перепугу нельзя нормально записать qword?

про
mov rax,...
mov qword ptr ds:[rsp+0x20],rax
это знаю. но лучше же записать короче в одну инструкцию и без "вреда" для стека push/pop rax...
но разбить на два dword работает же

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

Создано: 17 июля 2018 19:42 · Поправил: RevCred New!
Цитата · Личное сообщение · #22

Kindly пишет:
Это баг или как понимать?

насколько я знаю нет инструкции
Code:
  1. mov qword ptr [memory], qword_number

и даже ваша мнемоника -> энкодится как
Code:
  1. mov qword ptr ds:[rsp+0x20], 0xFFFFFFFFFFFFFFFF -> 48 C7 44 24 20 ```FF FF FF FF```
  2. mov qword ptr ds:[rsp+0x20], 0x78563412 -> 48 C7 44 24 20 ```12 34 56 78```

а с 0xFFFFFFFFFFFFFFFF всё нормально скорее всего из-за того, что асм-двиги считают что 0xFFFFFFFFFFFFFFFF это -1

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



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

Создано: 17 июля 2018 20:01 · Поправил: Kindly New!
Цитата · Личное сообщение · #23

RevCred пишет:
а с 0xFFFFFFFFFFFFFFFF всё нормально скорее всего из-за того, что асм-двиги считают что 0xFFFFFFFFFFFFFFFF это -1

ну ну, а ну ка сравни:
mov qword ptr ds:[rsp+0x20], 0xFFFFFFFF74323323
и
mov qword ptr ds:[rsp+0x20], 0xFFFFFFFF84323323

второе значение, тоже считается как -1?
и записывается четко. дык что за магия, знающие? неужто 64-бит так подрублен, что некоторые qword напрямую писать можно, а некоторые нельзя?

upd:
всем спасибо, понятно теперь.


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

Создано: 17 июля 2018 20:11 · Поправил: f13nd New!
Цитата · Личное сообщение · #24

Kindly пишет:
второе значение, тоже считается как -1?

Code:
  1. MOV r8, imm8 OI Valid Valid Move imm8 to r8.
  2. MOV r8***, imm8 OI Valid N.E. Move imm8 to r8.
  3. MOV r16, imm16 OI Valid Valid Move imm16 to r16.
  4. MOV r32, imm32 OI Valid Valid Move imm32 to r32.
  5. MOV r64, imm64 OI Valid N.E. Move imm64 to r64.
  6. MOV r/m8, imm8 MI Valid Valid Move imm8 to r/m8.
  7. MOV r/m8***, imm8 MI Valid N.E. Move imm8 to r/m8.
  8. MOV r/m16, imm16 MI Valid Valid Move imm16 to r/m16.
  9. MOV r/m32, imm32 MI Valid Valid Move imm32 to r/m32.
  10. MOV r/m64, imm32 MI Valid N.E. Move imm32 sign extended to 64-bits to
Форматы с immediate в MOV. imm64 только в регистр.

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

Создано: 17 июля 2018 20:15 · Поправил: RevCred New!
Цитата · Личное сообщение · #25

Kindly пишет:
mov qword ptr ds:[rsp+0x20], 0xFFFFFFFF74323323

не собирает
Kindly пишет:
mov qword ptr ds:[rsp+0x20], 0xFFFFFFFF84323323

48 C7 44 24 20 ```23 33 32 84``` - dword, но не qword

при этом
mov qword ptr ds:[rsp+0x20], 0x74323323 -> 48 C7 44 24 20 23 33 32 74
mov qword ptr ds:[rsp+0x20], 0x84323323 -> нет в asmjit и в keystone, но есть в xedpasre

f13nd пишет:
Форматы с immediate в MOV. imm64 только в регистр.

RevCred пишет:
насколько я знаю нет инструкции
```mov qword ptr [memory], qword_number```

я вроде как то же самое сказал, только своими не профессиональными словами


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

Создано: 17 июля 2018 20:21 New!
Цитата · Личное сообщение · #26

Под константу для записи в память отведено 4 байта=дворд. Дворд расширяется до кворда знаком, читай, старшим битом. И будет весь старший дворд либо 0, либо -1. Хочешь писать кворд, не подходящий под это-пиши в регистр.


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

Создано: 17 июля 2018 20:59 · Поправил: Bronco New!
Цитата · Личное сообщение · #27

ха-ха..уже всё написано, пару страниц назад.
ксед парсе мистера, не воспринимает, значения со знаком в 16ричном.
надо парсить и сводить к читаемому, -1*, и тыкать знак.
а к тому что проглатывает, тупо добавляет байт знака(0xFF), то есть длина увеличилась
макси 32битное, в х64, для операнда размер 8, он не правильно кодирует.
джиту похрен на знак, вот с макси числом не помню.
но джит не кодирует нопы больше одного бпайта..))
в общем из 3 рабочих асм двигов, нет ни одного без изъяна..

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

Создано: 17 июля 2018 22:53 · Поправил: Boostyq New!
Цитата · Личное сообщение · #28

RevCred пишет:
я вроде как то же самое сказал, только своими не профессиональными словами

А нету потому что в 64-битном режиме решили оставить размер imm 32-бита, и он просто расширяется знаком как и сказал Archer.
Но 64-битный imm таки можно записать используя REX-префикс, включив бит W, но только в регистр общего назначения.
Bronco пишет:
в общем из 3 рабочих асм двигов, нет ни одного без изъяна..

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


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

Создано: 17 июля 2018 23:10 New!
Цитата · Личное сообщение · #29

Boostyq пишет:
забитую опкодами архитектуру

Это называется CISC-архитектура, обилие опкодов не недостаток, а особенность. RISC удел туповатых микроконтроллеров, где 2 конвейера команд уже невообразимо круто. Интеловская архитектура гениальна, она вся про modrm и sib поля. И не будь она таковой, не было бы ни интела как стандарта де-факто домашних ПК, ни микрософта. В х64 они были просто вынуждены наделать довесков, ибо как самостоятельная независимая архитектура эта шляпа никому бы была не нужна без совместимости с ia-32.

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

Создано: 17 июля 2018 23:35 · Поправил: Boostyq New!
Цитата · Личное сообщение · #30

f13nd
Ну я и не говорила, что не знаю что такое циск, так же как не говорила про недостатки конкретно ia-32
Скорее про дополнение ia-32e, на которое им пришлось добавить кучу костылей, в результате чего появились ситуации, где чтобы узнать операнд надо пропылесосить префиксы и кучку полей и т.п.
Циск вроде не про костыли, а про многоступенчатые команды, и то что они доклеили из-за обратной совместимости не делает их архитектуру гениальной


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

Создано: 17 июля 2018 23:56 · Поправил: f13nd New!
Цитата · Личное сообщение · #31

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

По-настоящему ПЛОХАЯ архитектура это что-то типа этого http://sendfile.su/1431168. Она не заставляет биться в истерике своей логичностью, как мотороловский PowerPC, не сименсовый c166 или h8 хитачи, где чтобы определить операнд бывает надо пропылесосить инструкции перед (!) нужной на предмет инструкции, расширяющей адресацию на n-ное количество инструкций за ней. Не ренесасовый SH, который вечно пытается подловить на особенности своих двух конвейеров, когда инструкция, следующая за переходом, может исполняться вместе с ним, от этого может развиться косоглазие, потому что левый всегда смотрит на адрес. В тошибе просто надо пропылесосить до двух префиксов, первую часть опкода, экстеншн ворд (если есть) и иммедиэйт (если есть), чтоб добраться до второй половины опкода и догадаться что это за инструкция вообще. И каждый префикс может расширять произвольный операнд, это зависит только от самой инструкции. После всего этого интел может показаться священной меккой.

Boostyq пишет:
Ну я и не говорила, что не знаю что такое циск

значит я не так понял про забитость опкодами. опкод у инструкции один.
<< 1 ... 9 . 10 . 11 . 12 . 13 . 14 . 15 . 16 . >>
 eXeL@B —› Софт, инструменты —› Mr.eXoDia x64 dbg

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

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