![]() |
eXeL@B —› Софт, инструменты —› Программы для взлома Visual Basic |
<< . 1 . 2 . 3 . >> |
Посл.ответ | Сообщение |
|
Создано: 06 мая 2010 01:44 · Личное сообщение · #1 Доброго времени суток Поиском подобных тем не нашел, так что предлагаю собрать в этой теме стаф по сабжу. Ну и VB Decompiler, который я постить не буду ![]() ![]() |
|
Создано: 12 марта 2011 17:32 · Поправил: Chicago1981 · Личное сообщение · #2 |
|
Создано: 12 марта 2011 17:34 · Личное сообщение · #3 Chicago1981 А зачем через Олли, если есть vbaStrCmp v1.1 в шапке. Кидайте в папку с программой, запускайте, водите любой серийник и смотрите с чем он сравнивается. ![]() |
|
Создано: 12 марта 2011 18:02 · Личное сообщение · #4 |
|
Создано: 12 марта 2011 18:40 · Поправил: Chicago1981 · Личное сообщение · #5 |
|
Создано: 13 марта 2011 03:59 · Личное сообщение · #6 |
|
Создано: 13 марта 2011 07:16 · Личное сообщение · #7 |
|
Создано: 13 марта 2011 12:33 · Личное сообщение · #8 sen пишет: да куда уж примитивней - читаемый исходник из pcode васиков с 2 по 6 Извините, Уважаемый, еще живьём не видел нормальных, тем более читаемых, исходников из pcode для Vbasic версий 5 и 6 (другими не интересовался). Видел нечто, похожее на исходники, но не факт, что эти вещи вообще соответствуют самим исходникам. А уж если есть в Вашем хозяйстве примеры читаемых исходников, то обнародуйте, это ведь не сам приватный продукт, а результат... Ничего страшного не произойдёт Насколько мне известно, сейчас ближе всех к декомпиляции из pcode начинает (наконец-то) приближаться GPcH, но и ему ещё лет несколько работать в этом направлении... А чтоб не совсем голословны были мои высказывания, приведу в аттаче примерчик возможного результата декомпиляции + исходник + декомпиляция от GPcH очень простенького модуля из проекта опенсорсного PDFCreator. Ну а дальше для желающих, если хотите, найдите 3 ... 5 ... 10 ... надцать различий! А про более сложные конструкции и типы данных просто "no comment". ![]() ![]() |
|
Создано: 13 марта 2011 21:25 · Личное сообщение · #9 |
|
Создано: 14 марта 2011 05:40 · Личное сообщение · #10 DrVB_5_6 пишет: А уж если есть в Вашем хозяйстве примеры читаемых исходников их есть у меня, задача получить обратнокомпилируемый исходник не стояло, так что звиняйте за отсутствие формы ![]() ![]() |
|
Создано: 14 марта 2011 14:00 · Личное сообщение · #11 Топик превратился в измерение уйцов ![]() ----- Никогда не делай то, что возможно. Стремись сделать то что невозможно впринципе! ![]() |
|
Создано: 15 марта 2011 04:54 · Поправил: sen · Личное сообщение · #12 GPcH я только ответил на DrVB_5_6 пишет: А сказки про приват слыхали, даже результаты приходилось видеть... Так себе, примитив сказка уже 10 лет как быль и тебе как никому это известно ![]() ![]() |
|
Создано: 15 марта 2011 17:37 · Поправил: DrVB_5_6 · Личное сообщение · #13 To Sen Огромное спасибо за пример, которым Вы прямо подтвердили мое высказывание о "примитиве..." Поясняю: в нескольких местах в исходнике встречаются операторы .Move 0, Y& Y& = Y& + .Height В вашем примере это выглядит так: .00535CA4/01B4: vFF78=vFF78 + vFF2C.Height .00535CD7/01E7: vFF2C.Move(0, CVar(vFF78), <>, <>) Но вообще-то это отнюдь не одно и то же, данные операторы не ассоциативны, а они почему-то местами переставлены. То что читабельно в какой-то мере, бога ради, форму вывода и представления обсуждать не собираюсь, это простая довольно рутинная задачка, не требующая знаний о том же pcode или о структуре модуля. Только вот на заборах тоже иногда пишут, даже по-русски, но каково содержание... А это вообщем-то простенький примерчик, специально его подбирал, чтоб в дебри не залезать. ISaev пишет: для реверсинга вполне читабельно, а оригинал ты никогда не вытащишь, т.к. его нет просто.... Да вообще при декомпиляции речь никогда и не должна идти об оригинале, а вот о коде, эквивалентном оригинальному, можно и нужно говорить. Как раз отсутствие такового нам выше и продемонстрировали... Для GPcH Ну а Вам вместо абсолютно пустых сентенций, следовало бы более внимательно изучить представленные мной результаты. Тогда бы Вы увидели по крайней мере пару плюх, выдаваемых версией 8.0 Вашего декомпилятора. 1). Первая же процедура в листинге VBDecompiler v.8.0: Private Sub cmdProtocol_Change(Index As Integer) '4E0A80 cmdProtocol - это CommandButton (выше у Вас в описании формы это правильно указано). Так вот, у CommandButton нет такого события, как "Change", но есть "Click", которое в этой процедуре и должно обрабатываться. Так что смело можете вносить исправления в свою базу!!! 2). Вообще-то описания Public процедур, функций, свойств и методов для форм, классов и контролов хранятся прямо в Ехешнике и Вы об этом знаете, но вот почему они у Вас не всегда корректно обрабатываются? В оригинале: Public Sub CallStackParam(ParamName$, v As Variant) а у Вас : Public Sub CallStackParam(ParamName) '4A1ECC. Позвольте полюбопытствовать, куда делся второй параметр? Так что желаю Вам успешной работы над ошибками... Я не уверен, что это все, но эти плюхи просто глаз р_э_жут... ![]() |
|
Создано: 15 марта 2011 21:18 · Личное сообщение · #14 DrVB_5_6 как называеца ваш продукт? хоть триал на 2 дня дайте? либо чет в топике не дочитал, либо вы GPcH мозг зас....ать хотите. GPcH вполне понимаю. работает человек в свободное время над долго играющем проектом, за баги респект за полемику -1 ----- Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме.... ![]() |
|
Создано: 16 марта 2011 03:18 · Личное сообщение · #15 VodoleY Отвечу за DrVB_5_6. Никто мне мозг не парит, более того я от всей души благодарен тем указаниям на баги что дает DrVB_5_6. Он крайне критически относится к качеству результатов, что не может не давать своих плодов. Единственное но - у нас разные цели. Я не ставлю задачи получить 100% рабочий листинг. Причина проста - на исправление того 1% багов в пикоде уйдет времени крайне много, а нужно это 1% клиентов декомпилятора. Потому я стараюсь находить компромисс. В любом случае, DrVB_5_6 я помню и держу на контроле анализ присланных примеров и планирую исправлять те баги (благо их немало). ----- Никогда не делай то, что возможно. Стремись сделать то что невозможно впринципе! ![]() |
|
Создано: 16 марта 2011 06:15 · Личное сообщение · #16 DrVB_5_6 да, конкретный косяк, конечно же операторы не должны быть переставлены. хорошо, когда есть оригинальный исходник с которым можно сверять результат, но неужели Вы в восстановленном коде на несколько десятков тыщ строк можете найти все то что не эквивалентно оригинальному при том что оригинального нет ? и поймите, цели у декомпиляторов бывают различны, одни хотят восстановить 99% оригинал от vb6, другим надо получить читабельность всех версий хоть в какой-то мере чтобы не пялиться в hexdump. косяки в декомпиляторах были есть и будут. ![]() |
|
Создано: 16 марта 2011 19:05 · Поправил: DrVB_5_6 · Личное сообщение · #17 То VodoleY Продукта нет и вряд ли когда-нибудь будет в любом виде в свободном пользовании. Возможны обращения в личку, хотя многого пообещать не могу. Полемики тоже нет, высказал мнение по одному вопросу, получил от sen-а вполне конкретный ответ, за который ему весьма благодарен. Кстати, в одном из первых своих постов я как раз и писал, что из всех перечисленных в данном топике продуктов, у GPcH самые продвинутые результаты. Он просто был неправ в высказывании о нашем с sen-ом обсуждении, в ином случае он получил бы эти описания багов в личном общении. Да он и сам всё написал, мне добавить нечего, скорей всего он просто не догадывался, что я появляюсь здесь под этим ником. To sen Я пытался понять состояние дел в этой интересующей меня области в настоящее время, поэтому высказал своё мнение и задавал вопросы. Согласен с Вами, что цели у программ могут быть различны, декомпиляторы могут даже менее, чем на 99% восстанавливать код, но они не должны выдавать ошибочный код, я просто показал, что вообще-то читабельность это не самое главное, все таки на первом месте должна стоять корректность результата. В этой теме достаточно вещей, когда восстановить или выбрать корректный вариант достаточно трудно и требуется серьёзный анализ, а не просто интерпретация опкодов. Я, кстати, совсем не затрагивал в обсуждении такие вещи, как "Str2Ansi("")" из Вашего листинга. Я знаю, что это такое и почему оно не должно так выглядеть, но это как раз недоработка в области pcode. Более того, я ещё не видел результатов, полученных приватными средствами, превосходящих результаты перечисленных в этом топике продуктов. неужели Вы в восстановленном коде на несколько десятков тыщ строк можете найти все то, что не эквивалентно оригинальному при том, что оригинального нет ? Я уже достаточно хорошо разобрался с пикодом, чтобы по нему сказать, как должен выглядеть оригинальный. Поэтому ответ на Ваш вопрос: "Да, могу, GPcH об этом достаточно хорошо знает". Ну а чтоб не быть голословным, в аттаче результат, позволяющий мне делать такие утверждения. Не могу сказать, что знаю всё в этой (достаточно узкой области), но то, чего я ещё не знаю, спросить, к сожалению, не у кого!!! ![]() ![]() |
|
Создано: 17 марта 2011 07:24 · Личное сообщение · #18 DrVB_5_6 незаконченный проект 10-летней давности можно называть как угодно, но надеюсь, Ваше неверие в приват развеяно ? и кстати, сколько лет потрачено Вами на достижение текущего результата ? спросить можно всегда, не всегда можно получить удовлетворительный ответ, так что спрашивайте, не стесняйтесь ![]() я тоже за корректность результата, неверное следование операторов - обычная ошибка незаконченного проекта, создающегося в боевых условиях. не поленился, перерыл архивы но-таки нашел более раннюю версию, где операторы следуют строго по коду, вероятно в последующих версиях что-то поломал. (в аттаче файл aaa без пароля) и позвольте не поверить, что Вам дано без оригинальных исходников увидеть неверное следование пары операторов в листинге на тысячи строк, и не понял при чем тут комментирование оригинальных токенов, такое и я могу. хочется увидеть действительно что-то шедевральное, требующее ниипических 'знаний о том же pcode или о структуре модуля', как для exe на Ваше усмотрение так и для файла t.uuu из аттача, он кривовато распакован, но думаю тем интересней. уже не помню откуда он взялся в моей vb-свалке, поэтому пароль на всякий случай в личке. удивите меня... ![]() ![]() |
|
Создано: 15 апреля 2011 00:02 · Личное сообщение · #19 |
|
Создано: 15 апреля 2011 11:15 · Личное сообщение · #20 |
|
Создано: 11 октября 2011 03:16 · Поправил: SReg · Личное сообщение · #21 |
|
Создано: 11 октября 2011 08:20 · Личное сообщение · #22 |
|
Создано: 12 октября 2011 03:59 · Личное сообщение · #23 |
|
Создано: 27 октября 2011 22:29 · Личное сообщение · #24 |
|
Создано: 27 октября 2011 22:40 · Личное сообщение · #25 golum пишет: чем распаковать exe которая защищена visuall basic 5/6 а кто продает такой классный протектор visuall basic 5/6? ![]() |
|
Создано: 27 октября 2011 22:44 · Поправил: golum · Личное сообщение · #26 |
|
Создано: 27 октября 2011 22:49 · Личное сообщение · #27 |
|
Создано: 27 октября 2011 23:05 · Поправил: golum · Личное сообщение · #28 sendersu пишет: с помощю ольки добратся до логина? как новичок думал побробую с помощю этого урока но не получается. программка нажав несколько раз F8 не запускается. sendersu пишет: брейк когда просит пас смотри стек - там увидишь место возврата, ставь бряк. еще раз - дальше дебаг, поиск проверки (валидация) ![]() ![]() |
|
Создано: 28 октября 2011 01:03 · Личное сообщение · #29 golum пишет: как новичок думал побробую с помощю этого урока http://reversing.do.am/publ/2-1-0-56 но не получается. программка нажав несколько раз F8 не запускается. VB исследуется слегка по другому, для начала Search for->All referenced text string, промотай ближе к концу и посмотри что-нибудь типа 'push xxxxxx строка", если есть, то тебе повезло, программа без пикода, если нет, то олька тут практически бесполезна используй декомпиллер. если первый вариант, то ищи среди тех строк свою плохую и ставь на нее бряк. ![]() |
|
Создано: 28 октября 2011 13:49 · Личное сообщение · #30 |
|
Создано: 30 октября 2011 00:41 · Личное сообщение · #31 golum пишет: а что если там море "push iexplore.exe..." строк? ничего не пойму Значит надо начинать с нуля и не морочить людям голову. Прочитайте хотя бы основы, специально же люди стараются и делают статьи для новичков. Например, начните ![]() ![]() |
<< . 1 . 2 . 3 . >> |
![]() |
eXeL@B —› Софт, инструменты —› Программы для взлома Visual Basic |