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

ВИДЕОКУРС ВЗЛОМ
выпущен 2 июня!


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

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

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

 eXeL@B —› Вопросы новичков —› Offset local и программа с инсталляцией.
. 1 . 2 . >>
Посл.ответ Сообщение

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

Создано: 5 сентября 2013 23:33 New!
Цитата · Личное сообщение · #1

Здравствуйте уважаемые форумчане.
Помогите с двумя вопросами.
1. Подскажите, пожалуйста, отличается чем-то принципиальным взлом программ, требующих установку и программ типа крэкми которые запускаются без установки?
2. Как найти собственно текст, который передается в MessageBox, если ollydbg показывает Offset local 153.


Статус: Пришелец

Создано: 5 сентября 2013 23:38 New!
Цитата #2

jossross пишет:
1. Подскажите, пожалуйста, отличается чем-то принципиальным взлом программ

Ничем, все зависит от реализации.
jossross пишет:
2. Как найти собственно текст

Посмотреть вызов MessageBox в отладчике.


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

Создано: 5 сентября 2013 23:42 New!
Цитата · Личное сообщение · #3

follow in dump", не ?

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


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

Создано: 6 сентября 2013 00:01 New!
Цитата · Личное сообщение · #4

Посмотреть вызов MessageBox в отладчике.
Отладчик так и пишет offset local...
Попробую загрузить скрин.



follow in dump[t]
[/t]
Можно подробней?

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

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

Создано: 6 сентября 2013 00:17 New!
Цитата · Личное сообщение · #5

follow in dump
Погуглил, поискал, похоже оно, текст, правда крокозябрами, наверное надо подбирать кодировку, ну будем искать)
Большое спасибо.!!!


Статус: Пришелец

Создано: 6 сентября 2013 00:28 New!
Цитата #6

jossross пишет:
Отладчик так и пишет offset local

В стек один фиг строка ложится, follow in dump -> Immediate constant.

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

Создано: 6 сентября 2013 00:45 New!
Цитата · Личное сообщение · #7

Навожу на строку с Offset local далее follow in dump однако дальше только пункт selection При переходе в нижнем окне АСКИ код видит только крокозябры.
PEid говорит, что программа написана Делфи 3.0. Кодировку подобрать не получаеться.
Иду дальше, перевожу текст с Меседжбокса в Hex, копирую и пробую найти в програме хекс редактором. Не находиться, какая может быть кодировка?


Статус: Пришелец

Создано: 6 сентября 2013 00:49 New!
Цитата #8

jossross
Строка вообще может быть поксорена/шифрована, давай бинарь, что бы не гадать.

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

Создано: 6 сентября 2013 00:54 New!
Цитата · Личное сообщение · #9

Спасибо, но я пока новичок, как бинарить (вообще что єто)?


Статус: Пришелец

Создано: 6 сентября 2013 00:58 New!
Цитата #10

jossross
Бинарь - exe, dll, sys итд

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

Создано: 6 сентября 2013 01:10 New!
Цитата · Личное сообщение · #11

К сожалению EXEшник скинуть не могу: рискую как минимум рабочим местом. Все, что возможно только скрин отладчика.
[url= ]--> Link <--[/url]

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

Создано: 6 сентября 2013 02:11 New!
Цитата · Личное сообщение · #12

эта фотография не даст абсолютно никому, абсолютно ничего, даже местным экстрасенсам.

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


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

Создано: 6 сентября 2013 10:01 New!
Цитата · Личное сообщение · #13

Тогда как узнать что строка поксорена/шифрована?


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

Создано: 6 сентября 2013 10:05 · Поправил: reversecode New!
Цитата · Личное сообщение · #14

епт, если месседж бокс выводит ее, значит она не поксорена в момент вывода
jossross пишет:
При переходе в нижнем окне АСКИ код видит только крокозябры.

это не кракозярбы, это код, вы никуда не вышли а перешли на дамп кода

или прогу выкладывайте, или сами разбирайтесь


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

Создано: 6 сентября 2013 10:11 New!
Цитата · Личное сообщение · #15

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

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

Создано: 6 сентября 2013 10:26 New!
Цитата · Личное сообщение · #16

Вечером попробую залить.


Ранг: 164.6 (ветеран)
Статус: Участник
Волшебник

Создано: 6 сентября 2013 10:35 · Поправил: neomant New!
Цитата · Личное сообщение · #17

Попробую по фото поэкстрасенсить. Видно, что стоит точка останова на 405B4B, а EIP на точке входа. Так почему бы не отпустить приложение по F9 до выпадения на точке в отладчик и не посмотреть на четыре значения на верхушке стека. Два из них будут оффсетами строк заголовка и сообщения MessageBox.

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

Создано: 6 сентября 2013 11:44 New!
Цитата · Личное сообщение · #18

Вообще это похоже на стандартный кривой дельфовый код, который чтоб отобразить 1 мессадж делает 10-ти уровневую процедуру с 20 бесполезными переносами строки туда-сюда и заканчивающуюся обычным мессаджбоксом. И ловить оригинальный оффсет надо как минимум в начале процедуры (а скорее-всего процедуры на 3-4 раньше).


Ранг: 651.6 (! !)
Статус: Участник
ALIEN Hack Team

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

jossross
После фейспалмов я собрался с духом, вошёл в ваше положение и попробую написать всё внятно и понятно. В общем, выложить картинку было не такой уж плохой идеей, но вы это сделали абсолютно не через то место (через ж сделали). Как надо сделать:
1. Выкладывать скрин в момент срабатывания бряка, когда содержимое регистра еах отражает адрес переданной строки сообщения, а в окне дампа нужно отобразить содержимое этого самого адреса.
2. Если седоржимое не отображается в символам аски, то выберите шрифт Lucida (в олли есть), и всё - так можно отобразить русский текст.
3. Если это и правда делфи, то стоит заюзать либо декомпиляторы, либо хотя б флирты из иды, чтоб стаб vcl не отлаживать. Говоря простым языком, многие библиотеные имена могут быть распознаны декомпилятором по сигнатуре, и вместо простых call 00405610, он покажет вполне осмысленные имена, а библиотечный стаб вообще подсветит голубым (по умолчанию).

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

Ничем.

Как найти собственно текст, который передается в MessageBox, если ollydbg показывает Offset local 153.

Вот ответил Vovan666:
ловить оригинальный оффсет надо как минимум в начале процедуры

А как найти начало - ида или декомпиль, можно, в принципе, на глаз и в олли, но с тулзами проще.


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

Создано: 6 сентября 2013 18:44 · Поправил: Модератор New!
Цитата · Личное сообщение · #20

reversecode

> пт, если месседж бокс выводит ее, значит она не поксорена в момент вывода

И опять ты ... неправду возвестил. MsgBox() имеет в аргументах два PSTR, какой есчо шифр

Просто в 7-м классе не расказали как посмореть текстовый дамп в отладчике. И нечего тут гадать, всё очевидно.

От модератора: надоело уже читать эти матюги постоянно, забанен на сутки

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

Создано: 8 сентября 2013 23:00 · Поправил: jossross New!
Цитата · Личное сообщение · #21

Спасибо всем форумчанам, кто участвует в обсуждении.
Вот что нашел по OFFSET LOCAL
String address is the second argument in the call. By stating <%s> => OFFSET LOCAL.148
Ollydbg tells you the following: register EDX at the moment of PUSH EDX will contain address of the local variable 148 (148.-th doubleword preceding return address). Inde ed, previous command (LEA EAX,[LOCAL.148]
) loads this address to EDX

Я так понял, в здесь в параметр функции передается не сам текст а ссылка на адрес памяти лежит текст.
neomant пишет:
Попробую по фото поэкстрасенсить. Видно, что стоит точка останова на 405B4B, а EIP на точке входа. Так почему бы не отпустить приложение по F9 до выпадения на точке в отладчик и не посмотреть на четыре значения на верхушке стека. Два из них будут оффсетами строк заголовка и сообщения MessageBox.


Точку остановки ставил сам по F9 программа зависает на одной точке и дальше не идет.
Vovan666 пишет:
И ловить оригинальный оффсет надо как минимум в начале процедуры (а скорее-всего процедуры на 3-4 раньше).


Можно пожалуйста подробнее (понимаю что и этого много но, извините, я только учусь)?
ARCHANGEL пишет:
Как надо сделать:
1. Выкладывать скрин в момент срабатывания бряка, когда содержимое регистра еах отражает адрес переданной строки сообщения, а в окне дампа нужно отобразить содержимое этого самого адреса.
2. Если седоржимое не отображается в символам аски, то выберите шрифт Lucida (в олли есть), и всё - так можно отобразить русский текст.
3. Если это и правда делфи, то стоит заюзать либо декомпиляторы, либо хотя б флирты из иды, чтоб стаб vcl не отлаживать. Говоря простым языком, многие библиотеные имена могут быть распознаны декомпилятором по сигнатуре, и вместо простых call 00405610, он покажет вполне осмысленные имена, а библиотечный стаб вообще подсветит голубым (по умолчанию).


Спасибо, не все понял но разбираюсь.
Ида показывает наличие текстовой сроки но не показывает же срока по наведению курсора.



Извините, но исходный файл залить не смогу так как уволят.


Ранг: 164.6 (ветеран)
Статус: Участник
Волшебник

Создано: 8 сентября 2013 23:39 · Поправил: neomant New!
Цитата · Личное сообщение · #22

jossross пишет:
Точку остановки ставил сам по F9 программа зависает на одной точке и дальше не идет.


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

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

Создано: 8 сентября 2013 23:58 New!
Цитата · Личное сообщение · #23

neomant пишет:

Что точку остонова ставили сами это видно по скрину. Что значит зависает на одной точке и дальше не идёт?

Открываю программу (требует установки), далее нажимаю Плай, отладчик останавливается на одной строке и дальше ни F7 F8 F9 не действуют. нет каких-либо изменений. В списке открытых программ снизу появляется окно установки но при кликанья на него ничего не происходит.neomant пишет:
Нужно предпринять определённые действия в приложении для появления заветного MessageBox, тогда и вывалимся в отладку.

Попасть на месседж бокс могу только прямо по листингу.


Ранг: 651.6 (! !)
Статус: Участник
ALIEN Hack Team

Создано: 9 сентября 2013 00:21 New!
Цитата · Личное сообщение · #24

jossross пишет:
и дальше ни F7 F8 F9 не действуют

Shift+F9?


Ранг: 164.6 (ветеран)
Статус: Участник
Волшебник

Создано: 9 сентября 2013 09:27 · Поправил: neomant New!
Цитата · Личное сообщение · #25

ARCHANGEL пишет:
Shift+F9?


Однозначно. Внимательно читать строку статуса. Скорее всего вывалились на каком-то исключении.

jossross:
Попасть на месседж бокс могу только прямо по листингу.


С этим может справится и дизассемблер, в ИДЕ статический анализ делать намного удобнее. Дебаггер же как раз и предназначен для самой отладки(динамического анализа).

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

Создано: 9 сентября 2013 23:24 · Поправил: jossross New!
Цитата · Личное сообщение · #26

neomant пишет:
Shift+F9?

Последние сводки с фронта боевых действий.
Комбинация клавиш дает результат. Если я открываю исходный файл то запускается установка, а если перегружаю оли и запускаю еще раз то соответственно происходит деинсталляция.
Ничего динамически по самой программе посмотреть нельзя.
Поэтому я попытался открыть файл из папки с установленной программой (Program files...). Пока вроде все хорошо...Но, в процессе танцев с бубнами возникли еще вопросы:
1. В программе с инсталляцией надо работать над исходным файлом или над тем, который установится после инсталляции?
2. Какой функцией выводится диалоговое окно с тремя полями ввода (два из которых уже заполнены) и кнопками Ок и отмена....

Программа, кстати, останавливается на таком INS BYTE PTR ES:[EDI],DX


Ранг: 468.0 (мудрец)
Статус: Участник
[www.AHTeam.org]

Создано: 10 сентября 2013 02:57 New!
Цитата · Личное сообщение · #27

jossross пишет:
Какой функцией выводится диалоговое окно с тремя полями ввода (два из которых уже заполнены) и кнопками Ок и отмена....


например этой:
CreateDialogParamA(hInstance, "MainDialog", 0, 0, 0);


Статус: Пришелец

Создано: 10 сентября 2013 03:15 New!
Цитата #28

jossross пишет:
1. В программе с инсталляцией надо работать над исходным файлом или над тем, который установится после инсталляции?

Зависит от инсталятора, чаще проверка регистрации в темповых файлах.
jossross пишет:
2. Какой функцией выводится диалоговое окно с тремя полями ввода (два из которых уже заполнены) и кнопками Ок и отмена....

KingSise пишет:
CreateDialogParamA(hInstance, "MainDialog", 0, 0, 0);
к этому добавлю:
ShowWindow

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

Создано: 12 сентября 2013 02:07 New!
Цитата · Личное сообщение · #29

KingSise пишет:
например этой:
CreateDialogParamA(hInstance, "MainDialog", 0, 0, 0);


F_a_u_s_t пишет:
howWindow


Долго-долго бил-бил и разбил, требуемое окно выскакивает при визове функции zwcontinue.
CPU Disasm
Address Hex dump Command Comments
7C9342BE E8 9B8DFDFF CALL ZwContinue

Функция выводит и главное окно программы и окно проверки с текстовыми полями.
Как с ней бороться?
Окно проверки пароля выскакивает с опозданием хотя программа стоит на брейкпоинте.


Статус: Пришелец

Создано: 12 сентября 2013 11:24 New!
Цитата #30

jossross пишет:
Долго-долго бил-бил и разбил, требуемое окно выскакивает при визове функции zwcontinue.


Code:
  1. NTSYSAPI 
  2. NTSTATUS
  3. NTAPI
  4. NtContinue( IN PCONTEXT ThreadContext, IN BOOLEAN RaiseAlert );
  5.  
  6. ThreadContext
  7. Pointer to CONTEXT structure for current thread. 
  8.  
  9. RaiseAlert
  10. If set, remove Alerted state from current Thread Object. 
  11. --------------------------------------------------------------------------------
  12. You can use NtContinue after processing exception for continue executing thread. System uses NtContinue also in APC processing.

И какие тут окна?

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

. 1 . 2 . >>
 eXeL@B —› Вопросы новичков —› Offset local и программа с инсталляцией.
Эта тема закрыта. Ответы больше не принимаются.

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

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