Расчехляйте свои визоры!

Тема в разделе "WASM.RESEARCH", создана пользователем Rel, 18 фев 2022.

  1. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    vb, два клика мышью и такое на экране.
    изображение_2022-02-26_144037.png
    Дотнет сначала dnspy'ем открыл, потому что почему бы нет.
     
  2. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    f13nd,

    А если строки динамик, как тогда быть ?
    Или например модуль немного изменён, так что декомпилер не пройдёт ?
     
  3. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Да по ситуации, бряком на ShowWindow или ReadConsoleA, или еще на что-нибудь, смотря что там. Процесс творческий, местами даже интересный. Даже если бы и существовало универсальное решение, это превратилось бы в пустое рутинное дрочево.
     
    Artem_N и Indy_ нравится это.
  4. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Нет, конечно, это же крекми, подразумевается, что крекми можно решить адекватным решением. Я изначально предполагал, что вы найдете нужный JMPF и пропатчите его NOP'ом (специально сделал просто очевидный NOP в ВМ, хотя ВМ само собой могла бы и без него обойтись). f13nd в первом раунде сделал то, что другие не смогли о чем я не подумал, а именно пропатчил хендлер инструкции JMPF инвертировав условие. Это сработало потому, что машина стековая, поэтому JMPF при вычисления хеша просто пропустился (хеш вообще не вычислялся), а второй JMPF (при проверке хеша) инвертировал условие. Во втором раунде я в прологе псевдо-кода вставил проверку семантики JMPF (помимо других минорных изменений, типа отсутствия свитча), то есть, что он не был пропатчен. Понятно, что это тоже можно было бы обойти патчем со счетчиком, но это такой веселый стаб, который должен был хотя бы улыбнуть. В итоге f13nd уже патчил псевдо-код, то есть решал так, как я изначально предполагал.
    --- Сообщение объединено, 26 фев 2022 ---
    Не, ну особо упоротые реверсеры могли бы и сбрутить хеш, там он по-сути 24-битный и довольно быстро должен вычисляться даже внутри ВМ.
     
  5. Thetrik

    Thetrik UA6527P

    Публикаций:
    0
    VB6 и 5 по дефолту компилят в натив так-то. Разницы нет что к примеру С что VB. Можно выставить компиляцию в P-код стековой машины, но это заметно замедляет программу. Байткод там состоит из одно или двухбайтового кода операции и операндов, передающихся в стеке. В стеке также возвращается результат. Можно даже заюзать виртуальную машину отдельно для своих нужд.
     
    VBOrion нравится это.
  6. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    В курсе.
     
  7. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    f13nd,

    А это решишь ?

    У меня меньше минуты ушло :)
     

    Вложения:

    • eset.7z
      Размер файла:
      61,5 КБ
      Просмотров:
      179
  8. galenkane

    galenkane Active Member

    Публикаций:
    0
    интересно когда индий свой инструмент выложит руками потискать на больших прогах
     
  9. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    f13nd,

    Вот есчо вроде обфускация. Попытаешься декомпилить ?
     

    Вложения:

    • lic.7z
      Размер файла:
      29,7 КБ
      Просмотров:
      173
  10. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Несколько дольше. С алфавитом из 0..9,a..z,A..Z получилось 1572480 вариантов. Это значит, что я 726180 раз могу подать заявку в антивирусники. А потом нарастить словарь другими печатными символами и задолбать их окончательно.
    --- Сообщение объединено, 27 фев 2022 ---
    А че нет-то, если да. С ходу нашел. Глазами. Вот эта длинная параша "result=..." проверка кея. Можно было бы разобраться, но лень, result=true сделал.
    изображение_2022-02-27_041010.png
     

    Вложения:

    • test.zip
      Размер файла:
      3,2 МБ
      Просмотров:
      194
    Indy_ нравится это.
  11. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    f13nd,

    Я в динамике нашёл выше пасс crap. А если крэкми протектором накрыть, раскрутишь ?
     
  12. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    А без мыши? А в жидком азоте? Все, хватит.
     
  13. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    f13nd,

    Выше все семплы без какой либо защиты, как раз интересно то где защита имеется.
     
  14. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Кому интересно? Мамкиным заливателям вареза? Протекторы это дрочево.
     
  15. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    f13nd,

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

    Вот этот глянул, стандарт:

    scr.png

    Декомпиль пройдёт ?
     

    Вложения:

    • c9.7z
      Размер файла:
      198 КБ
      Просмотров:
      162
  16. ormoulu

    ormoulu Well-Known Member

    Публикаций:
    0
    Инде, а как ваш софт в динамике строки с паролями находит? Другу надо :blush:
     
  17. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    ormoulu,

    Он не ищет строки, с чего ты решил что там поиск ?
     
  18. ormoulu

    ormoulu Well-Known Member

    Публикаций:
    0
    Как-то и мысли не было, что там поиск, хотя...

    Попытаюсь перефразировать: как ваш софт определяет строку пароля.
     
  19. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Тут нашёл много семплов.

    ormoulu,

    Смотри пример.

    Строится кодовая карта и далее выводятся ветвления, которых в карте нет:

    1.png

    Далее если окружение посмотреть, то иногда можно найти пароли:

    2.png
    --- Сообщение объединено, 28 фев 2022 ---
    execrypt

    scr.png

    - первое с конца ветвление, следующее за сравнением 2-х регистров.
    --- Сообщение объединено, 28 фев 2022 ---
    pecompat

    scr.png

    f13nd,
    > Протекторы это дрочево.

    Вручную может быть :)
     

    Вложения:

    • arm.7z
      Размер файла:
      481,5 КБ
      Просмотров:
      188
    • exec.7z
      Размер файла:
      87,1 КБ
      Просмотров:
      181
    • pec.7z
      Размер файла:
      433,9 КБ
      Просмотров:
      185
  20. ormoulu

    ormoulu Well-Known Member

    Публикаций:
    0
    Вручную?

    А можно ещё поинтересоваться, что есть в данном контексте кодовая карта? Просто в общепринятом это довольно высокоуровневая вещь.

    Подозреваю что нечто вроде динамического покрытия (dynamic code coverage), верно?