1. Если вы только начинаете программировать на ассемблере и не знаете с чего начать, тогда попробуйте среду разработки ASM Visual IDE
    (c) на правах рекламы
    Скрыть объявление

Антидамп

Тема в разделе "WASM.HEAP", создана пользователем Rel, 31 дек 2020.

Статус темы:
Закрыта.
  1. Carnival

    Carnival New Member

    Публикаций:
    0
    Регистрация:
    31 дек 2020
    Сообщения:
    26
    Адрес:
    ::1/128
    Это когда ты увидел впервые примитив вмп, а именно алгоритм ротации ключа и в слезах прибежал на форум спрашивать как это свернуть? Да было такое, только сворачивать там было нечего потому что это случайно-генерируемый алгоритм, да и не зачем.
     
  2. Aiks

    Aiks Member

    Публикаций:
    0
    Регистрация:
    16 апр 2017
    Сообщения:
    110
    Адрес:
    Украина
    Просто нужно с умом подходить к защите приложения. Для примера, если ты виртуализируешь код отрисовки кадров - будь готов получить просадку FPS. Виртуализация кода - это инструмент. А как он будет применяться зависит от человека использующего этот инструмент. Также как и с языком программирования. Если человек написал тормознутую программу на C++, то это не значит что C++ плохой.
     
  3. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.602
    Carnival,

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

    > слезах прибежал на форум спрашивать как это свернуть?

    Не в слезах и не прибежал и не спрашивать, а обсудить https://archivevx.net/exelab/f/pages/action=vthread&forum=6&topic=25760&page=0.html

    Оказалось что задача свертки в принципе не решаема. Но всегда есть иной путь - выборки.

    > сворачивать там было нечего

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

    В данном случае вопрос в другом, кто ты такой с 8 сообщениями и не известным ником. Десяток в таком стиле вытянешь потом тебя забанят и пойдёшь своё мнение обосновывать на мёртвый клон кл :sarcastic:
     
  4. Carnival

    Carnival New Member

    Публикаций:
    0
    Регистрация:
    31 дек 2020
    Сообщения:
    26
    Адрес:
    ::1/128
    Глупости, решается оптимизирующим компилятором, так было 10 лет назад, и до сих пор осталось.
    А выборка это исключительно твоя выдумка, сперва докажи мне что она решает, пиши статьи, выкладывай код, до тех пор для меня это пустой звук.
    Так сворачивается или свертка нерешаема? Твоя проблема в том, что ты прежде чем делаешь болтаешь, так же было с вмп, на весь форум ты тогда раструбил что его ковыряешь, но тут же создал тему с глупейшим вопросом как свернуть алгоритм который нужно вместо этого эмулировать.
    Нечего там выделять, обфускация примитивов абсолютно простая, достаточно всего лишь DCE и совмещения одинаковых ветвей, а уже декомпиляция решается трансляцией в промежуточный язык с последующей оптимизацией. Причем решается не на словах как в твоем случае, а на практике.
    Я уже боюсь, для этого тебе нужно быть кем-то больше шута.
     
  5. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    5.443
    а зачем фигнёй страдать?:) == если тебе нужно защитить свою прогу от крякеров, так это просто делается == делаешь несколько слоёв таймеров/тригеров и крякеры ломанут первый слой (особо пытливые дойдут до второго, а дальше публике тупо влом копаться:crazy:). в итоге крякнутая прога тихо-мирно будет падать + предоставляй бесплатно минорные патчи для своих клиентов. С одной стороны латаешь некоторые ошибки/тормоза в коде, а с другой обновляешь тригеры лицухе. С онлайн прогами, так совсем всё хорошо == левую активность можно отслеживать чрез профили юзверей + обновлять протокол связи, что обрушает читы да кряки на стороне клиентов.
     
  6. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    797
    А что это? на примере.
     
  7. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    797
    насколько это близко к логике структуры данных radix tree?




    или сформулирую иначе, какая структура данных лежит в основе эффективной реализации такой работы "совмещения одинаковых ветвей"?
     
  8. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.602
    Carnival,

    > Так сворачивается или свертка нерешаема?

    https://archivevx.net/exelab/f/pages/action=vthread&forum=6&topic=25760&page=0.html

    Не всё можно свернуть. Можно сделать это лишь частично в случае вмп в статике. Обычно любой морф свернуть можно полностью. Там проблема в математике.

    > А выборка это исключительно твоя выдумка

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

    > сперва докажи мне что она решает, пиши статьи, выкладывай код

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

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

    Была даже такая идея https://archivevx.net/exelab/f/pages/action=vthread&forum=2&topic=22109&page=0.html#23

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

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

    q2e74,

    > А что это? на примере.

    Это упрощение потока инструкций после морфа. Тоесть одна инструкция отморфлена до сотни примитивов, выполняющих то же самое, это нужно почистить сократить привести к исходной инструкции, те свернуть.
     
    q2e74 нравится это.
  9. Carnival

    Carnival New Member

    Публикаций:
    0
    Регистрация:
    31 дек 2020
    Сообщения:
    26
    Адрес:
    ::1/128
    Все проще, во время мутации кода примитивов вмп может применить в случайном месте следующее: берется некоторый кусочек асм кода, дублируется два раза, в оригинальном месте идет два прыжка на первый блок и на вторую копию, оба блока выходят там где завершался оригинальный код, затем оба блока мутируются, из-за рандома они будут выглядеть по разному. Править это очень просто, после оптимизаций у тебя будет два одинаковых блока на которые ведут противоположные прыжки (например jz, jnz) и выходят в одном месте, поэтому их нужно объединить.

    000000018040CC23 mov al, [rsi]
    000000018040CC33 sub al, bl
    000000018040C032 dec al
    000000018040C045 sub rsi, 0FFFFFFFFFFFFFFFFh
    000000018040D0CE xor al, 0A3h
    000000018040D0DC inc al
    000000018040D0EE sub bl, al
    000000018040D0FB movzx rax, al
    000000018040D107 mov rcx, [r12+rax*8]
    Аналогичный код в слезах пытался свернуть инди, здесь из rsi читается зашифрованный байт примитива, затем расшифровывается текущем ключом в rbx (bl используется), так же видно что rsi вычитается на -1, значит лента идет вперед, ключ ленты так же модифицируется об вытащенное значение для проверки целостности, затем в rcx в конце читается адрес самого примитива из таблицы r12. Это пример из старенького вмп, в новом в ленте хранится сразу смещение примитива без таблицы, и у примитивов вот этот стаб у каждого свой.

    Мне твой трэш не нужен, у меня были наброски декомпилятора вмп достаточного для покрытия моих нужд, еще когда ты о нем и слова не протрепался.
     
    q2e74 нравится это.
  10. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    4.404
    Это все потому, что ты смог, а они не смогли, мы знаем, мог бы и не напоминать.
     
  11. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.602
    Carnival,

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

    Так ты главное не понимаешь. Для декомпиляции необходимо вручную реверсить, это не может сделать автоматика её нет. А для решения быстрого как раз и нужна автоматика, это не свёртка а работа в динамике и не с каким то одним криптором, а на потоке с разными. Вот тут рядом тема по KPP, они пытаются извраты использовать, так как выборки нет, нет инструмента мотора, иначе нет смысла что там крипта - подменил выборку и всё защиты нет.
     
  12. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    797
    не хочу никого деанонить, но ой как не осторожно прозвучало. фу таким быть.
     
  13. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.602
    q2e74,

    > не хочу никого деанонить

    Ты и не можешь, так как ничего ни про кого не знаешь. А если такие мысли мотивы, то уже маркернут. Далее с тобой диалога не будет.)
     
  14. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    797
    Что это значит? :) типа если бы сейчас знал, то значит когда-то тогда смог? :) поднял настроение, спасибо :)

    но то, что не знаю ни про кого - это факт. нахер мне эта санта-барбара нужна ? :)
     
  15. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.602
    q2e74,

    > не хочу никого деанонить

    Ты это написал с мотивом как будто у тебя инфа есть. Давай деанонь всем пох. Не важно что её нет, главное мотив - была бы инфа слил бы всех.
     
  16. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    797
    Indy_, странная реакция. я четко указал на то, что из-за небрежности ли, или еще чего, но связи между аккаунтами по слову "стаб" теперь проброшены. Кроме тебя, не так много кто его произносил. Допустим, это не ты, хотя был бы хороший мем :) но я не знаю, вот .... Понадеется человек на учетку, что типа нигде не светилась и спалиться из-за глупости. Вот тебе и весь мотив :) Да вот сам прежде чем склоки множить поищи сообщения по этому слову. Кто в авторах?
     
  17. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    4.602
    q2e74,

    С тобой всё, мент на форуме.
     
  18. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    4.404
    О хоспаде, неуловимый Джо снова за старое взялся. Не переживай, я тебя уже давно сдеанонил, всю инфу про тебя собрал из дампа вирустека, скоро за тобой приедут мои белорусские коллеги и тебя набутылят, ты же этого так ждешь.
     
  19. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    797
    Indy_, не, не угодал, я вне этих взаимоотношений. просто мне знакома кухня как одной, так и другой стороны.
    Я за то, что бы в серой зоне была пивнушка, в которой люди могли трепаться и болтать. А уж кто кого - происходило там, где и происходит.
    --- Сообщение объединено, 17 янв 2021 ---
    Rel, тут какой момент, я же не ему это писал, он то че переживать стал?
     
  20. R81...

    R81... Member

    Публикаций:
    0
    Регистрация:
    1 фев 2020
    Сообщения:
    54
    Если Байден сбросит бомбу.
    На WASM ответ готов -
    Пост ему... еще с апломбом:
    "Свертка... ядерных грибов".
     
    TrashGen нравится это.
Статус темы:
Закрыта.