PDA

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


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

0x0c0de
02.09.2007, 16:00
Вопросы по реверсингу задаем здесь

GlOFF
02.09.2007, 17:26
0x0c0de Спс за тему, давно пора! Вот хотел спросить... Я недавно совсем начал пытаться реверсить, поэтому мало знаю инструментарий, в частности недавно для себя открыл плагин к Ольке Phantom -> очень был рад его результатам... Что есть подобного, которое улучшает и помогает при динамическом анализе программ (плагины или примочки, которые можете посоветовать) в ollyDBG или может есть и интереснее отладчики?

0x0c0de
02.09.2007, 17:38
Я ссылку на плагины давала в теме инструменты крекера/реверсера

_http://www.woodmann.com/ollystuph/index.php

Классный плагин AdvancedOllу (там куча опций: багфиксы+скрытие отладчика+опция остановка на тлс калбаках, что помогает при снятии таких протов как экзекриптор), оч рекомендую поставить. От замусоривания кода AnalyseThis. Ну вобщем иди по ссылке и качай. OllyScript ставь ) Это самое необходимое. Ну и HideDebugger.
Ну насчет каких еще отладчиков - мне оля очень нравится, привыкла уже)

Alexsize
02.09.2007, 18:31
У меня программа запускаетья нормально, но если я запускаю филимон или регмон или ольку прога вылетает. А если ее открыть олькой, то олька вылетает сразу же. Что ты мне посоветуешь?

ProTeuS
02.09.2007, 18:42
запускаешь прогу и если не будет гвард-тредов, мониторящих в динамике нали4ие "крякерского" софта, то
олька->attach to process и все ок

0x0c0de
02.09.2007, 18:54
Или используй проги для пассивного мониторинга как альтернатива RegMon - RegSnap. Можешь еще пропатчить мониторы Regmon&Filemon Window Caption Changer и Regmon & Filemon patchers.
Все тут.

http://wasm.ru/toollist.php?list=17

Еще проскань PeID (DiE или ProtectionID) скорее всего прога чем-то накрыта.

tclover
02.09.2007, 19:18
Когда уже выйдет олли 2? :)

Ps Всем пока, я опять уехал :)

Alexsize
02.09.2007, 19:21
запускаешь прогу и если не будет гвард-тредов, мониторящих в динамике нали4ие "крякерского" софта, то
олька->attach to process и все ок
Приаттачить неполучаеться. Вылетает и оля и прога.
Пассивный мониторинг недопустим. Нужно отслеживать изменения в реалтайм.

!_filin_!
02.09.2007, 19:54
скорей всего антиотладочная защита, посмотри в PEID наличие крипторов...+ иногда при установке ПО (например CloneCD) высвечивается предупреждение что отладчики типа ольки могут некорекктно работать..у меня обычно всё ок, но мало ли...

0x0c0de
02.09.2007, 20:16
Приаттачить неполучаеться. Вылетает и оля и прога.

А протов точно не навешано? Попробуй поставить вышеперечисленные плагины для скрытия дебага (Phantom и OllyAdvanced). И пропатч олю тулзой AntiDetectOlly v2.2.4
Взять можно тут
http://guru-exe.ripgames.org/show.php?page=plugins

Ну и плагины юзай с максимальными опциями.

Ну раз не допустим (?) тогда пропатч мониторы. Ссылка выше.

GlOFF
02.09.2007, 20:17
Alexsize У тебя в Оли антиотладочные плагины стоят??? Которые типо скрывают наличие отладчика в системе. Попробуй плагин Phantom от Hellsp@wn подключить (http://ifolder.ru/3152799). Мне помогло в моих проблемах :)

// Почему бы модерам не подвесить тему к ВАЖНО как в других разделах :confused:

!_filin_!
02.09.2007, 20:27
кинь в топик "На взлом" ссылку на прогу, я посмотреть хочу...
P.s. Желательно чтоб прога весила не больше 5-8 метров
P.s.p.s В тему "на взлом" ибо это уже будет касаться, как мне кажется именно того топика....

taha
04.09.2007, 06:03
плагины для скрытия дебага (Phantom и OllyAdvanced)
С такими плугами как OllyAdvanced, HideDebugger (вообщем те которые занимаются тупым патчем) нужно быть осторожнее, ибо палятся в два счета! Думаю обидно будет спалиться от антиотладочного плуга ;)... Примеры? RLPack , если помнишь +) На счет Phantom'ма тоже не все гладко, но он хотябы не палится...

Alexsize
04.09.2007, 08:17
Я уже применил все что вы описали. Прога накрыта Themidoй. Вы летает все равно и прога и отладчик. Можно ли тут что то сделать?

iRedX
04.09.2007, 10:31
Я уже применил все что вы описали. Прога накрыта Themidoй. Вы летает все равно и прога и отладчик. Можно ли тут что то сделать?

У мя Олька на тсчет Фемиды грит, что Entry Point находится за "кодом" или ет специфический заголовок , типа используется безопасное извлечение или модификация, тк прога точно упакована.

Кароч надо ставить бряки!!

Win32Dasm не ругается на нее)

Alexsize
04.09.2007, 10:54
У мя Олька на тсчет Фемиды грит, что Entry Point находится за "кодом" или ет специфический заголовок , типа используется безопасное извлечение или модификация, тк прога точно упакована.

Кароч надо ставить бряки!!

Win32Dasm не ругается на нее)
1.Дизассемблер и отладчик разные вещи.
2.И куда же ты хочешь ставить бряки? =) А главное зачем именно?

Hellsp@wn
04.09.2007, 10:59
>> Я уже применил все что вы описали. Прога накрыта Themidoй. Вы летает все равно и
>> прога и отладчик. Можно ли тут что то сделать?

там заюзан баг с переполнением, выход - пропатчить ольгу...

Alexsize
04.09.2007, 11:34
>> Я уже применил все что вы описали. Прога накрыта Themidoй. Вы летает все равно и
>> прога и отладчик. Можно ли тут что то сделать?

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

Hellsp@wn
04.09.2007, 11:39
почитай тут -> http://www.cracklab.ru/f/index.php?action=vthread&forum=6&topic=6215
можно запустить, даже последнюю...

GlOFF
06.09.2007, 19:06
Практикуюсь в распаковке. Распаковываю FSG2.0 и что-то не получается востановить таблицу импорта. Import REconstructor что-то одни инвалиды выдает?
получил OEP ввожу его, нажимаю автопоиск IAT и получаю адресс этой таблицы импорта и размер. AutoTrace ничего не дал :(

!_filin_!
06.09.2007, 19:28
может дамп кривой?

0x0c0de
06.09.2007, 19:28
http://cracklab.ru/art/?action=view&id=371

почитай тут. как раз твоя проблема рассматривается.
если не получится - зальешь файл на обменник).
хотя в этой статье все подробно до безобразия)


может дамп кривой?


дамп здесь ни при чем. он про импорт говорит. с дампом у fsg вообще проблем нет)

GlOFF
06.09.2007, 19:34
0x0c0de, !_filin_! Респект ребята.
Оказалось адреса Import Adress Table не правильные вписывал, т.е. не я вписывал, а на прогу надеялся! Покапался в памяти распакованной проги нашел в ручную эту таблицу и просчитал размер, ну и потом собрал импорт -> Запустилось :)))

// P.S. Аказывается распаковка не так уж и сложно, CrackLab рулит!!! :)

Krey
16.09.2007, 23:28
Привет всем, посоветуйте дизассемблер.
Проблема такая я написал прогй на асме и потерял сурс.
Заранее спасибо.

Lamia
16.09.2007, 23:36
А что же по памяти никак не восстановить!?Тогда Ida

!_filin_!
17.09.2007, 00:37
Иду не каждый скачать может....если что пробуй kWdsm
//гм...если только начал значит потерял сырец от проги которая выводит месседж бокс чтоль?)))
ответ в ПМ кинь лутше...

Krey
17.09.2007, 01:10
вопрос решен, спасибо !_filin_!

Piflit
17.09.2007, 01:39
Меня некоторое время интересует такой вопрос. Есть много книг по асму для начинающих. Там описаны основные инструкции + даны несложные примеры. НО. Так речь идет о дос приложениях и вообще о работе в этой ОС. Так вот. Есть ли литература по асму для вин (не создание интерфейса, о чем рассказано в замечательном туторе Iczelion'a на васме, а работа с файлами, сетевые приложения, что-то полезное для реверсера и тд)?

Boccob
17.09.2007, 01:48
Справочник по winapi + wasm.
Иногда гугл.
В большинстве случаев помогает.

!_filin_!
17.09.2007, 01:49
Есть хорошая книга Г.В. Галисеева Самоучитель. Ассемблер Ibm Pc. Линк не даю, у меня печатный вариант

0x0c0de
17.09.2007, 08:47
2Piflit
Книги по асму.
http://forum.antichat.ru/thread31398.html

Lamia
17.09.2007, 11:53
Вот ещё очень хорошая книжка:
http://bit-bait.ucoz.ru/Manuals/assembler_na_primeraxbazovyy.rar

Название: Ассемблер на примерах. Базовый курс
Автор: Рудольф Марек

GlOFF
23.11.2007, 01:18
Какой способ получения адреса загрузки ядра оптимальнее и актуальнее:
- через PEB.
- через SEH и последующим поиском в памяти сигнатуры "MZ".
- через снятие со стека адресса, при загрузке модуля, и поиском в памяти сигнатуры "MZ".

Может ещё есть какие-нибудь способы получения адреса загрузки ядра, без использования WinAPI (LoadLibrary)?

0x0c0de
27.11.2007, 16:34
>>получения адреса загрузки ядра

Вы, наверное, не так выразились. вы имеете в виду определение адреса загрузки или kernel32 или ntdll. Но это никак не ядро. Ядро хранится в файле Ntoskrnl.exe.

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

presidentua
29.11.2007, 03:03
Уважаемые гуру реверсинга!

ASProtect 2.1x SKE -> Alexey Solodovnikov?

Есть ли автоматические распаковщики?

0x0c0de
29.11.2007, 09:20
Анпакер есть для версии 2.0 аспра...
http://syd.nightmail.ru/stripper.dhtml

Мануалы можно почитать здесь
http://tuts4you.com/search.php?q=Asprotect%252525202.1x%25252520Ske&r=0&s=Search&in=&ex=&ep=&be=&t=downloads&adv=0

presidentua
01.12.2007, 02:58
Анпакер есть для версии 2.0 аспра...
http://syd.nightmail.ru/stripper.dhtml

Мануалы можно почитать здесь
http://tuts4you.com/search.php?q=Asprotect%252525202.1x%25252520Ske&r=0&s=Search&in=&ex=&ep=&be=&t=downloads&adv=0

Не хотелось вручную, но видимо придется.

Спасибо!

KEZ
01.12.2007, 06:49
Может ещё есть какие-нибудь способы получения адреса загрузки ядра, без использования WinAPI (LoadLibrary)?



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


писдежь,, для наибольшей совместимости наод брать сигнатуру образа kernel32
с диска иискатьв памяти а через esh никакнебольш ая сивоестимость!

presidentua
02.12.2007, 02:27
Такая хня с СофтАйсом: у меня под основной Виндой он не работает. Поставил ВМВаре и под ней Виндовс 2000. СофтАйс сразу нормально работал - так шустренько. А потом надоело мне расширение 640-480 вот и поставил драйвера из ВМВаре Толлз.

Сразу же СофтАйс начал жутко тормозить. Задержка между моим действием и откликом - минут 5.

Что посоветуете?

ProTeuS
02.12.2007, 12:23
ты изобрел машину времени?)

в статейка как все праивльно и без косяков инсталлить:
http://cracklab.ru/art/?action=view&id=281
да и не юзай 4толе большие разрешения...

KEZ
02.12.2007, 12:51
Софтайс непохэк. Вот грейт, например, советует юзать KD. Завиртуаленую винду, с опцией отладки ядра, если говорить хэкерскими словечками. Действительно, довольно удобно, даже source code view есть. А вот syser полное говно, иногда от бряка на MessageBox в explorer'е - получается бсод, хотя удобно сделан интерфейс.

Lamia
06.01.2008, 15:40
Кто нить пробовал аспакнуть Gleam v1.00?
Если можно то поясните хоть в общих чертах!

0x0c0de
06.01.2008, 15:59
Ссылку на софт... или залейте куда-нибудь...

Lamia
06.01.2008, 16:04
Воть: http://www.fastsatfinder.com//
Fast Satfinder 2.6.0

0x0c0de
06.01.2008, 16:58
Там экзекриптор, а не Gleam.

Если с английским хорошо- читайте на английском. Если нет - там есть ман и на русском + скрипты
http://tuts4you.com/search.php?q=Execryptor+&r=0&s=Search&in=&ex=&ep=&be=&t=all&adv=0

а так же вот, анпакер.

http://www.cracklab.ru/f/index.php?action=vthread&topic=10070&forum=1&page=-1

xXvladXx
19.01.2008, 14:08
а чем можно вскрыть проги для псп? псп-плайстейшин портативная... сори щас пример проги кинуть не могу:( так как с компом проблеммы а сам нашел халявный вай фай и сижу с псп

neprovad
23.01.2008, 11:06
а чем можно вскрыть проги для псп? псп-плайстейшин портативная... сори щас пример проги кинуть не могу:( так как с компом проблеммы а сам нашел халявный вай фай и сижу с псп
если я ничего не путаю, то IDA берет бинарники с соньки на ура.

nitr0
28.01.2008, 01:16
Скажите ета - Morphine v1.2, зараза както распаковывается?
П.С. В Гугле был нече путнего е нашел

0x0c0de
28.01.2008, 07:40
>>Скажите ета - Morphine v1.2, зараза както распаковывается?

http://tuts4you.com/search.php?q=Morphine+&r=0&s=Search&in=&ex=&ep=&be=&t=all&adv=0

Грот
04.02.2008, 15:27
у меня следующяя проблема беру FreeCryptor последний в паблике распаковываю его 2 спосабами первый ручками с использованием imprec PETools ну и ольга
2 способ deupack
теперь о главном начинаю ломать да простит меня GlOFF открываю оба фаила в ольге ставлю бряк на крете фаил жму ф9
выбираю что криптовать жму в случии распаковки deupack все ок бряк встал где нужно
а в случии когда ручками то бряк не срабатывает а кидает меня х.. знает куда в чем подвох всегда счиал что распаковка ручками намного надежней а тут я зашел в тупик есть подозрения на плагины может кто что посоветует

0x0c0de
04.02.2008, 16:27
Файл в студию

Slip
04.02.2008, 18:53
у меня следующяя проблема беру FreeCryptor последний в паблике распаковываю его 2 спосабами первый ручками с использованием imprec PETools ну и ольга
2 способ deupack
теперь о главном начинаю ломать да простит меня GlOFF открываю оба фаила в ольге ставлю бряк на крете фаил жму ф9
выбираю что криптовать жму в случии распаковки deupack все ок бряк встал где нужно
а в случии когда ручками то бряк не срабатывает а кидает меня х.. знает куда в чем подвох всегда счиал что распаковка ручками намного надежней а тут я зашел в тупик есть подозрения на плагины может кто что посоветует
Он просто сравнивает размер своего файла с числом зашитым в программе.

0040302E B8 707F0000 MOV EAX,7F70 <---размер файла
00403033 |. 3BD8 CMP EBX,EAX
00403035 |. 8945 84 MOV DWORD PTR SS:[EBP-7C],EAX
00403038 |. 74 17 JE SHORT FreeCryp.00403051


Путь к своему файлу получается через GetModuleFileName.

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

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

Lamia
06.02.2008, 20:36
Да забей этот салл нопами и не парься ;)
00403139 |. E8 7BFEFFFF CALL Dumped_.00402FB9

Грот
07.02.2008, 06:41
я знаю как ломать!!!!
вы мне подскажите, откройте эти фаилы особенно тот что ручками и посмотрите можно ли поставить бряк на апи функции это у меня в ольги касяк или программа такая так та я все изменил что нужно постопришлось ставить бряк по другому а это отнимает время обясняю 2 раз на той что я распаковывал ручками бряк ложиться не правильно(возможно антиотладка) а на той что распакованна deupack ом все нормально.

0x0c0de
07.02.2008, 07:57
%)
Все там норм ставится. В обоих файлах)

Грот
07.02.2008, 08:48
%)
Все там норм ставится. В обоих файлах)

подскажи может плагины стоят не те
у меня стоит
CmdBar AdvancedOlly v1.26 beta остальные убрал


может ольгу пропатчит нужно или еще что

ProTeuS
07.02.2008, 11:55
AdvancedOlly v1.26 и Phantom и какая бы там небыла антиотладка все должно быть норм

если какие траблы ставь апаратный бряк, или не на вызовы апи, а на первый байт апи (bp XXX)

Грот
07.02.2008, 12:22
AdvancedOlly v1.26 и Phantom и какая бы там небыла антиотладка все должно быть норм

если какие траблы ставь апаратный бряк, или не на вызовы апи, а на первый байт апи (bp XXX)


так и делаю но это не совсем удобно

0x0c0de
07.02.2008, 17:00
опции мб не поставлены те, что надо у плагинов

Грот
08.02.2008, 06:41
не совсем понял где и у какого плагина, AdvancedOlly v1.26?

0x0c0de
08.02.2008, 09:00
>> не совсем понял где и у какого плагина, AdvancedOlly v1.26?

да, да. авансед0лли.

FreeRunner
10.02.2008, 15:16
00401090 |. 68 FF000000 PUSH 0FF ; /Count = FF (255.)
00401095 |. 68 1A304000 PUSH Creakme.0040301A ; |Buffer = Creakme.0040301A
0040109A |. 68 EB030000 PUSH 3EB ; |ControlID = 3EB (1003.)
0040109F |. FF75 08 PUSH DWORD PTR SS:[EBP+8] ; |hWnd
004010A2 |. E8 F5000000 CALL <JMP.&user32.GetDlgItemTextA> ; \GetDlgItemTextA
004010A7 |. 68 FF000000 PUSH 0FF ; /Count = FF (255.)
004010AC |. 68 14304000 PUSH Creakme.00403014 ; |Buffer = Creakme.00403014
004010B1 |. 68 EA030000 PUSH 3EA ; |ControlID = 3EA (1002.)
004010B6 |. FF75 08 PUSH DWORD PTR SS:[EBP+8] ; |hWnd
004010B9 |. E8 DE000000 CALL <JMP.&user32.GetDlgItemTextA> ; \GetDlgItemTextA




004010FE /$ 33C0 XOR EAX,EAX
00401100 |. 33DB XOR EBX,EBX
00401102 |. 33C9 XOR ECX,ECX
00401104 |. A3 39304000 MOV DWORD PTR DS:[403039],EAX
00401109 |> 33DB /XOR EBX,EBX
0040110B |. 8A98 14304000 |MOV BL,BYTE PTR DS:[EAX+403014]
00401111 |. 80FB 5A |CMP BL,5A
00401114 |. 75 02 |JNZ SHORT Creakme.00401118
00401116 |. FECB |DEC BL
00401118 |> 80FB 7A |CMP BL,7A
0040111B |. 75 02 |JNZ SHORT Creakme.0040111F
0040111D |. FECB |DEC BL
0040111F |> 80FB 39 |CMP BL,39
00401122 |. 75 02 |JNZ SHORT Creakme.00401126
00401124 |. FECB |DEC BL
00401126 |> 50 |PUSH EAX
00401127 |. 83C0 61 |ADD EAX,61
0040112A |. 02F8 |ADD BH,AL
0040112C |. 58 |POP EAX
0040112D |. 80C3 01 |ADD BL,1
00401130 |. 66:8B0C45 1A30>|MOV CX,WORD PTR DS:[EAX*2+40301A]
00401138 |. 40 |INC EAX
00401139 |. 50 |PUSH EAX
0040113A |. 66:3BD9 |CMP BX,CX
0040113D |. 75 37 |JNZ SHORT Creakme.00401176
0040113F |. 8305 39304000 >|ADD DWORD PTR DS:[403039],1
00401146 |. 58 |POP EAX
00401147 |. 3B05 25304000 |CMP EAX,DWORD PTR DS:[403025]
0040114D |.^75 BA \JNZ SHORT Creakme.00401109
0040114F |. 50 PUSH EAX
00401150 |. A1 39304000 MOV EAX,DWORD PTR DS:[403039]
00401155 |. 3B05 25304000 CMP EAX,DWORD PTR DS:[403025]
0040115B |. 58 POP EAX
0040115C |. 75 18 JNZ SHORT Creakme.00401176
0040115E |. 6A 00 PUSH 0 ; /Style = MB_OK|MB_APPLMODAL
00401160 |. 68 5F204000 PUSH Creakme.0040205F ; |Title = ".:: DiS[IP] Programer ::."
00401165 |. 68 4A204000 PUSH Creakme.0040204A ; |Text = "Register complite!!!"
0040116A |. FF35 00304000 PUSH DWORD PTR DS:[403000] ; |hOwner = NULL
00401170 |. E8 33000000 CALL <JMP.&user32.MessageBoxA> ; \MessageBoxA
00401175 |. C3 RETN
00401176 |> 58 POP EAX
00401177 |. 6A 00 PUSH 0 ; /Style = MB_OK|MB_APPLMODAL
00401179 |. 68 5F204000 PUSH Creakme.0040205F ; |Title = ".:: DiS[IP] Programer ::."
0040117E |. 68 30204000 PUSH Creakme.00402030 ; |Text = "Name or Password is BAD!!"
00401183 |. FF35 00304000 PUSH DWORD PTR DS:[403000] ; |hOwner = NULL
00401189 |. E8 1A000000 CALL <JMP.&user32.MessageBoxA> ; \MessageBoxA
0040118E \. C3 RETN


кто сможет Пошаго обьяснить что делает код с моим именим. Я понял что он смотрим если буква = z или Z. Если да он то он прыгает через Дикриз если нет то уменьшает значение на один байт. дальше я вроде понял но полюбому как реверсить всё это чтоб узнать какой Пасс он делает из Логина , хз.

пасиб

z01b
10.02.2008, 15:24
2 FreeRunner, мона сылку на crackme?

FreeRunner
10.02.2008, 15:27
2 FreeRunner, мона сылку на crackme?

Сюда (http://87.248.165.215/Creakme.exe)

или Сюда (http://www.savefile.com/files/1371399)

z01b
10.02.2008, 16:54
Сюда (http://87.248.165.215/Creakme.exe)

или Сюда (http://www.savefile.com/files/1371399)

#include "stdafx.h"
#include "windows.h" // Для sleep()

int v1,v2,v3=0,i,len;
char name[255];
char v4[255];
main(void)
{
printf("Name : ");
scanf("%s",&name);
len = strlen(name);
if (len>3)
{
for (i=0; i<len; i++)
{
v3 = name[i];
if ((name[i]=='z')||(name[i]=='Z')||(name[i]=='9')) v3=name[i]-1;
v1=0x61+i;
v2=v3+1;
v4[2*i]=v1;
v4[2*i+1]=v2;
v3=0;
}
printf("Serial : ");
for (i=0; i<len; i++) printf("%c%c",v4[2*i+1],v4[2*i]);
}
else printf("Name must be more than 3 chars.");
Sleep(3000);
return 0;
}


Будет время, отпишу асм код.

Скомпиленый вариант http://slil.ru/25457249

z01b
10.02.2008, 21:28
Вот как обещал прокомментированый код

004010FE /$ 33C0 XOR EAX,EAX;обнулили регистры
00401100 |. 33DB XOR EBX,EBX;
00401102 |. 33C9 XOR ECX,ECX;
00401104 |. A3 39304000 MOV DWORD PTR DS:[403039],EAX; обнулили переменную
00401109 |> 33DB /XOR EBX,EBX; обнулили ebx
0040110B |. 8A98 14304000 |MOV BL,BYTE PTR DS:[EAX+403014]; берем символ из имени и пихаем в BL
00401111 |. 80FB 5A |CMP BL,5A; если BL != 5A('Z')
00401114 |. 75 02 |JNZ SHORT Creakme.00401118; прыгаем на 401118
00401116 |. FECB |DEC BL; иначе вычитываем один из BL
00401118 |> 80FB 7A |CMP BL,7A;если BL != ('z')
0040111B |. 75 02 |JNZ SHORT Creakme.0040111F; прыгаем на 40111F
0040111D |. FECB |DEC BL; иначе вычитываем один из BL
0040111F |> 80FB 39 |CMP BL,39;если BL != ('9')
00401122 |. 75 02 |JNZ SHORT Creakme.00401126;прыгаем на 401126
00401124 |. FECB |DEC BL; иначе вычитываем один из BL
00401126 |> 50 |PUSH EAX; заносим eax в стэк
00401127 |. 83C0 61 |ADD EAX,61; прибавляем ему 61
0040112A |. 02F8 |ADD BH,AL; пихаем в BH один из символов сериала
0040112C |. 58 |POP EAX; востонавливаем eax
0040112D |. 80C3 01 |ADD BL,1; добавляем в BL один
00401130 |. 66:8B0C45 1A30>|MOV CX,WORD PTR DS:[EAX*2+40301A]; Заносим две символы нашего сериала в CX
00401138 |. 40 |INC EAX; добавляем один в eax
00401139 |. 50 |PUSH EAX; сохраняем eax
0040113A |. 66:3BD9 |CMP BX,CX; если слово (2 байта) из cx = слово из bx
0040113D |. 75 37 |JNZ SHORT Creakme.00401176; не прыгаем на 401176
0040113F |. 8305 39304000 >|ADD DWORD PTR DS:[403039],1; переменая = переменная + 1
00401146 |. 58 |POP EAX; востанавливаем eax
00401147 |. 3B05 25304000 |CMP EAX,DWORD PTR DS:[403025]; если eax = длина строки (переменная)
0040114D |.^75 BA \JNZ SHORT Creakme.00401109; выходим из цикла, иначе повторяем его.
0040114F |. 50 PUSH EAX
00401150 |. A1 39304000 MOV EAX,DWORD PTR DS:[403039]
00401155 |. 3B05 25304000 CMP EAX,DWORD PTR DS:[403025]
0040115B |. 58 POP EAX
0040115C |. 75 18 JNZ SHORT Creakme.00401176
0040115E |. 6A 00 PUSH 0 ; /Style = MB_OK|MB_APPLMODAL
00401160 |. 68 5F204000 PUSH Creakme.0040205F ; |Title = ".:: DiS[IP] Programer ::."
00401165 |. 68 4A204000 PUSH Creakme.0040204A ; |Text = "Register complite!!!"
0040116A |. FF35 00304000 PUSH DWORD PTR DS:[403000] ; |hOwner = NULL
00401170 |. E8 33000000 CALL <JMP.&user32.MessageBoxA> ; \MessageBoxA
00401175 |. C3 RETN
00401176 |> 58 POP EAX
00401177 |. 6A 00 PUSH 0 ; /Style = MB_OK|MB_APPLMODAL
00401179 |. 68 5F204000 PUSH Creakme.0040205F ; |Title = ".:: DiS[IP] Programer ::."
0040117E |. 68 30204000 PUSH Creakme.00402030 ; |Text = "Name or Password is BAD!!"
00401183 |. FF35 00304000 PUSH DWORD PTR DS:[403000] ; |hOwner = NULL
00401189 |. E8 1A000000 CALL <JMP.&user32.MessageBoxA> ; \MessageBoxA
0040118E \. C3 RETN

whinger
27.02.2008, 22:45
Есть программа GeoCalck v1.4.
Почему, когда я открываю в OllyDbg файл GeoCalck.exe и нажимаю F9, то отладчик останавливается и в статусной строке пишет:
"Inexact floating-point result - use Shift+F7/F8/F9 to pass exception to program"
Нажимаю Shift+F9, пишет там-же:
"Access violation then reading [00000000] - use Shift+F7/F8/F9 to pass exception to program"
И так при нажатии Shift+F9 опять повторяется то-же самое.
Что делать и как быть?
З.Ы. Если у кого-то есть готовый исходник кейгена для энтой проги, то прошу скинуть на sejk1979@mail.ru - поизучаю.

0x0c0de
27.02.2008, 22:51
2whinger
Нажми Alt+O в OllyDbg, открой вкладку exceptions и поставь везде галочки

void //tPORt
28.02.2008, 01:22
whinger, для начала скорми свой фаел DiE и PEiD и посмотри чем упаковано.
Если весит какой либо пакер/прот сначало его снять предецо.

tekton
03.06.2008, 23:35
Читал статью что можно прямо в проге сделать так, чтобы вместо сообщения о неправельном пароле показывался регистрационный код ( сделать типа примитивного кейгена). Знаю что для этого надо сперва найти пароль, я его нащёл. Как что делать дальше? Если можно поподробнее и на примерах, с участием малой части кода программы ;). Спасибо!

BlackSun
03.06.2008, 23:45
Читал статью что можно прямо в проге сделать так, чтобы вместо сообщения о неправельном пароле показывался регистрационный код ( сделать типа примитивного кейгена). Знаю что для этого надо сперва найти пароль, я его нащёл. Как что делать дальше? Если можно поподробнее и на примерах, с участием малой части кода программы ;). Спасибо!
Ну если готовый пароль хранится в памяти .. допустим у тебя есть

push hWnd
push Title
push Text
push Type
call MessageBoxA

Где Text - текст, о неверном пароле
и

push TruePass
..
и дальше функция проверки

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

push Text
на
push TruePass

и будет тебе щястье)) а вообше моски руляд, импровизируй

tekton
04.06.2008, 00:04
BlackSun спасибо. Вот код. (Прога написана на делфи)

0048DA8C /$ 55 PUSH EBP
0048DA8D |. 8BEC MOV EBP,ESP
0048DA8F |. 6A 00 PUSH 0
0048DA91 |. 6A 00 PUSH 0
0048DA93 |. 6A 00 PUSH 0
0048DA95 |. 6A 00 PUSH 0
0048DA97 |. 6A 00 PUSH 0
0048DA99 |. 53 PUSH EBX
0048DA9A |. 56 PUSH ESI
0048DA9B |. 894D F8 MOV DWORD PTR SS:[EBP-8],ECX
0048DA9E |. 8955 FC MOV DWORD PTR SS:[EBP-4],EDX
0048DAA1 |. 8BF0 MOV ESI,EAX
0048DAA3 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0048DAA6 |. E8 D570F7FF CALL КЕЙ_ГЕН.00404B80
0048DAAB |. 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
0048DAAE |. E8 CD70F7FF CALL КЕЙ_ГЕН.00404B80
0048DAB3 |. 33C0 XOR EAX,EAX
0048DAB5 |. 55 PUSH EBP
0048DAB6 |. 68 86DB4800 PUSH КЕЙ_ГЕН.0048DB86
0048DABB |. 64:FF30 PUSH DWORD PTR FS:[EAX]
0048DABE |. 64:8920 MOV DWORD PTR FS:[EAX],ESP
0048DAC1 |. 33DB XOR EBX,EBX
0048DAC3 |. BA A0DB4800 MOV EDX,КЕЙ_ГЕН.0048DBA0 ; ASCII "Megido,share.homedns.org,www.appzplanet.com"
0048DAC8 |. 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0048DACB |. E8 0472F7FF CALL КЕЙ_ГЕН.00404CD4
0048DAD0 |. 85C0 TEST EAX,EAX
0048DAD2 |. 7E 0B JLE SHORT КЕЙ_ГЕН.0048DADF
0048DAD4 |. 8D45 F8 LEA EAX,DWORD PTR SS:[EBP-8]
0048DAD7 |. 8B55 FC MOV EDX,DWORD PTR SS:[EBP-4]
0048DADA |. E8 996CF7FF CALL КЕЙ_ГЕН.00404778
0048DADF |> 8D4D F4 LEA ECX,DWORD PTR SS:[EBP-C]
0048DAE2 |. 8B55 FC MOV EDX,DWORD PTR SS:[EBP-4]
0048DAE5 |. 8BC6 MOV EAX,ESI
0048DAE7 |. E8 60010000 CALL КЕЙ_ГЕН.0048DC4C
0048DAEC |. 8B55 F4 MOV EDX,DWORD PTR SS:[EBP-C]
0048DAEF |. 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
0048DAF2 |. E8 ADAFF7FF CALL КЕЙ_ГЕН.00408AA4
0048DAF7 |. 85C0 TEST EAX,EAX
0048DAF9 |. 75 41 JNZ SHORT КЕЙ_ГЕН.0048DB3C
0048DAFB |. 8B55 FC MOV EDX,DWORD PTR SS:[EBP-4]
0048DAFE |. 8BC6 MOV EAX,ESI
0048DB00 |. E8 9FF3FFFF CALL КЕЙ_ГЕН.0048CEA4
0048DB05 |. 84C0 TEST AL,AL
0048DB07 |. 74 62 JE SHORT КЕЙ_ГЕН.0048DB6B
0048DB09 |. B3 01 MOV BL,1
0048DB0B |. 6A 40 PUSH 40
0048DB0D |. 8D55 F0 LEA EDX,DWORD PTR SS:[EBP-10]
0048DB10 |. A1 E4EF4B00 MOV EAX,DWORD PTR DS:[4BEFE4]
0048DB15 |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
0048DB17 |. E8 DC96FDFF CALL КЕЙ_ГЕН.004671F8
0048DB1C |. 8B45 F0 MOV EAX,DWORD PTR SS:[EBP-10]
0048DB1F |. E8 6C70F7FF CALL КЕЙ_ГЕН.00404B90
0048DB24 |. 50 PUSH EAX ; |Title
0048DB25 |. 68 CCDB4800 PUSH КЕЙ_ГЕН.0048DBCC ; |Text = "Registration success, Thanks for your registration."
0048DB2A |. A1 E4EF4B00 MOV EAX,DWORD PTR DS:[4BEFE4] ; |
0048DB2F |. 8B00 MOV EAX,DWORD PTR DS:[EAX] ; |
0048DB31 |. 8B40 30 MOV EAX,DWORD PTR DS:[EAX+30] ; |
0048DB34 |. 50 PUSH EAX ; |hOwner
0048DB35 |. E8 1E9BF7FF CALL <JMP.&user32.MessageBoxA> ; \MessageBoxA
0048DB3A |. EB 2F JMP SHORT КЕЙ_ГЕН.0048DB6B
0048DB3C |> 6A 10 PUSH 10
0048DB3E |. 8D55 EC LEA EDX,DWORD PTR SS:[EBP-14]
0048DB41 |. A1 E4EF4B00 MOV EAX,DWORD PTR DS:[4BEFE4]
0048DB46 |. 8B00 MOV EAX,DWORD PTR DS:[EAX]
0048DB48 |. E8 AB96FDFF CALL КЕЙ_ГЕН.004671F8
0048DB4D |. 8B45 EC MOV EAX,DWORD PTR SS:[EBP-14]
0048DB50 |. E8 3B70F7FF CALL КЕЙ_ГЕН.00404B90
0048DB55 |. 50 PUSH EAX ; |Title
0048DB56 |. 68 00DC4800 PUSH КЕЙ_ГЕН.0048DC00 ; |Text = "Invalid Registration Code!
Please enter an available Registration Code."
0048DB5B |. A1 E4EF4B00 MOV EAX,DWORD PTR DS:[4BEFE4] ; |
0048DB60 |. 8B00 MOV EAX,DWORD PTR DS:[EAX] ; |
0048DB62 |. 8B40 30 MOV EAX,DWORD PTR DS:[EAX+30] ; |
0048DB65 |. 50 PUSH EAX ; |hOwner = 0007061C ('¦+г ++=',class='TApplication')
0048DB66 |. E8 ED9AF7FF CALL <JMP.&user32.MessageBoxA> ; \MessageBoxA

Куда ни пишу, OLLY пишет: "Extra input after operand" . Может обьяснишь на примере этого кода.

BlackSun
04.06.2008, 00:11
Скинь лудше ссыль на прогу

tekton
04.06.2008, 00:34
Прога называется 4U WMA MP3 Converter v3.1.5. Сейчас поищу в нете, т.к. брал у приятеля.

BlackSun
04.06.2008, 00:44
Лан, завтра гляну, напишу, а щяс спать, время почти 3 ночи)

taha
04.06.2008, 07:55
1. Нужно использовать теги CODE
2. Нужно рипать код
3. Для таких кусков нужно либо помечать комментариями важные части, либо использовать pastbin для подсветки синтаксиса

Это можно сделать в любом случае хранится пароль в памяти или нет... правда если он там не хранится придется модифицировать программу во многих местах и добавлять свои функции для преобразованию к ASCII и выводу на экран(это смотря чего не хватает)! Вобщем это очень муторно! Вот если он хранится в памяти, то нет проблем! Просто меняем адрес титла у MessageBoxA на адрес полученного пароля и все... Спрашивается: Че у тя там в кодексе, что ты скинул? А нужно ли тебе это?

BlackSun
04.06.2008, 09:59
На примере 4U WMA MP3 Audio Converter v5.6.0 (другую версию не нашел, слить мона с http://thepiratebay.org/ ) и с помошью дебагера OllyDbg (или просто Оля)

По адрессу 0048D458 - процедура проверки введенного пароля
По адрессу 0048D4B8 видим MOV EDX,DWORD PTR SS:[EBP-C] - наш труЪ пароль
По адрессу 0048D4D6 видим условие, если пароль не подходит - прыгаем на <bad_msg>
<bad_msg> - валяется по адрессу 0048D50B
По адрессу 0048D525 push <bad_registration code>
Меняем на
PUSH DWORD PTR SS:[EBP-C]
nop
nop

Затем Copy to executable -> All modifications -> Копировать все -> Save file -> keygen.exe

Все, кейген из проги готов :) вводишь свое имя, любой пароль, жмешь register, получаешь пароль ..

Name: BlackSun
Code: 0E031-959CA-29DD3-3A0E3-03195

Happy End =)

PS: каг домашнее задание тебе - сделать, чтобы код показывался не в MessageBox'е, а в Edit, + обрезать лишние ресуры, сжать, ну или норм кейген сварить))

ntldr
04.06.2008, 10:48
Можно ли подменить api-функцию LoadLibraryA путем редактирования таблицы импорта и изменению kernel32.dll на мою dll?(без сплайсинга) если можно, то как?

BlackSun
04.06.2008, 10:51
Все можно, если осторожно :) но проше сплайсингом .. пиши свою kernel32.dll (можно просто переходинки) называй по своему, кидай в папку с прогой и в импорте меняй kernel32.dll на свою .. имхо. И вообше зачем именно так? всегда мона найти более простые способы

ntldr
04.06.2008, 11:10
просто мне нужно, чтобы все было именно без лоадера

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

BlackSun
04.06.2008, 11:13
Да, про stdcall незабудь

ntldr
04.06.2008, 11:20
а можно допустим взять полегче библу, например ole32.dll - в моей проге там импортируется из нее только 2 функции, сделать переходники на них и поставить хук на кернеловский LoadLibraryA.

тогда это будет так?

function CoInitialize(pvReserved: Pointer): HResult; stdcall; external 'ole32.dll' name 'CoInitialize' index 58; export;
......

exports CoInitialize index 58;

BlackSun
04.06.2008, 11:27
Незнаю чем тебе сплайсинг не нравится .. если лоадер не нужен, можешь сделать библу, в ней при загрузку прохукать нужные функции .. а библу можешь загрузить например сменив OEP на свободное место, там LoadLibrary твоей библы и jmp на оригинальный oep

ntldr
04.06.2008, 11:29
спасибо, получилось. я создал библу ole33.dll прописал таким образом функции экспорт-импорт и в таблице импорта поменял ole32 на ole33. dll грузится и пашет отлично))

lm137
05.06.2008, 00:19
Всем привет
Ппц.. чет темы для нубов не нашел, извините если не туда написал-)
ну значит так..
Игровой сервер Ragnarok Online
Тип сервера Eathena SQL, сайт сервера http://www.raggame.ru/
Сайт сломать не возможно, ну мне так кажется.. Вывода ошкибки нету, SQL уязвимостей нету, Инклуд тоже не катит.

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

Ну и начал я читать гайды по программе WPE-pro, начал юзать пакеты, пришел к этому:

Кидаю предмет, в данном случае нож. Затем начинаю записывать пакеты и поднимаю нож.
Пакет: F5 00 66 00 6A 06 00 00 (поднимаю нож)
Спустя 2с. снова записываю пакеты и подбираю нож.
Пакет: F5 00 64 00 62 04 00 00 (второй раз поднимаю тот же нож)

Если после замерки пакета отправить F5 00 64 00 62 04 00 00
То сервер выдаст: "Вы не можете поднять этот предмет"

#Пробовал с кучей NPC, всё заканчивалось неудачей.

=========================================
А вообще заметил такую вещь... в результате долгих экспериментов с ножом.

Вот пакет: f5 00 [] 00 [] 0[] 00 00
Где [] = переменные. Лишь они меняются, остальное не изменяется.
Вспомним случай, когда я пытался дюпать с разницей в 2с.

F5 00 66 00 6A 06 00 00
F5 00 64 00 62 04 00 00

66 поменялось на 64, а 06 на 04.
2с.=переменная меняется на 02.
Остаётся понять какая закономерность влияет на 6А и 62.

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

Понимаете в чем делема, сервер всегда проверяет наличие "х" предмета для получения "у" предмета.
Быть может проверку и можно обойти, но нужно писать скрипт. (моё имхо)

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

Хотя есть, есть люди которые копируют шмот на сервере, но они настолько "круты", что им нет дела до таких "нубов" как я.
Пожалуйста помогите..
Буду о-о-о-очень благодарен.
С уважением Дмитрий
*фух.. много букв получилось*

ProTeuS
05.06.2008, 11:25
расбирайся в протоколе работы, 4то без нали4ия сорцов в том духе, котором ты описал (один раз ткнул сюда-посмотрел туда) невозможно. если нет доступа в сорцам и нали4ия техни4еских знаний реверсинга клиент-серверного приложения, то посоветовать можно только изу4ить протокол работы в духе "4ерного ящика" - настро4ить ку4у обращений, записывать событие и результирующий пакет, отправленый и полу4еный от сервера а далее собирать статистику и кодить софт для расбора протокола ответов сервера от посылаемых клиентом, а дальше, думаю, зная типи4ные дествия можно искать узкие места в конкретном модуле, в котором предполагается ошибка проэктировки. более общего ответа без доступа к коду софта и длительного реверсинга игры тебе никто не даст...

neprovad
05.06.2008, 12:21
lm137, еще можно воспользоваться WinAPIOverride (ссылки ищи в инструментах) и запротоколировать все вызовы функций из библиотеки ws2_32.dll или каких других, заодно узнаешь по каким адресам клиентской части идет передача тех или иных данных. В любом случае для понимания темы надо уметь реверсить, иначе как еще ты поймешь от чего зависит изменение тех самых байтов

lm137
05.06.2008, 13:36
Оо ребят, спасибо вам большое, наконец то нашел форум где люди сидят.

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

Вот только надо придумать как его положить, на своем сервере (домашнем) пробовал заспамить скилами, но, что бы поработить столь огромный сервер с онлайном более 3.000 игроков, одного спама скилами мало.
Там и впе думаю не поможет.

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

Если есть какие нибудь идеи, пожалуйста подскажите..
Обращаюсь к вам, как к знатокам. :)

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

Если поможет, то
ip 81.177.13.7
port при коннекте к серверу через клиент: 6900

neprovad
05.06.2008, 14:41
lm137, ты уж извини, но качать клиента в гиг с хвостиком это жутко =) я не готов идти на такие жертвы

ProTeuS
05.06.2008, 15:30
слова "сайт и сервер игры уязвимы к ддос-уязвимостям" о4ень показательны. советую всетаки пеер4итать мой пост и пытаться самому полу4ать хоть минимальное представление о сетевой безопасности или основам сетей и исследования софта

lm137
05.06.2008, 15:46
Нуу.. мож че не так понял, но насколько я знаю, ддос атака это загрузка портов.
В следствии чего сервер перегружается и падает, а там порты перекрыты, и ничего с ними не сделаешь.

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

Про сайт я начал говорить, т.к. тип сервера опять же SQL, достаточно взглянуть на кнопочку "Регистрация", и сразу всё становиться понятно. Поэтому я и искал уязвимости. Но это ни к чему не привело..


По теме черного ящика, определять вход и наблюдать за выходом, это конечно можно, но это очень долго..
И потом, протеус, я вот задам нубский вопросик.
Представим такую тему, что я пойму алгоритм изменения пакетов, используя метод черного ящика, но что мне это даст?
Даже если я буду знать, какой пакет за что отвечает, там ведь существует множество проверок..
Их не обойти=)
Если мы имея 0 игровой валюты, нажмем купить Красное зелье, мы получим красную рамочку "у вас не хватает зеней". То же самое будет и с пакетами.


--------------
lm137, ты уж извини, но качать клиента в гиг с хвостиком это жутко =) я не готов идти на такие жертвы

Да, конечно, я всё понимаю, в некоторых местах трафик очень дорогой, и постараюсь сам разобраться.
Но ведь на сайте ты тоже не заметил ничего интересного?..
Жалко я не умею писать вирусы, так бы можно было попытаться отправить, что нибудь интересное в суппорт, на главный компьютер.
После чего поискать БД например.. Но к сожалению, я такой нууууп.

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

Да, согласен, надо знать как всё это устроено и чего, что дает.
Заказал книженцию выложенную в соседнем топике, с её помощью изучу Реверсинг.
Что-то не могу найти здесь Гайд по реверсингу.
Пока что для меня это темный лес, но как я понял, основная фишка его - протоколировать процессы, делать выводы, создавать новые запросы.
Выдирать кусочки огромной мазайки, и собирать собственную, после чего отправлять на сервер.

desTiny
05.06.2008, 16:31
Нуу.. мож че не так понял, но насколько я знаю, ддос атака это загрузка портов.
В следствии чего сервер перегружается и падает, а там порты перекрыты, и ничего с ними не сделаешь.

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

Про сайт я начал говорить, т.к. тип сервера опять же SQL, достаточно взглянуть на кнопочку "Регистрация", и сразу всё становиться понятно. Поэтому я и искал уязвимости. Но это ни к чему не привело..


По теме черного ящика, определять вход и наблюдать за выходом, это конечно можно, но это очень долго..
И потом, протеус, я вот задам нубский вопросик.
Представим такую тему, что я пойму алгоритм изменения пакетов, используя метод черного ящика, но что мне это даст?
Даже если я буду знать, какой пакет за что отвечает, там ведь существует множество проверок..
Их не обойти=)
Если мы имея 0 игровой валюты, нажмем купить Красное зелье, мы получим красную рамочку "у вас не хватает зеней". То же самое будет и с пакетами.


--------------


Да, конечно, я всё понимаю, в некоторых местах трафик очень дорогой, и постараюсь сам разобраться.
Но ведь на сайте ты тоже не заметил ничего интересного?..
Жалко я не умею писать вирусы, так бы можно было попытаться отправить, что нибудь интересное в суппорт, на главный компьютер.
После чего поискать БД например.. Но к сожалению, я такой нууууп.

Что ты сделать-то хочешь? денег прибавить? навеняка поверка на стороне сервера! В саппорт вирус слать - ты понимаешь, что там люди что-то понимают и не станут открывать твой файл?!!?!!

lm137
05.06.2008, 16:50
Что ты сделать-то хочешь? денег прибавить? навеняка поверка на стороне сервера! В саппорт вирус слать - ты понимаешь, что там люди что-то понимают и не станут открывать твой файл?!!?!!

Ты мои посты читал? Я и написал, что - да, проверки там есть.
По поводу саппорта ты сильно заблуждаешься, саппорт был проверен на компетентность и проверку не прошел.

На сервере 60% - боты, и тому подобное..

Такое ощущение, что ты прочитал мой пост и выделил из него выводы.. и всё-)

А совет то будет? Ну или слово какое нибудь новое, интересное.. Или это всё? Если - да, то я жду компетентного ответа от ProTeuS. Он суров, но он во всем эту фишку рубит.

Вот если бы ты написал, что нибудь по делу, например как порты открыть, то это - да.. респект.

А так за 1 неделю 400постов набить и получить 5 плюсов, после чего критиковать нубиков в моем лице, то извини, не большого стоит.

Извиняюсь если обидел. ;)

desTiny
05.06.2008, 17:21
Ты мои посты читал? Я и написал, что - да, проверки там есть.
По поводу саппорта ты сильно заблуждаешься, саппорт был проверен на компетентность и проверку не прошел.

На сервере 60% - боты, и тому подобное..

Такое ощущение, что ты прочитал мой пост и выделил из него выводы.. и всё-)

А совет то будет? Ну или слово какое нибудь новое, интересное.. Или это всё? Если - да, то я жду компетентного ответа от ProTeuS. Он суров, но он во всем эту фишку рубит.

Вот если бы ты написал, что нибудь по делу, например как порты открыть, то это - да.. респект.

А так за 1 неделю 400постов набить и получить 5 плюсов, после чего критиковать нубиков в моем лице, то извини, не большого стоит.

Извиняюсь если обидел. ;)
Так-с, по-моему,ты занимаешься фигнёй.

Вот есть на серваке БД. В БД лежат ВСЕ твои данные. как происходит что бы то ни было?
в одном и том же скрипте что-то такое: (сорри за псевдо-пхп+мускуль)
$money <- SELECT money from xxx where id=твой id
$need <- SELECT cost from yyy where id=номер товара
($mon >= $cost) or die "cheator gone!";
//снятие денег и зачисление предмета

То есть ломать на стороне клиента бессмысленно!!
Твоя цель - доступ к серваку. И тебе
а) не в этот раздел
б) ddos-атака тут тебе совсем не поможет
в) идея с вирусом - бредовая, имхо... никто на неё не купится... да ещё и как ты ось узнаешь сервеную?... Не чувак, ломай сайт. Если нет - то не судьба.

PS что-то я по пять плюсиков и неделю не понял - ты к кому?

lm137
05.06.2008, 17:29
Есть те, которые сумели Дюпать при помощи пакетов.
Нет, это конечно понятно, что надо быть "гением", что бы обмануть такой скрипт, но всё же некоторым а именно 4 человека из 3.000 смогли это сделать через серверную часть, используя лишь впе-про и "Кафру" *Кафра - склад в игре*.
а)Раздела для нубов я не нашел..
б)Ддос атакой я хотел вывести наружу баги самого сервера.
в)Согласен..




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

PS desTiny
Постоянный
Регистрация: 04.02.2007
Адрес: SEH
Сообщения: 417
Провел на форуме:
1 неделю 1 день

Репутация: Эксперт (5/778) ±

Спасибо за грамотный ответ.
Еще раз извиняюсь за грубый ответ в предыдущем посте.


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

desTiny
05.06.2008, 17:34
Есть те, которые сумели Дюпать при помощи пакетов.
Нет, это конечно понятно, что надо быть "гением", что бы обмануть такой скрипт, но всё же некоторым а именно 4 человека из 3.000 смогли это сделать через серверную часть, используя лишь впе-про и "Кафру" *Кафра - склад в игре*.
а)Раздела для нубов я не нашел..
б)Ддос атакой я хотел вывести наружу баги самого сервера.
в)Согласен..

PS desTiny
Постоянный
Регистрация: 04.02.2007
Адрес: SEH
Сообщения: 417
Провел на форуме:
1 неделю 1 день

Репутация: Эксперт (5/778) ±

Спасибо за грамотный ответ.
незачто.. но всё равно - клиент тебе может лишь подсказать, что там с параметрами, которые надо отсылать,притом это - через сниффер, а дальше - это уже совсем другое дело - это уже сайт ломать.
Кста, а те 4 - не админы случаем или их друзья? А то были в других местах прецеденты :)

PS 1 неделя 1 день - это непосредственно в сети на форуме... ужас... 5 это тоже не совсем то,о чём ты думаешь, ну да ладно :)

lm137
05.06.2008, 17:46
дес.. я убил столько времени на поиски багов, на сканирование пакетов и попытки-попытки-попытки..
У меня даже получалось дюпать через пакеты на пиратках, но то пиратки, а то официальный Российский сервер.
Он - моя цель.
Скрипты там далеко не идеальны, например на предыдущей версии можно было дюпать так:
Ложишь на склад 10 предметов.
Начинаешь сканировать, ложишь 10предметов в инвентарь.
Перекладываешь на склад 1 предмет того же типа, отправляешь 1й пакет.
Из склада исчезает 1ед. предмета из склада, а в инвентаре появляется 10ед. предмета.

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

Так что.. дыр предостаточно на самом сервере, думаю можно обмануть скрипт через клиентскую часть.

А есть идеи как открыть порты?
Для того же брута..
При настройки брута, я указал ИП и порт, но коннекта нету.
Мне кажеться, что порты закрыты, поэтому ничего не выходит, т.к. брут идет напрямую, внаглую через порты.

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

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

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

desTiny
05.06.2008, 18:00
...
Блин, пиши по-короче :)

У меня к тебе вопрос - что ты так упорно пытаешься сбрутить?

Модифициовать клиент можно што хоть убейся - хочешь, он тебе при запускебудет говорить, что ты в 100 раз сильнее всех? Дакак нехрен! Только серве об этом знать не будет(--Человек - царь природы! -- Только звери об этом не знают, они не грамотные (c)"Тайна третьей планеты") Тебе надо убедить сервер, что ты прав. Для этого надо найти бажные скипты. А это уже не ревесинг.

lm137
05.06.2008, 18:03
Модифициовать клиент можно што хоть убейся - хочешь, он тебе при запускебудет говорить, что ты в 100 раз сильнее всех?

Это я и сам сделать смогу.
Нет,это интерес, я хочу получить игровые ценности при помощи пакетов\багов. Боты мне надоели..
А что это если не реверсинг?.. В какую тему валить?

ntldr
05.06.2008, 18:15
советую изучать пиратские сервера. на офе частично пакеты шифрованы

lm137
05.06.2008, 18:42
Да.. но хочеться именно официальный, токо не знаю как..

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

раз ты там играешь, мб у тебя идеи есть?

Piflit
05.06.2008, 18:55
А что это если не реверсинг?..
при чем тут реверсинг?

ntldr
05.06.2008, 19:10
реверсинг тут не причем, исследования исходников eAthena тебе не помогут, тк на офе стоит закрытый Aegis

lm137
05.06.2008, 19:19
Да, но вот этому человеку 279455671
Же как то удалось сломать офф-)
Может даже ты его знаешь.. Аквариус ну или Мурч

ntldr
05.06.2008, 19:33
блин. на офе на главной странице была mssql инъекция...

я не умел и не умею их юзать)

ProTeuS
05.06.2008, 22:10
>>А что это если не реверсинг?.. В какую тему валить?
если нет желания стараться, у4иться, 4то не быстро и сиюминутно, а просто мгновенно полу4ить результат, то тебе на ол4итс.ру и делиться багами(про метод 4ерного ящика и анализ статисти4еских данных я выше уже писал). если же появится желания расбираться хотябы в основах сетей, протоколах, ит-безопасности и реверсинге, то

ПОФИКШЕНО

http://www.google.ru/search?hl=ru&q=%D0%BE%D1%81%D0%BD%D0%BE%D0%B2%D1%8B+%D0%BA%D0%B E%D0%BC%D0%BF%D1%8C%D1%8E%D1%82%D0%B5%D1%80%D0%BD% D1%8B%D1%85+%D1%81%D0%B5%D1%82%D0%B5%D0%B9&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google&lr=&aq=f
http://www.google.ru/search?hl=ru&q=%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD %D0%BE%D1%81%D1%82%D1%8C+%D0%B8%D0%BD%D1%82%D0%B5% D1%80%D0%BD%D0%B5%D1%82-%D0%BF%D1%80%D0%BE%D1%82%D0%BE%D0%BA%D0%BE%D0%BB%D 0%BE%D0%B2&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google&lr=&aq=f
http://forum.antichat.ru/thread31398.html


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

lm137
05.06.2008, 22:54
Я всё понял. ссылки на гугл битые.
Что почитать нашел, читаю статьи для нубов, в частности фак по Xss и прочее-прочее.
Спасибо за потраченное на меня время.

Токо ссылки на гугл битые. Выдает, что такого нету-)

ntldr
07.06.2008, 23:04
Есть ли способы узнать с какими параметрами вызывается функция из dll? Не из воздуха же в сети нахожу синтаксисы функций ntdll.dll =)

0x0c0de
07.06.2008, 23:24
>> Есть ли способы узнать с какими параметрами вызывается функция из dll

msdn в помощь

>>Не из воздуха же в сети нахожу синтаксисы функций ntdll.dll =)

конкретно про ntdll - частично то, что в сети, частично руками (в IDA)- что интересует смотреть. Майкрософт не все документирует

ntldr
07.06.2008, 23:42
>> Есть ли способы узнать с какими параметрами вызывается функция из dll

msdn в помощь

>>Не из воздуха же в сети нахожу синтаксисы функций ntdll.dll =)

конкретно про ntdll - частично то, что в сети, частично руками (в IDA)- что интересует смотреть. Майкрософт не все документирует

я именно про не майкрософтовские dll, а просто рандомная чья-то самписная dll

taha
08.06.2008, 00:02
про секцию экспорта и Pe-вьюверы ты конечно не слышал =\\

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

ntldr
08.06.2008, 00:09
про это я слышал, вообще обычно я использую pe explorer тк там встроенная база и есть описание некоторых функций с синтаксисом паскаля

BlackSun
08.06.2008, 01:03
я именно про не майкрософтовские dll, а просто рандомная чья-то самписная dll
IDA с дебагером и прогой, в которой эта длл юзается тебе в руки

0verbreaK
08.06.2008, 13:16
про это я слышал, вообще обычно я использую pe explorer тк там встроенная база и есть описание некоторых функций с синтаксисом паскаля

IDA+HexRays

GivioN
14.07.2008, 10:22
Всем привет!
Может кто-нибудь выложить статьи или документацию о структуре ехе-файлов и работы его при запуске? Я слышал что он состоит из секции заголовка и секции кода, а подробней информацию в гугле найти не могу :(

0x0c0de
14.07.2008, 11:45
http://www.microsoft.com/whdc/system/platform/firmware/PECOFF.mspx
http://www.wasm.ru/doclist.php?list=2

neprovad
14.07.2008, 21:13
захотелось сбрутить enc_const в программе защищенной asprotect'ом. кто-нибудь знаком с этим процессом? использую в качестве плацдарма Asprotect 2.3 build 03.19 Beta
не совсем понятно мне что именно (какой блок данных) надо передавать в цикл расшифровки.

DaemonicSoul
18.07.2008, 17:38
Как можно выудить картинки,звуки из файла .dat?В игре он один, 87 мегов.Называется Steam Brigade. Очень нужны эти ресурсы. Как их достать?

De-visible
18.07.2008, 17:56
ресхаком...

DaemonicSoul
18.07.2008, 17:58
нет,ресхак не вытягивает ресурсы из дат файлов, я уже пробовал

neprovad
18.07.2008, 18:55
Как можно выудить картинки,звуки из файла .dat?В игре он один, 87 мегов.Называется Steam Brigade. Очень нужны эти ресурсы. Как их достать?
попробуй Dragon Unpacker (http://www.elberethzone.net/index.php?page=dup5&language=en#download)
и загляни на сайт сюда (http://www.extractor.ru/)

BlackSun
18.07.2008, 20:59
Uncle Фленов рекомендует Restorator =)
Restorator и ResHacker одна херня - тока для PE файлов, а челу надо из .dat файла *** знает какой структуры выташить ресы.

DaemonicSoul, попробуй еще 7zip'ом попытатся открыть, вдруг архив

ЗЫ: ресторатор маздай, ресхакер рульнее

DaemonicSoul
18.07.2008, 21:17
Нет, не архив это....пишет что не может открыть как архив.

Вообще бред какой-то, папка resources пустая (по названию здесь должны храниться ресурсы). Есть только один этот дат файл....да и еще, там есть типа какойто текстовый файл, судя по содержимому с него заполняется уровень игры.Так вот, часть его содержимого:
string mountainsLayer: "../../resources/backgrounds/night/mountains.bbq"
string skyLayer: "../../resources/backgrounds/night/sky.jpg"
string music: "../../resources/music/night.ogg"

BlackSun
18.07.2008, 21:22
папка resources пустая
Включи отображение скрытых и системных файлов, может поможет)
----------
и как вариант - запусти игру, загрузи уровень и зайди в папку, может игра распаковывает файлы во время запуска, а при закрытии - удаляет.

DaemonicSoul
18.07.2008, 21:58
Нет,нифига, скрытые папки и файлы у меня всегда отображаются, ну а ту папку при запуске оно не наполняет....

BlackSun
18.07.2008, 22:01
Тогда запусти FileMon, запусти игру, глянь куда она че распаковывает, если рапаковывает, или запусти игру, загрузи уровень, потом сдампи целиком процесс с игрой и заюзай Dragon Unpacker

DaemonicSoul
19.07.2008, 19:06
Нифига не получилось с файл мон, там обращение идет только к этому одному файлу, без каких-либо разархиваций и распаковок, а чем можно сделать дамп процесса?

0x0c0de
19.07.2008, 19:10
>> а чем можно сделать дамп процесса?

LordPe или PETools

http://cracklab.ru/download.php?action=list&n=MzU=

DaemonicSoul
19.07.2008, 22:10
Сделал дамп обоими программами - без результата, драгон анпакер ничего там не нашел. Пробовал даже с артмани делать дамп)) тотже результат

neprovad
20.07.2008, 10:15
Сделал дамп обоими программами - без результата, драгон анпакер ничего там не нашел. Пробовал даже с артмани делать дамп)) тотже результат
сделай так - отрежь от начала файла мегабайт так 6 и выложи ссылку и отдельно выложи ссылку на полный вариант файла, ибо методы которыми ты пользуешься (артмани, ресхак) меня пугают. лучше совместными усилиями определим что это такое. сразу же напиши что за игра и на всяк случай скинь все exe и dll игры.
ждем-с

DaemonicSoul
20.07.2008, 13:35
Я думаю проще будет скинуть установочный файл, так как он всего 22 мб , а распакованый ~100мб.
http://www.reflexive.com/SteamBrigade.html?PAGE=Download_Landing

ProTeuS
20.07.2008, 13:47
Я думаю проще будет скинуть установочный файл, так как он всего 22 мб , а распакованый ~100мб.
http://www.reflexive.com/SteamBrigade.html?PAGE=Download_Landing

http://cracklab.ru/f/index.php?action=vthread&forum=1&topic=11657

http://cracklab.ru/f/index.php?action=vthread&forum=1&topic=9622

DaemonicSoul
20.07.2008, 14:27
На краклабе в тех темах написано лишь как обойти ограничения на длительность игры, больше ничего интересного((

neprovad
20.07.2008, 15:11
На краклабе в тех темах написано лишь как обойти ограничения на длительность игры, больше ничего интересного((
если нужен поломаный exe - отпишись мне в личку, скину куда надо.
по теме - http://www.allegro.cc/files/depot/144/grabber.zip
скачай утилиту, это редактор файлов созданных с помощью Allegro 4.2.0, именно такая библиотека игровая используется в данном случае. ;)

Keeper-san
22.07.2008, 16:17
Есть код с которым программа сравнивает вводимый пароль.
Выглядит он так:AtpVsURQVnYjRiJ5Y4+47QXcYQegiVlCwYo6
Не могу определить чем шифровали, с начало думал это хеш, но он не похож, ни на один, из тех, которые я просматривал. :(
Программа реагировала на ввод пароля открытием ххх.ini файла, чтение данных из файла, закрытием файла и благополучным отторжение введённых паролей.
Название программы "Fingerprint Identification", используется на флешке "A-Data MyFlash FP1", с поддержкой платформы U3, открывается от отпечатка пальца или пароля.
Прошу свежих идей, ибо я иссяк :confused:

0verbreaK
22.07.2008, 16:19
Keeper-san PEID -> Crypto Analyze

Keeper-san
22.07.2008, 16:21
оперативно отвечаете ^_^ Уже её ищу.

Keeper-san
22.07.2008, 16:28
Забыл уточнить AtpVsURQVnYjRiJ5Y4+47QXcYQegiVlCwYo6
находится в xxx.ini.

Keeper-san
22.07.2008, 17:02
Keeper-san PEID -> Crypto Analyze
Нашёл прогу, воспользовался плагином Crypto Analyze, получил результатADLER32 :: 000A4777 :: 004A5377
BASE64 table :: 000700F6 :: 00470CF6
BASE64 table :: 0009F340 :: 0049FF40
BLOWFISH [sbox] :: 000B1514 :: 004B2514
CCITT-CRC16 [word] :: 00081207 :: 00481E07
CRC16 (rev) [word] :: 00070C5A :: 0047185A
CRC32 :: 00070E84 :: 00471A84
Golden ratio (TEA/N, RC 5/6, ...) :: 000858E8 :: 004864E8
Golden ratio (TEA/N, RC 5/6, ...) :: 0008593A :: 0048653A
Golden ratio (TEA/N, RC 5/6, ...) :: 00085973 :: 00486573
Golden ratio (TEA/N, RC 5/6, ...) :: 00085A63 :: 00486663
Golden ratio (TEA/N, RC 5/6, ...) :: 00085ABE :: 004866BE
Golden ratio (TEA/N, RC 5/6, ...) :: 00085B27 :: 00486727
GOST [sbox 1] :: 000B0514 :: 004B1514
HAVAL (5 pass) [char] :: 000A8F74 :: 004A9F74
MD4 :: 00073520 :: 00474120
MD5 :: 00073AD6 :: 004746D6
Q128 :: 000B255C :: 004B355C
RIPEMD-256 [Init] :: 00079D03 :: 0047A903
RIPEMD-320 [Init] :: 00073891 :: 00474491
SHA1 [Compress] :: 0007D66A :: 0047E26A
SHARK [CE-box] :: 000B499C :: 004B599C
SNEFRU :: 000A8FF4 :: 004A9FF4
SQUARE [SD] :: 000B485C :: 004B585C
SQUARE [SD] :: 000BCA9C :: 004BDA9C
SQUARE [TE] :: 000AF4F4 :: 004B04F4
SQUARE [TE] :: 000BCF9C :: 004BDF9C
TIGER :: 000ACFF4 :: 004ADFF4
TWOFISH [8x8] :: 000B355C :: 004B455C
ZLIB deflate [long] :: 000BF434 :: 004C0434
Вы, меня, правильно поймите, для меня это в новинку, так что, этот результат, для меня непонятен, будте так добры, ткните меня носом, что я тут должен увидеть?

neprovad
22.07.2008, 17:09
не знаю кому как а мне код этот напомнил base64, ибо я там увидел символ +
дай программу саму и файл заодно, а то на словах мы будем долго еще объясняться

Keeper-san
22.07.2008, 18:11
http://depositfiles.com/files/6709957 3,35 Mb
Вот программа и тот самый файл.

Keeper-san
25.07.2008, 02:29
Переложил на рапиду http://www.rapidshare.ru/739521

DaemonicSoul
26.07.2008, 13:40
Никто случайно не знает графический формат файлов .bbq ... reflexive arcade , есть ли какая-нить возможность вытянуть оттуда спрайты?
http://rapidshare.com/files/132554868/tile1.bbq.html
Заранее благодарен!

neprovad
27.07.2008, 11:55
Никто случайно не знает графический формат файлов .bbq ... reflexive arcade , есть ли какая-нить возможность вытянуть оттуда спрайты?
повторяю еще раз - изучай сайт и программы выкладываемые разработчиками.
http://www.allegro.cc/ - все по разработке тут!
Там на твой вопрос быстрее и точнее ответят

izlesa
31.07.2008, 16:21
изучаю сейчас распаковку. Но вопрос в принципе не об этом.
Почему в SoftIce мы ставим bpm esp-4 (bpm как я понимаю бряк на доступ к памяти), а в Олли надо использовать хардварные прерывания? Дело в реализации?
Когда ставлю прерывания на доступ к памяти в Олли, в запакованной проге(calc.exe под UPX ^____^), вылетают исключения и прога завершается.

0verbreaK
31.07.2008, 18:37
Дело в реализации?

в оле нет bpm.

Когда ставлю прерывания на доступ к памяти в Олли, в запакованной проге(calc.exe под UPX ^____^), вылетают исключения и прога завершается.

Больше информации.

neprovad
01.08.2008, 09:27
в оле нет bpm.
команды такой нет, а функционал такой же - есть.
по программе - с чего вдруг upx exception'ы стал выдавать? никогда такого не было. не проше ли также бряк на oep ставить? неужели обязательно изобретать велосипед и пользоваться бряками на память или что-то там еще??

ProTeuS
01.08.2008, 11:02
если ставить мемори бряк на 4тение байта и стоит фантом+оли_адвансед на ольке, то при 4тении конкретно у меня отлад4ик дествительно падает, если ты, izlesa, дествительно об этом, то просто снеси оба плага и все станет ок

0verbreaK
01.08.2008, 13:26
ли также бряк на oep ставить?

Он та её еще не нашел поэтому и ставит bpm esp-4, что бы приблизится к OEP

izlesa
01.08.2008, 14:01
упх то я снял.
Просто стало интересно почему так происходит.
Олли стоит только с плагом HideDebugger, больше ничего нет.
Изучал распаковку по тутору MozgC. Там используется SoftIce и соответственно для поиска oep ставится bpm esp-4.
Я использую Олли. Ну и сначала поставил бряк на этот дворд в памяти (Breakpoints > Memory on access). Соответственно вылетает экзепшен после Run (Access violation, запись в секцию где располагается PE проги). Хардварный бряк ставишь на тот же дворд и всё нормально. ОЕП нашлось ).
Вопрос в следующем:
1. Что есть bpm (вроде же breakpoint on memory) и какой функционал ему сопоставлен в Олли?
2. Почему прога вылетает под отладчиком Олли при установке бряка на память и всё работает при хардварных бряках?

Hellsp@wn
01.08.2008, 14:05
ProTeuS нада взять посл версию плага, за мемори бряки отвечает "custom handler ...", если что её можно просто оффнуть. падать ничего не будет.

ProTeuS
01.08.2008, 14:17
ТС, пакуй калькулятор упхом. доходи до ОЕП, запоминай адрес. рестартуй прогу, перед на4алом распаковки кода Ctrl+G адресс OEP и щелкай по нему правой кнопкой->Breakpoint->Memory on write. Далее F9. брякаемся в цикле распаковщика во время записи первых байт распакованого тела проги и все ок

izlesa
01.08.2008, 15:10
2ProTeuS
эммм, меня видимо не так поняли. Мне интересно почему так происходит.

Hellsp@wn
01.08.2008, 15:46
izlesa какие ещё плагина установлены? какая сборка ольги используется?

izlesa
01.08.2008, 15:51
Олли 1.10 - оригинальная, не сборка )
Плагины - CommandBar, HideDebugger.
Больше ничего.

ЗЫ необратил внимание раньше. Экзепшен вылетает за несколько команд до перехода на OEP.

Соответственно в eax оказывается левый адрес, находящийся в секции заголовка PE - 0100020F

AND BYTE PTR DS:[EAX],7F <-здесь экзепшен
AND BYTE PTR DS:[EAX+28],7F
POP EAX
PUSH EAX
PUSH ESP
PUSH EAX
PUSH EBX
PUSH EDI
CALL EBP
POP EAX
POPAD
LEA EAX,DWORD PTR SS:[ESP-80]
PUSH 0
CMP ESP,EAX
JNZ SHORT calc.01020E92
SUB ESP,-80
JMP calc.01012475 <- jmp OEP

Если надо выложу скрин.

Hellsp@wn
01.08.2008, 18:09
попробуй на голой ольге, без всего... что из ав/фаеров стоит?
так на всех пакованных прогах? или только на упх-ых?

izlesa
01.08.2008, 21:41
2Hellsp@wn
пробовал. Не влияет. Как и аверы с фаером.
Вот коечто нашёл в хелпе к Олли.

"Memory breakpoint ... To set this breakpoint,OllyDbg changes attributes of memory blocks containing selection. On 80x86-compatible processors memory is allocated and protected in chunks of 4096 bytes. If you select even single byte, OllyDbg must protect the whole block. This may cause plenty of false alarms with huge overhead. Use this kind of breakpoint with care. Some system functions (especially under Windows 95/98) cause debugged program to crash instead of generating debugging event when accessing protected memory. ..."

Но если руководствоватся хелпом, то не понятно то что появляется в eax (см предыдущий пост) - глюк Олли или реально так происходит ...

гым, но это ведь известная штука должна быть. Везде в статьях посвешённых распаковке с использованием Олли применяется хардварный бряк hr esp-4
Хотя по конечным действиям можно было бы применять memory break ...

ЗЫ и как кстати дебаггер 3 кольца может менять секьюрити аттрибуты (из хелпа, ктр привёл выше) страниц? o___0

ЗЫЫ Чтото мне кажется, что я напрягаю ^_____^

Hellsp@wn
01.08.2008, 22:09
как раз таки влияет :) не у одного тебя мемори бряки тупили и в основном причины были в винде/ав/фаере. как вариант ставь виртуалку, туда хрюшу и юзай на здоровье.
з.ы. винда какая?

izlesa
01.08.2008, 22:52
проверял на двух машинах

winxp SP2, AV: Nod32 v2.7, FW: None
winxp SP3, AV: PC Tools, FW: None

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

Причём в других прогах бряки на стековую память работают нормально. Просто какоето непонятное стечение объстоятельств ...
---------

нда, с аспаком тоже самое, access violation, теперь в edi лажа при цепочечной команде.
А у вас бряки на доступ к стековой памяти при распаковке работают или это у мну баги(я надеюсь хотя бы не в голове ^_____^)?

neprovad
18.08.2008, 14:06
Проблема с BinDiff
Запускаю IDA, запускаю плагин, выбираю вторую базу. Запускается скрыто второй процесс IDA и начинает потихоньку кушать память. Доедает до 2 с лихим Гб
Потом выдает abnormal program termination и как результат - отсутствие какого либо результата :(
Самое что печальное что об этом прямо сказано в readme - мол большие базы сравнивать не буду. Как быть? Чем пользоваться в такой ситуации

tekton
19.08.2008, 14:39
Скачал последний PEExplorer, cкачал русификатор. После русификации в папке с прогой появился файл pexplorer.Rus. Прога не только оказалась не русифицирована, но и стала выдавать: "Runtime error 101 at 001B9496" и отказалась запускаться( после удаления pexplorer.Rus прога запускается и работает) . Тогда засунул EXE в PEiD, он сказал: "Borland Delphi 3.0 [Overlay]". Засунул EXE в Restorator все ресурсы видны, их можно править и сохранить. Но при запуске прога снова ругается: "Runtime error 101 at 001B9496". Это привело меня к мысли что в проге стоит проверка контрольной суммы.

Хотелось бы в краткой форме понять как с этим бороться. Дайте краткую инструкцию к действию как находить проверки в коде. Какие инструменты подойдут, как их применить. Поскольку я только начинающий, хочется разобраться в вопросе и научиться преодолевать подобные трудности в дальнейшем. Заранее спасибо!

neprovad
19.08.2008, 15:13
Если программа сообщает что она повреждена, то это одно, а Runtime error это уже другое, а именно - указывает на то что русификация прошла криво и какая-то из функций по работе с памятью или строками дает сбой, пытаясь прочитать или как-то обработать поврежденные ресурсы. Такой вариант кажется самым правдоподобным.
В любом случае, отладчик никто не отменял - запускаешь под ним программу и ждешь появления Exception'a

Delphi help

101 Disk write error Reported by CloseFile, Write, WriteIn, or Flush if the disk becomes full.

tekton
19.08.2008, 16:16
Нет точно проверка CRC! Засунул EXE в Restorator все ресурсы видны, их можно править и сохранить (для эксперемента исправил всего одну букву в Меню). Но при запуске прога снова ругается: "Runtime error 101 at 001B9496". Это привело меня к мысли что в проге стоит проверка контрольной суммы.

Пробывал подняться назад по коду от сообщения об ошибке, но почемуто не получается подняться более чем на 4-5 уровня. Скорее всего проверок несколько! Как можно узнать сразу все адреса предпологаемых проверок? Спасибо.

neprovad
19.08.2008, 16:19
4-5 уровня это уже далековато занесло. Выложи свой модифицированный файл, гляну что там.

tekton
19.08.2008, 16:47
Вот несколько ссылок:

http://soft.softodrom.ru/scr/get.php?id=3013
http://www.newestsoft.com/cat42_532.html

neprovad
19.08.2008, 19:22
CODE:00562F13 call sub_49D52C
CODE:00562F18 test al, al
CODE:00562F1A jnz short loc_562F53
....
....
CODE:00562F33 jnz short loc_562F53
....
CODE:00562F4C call @@LStrCmp
CODE:00562F51 jz short loc_562F66

loc_562F53:
CODE:00562F53 xor ecx, ecx
CODE:00562F55 mov dl, 1
CODE:00562F57 mov eax, off_406468
CODE:00562F5C call sub_409F44
CODE:00562F61 call @@RaiseExcept

Проверка цифровой подписи файла. RaiseExcept - как раз сообщение то самое. Запатчить не составит труда.

tekton
19.08.2008, 22:26
Спасибо neprovad ! Исправил код [QUOTE=neprovad]
CODE:00562F13 call sub_49D52C
CODE:00562F18 test al, al
CODE:00562F1A jnz short loc_562F53 <<<<<<<<<<<< занопил
....
....
CODE:00562F33 jnz short loc_562F53 <<<<<<<<<<<< занопил
....
CODE:00562F4C call @@LStrCmp
CODE:00562F51 jz short loc_562F66 <<<<<<<<<<<< Поменял на JMP

loc_562F53:
CODE:00562F53 xor ecx, ecx
CODE:00562F55 mov dl, 1
CODE:00562F57 mov eax, off_406468
CODE:00562F5C call sub_409F44
CODE:00562F61 call @@RaiseExcept

Правильно?
Но вот что интересно: Теперь можно править и переводить String Table, изменения сохраняются, прога после этого запускается, но остаётся на инглише! В чём может быть дело? Раскажи пожалуйста в двух словах чем отличается Проверка цифровой подписи файла от проверки контрольной суммы?

Martyr
19.08.2008, 22:51
Контрольная сумма-это простой способ проверки целостности данных,суть которого состоит в том , что контрольная сумма- это некоторое значение,рассчитанное путем сложения всех входных данных.
Sum=Data % ([MAX_VAL]+1)
Data-итоговая сумма, рассчитанная по входным данным, и MaxVal - максимально допустимое значение контрольной суммы, заданное заранее.
Если использовать алгоритмы хэширования вместе с криптосистемами, с ключом общего пользования, то можно создать цифровую подпись, практически как человеческая подпись.Криптосистема и ключ общего пользования-составляют в сумме, метод позволяющий кодировать и декодировать данные с помощью двух ключей:общего использования и личного.

neprovad
19.08.2008, 23:13
В данном случае различия нет. Идет проверка на то изменен ли файл или нет, а что используется - цифровая подпись или контрольная сумма не столь важно.

- Обычную контрольную сумму можно посчитать самостоятельно и подменить
- Цифровая подпись сложнее и банальной подделке не поддается (насколько я знаю)

tekton
19.08.2008, 23:33
Я всё правильно сделал? Расскажи пожалуйста как ты нашёл код проверки (как ты обычно это делаешь, алгоритм действий) Спасибо

neprovad
20.08.2008, 00:37
Точка останова на функцию вывода сообщения, несколько возвратов по ret и вот мы и на месте. А вообще если на лету не понятно как работает, используй IDA и применяй сигнатуры, сразу станет все понятно.

tekton
20.08.2008, 01:35
Как я понял такойже подход и к контрольной сумме. Выскакивает сообщение об ошибке, начинаем обратную трассировку до места падения проги. Правильно ли я понимаю? neprovad скажи я правильно подпатчил код? А то я сомневаюсь. Можно ещё один вопрос? Начал читать про инлайн патчинг. Как я понял Патч происходит в памяти, скажем когда распаковщик отработал, передал управление на OEP, адрес ОЕР подменяется Jamp*ом на наш код. После того как он отработал, возврашаем управление проге. Вопрос: Сначала в отладчике надо узнать адреса которые надо патчить? И еще, гдето прочёл в одном из топиков что если Если проверок много то применяют инлайн патчинг? Но у меня возник вопрос: Что если в коде есть проверка контрольной суммы всего файла? Инлайн в пролёте? Или как вариант приидётся писать отдельную прогу и патчить когда подопытная прога полностью распаковалась ? Или всётаки можно вклиниться между упаковщиком и прогой?

neprovad
20.08.2008, 02:41
- Можно было заменой одного байта обойтись :)
- Конечно, узнать адреса необходимо до начала инлайн патчинга
- Раз на раз не приходится, вопрос в трате времени (быстрее снять защиту совсем или нейтрализовать инлайном)
- Если есть проверка, она находится и нейтрализуется, либо ей (проверке) подсовывают оригинальные значения. Опять же смотря как она вызывается (одно дело по таймеру периодично, другое дело один раз при запуске программы). Каждый случай обычно требует своего подхода, вернее его всегда можно найти. Пожалуй так.

tekton
20.08.2008, 17:40
Что это за Thinstall Setup Capture как и чем можно его снять, распаковать. Перерыл все, вразумительного ответа не нашел.

neprovad
20.08.2008, 17:50
Так проверь чем упаковано! Использование PeID, RDG Packer Detector никто не отменял.

tekton
20.08.2008, 18:10
PEiD v0.94 говорит UPolyX v0.5 [Overlay] *
xeinfo PE - Thinstall VS 3.0.x -> Jitit Software
RDG Packer Detector говорит Delphi
FlexHEX в начале файла есть вот что:


Boot loader for Thinstalled packages FileVersion 3.349
InternalName boot_loader_exe. LegalCopyright 2005-2007. Thinstall boot_loader_exe.exe ProductName Thinstall ProductVersion 3.349

neprovad
20.08.2008, 18:27
Ну вот, самое время самостоятельно разобраться как оно все работает.
Бряк на CreateFileA попробуй и жди выгрузки.

tekton
20.08.2008, 18:37
Бряк на CreateFileA попробуй и жди выгрузки. Ок ща попробую! От функции надо в обратном направлении трасировать или дальше по коду ?

neprovad
20.08.2008, 18:57
Ок ща попробую! От функции надо в обратном направлении трасировать или дальше по коду ?
Поясняю свою мысль насчет CreateFileA. Почему я выбрал именно её?
Thinstall известен тем что виртуализирует, помещая в песочницу "sandbox" выполняемый процесс, при этом контролируя все его попытки работы с файловой системой.
Так вот, ставим бряк на CreateFileA, ждем срабатывания, смотрим на имя открываемого\создаваемого файла и делаем вывод - как относится данный файл к работе подопытного приложения. Если кажется что файл нужен нам, запоминаем путь, ставим бряк на CloseHandle и ждем срабатывания (по логике после CreateFileA вызовется WriteFile а затем CloseHandle). После этого можно ныжный нам файл скопировать и делать с ним что угодно.
Для удобства понимания работы рекомендую использовать WinApiOverride (см. в разделе инструменты (http://forum.antichat.ru/showthread.php?p=538598-override#post538598))

tekton
20.08.2008, 21:05
CreateFileA отсутствует. Я посмотрел какие вообще вызываются функции в (ОLLY Ctrl+N) Прога попала на бряк, в EAX легло 0012FC38 UNICODE "F:\Program Files\PE plorer\PEExplorer.exe", а на верхушке стека

0012FA08 0012FC38 |FileName = "F:\Program Files\PE Explorer\PEExplorer.exe"
0012FA0C 80000000 |Access = GENERIC_READ
0012FA10 00000001 |ShareMode = FILE_SHARE_READ
0012FA14 00000000 |pSecurity = NULL
0012FA18 00000003 |Mode = OPEN_EXISTING
0012FA1C 00000080 |Attributes = NORMAL
0012FA20 00000000 \hTemplateFile = NULL

0012FA24 7C910738 ntdll.7C910738

Ставлю бряк BPX CloseHandle, бряк сработал !

После этого можно ныжный нам файл скопировать [/URL]) Где и как его найти? В папке F:\Program Files\PE plorer\PEExplorer.exe только старый запакованый файл :(

neprovad
20.08.2008, 21:17
А с чего решил вдруг что Thinstall и PeExplorer связаны? Я думал речь о другой программе какой-то! PeExplorer на делфи написан, откуда у тебя взялся thistall ??
А теперь объясни внятно что пытаешься сделать? Мне интересно очень.

tekton
20.08.2008, 21:34
Я скачал еще одну версию PE-1.99-R4-Portable Rus.rar Хочу посмотреть на него изнутри. Как и где он хранит языковые настройки, т.к. в прошлом (PeExplorer*е на делфи) поменял весь String Tabl а эфекта ноль. Поэтому хочу докапаться до истинны. Так всеже как скапировать нужный файл, после бряка на CloseHandle?

Спасибо за помощь!

neprovad
21.08.2008, 09:05
http://tuts4you.com/download.php?view.851
Скачай статью и изучи её
p.s. Лучше надо искать

tekton
30.08.2008, 21:38
Как найти место где сверяется серийник, если сообщение об ошибке ( и вообще все сообщения, надписи, весь интерфейс!) загружаются динамически. Код прорисовки я нащел. Код типа:

Code:
MOV CL,BYTE PTR DS:[EAX] <<<<АДРЕС С буквенной СТРОКОЙ
INC EAX <<<<<< УВЕЛИЧИВАЕМ АДРЕС НА 1, чтобы прочитать следующую букву, символ
TEST CL,CL <<<<<< ПРОВЕРЯЕМ НЕ НОЛЬ ЛИ В CL
JNZ SHORT user32.77D5E176 <<<<<<ЕСЛИ НОЛЬ ИДЕМ ДАЛЬШЕ ЕСЛИ НЕТ, ТО ПРЫГАЕМ НА 77D5E176


Строки сообщений, тоже нашел. Ссылки на адреса передаются не прямые, а типа:

Code:
005862BB 87B4DD 522320D9 XCHG DWORD PTR SS:[EBP+EBX*8+D9202352],ESI
005862DB 81FB 94F7FFFF CMP EBX,-86C
0058642D 8F041F POP DWORD PTR DS:[EDI+EBX]
0058660B 8B5E 08 MOV EBX,DWORD PTR DS:[ESI+8]
7C915639 3B0A CMP ECX,DWORD PTR DS:[EDX]

Что делать в подобной ситуации ??? Как считать адреса? Если можно прокомментируйте, ПОЖАЛУЙСТА!

И Вопрос №2. Прога запускается без нагов, но через каждых пять запусков, вылетает наг. Как отловить место откуда он вылезает.

Заранее Спасибо!

neprovad
31.08.2008, 02:43
тот код что приведен в примере полная херня, говорю как есть. то что очевидно для тебя для других - нет. ссылки на объект в студию
зы: 77D5E176 - адрес системной бибилотеки.
чтобы найти адреса где вызывается нагскрин не обязательно трэйсить user32.dll или что там у тя было

tekton
31.08.2008, 18:22
тот код что приведен в примере полная херня, говорю как есть. Ты наверное про это?

Code:
005862BB 87B4DD 522320D9 XCHG DWORD PTR SS:[EBP+EBX*8+D9202352],ESI
005862DB 81FB 94F7FFFF CMP EBX,-86C
0058642D 8F041F POP DWORD PTR DS:[EDI+EBX]
0058660B 8B5E 08 MOV EBX,DWORD PTR DS:[ESI+8]
7C915639 3B0A CMP ECX,DWORD PTR DS:[EDX]

Это не код, а строчки для примера.

Вот скажем как посчитать смещение которое передается таким образом XCHG DWORD PTR SS:[EBP+EBX*8+D9202352],ESI
И так далее каждая строчка отдельный пример. Прошу прощения что не обьяснил это когда задавал вопрос ;)

А прога оказалась накрытой. PEiD: говорит что ASProtect 1.2x - 1.3x [Registered] -> Alexey Solodovnikov


Вот прямая ссылка на прогу: http://www.intrapdf.com/download/intrapdf_pdf2html_setup.exe

neprovad спасибо тебе огромное! Ты наверно один в эту ветку заглядываешь :p , и при этом проявляешь терпение к таким лаймерам как я. ;)

neprovad
31.08.2008, 19:38
В разделе Реверсинг есть подраздел - Утилиты для крякера\реверсера.
Утилиты для распаковки AsProtect
http://forum.antichat.ru/showpost.php?p=836230&postcount=58
Скачай и попробуй воспользоваться. Не устану повторять что знания, полученные самостоятельно, самые лучшие.
Можешь поверить, что в эту ветку и модераторы и другие пользователи заглядывают, не только я.
А терпение проявляю потому что сам был диким ламером когда-то и знаю каково самостоятельно искать ответы на возникающие вопросы. ;)

eLWAux
05.09.2008, 11:25
как запустить в олекe EXE с параметром?
(рякми от 0x0c0de просит запустит себя с параметром..)
)))

ProTeuS
05.09.2008, 14:35
меню debugger->arguments, вбиваешь командную строку параметров, перегружаещь заново екзешник (стрл+ф2) и все

tekton
06.09.2008, 06:25
Подскажите хорошее пособие по способам адресации (прямая, регистровая, индексная, косвено-регистровая...) и т.д.

Чтоб доходчиво, понятно было написано, побольше примеров. А то у Панова "Реверсинг и зашита программ от взлома" както сухо всё излогается, а у Калашникова вообще эта тема не расматривается. Спасибо.

0x0c0de
06.09.2008, 06:50
2tekton go to
https://forum.antichat.ru/thread31398.html

ссылки есть. По способам адресации и вообще по необходимым основам - Assembler учебник Юрова. Одна из самых нормальных книг.

tekton
13.09.2008, 01:10
Как русифицировать Консоль и Dos программы?

Только не надо говорить типа: "Зачем тебе это старьё..." и т.п.

В современных прогах всё просто: Редактор ресурсов + Hex редактор

Попробывал в Hex редакторе перевести, получаются эроглифы

Эсли можно покажите на примере... ну скажем, Волков командер. Только по опдробнее, пожалуйста.

И как переводить файлы (не Exe) в которых содержатся строки? Например: файлы *.hlp в консолях и Dos?

Спасибо.

neprovad
13.09.2008, 07:47
- Не забываем что и под dos были упаковщики, следовательно, программа может быть упакована и ее надо будет распаковать для внесения изменений.
- Перевод: если просто текст то берем и переводим. Попутно не забываем о том что длина строк может считаться по разному - 0;0Dh,0Ah;$;
- Иероглифы: выбирать кодировку при переводе надо с умом. Почему? Ответ очень прост - а загружены ли соответствующие драйверы? Вспоминаем магические слова "mode con codepage" из конфигурационных файлов dos'а

tekton
14.09.2008, 02:04
- Перевод: если просто текст то берем и переводим. Попутно не забываем о том что длина строк может считаться по разному - 0;0Dh,0Ah;$; Перевёл ФАЙЛ*HLP помощью bred 3
- Иероглифы: выбирать кодировку при переводе надо с умом. Почему? Ответ очень прост - а загружены ли соответствующие драйверы? Вспоминаем магические слова "mode con codepage" из конфигурационных файлов dos'а
Где об этом можно почитать? И в гугле пишу : "Перевод консоли и Dos" , чаще всего попадаются статьи по лину, стоящего ничего не нарыл:( И вообще, такое чувство что Дос Вымерает! Посоветуйте хорошую книгу по основам Дос, как говорится изучение с нуля, для "Нуля" :D

И ещё вопрос по Olly. На Ваш взгляд какая сборка лучше на сегодняшний день, в плане скрытия от протов?

0x0c0de
14.09.2008, 07:06
>>И ещё вопрос по Olly. На Ваш взгляд какая сборка лучше на сегодняшний день, в плане скрытия от протов?

Обычно под конкретный про делают. И соотв набор плагов и соотв образом пропатчено. SABRE-G от много чего скрывает, а сама сборка под экзекриптор и темиду.

http://tuts4you.com/download.php?view.2163

Правда уже надо обновить некоторые плаги, в частности фантом [сборка вышла до выпуска новой версии].

Вообще можно go to
http://tuts4you.com/download.php?list.4

или

http://www.team-x.ru/guru-exe/index.php?sort=name&order=desc&path=Tools/Debuggers/OllyDbg/

И качать. YDbg еще ниче, только при обновлении плагов придется их модифицировать, ибо в плагах сборки должно быть в экспортах, скажем не _ODBG_Plugindata, а _SNDG_Plugindata. Так же как и в импорте SND.EXE, а не OllyDbg.exe. А вот в SABRE-G все обновляется без проблем

LEE_ROY
14.09.2008, 09:04
0x0c0de давай свою сборку, и людям пригодиться и релизенг для ачата будет!

neprovad
14.09.2008, 14:57
И вообще, такое чувство что Дос Вымерает!
Чувства не обманывают.
Книги искать тут http://ebdb.ru/Search.aspx?p=1&s=dos&x=0&y=0
А чтоб дело быстрее пошло, посмотри как устроены файлы загрузочные (autoexec.bat, config.sys от win98)
И вообще свой перевод под win98 проверяй, так мне думается быстрее дело пойдет. Впрочем, так же не забывай что у dos файлов можно менять настройки загрузки в их ярлыках, указывая варианты config.sys и прочего под каждый конкретный случай.

0verbreaK
14.09.2008, 19:43
neprovad

config.sys

Это нахреното - чтобы утонуть в нативных функах?

ProTeuS
14.09.2008, 21:17
это не дров, а конфигурационный файл...

neprovad
14.09.2008, 21:28
Это нахреното - чтобы утонуть в нативных функах?
:) Иногда следует быть внимательней

tekton
15.09.2008, 03:53
Скачал поставил эту прогу (См. Сюда) (http://www.computentsystems.de/downloadsweb/Setup_getStarted!XP.exe) Мало того что не могу ни Олю запустить не файлмона, ни регмона, Когда откраваю сайт по ссылке на модификации Оли, так эта гадость ещё и Оперу закрывает. Пейд говорит Dtlphi, RDG tEllok v. 098 (Special build) В google не одной ссылки на этот прот не нашёл. :(

И вопрос: Можно ли обновлять сигнатуры PEID, RDG Packer Detector, scanit, exeinfope и как это сделать? Может есть какое Online обновление?

neprovad
15.09.2008, 06:55
Обновленные данные
Откуда взялся tElock не совсем понятно, так как его там отродясь не было. Программа написана на Delphi, для заshitы автором был использован компонент IceLicense (http://www.ionworx.com/icelicense.html)
Обратить внимание на адреса

46EA94 ; Функция с результатом Boolean, алгоритм должен быть понятен без разъяснений
46EB10 ; заменить вход в функцию на ret
4742CC ; условный переход (перед поиском утилит мониторинга)
4EB22D mov [ebx+320h], al ; al=trial days
4310A0 ; extctrls::UpdateTimer

Для начала думаю достаточно.

Грот
15.09.2008, 07:59
вот попробуй вот эту порогу
http://slil.ru/26145361 сносит tELock

O.mnenie
16.09.2008, 13:39
вот попробуй вот эту порогу
http://slil.ru/26145361 сносит tELock

норма +

UnPazz
16.09.2008, 15:02
есть скомпиленный из си файл *.exe, но исходного кода нет.
подскажите, какой программой могу получить исходный код на ассемблере ?
plz

LEE_ROY
16.09.2008, 15:13
ida pro

tekton
18.09.2008, 03:12
вот попробуй вот эту порогу
http://slil.ru/26145361 сносит tELock Спасибо! Но прога не помогла!

neprovad был прав: Откуда взялся tElock не совсем понятно, так как его там отродясь не было.


Это не tEllok v. 098 (Special build).

RDG -- Наврал :( .

Вопрос:

Можно ли обновлять сигнатуры PEID, RDG Packer Detector, scanit, exeinfope и как это сделать?

Может есть какое Online обновление?

LEE_ROY
18.09.2008, 03:19
на cracklab.ru люди вылаживали свои собранные сигны, а вообще гугль

neprovad
18.09.2008, 07:16
Насчет сигнатур. Могу ошибаться, но вроде на unpack.cn было что-то подобное (ориентироваться тяжело с непривычки), а вообще, действительно, google в помощь.
p.s: не в сигнатурах счастье

ProTeuS
18.09.2008, 12:25
вот тут найдешь актуальные сборки анализаторов и просто тюненые сигны, например актуальная - от флая:
_http://cracklab.ru/f/index.php?action=vthread&forum=1&topic=11893

tekton
19.09.2008, 22:37
Я вот думаю иногда: "В министерстве образования (Имеются в виду вузы, колледжи, гимназии, школы...) есть учебная программа, план, систематизация... Почему бы не сделать какую нибудь учебную программу для начинающих, ну скажем по асму на нашем форуме?" Вы наверное сейчас сидите, читаете этот бред новичка и думаете как самураи : "У каждого свой Дао". :D (В смысле: каждый учился по разному, по разным книгам...)! Но если собраться всем местным гуру, вспомнить с чего они начали свой путь и выработать оптимальный общий план. Радости новичков не было бы предела. :) А то сижу, читаю всё подряд (книги, статьи, форумы), а результат очень небольшой из за отсутствия системы. :(

Сам учился в ВУЗЕ, так очники которые учились на стационаре имели знания процентов на 50-60 больше чем заочники. Как Вам моя идея?
Так что вот такая просьбочка!
Спасибо.

0x0c0de
19.09.2008, 23:16
2tekton. Попытки систематизации предпринимались и успешные. существует неск серий по тому же асму, лежащие на васме. то же и по реверсу. только читай. если пройти по ссылкам в

https://forum.antichat.ru/thread69997.html

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

neprovad
20.09.2008, 01:46
Как Вам моя идея?
Идея неплохая, однако не видно большого наплыва желающих поучиться (видимо все они сидят в болталке) Так вот:
- Cледует определиться, для чего нужен asm лично вам?
Писать ПО или уверенно отлаживать код сторонних приложений? В зависимости от этого и сайты надо посещать соответствующие, чтоб не тратить зря время на знания, которые могут и не пригодиться.
- Купить книгу по тематике. Вот я начинал с В.Юров, С.Хорошенко - Assembler. Учебный курс И не просто купить, а прочесть раза так на три-четыре, чтобы в итоге могли вы сами рассказывать другим о асме.
- Для того чтобы такое начинание не стало похоже на зубрежку, выбрать себе shareware программу для опытов или задумать о написании своего калькулятора :)
- Не бросать всё на половине. Если что-то непонятно, отложить, затем снова вернуться.

buzulukland
27.09.2008, 22:04
Вопрос заключается в следующем: сейчас разбираю файл пожатый ASProtect 1.2. Нашел OEP, далее из тех статей что я прочитал, программу необходимо зациклить, порядок действий полностью расписан для SoftICE, но возможно ли что нибудь подобное сделать в Olly?

neprovad
27.09.2008, 22:20
Циклить в сайсе надо для того чтоб подопытная программа не продолжила работу и можно было переключиться на любой дампер и т.п.
А с olly достаточно свернуть всё окно отладчика. И никаких eb,fe писать не надо :)

buzulukland
27.09.2008, 22:47
Циклить в сайсе надо для того чтоб подопытная программа не продолжила работу и можно было переключиться на любой дампер и т.п.
А с olly достаточно свернуть всё окно отладчика. И никаких eb,fe писать не надо :)

т.е. если я стою на OEP, то к примеру просто запускаю ImpRec и снимаю дамп той программы, которая в данный момент загружена в Olly?

Hellsp@wn
27.09.2008, 22:57
т.е. если я стою на OEP, то к примеру просто запускаю ImpRec и снимаю дамп той программы, которая в данный момент загружена в Olly?

да, т.к. программа в этот момент стоит на паузе и никуда не убежит.

buzulukland
03.10.2008, 00:11
Вопрос заключается в следующем:
Допустим есть некая программа, требующая ввода пароля, причем пароль давольно "нормальной длины".
Программа не упакована.
Также в ней есть кусок данных который не определяется отладчиком, а пишется просто что-то такое:
DB 82
DB B5
DB 9A
DB DF
DB E8
DB 4E
DB 28
DB 91
DB 31
DB 30
DB 30
DB 30
Далее при вводе обнаруживается забавная вешь, если пароль был введен правильно, то эти строки начинаю "востанавливаться" относительно введенного пароля и вместо них, например мы получим строку
0F84 68010000 JE 004021B4
817D 0C 01020 CMP DWORD PTR SS:[EBP+C],201
0F84 41010000 JE 0040219A
E9 63010000 JMP 004021C1
Ведь зачастую может оказаться, что в этих строчках будет запрятана функция с которой начинаются все "девайсы" данной программы.и это единственное место появления данной функции.Давольно забавный учебный пример как такое может быть прикладываю
_http://www.woork.ru/exam.rar
Очевидно, что тут можно подгадать нужный результат изменяя нужные нам строки для MessageBox'а и трюком из раздела типа New origin here(для Olly)(тупой трюк).но в реальной жизни такое может просто не прокатить. Тогда как можно обойти такую защиту в общем случае?

0verbreaK
03.10.2008, 22:54
DB 82
DB B5
DB 9A
DB DF
DB E8
DB 4E
DB 28
DB 91
DB 31
DB 30
DB 30
DB 30

Ctrl + A попробуй нажать, это походу полиморф

desTiny
04.10.2008, 12:29
или выделяешь, правая кнопка -> During next analysis treat this code as... ->Commands

ProTeuS
04.10.2008, 16:03
buzulukland, сдается мне, 4то это динами4еская шифровка кода и расшифрован клод будет только text = decrypt(valid_key), ина4е открытый текст будет неверно отдекрип4ен и, 4то логи4но, не запущен корректно

buzulukland
04.10.2008, 22:54
buzulukland, сдается мне, 4то это динами4еская шифровка кода и расшифрован клод будет только text = decrypt(valid_key), ина4е открытый текст будет неверно отдекрип4ен и, 4то логи4но, не запущен корректно

Вот то-то и оно... сколько просидел и голову проломал, все вигня, выходит как ты описываешь, просто первый раз с таким сталкиваюсь, вот и решил спросить у сведующих. В принципе, смотри, реально ли написать брутер - работающий следующим образом
1. Узнаем функцию decrypt(), точнее как она работает
2. Зная "приблизительно" из каких hex последовательностей состоят предполагаемые команды, типа call,jmp,mov и т.д.
3. Просто перебрать всевозмодные варианты с длиной слова valid_key, по пути откидывая все "левые варианты" типа DB XX.
ЗЫ. У меня складывается дикое ощущение, что на выходе обязательно будет пара тройка "ничего се так" вариантов.
Можно ли еще что-нить сделать?

ProTeuS
05.10.2008, 02:01
можно. вот пример самого банального крякмиса с указаной выше функцией динами4еской расшифровки: http://forum.antichat.ru/thread22698.html
далее по уровню - написание самому подобного, анпак армы и так далее...

m0nsieur
26.10.2008, 23:59
Цель русифицировать прогу.
Она не пакована и написана на Visual Basic как показал peid.
Открываю ее в ollydbg, выбираю поиск всех текстовых строк, среди списка строк нахожу нахожу те которые нужны, перехожу в dump по адресу где строка находится изменяю ее, на время выполнения в дебагере строка показывается в программе. А как сохранить внесенные мной изменения в dump'e? Знаю, что править можно и через Heiw, но интересно именно можно ли в Ollydbg.

ProTeuS
27.10.2008, 00:58
щелкаешь после изменений в окне дампа -> Copy to executable file -> в появившемся окне Save to file

ntldr
31.10.2008, 16:07
программа защищена от запуска 2 окон при помощи мутекса. соответственно, мне надо защиту убрать, перехват CreateMutexA - не то что хотелось бы. Как лучше всего избавиться от вызовов этой функции?

neprovad
31.10.2008, 16:59
Перехват-удел избранных. А адекватные люди просто заменят условный переход после CreateMutex на безусловный или же вставят парочку nop; в зависимости от логики выполнения. Кроме CreateMutex может быть и GlobalAddAtom

-DeN-
01.11.2008, 01:09
Вот скачал очередную бету The bat. Пытаюсь распаковать да ни4его не выходит.
Оеп нашел, а вот таблицу восстановить не получается. Пакер Themida, но какая то модификация ....
Второй день уже пытаюсь распаковать... (в распаковке новичок)...

сцилка на файл hххp://www.ritlabs.com/download/files3/the_bat/beta/tb403417.rar

ProTeuS
01.11.2008, 01:52
Вот скачал очередную бету The bat. Пытаюсь распаковать да ни4его не выходит.
Оеп нашел, а вот таблицу восстановить не получается. Пакер Themida, но какая то модификация ....
Второй день уже пытаюсь распаковать... (в распаковке новичок)...

сцилка на файл hххp://www.ritlabs.com/download/files3/the_bat/beta/tb403417.rar

http://cracklab.ru/f/index.php?action=vthread&forum=1&topic=12575&page=0

> Видеотутор по распаковке Themida The Bat!
> 1) http://rapidshare.com/files/140505958/TheBat_manual_unpack_movie_by_RS I.rar.html
> 2) http://ifolder.ru/7875889

Alex87
01.11.2008, 05:43
Посоветуйте хороший материал по дэкомпилированию/устройству Intermediate Language (CLR via C# есть)
______________________
С уважением, Alex.

neprovad
01.11.2008, 15:37
Самый хороший материал можно поискать на tuts4you.com
А вообще Reflector вам в руки!

neprovad
01.11.2008, 15:39
Вот скачал очередную бету The bat. Пытаюсь распаковать да ни4его не выходит.
Может не следует начинать новичку распаковку с сложных пакеров\протекторов, а попробовать силы в чем-то чуть более простом? Не тратьте зря время и нервы на сложные программы, вернитесь к ним потом, когда опыта поднаберетесь.

Alex87
01.11.2008, 20:39
Самый хороший материал можно поискать на tuts4you.com
А вообще Reflector вам в руки!
За ссылку спасибо, я имел ввиду именно материал, а не софт.

ntldr
14.11.2008, 01:55
есть варианты удобного редактирования таблицы импорта, кроме как через хекс редактор?

0x0c0de
14.11.2008, 07:00
>>есть варианты удобного редактирования таблицы импорта, кроме как через хекс редактор?

Редактор пе-файлов =)
Например, небезызвестный CFF Explorer.

http://www.softpedia.com/get/Programming/SDK-DDK/CFF-Explorer.shtml

tekton
15.11.2008, 04:22
Есть инсталятор проги. Файл exe, написан на Borland Delphi 2.0 [Overlay] (PEID)

Мне надо достать из инсталятора EXE*шник и подменить. И вообще как распаковать все файлы в одно место без инсталяции?

Читаю сейчас "Теоретические основы крекенга"
Вот цитата:
Наиболее радикальным средством, разумеется, является декомпиляция инсталляционного скрипта этом случае мы получаем практически полную информацию о том, что происходит в процессе установки программы, а в некоторых случаях даже можем повлиять на этот процесс, внеся исправления в инсталлятор
Вопрос как этот скрипт достать из инстолятора?

Как внести исправления в инсталятор? :confused:

В принципе, в этой книге есть ответы на эти вопросы, но ответы очень поверхностные. А хочется посмотреть как это делается на практике!
Может ссылок подкинете ещё на какие нибудь хорошие, проверенные статьи? ;)

neprovad
16.11.2008, 13:49
Скорее всего попался в руки "Inno Setup" \ "Wize" или что-то похожее на это. По распаковке этого installer'а много материалов, ищи лучше :)

ntldr
16.11.2008, 20:26
как в Ollydbg узнать, из какого места программа попала на текущий адрес?

desTiny
16.11.2008, 21:31
как в Ollydbg узнать, из какого места программа попала на текущий адрес?
Call Stack (Alt+K)

tekton
16.11.2008, 22:47
Скорее всего попался в руки "Inno Setup" \ "Wize" или что-то похожее на это.

Как можно определить что это за разновидность инсталера? "Inno Setup", "Wize"... или др.

Peid показывает только что это Delphi и др. анализаторы то же самое.

Может есть какие специальные анализаторы для этого?

ntldr
16.11.2008, 23:37
такая задача. есть команда
MOV EAX,DWORD PTR SS:[ESP+84]
как ее нужно изменить, чтобы в ЕАХ писалось значение f8d00ee5 ?

desTiny
16.11.2008, 23:50
Как можно определить что это за разновидность инсталера? "Inno Setup", "Wize"... или др.

Скинь хотя бы скрин

ntldr: MOV EAX, 0f8d00ee5 + один NOP, кажется

ProTeuS
17.11.2008, 00:22
0040A460 > B8 E50ED0F8 MOV EAX,F8D00EE5
0040A465 90 NOP
0040A466 90 NOP

tekton
17.11.2008, 04:29
Скинь хотя бы скрин

Вот >>>Ссылка на скрины (http://dump.ru/file/1219834) <<< 223 Kb

Особенно меня интересует инстолятор под № 1.

И если можно опишите по номерам на что каждый похож. И как их можно распаковать и достать файлы и инсталяционный скрипт.

Заранее спасибо.

neprovad
17.11.2008, 05:53
Вот >>>Ссылка на скрины (http://dump.ru/file/1219834) <<< 223 Kb

Особенно меня интересует инстолятор под № 1.

И если можно опишите по номерам на что каждый похож. И как их можно распаковать и достать файлы и инсталяционный скрипт.

Заранее спасибо.
№1 Однозначно Inno Setup

00409B81 |. BA 88B14000 MOV EDX,Total-Un.0040B188 ; ASCII "Inno Setup Setup Data (5.2.3)"

Могу ошибаться, но вроде нет декомпиляторов для этой версии. Скачай дистрибутив Inno да и сделай сам все то же самое, чем не вариант?
p.s. картинки в архиве на dump.ru - жуткая безвкусица

tekton
17.11.2008, 18:58
Скачай дистрибутив Inno да и сделай сам все то же самое, чем не вариант?

Что ты имееш в виду под словами "сделай сам все то же самое" ?

картинки в архиве на dump.ru - жуткая безвкусица В следующий раз буду лучше стараться! :D

А можно просто отманиторить установку?

В смысле отследить что и куда кидает инсталятор (пути к файлам и ключам реестра), потом собрать это добро, и перепаковать самому с помощью другого инстолятора (написать скрипт что куда кидать, что где изменять...)???

Как и чем это можно сделать ? В смысле мониторинг!
Если можно напишите как это делаете Вы! И если можно пошагово!
Заранее спасибо!

iv.
17.11.2008, 19:26
А можно просто отманиторить установку?

В смысле отследить что и куда кидает инсталятор (пути к файлам и ключам реестра), потом собрать это добро, и перепаковать самому с помощью другого инстолятора (написать скрипт что куда кидать, что где изменять...)???

Как и чем это можно сделать ? В смысле мониторинг!
Если можно напишите как это делаете Вы! И если можно пошагово!
Заранее спасибо!
FileMon (http://technet.microsoft.com/en-us/sysinternals/bb896642.aspx)

tekton
17.11.2008, 20:17
FileMon

IV. Ты ещё RegMon забыл :D

iv.
17.11.2008, 20:22
А, пардон, я имел в виду утилиту Process Monitor (http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx), регмон и файлмон в одном флаконе. =)