PDA

Просмотр полной версии : Реверсинг. Задай вопрос - получи ответ


Страницы : 1 2 [3]

Kaimi
01.08.2009, 13:32
Так справа же

http://i056.radikal.ru/0908/42/b1cf6599d461.gif

wolmer
01.08.2009, 13:53
Так справа же

http://i056.radikal.ru/0908/42/b1cf6599d461.gif
Подробнее...

У меня цифры после eax,ecx такие же как и у вас...(почти* вот прям точь в точь но...) Значит что-то не договорил мне кажится :rolleyes:

Kaimi
01.08.2009, 14:10
Подробнее по поводу? Ты либо вопрос неточно задал, либо я просто не понимаю что ты хочешь узнать.

wolmer
01.08.2009, 14:20
Ну как это не понимаешь... Боже мой...
Нужно узнать содержимое определенного регистра! Типа как в SoftIce,
Но справа колонка она не отвечает за содержимого регистров... Я не прав в этом? Тогда скажи пожалуйста почему данные с картинки твоей такие же как и у меня
Темболее я не могу понять как это справа можно определить значение ОПРЕДЕЛЕННОГО регистра! :confused:
(я точно что-то не так делаю)

Kaimi
01.08.2009, 14:26
Я без понятия что в SoftICE, отладчиками уровня ядра я не пользовался. Справа в колонке ты видишь содержимое регистров для процесса который ты в данный момент отлаживаешь.
Текст справа от имени регистра отражает его содержимое как бы.

wolmer
01.08.2009, 14:36
Текст справа от имени регистра отражает его содержимое как бы.
Это я уже понял давно... Меня интересуют ответы на вопросы с поста #504

slesh
01.08.2009, 14:49
То, что на рисунке - это и есть значение регистров. Если ты не понимаешь что такое регистры, или понимаешь под этим словом чтото другое, неотносящиеся к именно регистрам процессора, то иди читай доку по асму.
Если ты хочешь увидеть значение MMX регистров то покликай на заголовке где написано Registers (FPU)

Если ты запускаешь прогу то у всех почти регистры будут инициализированы одинаково за исключением некоторых - EIP (потому что он будет указывать ан EntryPoint) и ESP который указывает на стек.
По трассируй прогу и увидишь как значение регистров будет менять.

slesh
01.08.2009, 14:54
Если ты забыл что относится к регистрам, то вот регистры i386(64-х битные не стал указывать) :

Основные регистры:
8-и битные - al cl dl bl ah ch dh bh
16-и битные - ax cx dx bx sp bp si di
32-х битные - eax ecx edx ebx esp ebp esi edi

Регистры сегментов:
16-ти битные - es cs ss ds fs gs

Регистры управления:
32-х битные - cr0 cr2 cr3 cr4

Регистры отладки:
32-х битные - dr0 dr1 dr2 dr3 dr6 dr7

Регистры математического сопроцессора (FPU)
80-и битные - st0 st1 st2 st3 st4 st5 st6 st7

Регистры MMX
64-и битные - mm0 mm1 mm2 mm3 mm4 mm5 mm6 mm7

Регистры SSE
128-ти битные - xmm0 xmm1 xmm2 xmm3 xmm4 xmm5 xmm6 xmm7

Ну и регистры флагов еще EFL можно добавить.

P.S - число которое рядом с именем регистра - это и есть его значение в HEX. Даблкликни на нем и откроется окно где можно будет изменить его значение, заодно оно будет показано в HEX/ DEC знаковое и DEC беззнаковое.

wolmer
01.08.2009, 15:10
То, что на рисунке - это и есть значение регистров. Если ты не понимаешь что такое регистры, или понимаешь под этим словом чтото другое, неотносящиеся к именно регистрам процессора, то иди читай доку по асму.

Интересно как я могу так спрашивать если я и сам не знаю о чем спрашиваю?(по вашим словам) :confused:
//p.s. в #504 ссылался на то чтобы получить правильный/адеватный ответ от kaimi о том как просмотреть регистры (результаты регистров*) в определенном месте проги

По трассируй прогу и увидишь как значение регистров будет менять.

Спасибо, донес то что не мог донести kaimi :)

ProTeuS
05.08.2009, 16:59
если кому-то непонятен смысл скриншотов (ответы были даны) 4итаем калашникова, юрова, пирогова и т.д., в разделе есть прикрепленные темы на книги, асм-реверсблоги, инструментарий крекера

wolmer, если 4то-то хо4ешь, но незнаешь как сказать - культурно формулируй и скорее всего полу4ишь помощь, хамство и отсебятину - в болталку, раздел для этого и создан

оффтоп по4ищен

mazaxaka
08.08.2009, 00:52
Чем можно разпаковать файл запакованый темидой?

Kaimi
08.08.2009, 01:14
Руками, мб поможет http://cracklab.ru/art/?action=view&id=313

De-visible
08.08.2009, 01:59
Руками, мб поможет http://cracklab.ru/art/?action=view&id=313
Да пиздец извращение....

Loginator
08.08.2009, 02:30
Возможно что это http://soft-best.ws/1158522661-cracklab-2008.html поможет даже куда намного больше,здесь много инструментов,учебников,ман уалов и есть даже видео по взлому,просто один из бесценных наборов для творческого человека.)

ProTeuS
08.08.2009, 03:13
Kaimi, это уже давно не актуально. с тех пор под новые недрайверные версии куча недоанпакеров выходила, что-то аля антемида2 (можно загуглить),
а проще mazaxak'е на кряклабе том же найти тему по словосочетанию "темида анпак" там пару месяцев назад была сооствествующая тема про анпак фимы и на примере последнего TheBat анпакали, там юе вроде был как беглый тутор, так и видеоурок по анпаку. если не найдешь - пиши, анйду линку

ntldr
11.08.2009, 20:06
есть ли плагин для ольки чтобы отследить место возникновения исключения?

neprovad
11.08.2009, 20:45
есть ли плагин для ольки чтобы отследить место возникновения исключения?
Debugging options-exceptions
Убрать галки с опций, которые требуется отслеживать

Derec
17.08.2009, 18:33
У меня есть вопрос. Я не могу отладить программу, потому что по всей видимости у нее стоит защита (пробовал OllyDbg). Защиту ломать не нужно, да и не стоит этого. Мне лишь неообходимо узнать адресс вызываемой процедуры при нажатии на одну кнопочку в этой программе. Подскажите пожалуйста, можно ли это сделать не пребегая к обходу защиты? Существуют какие-нибудь алтернотивные методы? :rolleyes:

Спасибо!

Kaimi
17.08.2009, 20:52
На чем написана программа? Попробуй воспользоваться плагинами типа fantom, hide od, olly advanced, hide debugger. Возможно тогда программа не обнаружит присутствие olly

Chrome~
18.08.2009, 01:23
Как можно узнать список импортируемых функций? Я сейчас использую один сервис, - далеко не самый удобный вариант. Какими программами это можно сделать?

zeppe1in
18.08.2009, 09:22
я юзаю F3 в тотал командере)
http://physio-a.univ-tours.fr/tcplugins/FILEINFO.htm

ProTeuS
18.08.2009, 10:12
Chrome~
PEID, LordPE, PeTools
В PeTools: Tolls - PE Editor - выбрать файл - Sections - Import Directory - жать "..." - вот и список импортируемых функций по каждой из импортируемых библиотек

desTiny
18.08.2009, 10:52
>>В PeTools: Tolls - PE Editor - выбрать файл - Sections
только не Sections, а Directories

Chrome~
18.08.2009, 11:47
Использовал PeTools, - все получилось. Всем спасибо!

wolmer
04.09.2009, 21:46
Че то не могу понять чем упакованно (peid юзал, не выдал ничего)

http://dump.ru/file/3358890

Помогайте чтоли :-)

neprovad
04.09.2009, 22:24
Че то не могу понять чем упакованно (peid юзал, не выдал ничего)

http://dump.ru/file/3358890

Помогайте чтоли :-)
ничем не упаковано

wolmer
04.09.2009, 22:30
ничем не упаковано
так подождите, почему я тогда не могу найти слова типа "Не верный серийный номер"

Искал во всех файлах но никак не могу найти слова о неверном серийном номере (или же подобному слову) (точнее искала программа w32dasm (Search Text))

Или я что-то не так делаю?

neprovad
04.09.2009, 22:42
крутой термин - языковой барьер
w32dasm - атавизм на мой взгляд, используй IDA и OllyDBG

desTiny
05.09.2009, 00:41
есть такие слова, как "ресурсы", "юникод"... а иногда ещё есть "защита", что ли. в смысле "шифрование"

PS попробуй по слову "serial" поискать

SaiRus
06.09.2009, 02:08
сорри за тупой вопрос, так просто на будущее спрашиваю, есть прога меняет мак адрес ))))) с помощью оллюдбг можно в поле вставить мак адрес, что бы при запуске проги поле было не пустое а с моим маком? и что подменить примерно? :rolleyes:

Ra$cal
06.09.2009, 02:23
если гуи программа - то можно впаять небольшой инлайн патчик, который будет задавать значение полю. нужно только надебажить нужный момент для вызова внедрения текста - когда окно создано.

Dosia
06.09.2009, 10:33
кинь ссылку, посмотрим. При запуске GUI приложений обычно оно устанавливает значения текстовых полей функцией SetWindowText, ставь бряки на всех и ищи когда будет текст похожий на текст поля для MAC, то есть как я понимаю, скорее всего пустой "".

BOOL SetWindowText
(
HWND hWnd, // дескриптор окна или элемента управления
LPCTSTR lpString // адрес строчки
);

Меняем соответственно push "адрес первого аргумента для SetWindowText" на push твой mac, посмотри свободные байты, найдеш - запиши туда свой mac и push его адрес.

wolmer
06.09.2009, 22:31
Че то не могу никак найти где вызывается MessageBox

Сама программа (упакованная FSG 2.0):

http://multi-up.com/137749

Распакованная программа (она же токо распак. вроде как):

http://dump.ru/file/3371134

Подскажите что не так делаю?(и так искал поиском MessageBox, по титлу/тексту messagebox'а, ничего не помогает) Я чую что-то не так намудрил с распаковкой (распаковывал этим: http://www.opensc.ws/trojan-malware-releases/5386-fsg-unpacker-plugin-peid.html)

(при нажатии на кнопку "Начать" вылезает окно о авторизации)(сейчас задача стоит найти откуда вызывается MessageBox!)

Dosia
06.09.2009, 23:33
потому что это и не MessageBox вовсе, а окно обыкновенное


Стек:
0012F62C 001C086C |hWnd = 001C086C ('Login',class='TForm2')
0012F630 00000001 \ShowState = SW_SHOWNORMAL

Код:
0048A19D . E8 EAEDF7FF CALL <JMP.&user32.ShowWindow> ; \ShowWindow


Щас все будет ...

zeppe1in
06.09.2009, 23:35
прога на дельфи и это дельфовский showmessage. И я хз как он работает).
вызывается из процедуры по адресу
0055684C
а сам вызов вот тут
00556977
возьми например GODUP Plugin и примени дельфовские сигнатуры из иды. и тогда у тебя определится этот шоу меседж.
пс: кстати программа походу сама себе кейген)

ну вот не успел)

Dosia
06.09.2009, 23:53
Начало процедуры, как уже заметил zeppe1in, рекспект ему и уважуха по адресу: 0055684C. Брекйпоинт туда и трассируем по F8:

Первый раз мы видим верный серийный номер:
005568D6 |. 8B55 F0 MOV EDX,DWORD PTR SS:[EBP-10]

Процедура проверки:
00556908 |. E8 FFF6EAFF CALL unpacked.0040600C

Проверка условия:
0055690D |. 75 63 JNZ SHORT unpacked.00556972

А ниже если не было прыжка мы можем увидеть сохранение в файл верного серийного номера:

key.ini

[key]
k=*********

zeppe1in
07.09.2009, 00:05
Dosia, надо было хоть чегонить wolmer'у оставить)

Alex87
07.09.2009, 18:45
Нужны опкоды MSIL (.NET), нашел 1 сайт, но он китайский http://www.asukaze.net/etc/cil/opcode.html
Есть что-нибудь полнее и хотя-бы на английском?

Kaimi
07.09.2009, 19:23
И что с того что китайский, пояснения же на английском

wolmer
08.09.2009, 20:51
Dosia, хм... спасибо! а как вы нашли это окно обыкновенное? (искал по слову "JMP.&user32.ShowWindow","ShowWindow" ничего вроде не находило (искал в w32dasm,IDA))

Dosia
09.09.2009, 10:36
Хм, все очень просто, после распаковки файла я открыл его олей, после чего нажал "Ctrl-N", таким образом я выполним поиск всех функций импортируемых исполняемым файлом, после чего нашел в этом списке "ShowWindow", не "JMP.&user32.ShowWindow", а именно ShowWindow, адрес в IAT 570A74

wolmer
09.09.2009, 23:19
Хм, все очень просто, после распаковки файла я открыл его олей, после чего нажал "Ctrl-N", таким образом я выполним поиск всех функций импортируемых исполняемым файлом, после чего нашел в этом списке "ShowWindow", не "JMP.&user32.ShowWindow", а именно ShowWindow, адрес в IAT 570A74
Это мне понятно вроде

Но меня интересует сам момент как вы подцепили что именно от туда 0055690D проверка идет (т.е. как именно нашли эту проверку (я понимаю что по showwindow но подробней!))(ведь я же не могу всегда тыкать бряки на каждом углу)

Dosia
10.09.2009, 11:33
Хороший вопрос, так как декомпилятор нам тут не поможет. Автор данной программы не шифрует строки и это его основная ошибка, именно при поиске строки: "79-81-80", я оказался тут:

http://s05.radikal.ru/i178/0909/a5/fe39359fde03.jpg

Как видиш название файла выдает его с головой =)

Дальше я сходил по обоим адресам ( 556927, 556ACB )куда пушится строка "key.ini". Поставил бряки на начало данных процедур ( 55684C , 556A98 ). Перезапустил программу. Нажал "Старт", оказался по адресу 556A98, очевидно что там программа проверяла наличие файла или че то типо того, я не стал особо изучать процедуру, така как никаких переходов (вообще никаких ;D) я там не увидел, в общем, я протрассировал это процедуру по "F8". Потом - нажал "F9" (RUN). Всплывает форма (как мы уже выяснили в более ранних постах), текст в поле "ID" подозрительно похож на возвращаемое функцией GetVolumeInformation значение ;D, но это так, лирическое отступление, мы вводим что то типа "qwe123", чтобы потом если че посершить память (спорное конечно заявление ;D). Жмем , прерываемся по адресу 55684C. В процедуре всего 2 перехода:
1)0055690D 75 63 JNZ SHORT unpacked.00556972
2) 0055687D |. 0F84 F9000000 JE unpacked.0055697C

Что мы делаем? мы трассируем процедуру по "F8", первый переход, какой то не понятный, ну и пофик на него, нас то интересует тот, после которого пушится в стек строка "key.ini". Заметьте, сразу после перехода, можно почти со 100% уверенностью сказать, что если перехода не будет - то будет что то интересное. По ходу трассировки этой процедуры до интересующего нас перехода ( 55690D ), как я уже писал можно увидеть настоящий пароль. Переход с адреса 55690D переносит нас по адресу 556972, выше видим безусловный переход ( JMP ), сомнений не остается, переход по адресу 55690D, именно то, что мы искали. Надеюсь теперь все понятно. =)

wolmer
10.09.2009, 13:32
Dosia, почему при запуске из OllyDbg у меня не откр программу а выкидывает в отладку модуля kernel32? (в адрес 7C81EB33) (хотя к примеру если запустить крякми из под ollydbg то он запускается нормально)

Автор данной программы не шифрует строки и это его основная ошибка

Что если я столкнусь с программой которая шифрует строки? То как тогда искать эти строки/процедуру проверки?

Dosia
10.09.2009, 13:41
Ставить брейкпоинты на GetWindowText, GetDlgItemText ...

Если сообщение - MessageBox

Поиск по памяти.

Также если знаеш что идет сохранение в файл, можно поставить бряки на: CreateFile, WriteFile.

Вообще все зависит от конкретной ситуации =)
Просто надо иметь справочник по функциям API и немного опыта, потому что иногда вызваются специфические функции (VisualBasic - rctMsgBox).

Dosia, почему при запуске из OllyDbg у меня не откр программу а выкидывает в отладку модуля Хм, затрудняюсь оветить, да и время уже все, мне пора, буду вечером только

Щас zeppe1in еще дополнит =)

zeppe1in
10.09.2009, 14:37
)) а я то чо?)
wolmer когда столкнёшся тогда и будеш думать что делать)
почему при запуске из OllyDbg у меня не откр программу а выкидывает в отладку модуля
а внизу должен писать почему остановился. может у тя бряк хардварный стоит или ещо чонить.

wolmer
10.09.2009, 15:03
может у тя бряк хардварный стоит или ещо чонить.

Бряк токо на 0055690D (программа), а внизу пишет "Exception 406D1388 - use Shift+F7/F8/F9 to pass exception to program" (как открылся модуль kernel32)

Dosia
10.09.2009, 17:45
Бряк токо на 0055690D (программа), а внизу пишет "Exception 406D1388 - use Shift+F7/F8/F9 to pass exception to program" (как открылся модуль kernel32)


хм, с этого и стоило начинать, теперь все понятно, у тебя не настроен отладчик (оля).

Вот тебе выдержка из моей статьи (http://forum.antichat.ru/thread134953.html) (нагло пропиарил тему ;D)

Настройка отладчика

Запускаем отладчик, идем в меню “Options” -> “Debugging options”. В появившемся окне выбираем вкладку "Exceptions" (Исключения), устанавливаем все переключатели (отмечаем их галочкой). Правее есть кнопка “Add range”, жмем, в поле “First exceptions in range“ вводим “00000000” (8 нулей), в поле “Last exceptions in range“ вводим “FFFFFFFF” (8 букв “F”), жмем “OK”.

http://doctordrad.narod.ru/articles/re/garena/images/DbgOpt.JPG

Закрываем окно настроек отладчика нажатием “OK”. Теперь в случае возникновения исключения во время работы программы, она не будет прерываться и требовать нашего вмешательства ;D

wolmer
10.09.2009, 18:57
Сделал все как ты описал в этом посте теперь пишет это "Don't know how to bypass command at address 77D3D4CC. Try to change EIP or pass exception to program"

(как сохранил настройки сразу же перезапустил ollydbg)

Dosia
10.09.2009, 19:44
Хм странно, даже без плагинов оля его запускает (никакой антиотладки там нет), бряки убери все, перезагрузи прогу в отладчике "Ctrl+F2", запусти на выполнение, если не загрузится, то мб ошибки были при распаковке. Распакованная версия тут (http://dump.ru/file/3394150).

AlexGT
15.09.2009, 15:33
xDD есть ломаная и никакие ключи не нужны

Vlad-Online
27.09.2009, 23:55
Здравствуйте! Оч давно не занимался реверсингом. С олли не работал, только с айсом.
Вобщем гружу прогу в олли, а она пишет что обнаруживает отладчик. Что делать??? Гдето глазом видел можно плагин использовать??? Спасибо.

Kaimi
28.09.2009, 00:13
Есть такие плагины, например: Phantom, AdvancedOlly, HideDebugger, HideOD, IsDebug

wolmer
01.10.2009, 22:22
Есть dll, через нее произв проверка ключа, хочу поставить бряк на dll и запустить программу, как это сделать? (именно чтобы бряк сработал)(ведь dll нельзя запустить)(работаю с OllyDbg)

Hiro Protagonist
01.10.2009, 22:30
2wolmer

В дебаггинг оптионс->Events ставишь галку напротив Break on new module (DLL).

tekton
16.10.2009, 00:38
Вот нашёл интересный тутор по созданию кейгенов>>>ТУТОР<<< (http://ifolder.ru/14518871)

Но к великому сожалению, :( он не на нашем Великом и Могучем !!!

Итак вопрос :

1) Есть ли что нибудь такое на русише???
2) И где это можно найти???

P.S. Может кто нить переведёт этот тутор? Ну или перепишет? Была б ему честь, хвала и уважуха !!! :)

zeppe1in
16.10.2009, 01:43
Ничего такова в этом туторе нет. выучи асм, и всё будет понятно из исходников. на tuts4you есть сорцы кейгенов по прикольнее.

swt1
16.10.2009, 02:17
тыц (http://www.cracklab.ru/art/)
also (http://crackmes.de/)

s0l_ir0n
16.10.2009, 06:46
Вот нашёл интересный тутор по созданию кейгенов>>>ТУТОР<<< (http://ifolder.ru/14518871)

Но к великому сожалению, :( он не на нашем Великом и Могучем !!!

Итак вопрос :

1) Есть ли что нибудь такое на русише???
2) И где это можно найти???

P.S. Может кто нить переведёт этот тутор? Ну или перепишет? Была б ему честь, хвала и уважуха !!! :)
Это ниразу не интересный тутор, а тупой рип темплейта с вудмана, но на вьетнамцов всем пофик.

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

Vlad-Online
18.10.2009, 12:42
С Олли разобрался. Но теперь другая проблемма. Программа запакована Asprotect. PiD показывает [!] ASProtect v1.40 Build 11.20 detected !, а PEiD показал ASProtect 1.2x - 1.3x [Registered] -> Alexey Solodovnikov.
Автораспаковщики с заданием не справляются. Хорошей подробной инструкции по распаковке в нете не нашел. Подскажите пожалуйста господа хакеры, какие признаки нахождения OEP у этого протектора, как правильно снять дамп, про восстановление ресурсов и таблицы импорта тоже было бы неплохо. Заранее огромное спасибо!!!

Kaimi
18.10.2009, 12:56
Статьи отсюда не помогают?
http://cracklab.ru/art/?action=cat&id=3

Vlad-Online
18.10.2009, 13:00
Большинство из них уже изучил, но чет пока не особо помогло..

Kaimi
18.10.2009, 13:23
Может тогда программу выложишь?

Hellsp@wn
18.10.2009, 13:42
на клабе куча материала по распаковке ASProtect, так что читать и ещё раз читать, а потом пробовать.

Vlad-Online
18.10.2009, 13:49
Программу выкладывать не хочу ибо за нее заплачены деньги, к тому же самому разобраться хочется. Чтож будем дальше читать читать, гляди мож че и начитаю))

desTiny
18.10.2009, 20:08
http://cracklab.ru/f/index.php?action=vthread&forum=13&topic=15077

Vlad-Online
20.10.2009, 10:44
http://cracklab.ru/f/index.php?action=vthread&forum=13&topic=15077
Тема не существует. Она была удалена администратором либо НИКОГДА не существовала

s0l_ir0n
20.10.2009, 11:05
Тема не существует. Она была удалена администратором либо НИКОГДА не существовала
Тема видна только зарегистрированным

Vlad-Online
21.10.2009, 11:45
Тема видна только зарегистрированным
Извиняюсь, действительно не залогинен был.

rudvil
23.10.2009, 15:45
Допустим есть программа которая при запуске сравнивает md5(или любой другой алгоритм) хеш, самой себя, типо защита от изменений xD
Понятно что это очень легко обходится... это только лишь для примера.

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

ProTeuS
23.10.2009, 22:06
например неявные проверки

rudvil
23.10.2009, 22:23
например неявные проверки
Можно поподробнее? :)
Например если программа написана на С++ то как это осуществить?

ntldr
24.10.2009, 21:04
В общем решил я бота замутить для онлайн игры. Запоролся на получении указателей на координаты. Я нашел функцию, которая вроде бы куда-то записывает координаты, но я эти координаты ни разу не видел еще, потому что в игре они скрыты. Эта функция вызывается когда я открываю карту местности, где я отмечен треугольником. Она имеет вид 2д-картинки с наложенной картинкой треугольника. Сама игра - трехмерная, на directx.

Вопрос следующий:
какие функции могут отрисовывать 2D-карту (какие обычно в играх), чтобы я перехватил отрисовку треугольника и посмотрел стек вызовов, может чего и пойму.

zeppe1in
25.10.2009, 02:27
ничо не понял). directx и отрисовывает всё наверно.

ProTeuS
25.10.2009, 09:25
ntldr
>>я открываю карту местности, где я отмечен треугольником
ходишь по карте и взрываешь стенки? кушаешь вишенки?

вообще, directx - это мелкософтовский программный продукт, а стандарт графики - Direct3D, вот что можно загуглить в первых же выдачах гугля по direct3d + отрисовка

http://www.realcoding.net/article/view/2483
может поможет

cel1697i845
22.11.2009, 22:43
Подскажите книги, где описаны методы защиты(усложнения взлома) ПО.
Заранее благодарю.

swt1
22.11.2009, 23:08
cracklab.ru?Касперски?

ntldr
28.11.2009, 16:36
какие API нужно перехватить чтобы на 100% перехватить завершение текущего процесса?

neprovad
28.11.2009, 19:22
какие API нужно перехватить чтобы на 100% перехватить завершение текущего процесса?
осмелюсь предположить что NtClose\NtTerminateProcess могу ошибаться

ntldr
28.11.2009, 21:23
осмелюсь предположить что NtClose\NtTerminateProcess могу ошибаться
в общем оказалось, что прога каким-то волшебным образом завершается через SEH :confused:

ntldr
28.11.2009, 21:30
В ольке нереал узнать откуда идет джамп? crtl+r не подходит вероятно там адрес загоняется в регистр и уже по нему идет джамп.

Kaimi
28.11.2009, 22:20
А посмотреть в стеке адрес - не вариант?
Там же вроде пишется типа

0012FFBC 004016FA RETURN to lsass.004016FA from lsass.004BCF58

ntldr
28.11.2009, 22:51
А посмотреть в стеке адрес - не вариант?
Там же вроде пишется типа

0012FFBC 004016FA RETURN to lsass.004016FA from lsass.004BCF58
JMP != CALL

neprovad
29.11.2009, 04:54
JMP != CALL
вообще то в олли есть trace. невероятно удобная штуковина в прямых руках)
настраиваешь её значит, включая в опциях always trace over system DLLs, и включаешь трейс в файл. затем ctrl-f11 от нужного тебе места, приближенного к твоей ошибке\проблеме и ждешь)) затем исследуешь лог выполнения, вроде как и всё!

0rs
29.11.2009, 17:11
Каким образом можно ускорить или замедлить течение времени во флэш ролике?
Пробовал перехватывать NtQueryPerformanceCounter и SetTimer и делить количество тактов или время на определнну величину, чтобы ускорить ролик, но ничего не выходит.

neprovad
29.11.2009, 18:13
Каким образом можно ускорить или замедлить течение времени во флэш ролике?

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

supaboy
15.12.2009, 21:02
Есть такая штука как Lucifer Anti Cheat, работает по принципу клиент сервер.
Так вот клиентская часть (http://ВНИМАНИЕ! Тут должна была быть ссылка на ВНИМАНИЕ! Тут должна была быть ссылка на depositfiles.com, скорее всего это вирус или троян!, скорее всего это вирус или троян!/files/8dbifimqb) генерит уникальный id по железу, привязанный к компу. Помогите люди: как этот id изменить + если можно пояснить как она (клиентская часть) его созидает(на основании какой инфы и какой принцип использует)
Судя по моим начальным знаниям этот lac.exe написан на бейсики - push, call и упакован asprotec 2.1
Этот lac.exe запускает другой exe-шник, у которого в исполняемых модулях числется lac.dll http://ВНИМАНИЕ! Тут должна была быть ссылка на depositfiles.com, скорее всего это вирус или троян!/files/y35dncd98 (10000000-1C431FF0)
В дампе запущенного exe-шника lac-ом по адресу 100051E8 был обнаружин этот злополучный id
Знаю что lac.dll создается lac.exe в процессе работы

trotil
18.12.2009, 00:07
а кто какие еще проги знает для рэверса кроме OllyDbg, IDA Pro и дэкомпиляторов ведь есть еще второстепенное ПО (дополнительное) скжем Dependecy wallker, DBG, ApiSpy...
почему только на дизассеемблерах и отладчиках помешаные?

swt1
18.12.2009, 00:22
а вы себе представляете это как то иначе?

trotil
18.12.2009, 00:44
swt1, это вы кому? я против отладчиков ничего не имею и дизассемблеров, но только ними ислледуют код и все

neprovad
18.12.2009, 10:59
swt1, это вы кому? я против отладчиков ничего не имею и дизассемблеров, но только ними ислледуют код и все
это тематический раздел а не болталка

trotil
19.12.2009, 21:27
обьяснитепожалуста по ApiSpy32 для примера первую подчеркнутую строчку, вот ссылка на скрин:
http://upwap.ru/676980
что там и дальше за цыфры, понять пока не могу

.Life
27.12.2009, 23:18
Реверсингом ище не занемался.
Но подскажите какой основной софт для данного дела.

ProTeuS
28.12.2009, 00:36
Реверсингом ище не занемался.
Но подскажите какой основной софт для данного дела.

http://forum.antichat.ru/threadnav24662-1-10.html

neprovad
28.12.2009, 01:50
обьяснитепожалуста по ApiSpy32 для примера первую подчеркнутую строчку, вот ссылка на скрин:
http://upwap.ru/676980
что там и дальше за цыфры, понять пока не могу
это адрес откуда был вызов функции

.Life
31.12.2009, 19:41
slil.ru/25438393 вот здесь 2 фаила распакованые 2 мя способами
я знаю как ломать сечас я хочу узнать почему распакованая deupack ом программа
работает стабильней посмотрите вложеные фаилы в распакованом ручками не удалина секция

а за совет спасибо таким способом не ломал хотя сечас можно после чистки вернуть размер до 32*732 и внести изминения в программу тоесть 7FDC и должно работать я обычно просто меняю переход на безусловный не задумываясь о его причине но что из за веса я знал.

tekton
01.01.2010, 03:53
Привет всем !!!
Есть такая проблема:
Есть программа, она идёт в комплекте с другой програмой. Оба ЕХЕ находятся в одной директории, тут же находятся DLL ки и плаги... Короче они как Сиамские дратья близнецы!

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

ProTeuS
01.01.2010, 14:31
1. RegMon, ProcMon, RegSnap и смотреть кто\что использует
2. выдергивать по одному файлу и пытаться запускать обе программы в поисках минимального набора файлов, с которыми она запуститься

tekton
01.01.2010, 15:44
ProTeuS Спасибо огромное!
А можно как нибуди вживить логер в адресное пространство программы?
чтоб он сам лог писал? Что когда она использует ??? и как такое можно сделать ?

AlexGT
01.01.2010, 18:23
имхо дольше будешь мучаться с логгером чем пытаться руками файлы уберать

ntldr
01.01.2010, 23:33
ProTeuS Спасибо огромное!
А можно как нибуди вживить логер в адресное пространство программы?
чтоб он сам лог писал? Что когда она использует ??? и как такое можно сделать ?
log breakpoint - shift+f4

Tigger
02.01.2010, 00:24
Эм... Я вот что-то не совсем понимаю пару функций в OllyDbg.

F7 - выполнять пошагово С входом в функцию
F8 - выполнять пошагово БЕЗ входа в функцию
Ctrl+F11 - чем отличается от F8?
Ctrl+F12 - ?


И дайте, пожалуйста, какие-нибудь ресурсы, где есть много КрякМи'сов, но чтобы и для новичков были, не совсем сложные, желательно с солюшинами.
Заранее спасибо)

Tigger
02.01.2010, 14:49
С командами разобрался)

Подкиньте теперь ресурсов (кроме tuts4you).

Hellsp@wn
02.01.2010, 17:29
http://crackmes.de :)

Tigger
02.01.2010, 17:49
http://crackmes.de :)


Точно, я там даже зареган ;)
Спасибо, что линк подсказал)

tekton
04.01.2010, 04:12
Привет!
Такая проблема у меня.
Попался мануал по TMG Ripper Studio 0.03 .
В комплекте был исходник TMGRS-EX.ASM
Код я выдрал в Ольке плагом.

Вопрос: как переправить пароль в поле кейгена ???


вот фотка с найденым паролем http://s52.radikal.ru/i136/1001/a0/b055ed3446fc.jpg (http://www.radikal.ru)

И второй: как сделать кнопки COPY чтоб копировать ключь из кейгена в буфер обмена, и ABOUT ???

ProTeuS
04.01.2010, 06:43
сорцы выложи - ни4его не понятно о 4ем ты вообще пишешь...

tekton
04.01.2010, 07:00
Вот. Это родной сырец из архива с тутором.

.386
.model flat,stdcall
option casemap:none

include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
include \masm32\include\user32.inc
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\user32.lib

IDC_NAME equ 100
IDC_KEY equ 101

WinMain PROTO :HINSTANCE,:HINSTANCE,:LPSTR,:DWORD
;extern wsprintfA :proc

.data
szClassName db 'UglyWindowClass',0
szAppName db 'TMG Ripper Studio example',0 ;### Заголовок окна
szEdit db 'EDIT',0

.data?
szName db 30 dup(?) ;### Инициализируемые данные. Имя макс 30 символлов
szKey db 9 dup(?) ;### Инициализируемые данные. SERIAL 9 символов


;========================= START ================================
.code

start: ;### Метка

invoke GetModuleHandle,0
invoke WinMain,eax,NULL,NULL,SW_SHOW
invoke ExitProcess,eax
MessageHandler proc hWnd:HWND,Msg:DWORD,wParam:WPARAM,lParam:LPARAM
cmp Msg,WM_CLOSE
jne NotClose ;### Выполнить Метку
invoke PostQuitMessage,0
xor eax,eax
ret

;========================= NOT CLOSE ==============================
NotClose:
cmp Msg,WM_COMMAND
jne Default ;### Выполнить Метку
mov eax,wParam
and eax,0ffffh
cmp eax,IDC_NAME
jne Default ;### Выполнить Метку
mov esi,hWnd
call GenerateKey ;### Выполнить Метку
xor eax,eax
ret

;========================= DEFAULT ==============================

Default: ;### Метка

invoke DefWindowProc,hWnd,Msg,wParam,lParam
ret
MessageHandler endp
WinMain proc hInst:HINSTANCE,hPrev:HINSTANCE,szCmdLine:LPSTR,Cm dShow:DWORD
local wc:WNDCLASSEX
local msg:MSG;
push hInst
push edi
xor eax,eax
lea edi,wc
mov ecx,sizeof WNDCLASSEX
push ecx
rep stosb
pop wc.cbSize
mov wc.style,CS_HREDRAW or CS_VREDRAW or CS_OWNDC
pop edi
mov wc.lpfnWndProc,offset MessageHandler
pop wc.hInstance
mov wc.lpszClassName,offset szClassName
mov wc.hbrBackground,COLOR_BACKGROUND
invoke RegisterClassEx,addr wc
invoke CreateWindowEx,WS_EX_STATICEDGE,offset szClassName,offset szAppName,WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,0,300, 100,NULL,NULL,hInst,NULL
push CmdShow
push eax
invoke CreateWindowEx,WS_EX_STATICEDGE,offset szEdit,NULL,WS_CHILD or WS_VISIBLE,10,10,280,20,eax,IDC_NAME,hInst,NULL
invoke CreateWindowEx,WS_EX_STATICEDGE,offset szEdit,NULL,WS_CHILD or WS_VISIBLE or ES_READONLY,10,40,280,20,[esp+12],IDC_KEY,hInst,NULL
call ShowWindow

;========================= MESSAGE LOOP ==============================

MessageLoop: ;### Метка

invoke GetMessage,addr msg,NULL,0,0
test eax,eax
je Finish ;### Прыжок на метку Finish

invoke TranslateMessage,addr msg
invoke DispatchMessage,addr msg
jmp MessageLoop

;=========================FINISH================== ============

Finish: ;### метка

mov eax,msg.wParam
ret
WinMain endp

;=========================GENERATE KEY=========================

GenerateKey: ;### метка

invoke GetDlgItemText,esi,IDC_NAME,offset szName,30
test eax,eax
je NoName ;### Выполнить Метку
push offset szKey ;### Кладём Ключик в стек
push offset szName ;### Кладём ИМя в стек
call Keygen ;### Переход на выполнение нашей метки с выдранным кодом
add esp,8
invoke SetDlgItemText,esi,IDC_KEY,offset szKey

;=========================NO NAME ==============================

NoName: ;### Метка

ret

;++++++++++++++++++++++++++++++++++++++++++++
;+ +
;+ Далее идёт код из TMG Ripper Studio +
;+ +
;++++++++++++++++++++++++++++++++++++++++++++

.DATA

LOC_0048C844 dd 000000000h ;### Буфер
LOC_0047E38C db '%04X%04X',0 ;### Буфер


;========================= KEY GEN ============================

.CODE
Keygen: ;### Метка

PUSH EBP
MOV EBP,ESP
MOV ECX,DWORD PTR [EBP+008h]
PUSH EBX
PUSH ESI
PUSH EDI
MOV DL,BYTE PTR [ECX]
XOR EBX,EBX
XOR EAX,EAX
MOV ESI,ECX
XOR EDI,EDI
LOC_00407B5A: ;Ref: 00407B6C
TEST DL,DL
JZ LOC_00407B6E
MOVZX DX,DL
IMUL EDX,EDI
ADD EBX,EDX
MOV DL,BYTE PTR [ESI+001h]
INC EDI
INC ESI
JMP LOC_00407B5A
LOC_00407B6E: ;Ref: 00407B5C
MOV DWORD PTR [LOC_0048C844],000000001h
MOV ESI,ECX
MOV CL,BYTE PTR [ECX]
LOC_00407B7C: ;Ref: 00407B97
TEST CL,CL
JZ LOC_00407B99
MOVZX CX,CL
PUSH 000001021h
PUSH ECX
PUSH EAX
CALL LOC_00407BB9
MOV CL,BYTE PTR [ESI+001h]
ADD ESP,00Ch
INC ESI
JMP LOC_00407B7C
LOC_00407B99: ;Ref: 00407B7E
ADD EAX,063h
MOVZX ECX,BX
MOVZX EAX,AX
PUSH ECX
PUSH EAX
PUSH OFFSET LOC_0047E38C
PUSH DWORD PTR [EBP+00Ch]
CALL wsprintfA ; <<<<<<<<<<<<<<Здесь заменили LOC_00467AB4 на wsrintfA
ADD ESP,010h
POP EDI
POP ESI
POP EBX
POP EBP
RETN
LOC_00407BB9: ;Ref: 00407B8B
PUSH EBP
MOV EBP,ESP
MOV EAX,DWORD PTR [EBP+008h]
PUSH ESI
XOR ECX,ECX
PUSH 008h
MOV CH,BYTE PTR [EBP+00Ch]
POP EDX
LOC_00407BC8: ;Ref: 00407BDF
MOV ESI,EAX
XOR ESI,ECX
TEST SI,08000h
JZ LOC_00407BDA
ADD EAX,EAX
XOR EAX,DWORD PTR [EBP+010h]
JMP LOC_00407BDC
LOC_00407BDA: ;Ref: 00407BD1
SHL EAX,1
LOC_00407BDC: ;Ref: 00407BD8
SHL ECX,1
DEC EDX
JNZ LOC_00407BC8
POP ESI
POP EBP
RETN
end start



После надписи ;++++++++++++++++++++++++++++++++++++++++++++
;+ +
;+ Далее идёт код из TMG Ripper Studio +
;+ +
;++++++++++++++++++++++++++++++++++++++++++++
мне надо вставить другой код(который генерит пароль), выдраный из другой проги.

Генерацию пароля я нашёл. Пароль обведён рамками на фотке, в прошлом посте.

Как передать пароль в поле Serial кейгена?

Короче типа шаблона хочу сделать.

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

и кнопочку
ABOUT

zeppe1in
04.01.2010, 15:43
ну вот же
invoke SetDlgItemText,esi,IDC_KEY,offset szKey
где offset szKey указатель на ключ.
копирование например так.
invoke SendDlgItemMessage,hWin,IDC_KEY,EM_SETSEL,0,-1
invoke SendDlgItemMessage, hWin, IDC_KEY, WM_COPY, 0,0
с эбаутом какие проблеммы?)
вообще посмотри другие темплейты кейгенов, или ревересни какойнить. потому,что надо же ещо музыку картинки и всё такое)

tekton
05.01.2010, 00:59
ну вот же
invoke SetDlgItemText,esi,IDC_KEY,offset szKey
где offset szKey указатель на ключ.

Спасибо ! Вроде разобрался!!! :)

merfy
21.01.2010, 13:21
вопрос ?
есть такая прога:
налогоплательщик 2010.01... распаковать то я распаковал,декомпилировал,
но с алгоритмом намудрили не посмотрите ???
http://slil.ru/28505826
в dekod2010 передается типа ключик для сравнения, в декоде из инн+кпп
переменные :iuytrewq и lkjhgfdsa получается переменная snsnsnsnsn
так вот, если серийник правильный то в конце получатся lcisxod0 равная snsnsnsnsn
и процедура возвращает 1
=====
необходимо оттолкнуться от lcisxod0 так как snsnsnsnsn мы сразу получаем и видим, чтобы получить правильный серийник...
но тут трабл, куча вызовов процедур, я с математикой не разберусь :-(
не посмотрите ??? что то из математики вспомнить не могу ... толи прогрессия толи ряды напоминает.....

Tigger
04.02.2010, 13:02
Читал я статью грейта по переполению буфера и решил попробовать...
Ссылка на статью: http://forum.antichat.ru/showthread.php?p=219774


Статья супер, конечно, но у меня что-то не вышло.
Значит так я сделал как написано нашел адрес zzcv: у меня этот адрес существует 2 раза, сделал первый раз - вообще ничего не произошло, просто выводил Get your name и все, сделал с друим адресом, теперь выводит: AAAAAAAAAA0123454*‼! и программа завершается аварийно, не выводя MessageBox'a. Почему так?


Его тулзу хз где скачать, юзал это: http://mike.nov.ru/2004/10/09/binary-files-to-c-module/

cheater_man
04.02.2010, 13:53
Читал я статью грейта по переполению буфера и решил попробовать...
Ссылка на статью: http://forum.antichat.ru/showthread.php?p=219774


Статья супер, конечно, но у меня что-то не вышло.
Значит так я сделал как написано нашел адрес zzcv: у меня этот адрес существует 2 раза, сделал первый раз - вообще ничего не произошло, просто выводил Get your name и все, сделал с друим адресом, теперь выводит: AAAAAAAAAA0123454*‼! и программа завершается аварийно, не выводя MessageBox'a. Почему так?


Его тулзу хз где скачать, юзал это: http://mike.nov.ru/2004/10/09/binary-files-to-c-module/
Там статья уж очень сложная к восприятию :)
Видео посмотри там попроще обьясняется go (http://skillopedia.ru/material.php?id=3391)

Tigger
05.02.2010, 00:34
Это видел еще хуже =\
От грейта все более менее понятно.
Допустим:
Я нашел программу с переполнением буффера. Достаточно ввести 10 символов и потом начинается затираение. Так вот: как вызвать там просто MessageBox какой-нить?

1ten0.0net1
05.02.2010, 01:13
Это видел еще хуже =\
От грейта все более менее понятно.
Допустим:
Я нашел программу с переполнением буффера. Достаточно ввести 10 символов и потом начинается затираение. Так вот: как вызвать там просто MessageBox какой-нить?

Выяснить какие именно символы от начала строки перетирают адрес возврата в стеке (скорее всего - у тебя переполнение в стеке), перетереть адресом инструкции типо JMP ESP, и далее за этим адресом расположить такую штуку:
[NOP...NOP][SHELLCODE][RET..RET] - это самая классическая схема.
PS NOP - это 90, SHELLCODE можно взять из Metasploit, RET - адрес возврата на инструкцию типо JMP ESP, к примеру (это не рабочий адрес!!!) - 7C42B244

Tigger
05.02.2010, 15:59
Выяснить какие именно символы от начала строки перетирают адрес возврата в стеке (скорее всего - у тебя переполнение в стеке), перетереть адресом инструкции типо JMP ESP, и далее за этим адресом расположить такую штуку:
[NOP...NOP][SHELLCODE][RET..RET] - это самая классическая схема.
PS NOP - это 90, SHELLCODE можно взять из Metasploit, RET - адрес возврата на инструкцию типо JMP ESP, к примеру (это не рабочий адрес!!!) 7C42B244

А, я нашел переполнение через OllyDbg, так вот каким образом туда впихнуть эти инструкции? Надо их захксить и туда вставить? Или как?

wolmer
25.03.2010, 11:21
Есть файл, он упакован этим (PEiD выдал):
EXECryptor V2.2X-V2.4X -> StrongBit Technology * Sign.By.fly *

Взял Unpacker ExeCryptor 2.x.x. beta 1 by RSI, лог анпаковки:
Create Process... PID = 0xBBC ... Done
Finding signature function unpacking... Done
Set breakpoint in function... Done
Exit Process... Done
Почему анпакованный файл не появ.?
Сам пакованный файл:
lovepiar.net/files/LoveProject2.9.9.184.exe

(софт требует инсталла)

Kaimi
25.03.2010, 13:28
Почему анпакованный файл не появ.?

Нормально всё, файл появляется

wolmer
25.03.2010, 16:34
Нормально всё, файл появляется
А где? Что-то не могу найти :mad: (в папке где лежит exe - нету, в папке где лежит анпакер - тоже нету)

Kaimi
25.03.2010, 16:38
В папке, где лежит exe, создается файл с _u после имени

Life7
25.03.2010, 20:30
cracklab.ru?Касперски?

AlexGT
26.03.2010, 01:44
Нет

Life7
27.03.2010, 00:49
Нет

а чей тогда?

xor[jmp]
02.04.2010, 00:44
Решил научится реверсить, и вот первым моим приложением стал флудер ICQ FBK42 от Карася.Его я пытаюсь отвязать.Как я понял там привязка идёт по ICQ, т.е программа заходит на 1 ICQ номер и весит там пока ещё 1 копия программы не попытается приконнектится к этому же нуму, как только вторая копия коннектится первую копию выбрасывает в оффлайн и программа выдаёт ошибку после чего закрывается.Асю я достать вроде бы сумел, но вот что делать дальше хз...Программа вроде чем-то запакована, распаковать пытался парой декомпиляторов но они выдавали ошибки...В общем буду благодарен за любую информацию по этому поводу:).

P.S Знаю что флудер уже лежит отвязанный в паблике но мне интересно отвязать его самому :).

AlexGT
02.04.2010, 05:18
Как декомпилятором прот можно снять ?:) Смотри прот в разных сканерах пе, типа exeinfo, peid, rdg

wolmer
03.04.2010, 20:37
xor[jmp], такой софт отвязывать - работа не для новичка (исхожу из того - что софт может быть с asm правками)(конечно же интересно отвязать, но лучше для начала потренироваться на обычных программах (а не на программах для "хакера"))

xor[jmp]
04.04.2010, 00:54
xor[jmp], такой софт отвязывать - работа не для новичка (исхожу из того - что софт может быть с asm правками)(конечно же интересно отвязать, но лучше для начала потренироваться на обычных программах (а не на программах для "хакера"))
Например?Можешь подкинуть программ для отвяза?И хотелось бы почитать статьи про реверсинг, но на ачате негде вроде бы не видел...

silver
04.04.2010, 16:25
можно ли добыть исходный код Bifrost 1.2.1d?

AlexGT
04.04.2010, 18:03
']Например?Можешь подкинуть программ для отвяза?И хотелось бы почитать статьи про реверсинг, но на ачате негде вроде бы не видел...

crackmes.de на них попробуй потренироваться

tekton
08.04.2010, 23:21
Сталкнулся с такой проблемой.
Есть программка, она использует *.Dll ку
Так вот, мне надо склеить *.ЕХЕ и эту *.DLL
Сделал с помощью батника
copy /b *.EXE + *.dll *.EXEТеперь вопрос:
Как сделать чтоб эта дллка выгружалась в память и
прога могла к ней обращаться, как будто она лежит рядом ?
P.S. Просьба не предлагать тхиннстал, ксенокод и др проги для партабла. Чисто родной *.ЕХЕ и родная *.DLL

zeppe1in
09.04.2010, 01:21
эт ты чо склейл так? не будет так работать. чем "проги для партабла" не устраивают? делай свой склейщик тогда.

neprovad
09.04.2010, 06:15
]Как сделать чтоб эта дллка выгружалась в память и
прога могла к ней обращаться, как будто она лежит рядом ?
если на один раз можно просто модифицировать код exe так чтоб вместо LoadLibrary вызывался твой кусок кода, дописаный например в новую секцию, а сам dll можно в ресурсы добавить или действительно просто оверлеем прицепить

tekton
09.04.2010, 17:20
или действительно просто оверлеем прицепить
Если можно расскажите по подробнее как это сделать ;)

neprovad
09.04.2010, 20:15
Если можно расскажите по подробнее как это сделать ;)
Ну вы же сами давали ответ на свой вопрос, не так ли? :)
copy /b *.EXE + *.dll *.EXE

AlexGT
09.04.2010, 22:44
Сталкнулся с такой проблемой.
Есть программка, она использует *.Dll ку
Так вот, мне надо склеить *.ЕХЕ и эту *.DLL
Сделал с помощью батника
copy /b *.EXE + *.dll *.EXEТеперь вопрос:
Как сделать чтоб эта дллка выгружалась в память и
прога могла к ней обращаться, как будто она лежит рядом ?
P.S. Просьба не предлагать тхиннстал, ксенокод и др проги для партабла. Чисто родной *.ЕХЕ и родная *.DLL

Может не в тему, а инжектить пробовал? Помню так раньше античит обходили на руофе :)

tekton
09.04.2010, 22:57
Может не в тему, а инжектить пробовал? Нет не пробовал.
Да и не зачем.
Длл-ка и так подхватывается прогой.
Но нужно что бы в одном файле это все было. ;)
Чтоб *DLL рядом не лежала, но после загрузки проги в памяти она была.

Xeleon
12.04.2010, 04:15
какой прогой или как можно выдрать регестри ключи из msi инсталятора ? Или хотябы как отследить какие ключи пишит в регистар ?

neprovad
12.04.2010, 06:35
какой прогой или как можно выдрать регестри ключи из msi инсталятора ? Или хотябы как отследить какие ключи пишит в регистар ?
http://download.sysinternals.com/Files/ProcessMonitor.zip

tekton
12.04.2010, 10:11
Или хотябы как отследить какие ключи пишит в регистар ?
ЗДЕСЬ (http://www.blueproject.ro/systracer/download) (глобальная слежка)
а можжно так же
ЗДЕСЬ (http://www.torchsoft.com/en/rw_information.html) (последняя мне больше нравится если чисто реестр надо отследить)

Делаем снимок, устанавливаем прогу (НО НЕ ЗАПУСКАЕМ !) , делаем второй снимок, сравниваем снимки.
Если надо отследить какие ключи прога кидает при запуске, запускаем её, потом закрываем и делаем третий снимок. Сравниваем последних два (Второй и третий)

P.S. Программ много, например Total Uninstall, RegSnap... кому какая по вкусу.

St0nX
12.04.2010, 14:10
Появилась проблема с установкой SoftICE на Windows XP SP3 Видео картра ATI Mobility Radeon HD2600. В интернетах говорят что на 3 пакет вообще нету рабочего SoftICE. Может там инфа устарела или кто то ставил... поделитесь)))

s0l_ir0n
12.04.2010, 14:47
Появилась проблема с установкой SoftICE на Windows XP SP3 Видео картра ATI Mobility Radeon HD2600. В интернетах говорят что на 3 пакет вообще нету рабочего SoftICE. Может там инфа устарела или кто то ставил... поделитесь)))
Если ты только учишься реверсить, то ставь OllyDbg и не парься, если же тебе нужна работа с нулевым кольцом, то ставь Syser Debugger. Про soft-ice можешь забыть, т.к. с ним работают только тру олдскульщики и наркоманы

St0nX
12.04.2010, 15:23
Если ты только учишься реверсить, то ставь OllyDbg и не парься, если же тебе нужна работа с нулевым кольцом, то ставь Syser Debugger. Про soft-ice можешь забыть, т.к. с ним работают только тру олдскульщики и наркоманы
Просто начал читать серию статей "Написание драйвера в подробностях" там порекомендовали именно SoftICE. Попробую конечно разобраться в Syser Debugger спасибо! :)

wolmer
13.04.2010, 21:57
Вопрос: можно ли сделать так чтобы бряк срабатывал только при опред. значениях eax? (или ecx, edx (вообщем не важно))(ollydbg)

Если да, то как? (без ручного правки кода)(расчитываю на то, что возможно есть такой плагин)

Ins3t
14.04.2010, 00:19
Просто начал читать серию статей "Написание драйвера в подробностях" там порекомендовали именно SoftICE. Попробую конечно разобраться в Syser Debugger спасибо! :)

WinDbg и не надо никаих сусеров.
По поводу софтайса - ставил на 3-й сервим пак с комплекта DriverStudio, все работает.

s0l_ir0n
14.04.2010, 01:15
Вопрос: можно ли сделать так чтобы бряк срабатывал только при опред. значениях eax? (или ecx, edx (вообщем не важно))(ollydbg)

Если да, то как? (без ручного правки кода)(расчитываю на то, что возможно есть такой плагин)
Для этого есть встроенная функция, называется Conditional Breakpoint. Для установки на нужной инструкции нажми Shift+F2, а в появившемся окне впиши условие, например EAX==0ACB340h

Life7
14.04.2010, 15:06
Эм... Я вот что-то не совсем понимаю пару функций в OllyDbg.

F7 - выполнять пошагово С входом в функцию
F8 - выполнять пошагово БЕЗ входа в функцию
Ctrl+F11 - чем отличается от F8?
Ctrl+F12 - ?


И дайте, пожалуйста, какие-нибудь ресурсы, где есть много КрякМи'сов, но чтобы и для новичков были, не совсем сложные, желательно с солюшинами.
Заранее спасибо)

s0l_ir0n
14.04.2010, 15:18
Эм... Я вот что-то не совсем понимаю пару функций в OllyDbg.

F7 - выполнять пошагово С входом в функцию
F8 - выполнять пошагово БЕЗ входа в функцию
Ctrl+F11 - чем отличается от F8?
Ctrl+F12 - ?


И дайте, пожалуйста, какие-нибудь ресурсы, где есть много КрякМи'сов, но чтобы и для новичков были, не совсем сложные, желательно с солюшинами.
Заранее спасибо)
В справочном файле OllyDbg команды описаны.
Ресурс: crackmes.de
-
Ins3t, а я первей :p

Ins3t
14.04.2010, 15:20
Ctrl+F11 - это трассировка с входом, а Ctrl+F12 -трассировка с обходом.

http://crackmes.de/

Dеimоs
14.04.2010, 16:39
запускаешь прогу и если не будет гвард-тредов, мониторящих в динамике нали4ие "крякерского" софта, то
олька->attach to process и все ок

Ins3t
14.04.2010, 16:56
2Dеimоs, с кем это вы разговариваете?

swt1
14.04.2010, 21:27
http://cracklab.ru/art/?action=view&id=284
Эм... Я вот что-то не совсем понимаю пару функций в OllyDbg.

F7 - выполнять пошагово С входом в функцию
F8 - выполнять пошагово БЕЗ входа в функцию
Ctrl+F11 - чем отличается от F8?
Ctrl+F12 - ?


И дайте, пожалуйста, какие-нибудь ресурсы, где есть много КрякМи'сов, но чтобы и для новичков были, не совсем сложные, желательно с солюшинами.
Заранее спасибо)
Ctrl+F12 – Запуск автоматической трассировки без захода в подпрограммы

re-2
15.04.2010, 20:44
И дайте, пожалуйста, какие-нибудь ресурсы, где есть много КрякМи'сов, но чтобы и для новичков были, не совсем сложные, желательно с солюшинами.

http://crackmes.de/archive/

Ins3t
15.04.2010, 21:22
2 re-2, блять, неужели мало двух ответов с одинаковым ресурсом?
Или ты думаешь, что если ты дописал "/archive/" - то это уже другой портал?

Не делайте глупостей.

Life7
15.04.2010, 23:30
вопрос ?
есть такая прога:
налогоплательщик 2010.01... распаковать то я распаковал,декомпилировал,
но с алгоритмом намудрили не посмотрите ???
http://slil.ru/28505826
в dekod2010 передается типа ключик для сравнения, в декоде из инн+кпп
переменные :iuytrewq и lkjhgfdsa получается переменная snsnsnsnsn
так вот, если серийник правильный то в конце получатся lcisxod0 равная snsnsnsnsn
и процедура возвращает 1
=====
необходимо оттолкнуться от lcisxod0 так как snsnsnsnsn мы сразу получаем и видим, чтобы получить правильный серийник...
но тут трабл, куча вызовов процедур, я с математикой не разберусь :-(
не посмотрите ??? что то из математики вспомнить не могу ... толи прогрессия толи ряды напоминает.....

tekton
16.04.2010, 21:06
http://slil.ru/28505826
Файл удалён

Life7
17.04.2010, 14:54
Файл удалён

slil.ru/4364634

tekton
17.04.2010, 17:57
slil.ru/4364634Ты что издеваешься ????????????????
Вот на смотри :mad:
http://s39.radikal.ru/i084/1004/13/771133ff2561t.jpg (http://radikal.ru/F/s39.radikal.ru/i084/1004/13/771133ff2561.jpg.html)

Лей на нормальные обменники типа http://www.multiupload.com/

. Life
18.04.2010, 15:56
Читал я статью грейта по переполению буфера и решил попробовать...
Ссылка на статью: http://forum.antichat.ru/showthread.php?p=219774


Статья супер, конечно, но у меня что-то не вышло.
Значит так я сделал как написано нашел адрес zzcv: у меня этот адрес существует 2 раза, сделал первый раз - вообще ничего не произошло, просто выводил Get your name и все, сделал с друим адресом, теперь выводит: AAAAAAAAAA0123454*‼! и программа завершается аварийно, не выводя MessageBox'a. Почему так?


Его тулзу хз где скачать, юзал это: http://mike.nov.ru/2004/10/09/binary-files-to-c-module/

wolmer
01.05.2010, 15:44
Цель: поставить бряк в программе "hello.exe"
Проблема: программа (в которой нужно поставить бряк) запускается через соседнию программу ("go.exe"), с определенным параметром (т.е.: "go.exe startup"), естественно когда я запускаю программу "go.exe" с параметрами " startup" из под ollydbg -> то возвращается "Process terminated, exit code 0"

Если запустить hello.exe (т.е. не через команду "go.exe startup") -> просто не запуститься

Что делать?
Вариант покрекать hello.exe чтобы запускалась без программы "go.exe" -> не вариант (конечно можно будет это сделать, но хотелось бы попроще выход найти)

neprovad
01.05.2010, 18:06
Цель: поставить бряк в программе "hello.exe"
воспользоваться ollydbg второй версии

wolmer
01.05.2010, 18:24
воспользоваться ollydbg второй версии
Больше подробностей (аттач программы не предлогать)

neprovad
01.05.2010, 19:50
Больше подробностей (аттач программы не предлогать)
Вы меня удивляете, требуете столько ответов и даже не удосужились глянуть на оффсайт.
The only really new feature (commented out in the second beta) is debugging of child processes
Options-Debugging-Events-Debug child processes

s0l_ir0n
02.05.2010, 11:41
wolmer, если ты знаешь адрес по которому нужно поставить бряк, то открой файл в HEX-редакторе и измени первые 2 байта по этому адресу на EBFE, запусти программу и приаттачься к ней. Затем нажми F9 и F12, ты окажешься на нужном месте. Единственное что останется - это вернуть на место родные два байта(исправить EBFE на то что было)

V01T
04.05.2010, 07:58
Помогите перевести на С++
call ds:VirtualAlloc
mov [edi], eax
mov byte ptr [eax], 55h
inc eax
mov ecx, [esp+0Ch+arg_0]
push 4
mov byte ptr [eax], 8Bh
inc eax
pop ebx
mov byte ptr [eax], 0ECh
inc eax
mov byte ptr [eax], 68h
inc eax
mov [eax], ecx
add eax, ebx
cmp esi, 1
jl short loc_10001072

Собственно затруднения вызывает
mov byte ptr [eax], 55h
inc eax

s0l_ir0n
04.05.2010, 08:31
V01T
судя по виду, это листинг из иды. а она умеет генерировать с++ кодес

V01T
04.05.2010, 09:39
s0l_ir0n
SIZE_T v3; // ebx@1
int v4; // eax@7
void *v5; // edi@7
LPVOID v6; // eax@7
int v7; // eax@8
int v8; // eax@10
int v9; // edx@12
signed int v10; // ecx@12
int v11; // eax@13
int v12; // eax@14

v3 = 21;
if ( a3 >= 1 )
v3 = 24;
if ( a3 >= 2 )
v3 += 3;
if ( a3 >= 3 )
v3 += 2 * (3 * a3 - 6);
v5 = calloc(1u, 8u);
v6 = VirtualAlloc(0, v3, 0x1000u, 0x40u);
*(_DWORD *)v5 = v6;
*(_BYTE *)v6++ = 0x55u;
*(_BYTE *)v6++ = -117;
*(_BYTE *)v6++ = -20;
*(_BYTE *)v6++ = 104;
*(_DWORD *)v6 = a1;

HEX Rays выдал вот такое ... даже приведя к более лучшему виду *(BYTE *)v6++ = 0x55; получаю ошибку о неизвестном размере LPVOID

wolmer
06.05.2010, 21:12
Цель: подредактировать одну программу (пропатчить), но дело таки в том, что нужно не просто к примеру поменять jz на jnz а вставить (выполнить) большой блок кода (в опред. месте программы), как это сделать?
Проблема: я никогда не сталкивался с патчингом такого рода, следовательно не знаю как и куда сувать написаный блок кода (слышал что можно в конец дописать свой код, и где надо -> в конец с джампиться, но я с такой темой не знаком)

swt1
06.05.2010, 22:08
wtf? (http://www.cracklab.ru/art/?action=cat&id=4)

V01T
06.05.2010, 23:10
По прежнему топчусь на месте с реконструкцией данной DLL скачать можно с офф сайта (http://restools.hanzify.org/inno/callbackctrl/InnoCallbackCtrl_V1.1.zip)
Расскажите хотя принцип её работы или подскажите ссылочку с аналогичным решением ... просто не врубаюсь там ни чего не вписывается ни джампов ни вызовов

DrakonHaSh
07.05.2010, 11:32
Цель: подредактировать одну программу (пропатчить), но дело таки в том, что нужно не просто к примеру поменять jz на jnz а вставить (выполнить) большой блок кода (в опред. месте программы), как это сделать?
Проблема: я никогда не сталкивался с патчингом такого рода, следовательно не знаю как и куда сувать написаный блок кода (слышал что можно в конец дописать свой код, и где надо -> в конец с джампиться, но я с такой темой не знаком)
Code Snippet Creator (Iczelion) (http://www.woodmann.com/collaborative/tools/index.php/Code_Snippet_Creator_%28Iczelion%29)
или находишь в самом конце секции кода блок заполненный нулями (нули там для выравнивания блока по границе 512,1024...) и пишешь туда свой код. можно и в другую секцию, (или добавить новую секцию) но не забудь поставить у нее атрибут code - чтобы код в этой секции мог исполняться

XikarO
14.05.2010, 19:37
Подскажите как сбросить просроченную лицензию в триалке?(даемон про)

DrakonHaSh
14.05.2010, 20:16
триал обычно сбрасывают при помощи trashreg или trialreset для всяких там asprotect и прочих армадилл :) но в данном случае это не тот случай :)

Для новой установки программы после окончания триального срока надо сменить значение у параметра ComputerName в ветке реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\ComputerName\ActiveComputerName, а также в ветке реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\ComputerName\ComputerName

или можешь здесь взять лоадер: http://ifolder.ru/11538869

Xieon
18.05.2010, 18:37
В реверсируемой программе используется куча дллок, я идой составил базу для нескольких, дал имена некоторым функциям и переменным, но отлаживать она позволяет только одну дллку, а там код скачет с одной на другую, и когда перескакивает на чужую длл вместо кода db, db, db, жутко неудобно. Можно ли как то подключить к иде idb-базы других файлов?

wolmer
20.05.2010, 14:43
Поставлен бряк, когда я трассирую в ollydbg (без захода в call (f8)) через это место:
http://img237.imageshack.us/img237/1655/16004672.png

То срабатывает бряк (хотя бряк далеко впереди находится)
Сам call ссылается сюда:
http://img193.imageshack.us/img193/2200/94160035.png

Так вот, мне не понятно, почему срабатывает бряк когда я прохожу через этот call? (с помощью f8) Еще хочу заметить что тут jne в call'е не срабатывает никогда

Версия ollydbg: 2.00 (beta 3)

zeppe1in
20.05.2010, 15:49
wolmer
крутые картинки)
ты уверен что call не выполняет тот код где стоит бряк?
также нужно понимать что по F8 ставится бряк после кола и выполняется кол, может выход из него каким нибудь джампом, чорт знает куда, или ексепшон там гденить обрабатываеца и нет норм ретурна из функции, по этому так и получается. заходи в кол, и смотри что к чему там.

wolmer
20.05.2010, 16:14
ты уверен что call не выполняет тот код где стоит бряк?
Уверен

заходи в кол, и смотри что к чему там
Заходил, ретурн нормально обрабатывается

zeppe1in
20.05.2010, 19:23
wolmer
попробуй ольку другую тогда. может глюк.

ProTeuS
21.05.2010, 11:16
1. отключи плагины, может какие-то конфликтуют
если не помагает пункт
2. качни чистубю ольку 110 с оффсайта
3. замечал такой момент "зависания" при маршалинге бывает (если в этой функции есть вызовы функций вроде RPC!xxx, OLE!yyy). если у тебя такой случай то тут лучше отлаживать не трейсом (F8) а проскакивать по F9, поставив заранее бряк после CALLа

.::f-duck::.
29.05.2010, 21:49
#include <iostream>

using namespace std;

int main()
{
char userPassw[50];
cout << "Enter the password" << endl;
cin >> userPassw;
if(!strcmp(userPassw, "error"))
{
cout << "REGISTERD!" << endl;
} else {
cout << "FAIL!" << endl;
}
system("pause");
return 0;
}

Написал простой крякмис.
Тыркал его в ольке,вроде получилось сделать так,что бы сразу выводилось "REGISTRED",поменял адресс call.
Попытался второй раз так сделать - нифига не получилось.
Вопрос:
Как такое сделать?
В место этого адреса вот этого call:
http://img229.imageshack.us/img229/4275/59264195.png

я писал адресс - 00401349

00401349 |. BA 19204400 MOV EDX,CrackMe.00442019 ; ASCII "REGISTERD!"

DrakonHaSh
29.05.2010, 22:18
тебе этот момент надо найти и
if(!strcmp(userPassw, "error"))
усорвие перехода поменять с условного [jnz наприме] на безусловный [jmp]

если ты конечно специально извращениями не занимашься

.::f-duck::.
29.05.2010, 22:23
Да-да-да,извращения. Но понимаешь в чем соль? У меня получилось 1 раз как-то сделать тем способом,что я показывал. Хочу понять,где я теперь ошибаюсь

SHAG
30.05.2010, 03:45
Выложи свой крякмес, общими усилиями найдем решение.

neprovad
30.05.2010, 11:06
Написал простой крякмис.
Тыркал его в ольке,вроде получилось сделать так,что бы сразу выводилось "REGISTRED",поменял адресс call.
Попытался второй раз так сделать - нифига не получилось.
Вопрос:
Как такое сделать?
В место этого адреса вот этого call:
http://img229.imageshack.us/img229/4275/59264195.png

я писал адресс - 00401349

вы даже до кода вроде не добрались, это начало программы, этам инициализации и т.п.
Откройте свою программу в IDA Pro дизассемблере и посмотрите там для начала ( а еще лучше добавьте при компилиции параметров для вывода asm листинга чтоб понять что и как в С коде переводится в asm.)

.::f-duck::.
30.05.2010, 12:06
Ага,спасибо.
Уже вчера решил. Проблема была как раз в том,что прога не инициализировалсь,а я уже химичил

tekton
06.06.2010, 03:32
А можно с помощью батника пропатчить ехе ??? ;)
P.S. Только не надо говорить воспользуйся каким нить патчером и так далее...
Просто интересует именно батником возможно такое сделать ? :rolleyes:

wolmer
06.06.2010, 04:13
А можно с помощью батника пропатчить ехе ??? ;)
P.S. Только не надо говорить воспользуйся каким нить патчером и так далее...
Просто интересует именно батником возможно такое сделать ? :rolleyes:
http://forum.script-coding.info/viewtopic.php?id=2885

попробуй