Сейчас на форуме: _MBK_, Adler (+4 невидимых)

 eXeL@B —› Вопросы новичков —› ошибка вывода, OllyDbg
Посл.ответ Сообщение

Ранг: 5.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 28 августа 2011 18:11
· Личное сообщение · #1

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


b466_28.08.2011_EXELAB.rU.tgz - err.JPG



Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 28 августа 2011 19:34
· Личное сообщение · #2

и ольга не показывает функцию в стеке и адресс возврата
40124A - это что? Про функцию не знаю, но раскладку параметров она именно для MessageBox дает - чего вам еще нужно?



Ранг: 5.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 28 августа 2011 19:42 · Поправил: opcodes
· Личное сообщение · #3

нужно вот как=) http://www.wasm.ru/pub/23/pic/ollydbg09/35.png
124A это нето совсем




Ранг: 529.0 (!), 110thx
Активность: 0.290.04
Статус: Участник
5KRT

Создано: 28 августа 2011 19:59 · Поправил: daFix
· Личное сообщение · #4

opcodes
Нажми F7
Без этого крякми тут вряд-ли кто-то сможет тебе что-то подсказать. Да и вообще, в чём необходимость железных бряков?

-----
Research For Food




Ранг: 67.4 (постоянный), 6thx
Активность: 0.050
Статус: Участник

Создано: 28 августа 2011 20:07 · Поправил: Kiev78
· Личное сообщение · #5

---




Ранг: 324.3 (мудрец), 221thx
Активность: 0.480.37
Статус: Участник

Создано: 28 августа 2011 20:11 · Поправил: DenCoder
· Личное сообщение · #6

В общем случае адрес возврата ничего не даст, нужно искать строку в памяти и хард бряк на акцесс. Если не работает - NtSetThreadContext перехватить, например ;)

-----
IZ.RU





Ранг: 529.0 (!), 110thx
Активность: 0.290.04
Статус: Участник
5KRT

Создано: 28 августа 2011 20:27 · Поправил: daFix
· Личное сообщение · #7

Kiev78


DenCoder пишет:
В общем случае адрес возврата ничего не даст, нужно искать строку в памяти и хард бряк на акцесс. Если не работает - NtSetThreadContext перехватить, например ;)


Вспомнилась фраза из нуждиков
- Дорогой, ты где был?
- Стрелял по лягушкам в Германии лазером из космоса со спутника!
- Странно, но травой не пахнет.
- Дура, я под lsd.

У чувака какой-то простой крякми и он явно по тутору для новичков его решает

-----
Research For Food




Ранг: 47.7 (посетитель), 17thx
Активность: 0.090
Статус: Участник

Создано: 28 августа 2011 21:18 · Поправил: bowrouco
· Личное сообщение · #8

[12fe58] это адрес возврата(до ветвления на апи). Или вам колстек нужен ?
Весь стек нормально отображается. Иначе берите начало SFC в Ebp и жмите ентер. Проще простого.



Ранг: 47.7 (посетитель), 17thx
Активность: 0.090
Статус: Участник

Создано: 28 августа 2011 21:19
· Личное сообщение · #9

DenCoder
> Если не работает - NtSetThreadContext перехватить, например ;)
О чём это вы ?




Ранг: 529.0 (!), 110thx
Активность: 0.290.04
Статус: Участник
5KRT

Создано: 28 августа 2011 21:55 · Поправил: daFix
· Личное сообщение · #10

bowrouco пишет:
[12fe58] это адрес возврата(до ветвления на апи)

Не путайте людей. EIP чувака стоит на комманде call MessageBoxA, поэтому анализ параметров прошёл, но адреса возврата в стеке ещё нету

bowrouco пишет:
О чём это вы ?

NtSetThreadContext - распространённый метод затирания хардварных бряков, через которые Ден предлагает ставить бряк на память

-----
Research For Food




Ранг: 5.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 28 августа 2011 21:58
· Личное сообщение · #11

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



Ранг: 47.7 (посетитель), 17thx
Активность: 0.090
Статус: Участник

Создано: 28 августа 2011 22:01
· Личное сообщение · #12

daFix
> EIP чувака стоит на комманде call MessageBoxA..
Я про то и говорю. Брейк сработал до ветвления(колл это процедурное ветвление).

> NtSetThreadContext - распространённый метод затирания хардварных вряков..
И что с того. Ну есть есчо NtContinue, NtRaiseException и NtCallbackReturn. Причём тут загрузка Dr-контекста ?




Ранг: 529.0 (!), 110thx
Активность: 0.290.04
Статус: Участник
5KRT

Создано: 28 августа 2011 22:11
· Личное сообщение · #13

bowrouco

daFix пишет:
через которые Ден предлагает ставить бряк на память

Вчитайтесь в эту фразу

bowrouco пишет:
[12fe58] это адрес возврата(до ветвления на апи)

Ни какого ветвления на API тут ещё не произошло. Тут произошёл call на функцию, КОТОРАЯ уже в свою очередь, вызвала API.

Хватит офтопить

-----
Research For Food




Ранг: 47.7 (посетитель), 17thx
Активность: 0.090
Статус: Участник

Создано: 28 августа 2011 22:24 · Поправил: bowrouco
· Личное сообщение · #14

daFix
offtop: Стыдно товарищи, очень стыдно http://exelab.ru/faq/SFC

Оказывается вы не знаете что такое ветвление. Jmp - безусловное, Call - процедурное, Jcc - условное, Call [] - косвенное процедурное условное, Jmp [] - косвенное условное ветвления. Условие не только кстати определяется значением флагов, просто к сведению, так как это мало кто нонимает.




Ранг: 529.0 (!), 110thx
Активность: 0.290.04
Статус: Участник
5KRT

Создано: 28 августа 2011 23:07
· Личное сообщение · #15

bowrouco
Товарищ умник, а вы случаем не забыли устройство стека и с какой очерёдностью туда тожится инфа?

-----
Research For Food





Ранг: 303.7 (мудрец), 4thx
Активность: 0.190
Статус: Участник
tPORt Manager

Создано: 28 августа 2011 23:15
· Личное сообщение · #16

bowrouco
в стеке лежат 4 параметра для надвигающегося вызова. О каком стыде вы говорите - понять не удалось ни мне, ни daFix. [12fe58] тут лежит (в предположении, что олька не ошиблась с анализом вызовов) адрес возврата из текущей функции. А сейчас eip указывает примерно на такое место:
push xxx
push yyy
push zzz
push aaa
call bbb
где xxx, yyy, zzz, aaa это те параметры, которые уже лежат в стеке (на самой верхушке), а bbb это функция, которой эти параметры предназначаются. Судя по всему eip сейчас указывает в код приложения (не в системную dll).

opcodes
Чтобы не возникало подобных споров и можно было сразу тыкать носом пальцем в код, неплохо бы выкладывать обсуждаемые приложения.



Ранг: 617.3 (!), 677thx
Активность: 0.540
Статус: Участник

Создано: 28 августа 2011 23:24
· Личное сообщение · #17

Bit-hack пишет:
Чтобы не возникало подобных споров и можно было сразу тыкать носом пальцем в код, неплохо бы выкладывать обсуждаемые приложения.

Он по этой нарвахиной статье что-то мутит
http://www.wasm.ru/article.php?article=ollydbg09



Ранг: 47.7 (посетитель), 17thx
Активность: 0.090
Статус: Участник

Создано: 28 августа 2011 23:44 · Поправил: bowrouco
· Личное сообщение · #18

daFix

Не забыл, у тс видимо такое(так как SFC кончается на 12FE6C):
Code:
  1.          Call MsgBox
  2. 40124A:
  3.          ...
  4.          
  5. MsgBox:
  6.          MessageBox()     ; Тута брейк.

И это вероятно обёрнуто в кучу всякого мусора - левых ветвлений.




Ранг: 529.0 (!), 110thx
Активность: 0.290.04
Статус: Участник
5KRT

Создано: 29 августа 2011 00:02 · Поправил: daFix
· Личное сообщение · #19

bowrouco
Может быть стоит остановиться?

http://www.wasm.ru/pub/23/pic/ollydbg09/25.png
На момент создания первого поста, EIP у ТС было 4013BC. Ни какого ветвления в функцию, о котором вы так усердно тут глаголите, небыло. Учите мат.часть перед началом спора.

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


Клерк, ты что-ли??

Модерам - согласен на бан

-----
Research For Food




Ранг: 47.7 (посетитель), 17thx
Активность: 0.090
Статус: Участник

Создано: 29 августа 2011 00:07
· Личное сообщение · #20

daFix
Я про раскрытие ветвления ничего не говорил. Раскрой глаза. И не нужно меня посылать матчасть учить школьник.



Ранг: 5.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 29 августа 2011 00:21
· Личное сообщение · #21

проблема была решена уже на 4,5 посте от начала темы, и думаю эта проблема не заслуживала перековыривания всей программы.. ответ был прост: Точка останова встала на call'e MessageBoxA но не выполнила его.
А в стек попали только 4 процедуры API функции.. а если бы выполнила то вылезло бы сообщение MessageBoxA'a а это как вы понимаете было бы нерентабельно.
нужно было мне просто выложить полный скрин в проблемном месте.



Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 29 августа 2011 10:47
· Личное сообщение · #22

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


 eXeL@B —› Вопросы новичков —› ошибка вывода, OllyDbg
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати