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

Discussion in 'WASM.RESEARCH' started by Rel, Feb 18, 2022.

  1. Rel

    Rel Well-Known Member

    Blog Posts:
    2
    Joined:
    Dec 11, 2008
    Messages:
    5,317
    Друзья, я тут немного упарываюсь виртуализацией (в плане реализации ЯП и обфускации, а не в плане всяких Виртуалбоксов или ВмВари), в качестве упражнения сделал небольшую крекмишу. Она спрашивает пароль у пользователя и проверяет его по хешу, сверяя с константой. На этапе компиляции процедура, спрашивающая и проверяющая пароль пользователя, компилируется в байт-код, а узлы AST-дерева процедуры подменяются на вызов ВМ с передачей байт-кода в нее. Таким образом, виртуализация происходит на этапе компиляции, в принципе без серьезных изменений оригинального кода. Сам байт-код немного рандомизируется, немного разбавляется мусорным кодом (собрал вам по несколько семплов для каждого цпу и системы, чтобы можно было посмотреть рандомизацию). Сам код ВМ для простоты не обфусцируется, всегда (во всех семплах) лежит в одном и том же месте, опять же, чтобы было проще смотреть. Если кому интересно посмотреть и потыкать, милости прошу. Я думаю, что проще всего решить крекмишу (если кому интересно это сделать), занопив одну инструкцию в байт-коде (заботливо сделал вам специальный NOP опкод для этого, хотя ВМ вполне обошлась бы без него).

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

    ЗЫ: на спецовую спецовость семплы не претендуют, таки я же магл, сами понимаете, чем богаты, тем и рады.

    ЗЗЫ: наверное, могут быть баги, я, конечно, протестил, но вендовую часть гонял под вайном, так что хз.
     

    Attached Files:

    Last edited: Feb 18, 2022
    VBOrion, Aiks and Thetrik like this.
  2. Indy_

    Indy_ Well-Known Member

    Blog Posts:
    4
    Joined:
    Apr 29, 2011
    Messages:
    4,788
    Rel,

    На кл отпиши там сейчас школьная активность, втыкают отладчиком во всё подряд. Юзер отладчиком.
    --- Сообщение объединено, Feb 18, 2022 ---
    Пришлось долго искать, тут функция поиска не работает.

    Вот тема тс https://wasm.in/threads/protektor-dlja-net-pe.33289/#post-409560 где он пытался что то с протектором сделать, я кучу времени потратил на разбор, в конце оказалось что он даже и не пытался решить задачу которую решить невозможно. Спасибо хотя бы сказал, но увы.
     
  3. Rel

    Rel Well-Known Member

    Blog Posts:
    2
    Joined:
    Dec 11, 2008
    Messages:
    5,317
    Не знаю, регаться там ради одной темы, наверное, особо смысла не имеет.

    Одно к другому вообще не имеет никакого отношения, но я рад, что ты научился пользоваться поиском.
     
  4. Indy_

    Indy_ Well-Known Member

    Blog Posts:
    4
    Joined:
    Apr 29, 2011
    Messages:
    4,788
    Rel,

    Тебе понравится там твоего уровня реверс и всякие крэкми которые можно пачками решать по покрытию. Заодно там неплохо их потролишь, рекомендую туда попиши. Очень интересно посмотреть на это.
     
  5. f13nd

    f13nd Well-Known Member

    Blog Posts:
    0
    Joined:
    Jun 22, 2009
    Messages:
    2,020
    Ого, за несколько лет каментов на каменты какие-то признаки творчества. Хз что тут покрывать визорами. Втыкается отладчиком логбряк на опкоды шайтан-машины (в win32_1.exe .00F73347), при помощи цветных закладок выясняется, что опкод 0x5D используется единожды примерно под конец. Конструкция:
    Code (Text):
    1. .00F7387C  CMP EDX,EAX
    2. .00F7387E  SETE DL
    прям таки напрашивается на xor edx,edx/inc edx. И как бы результат предсказуемый успех.
     
    Indy_, TrashGen and M0rg0t like this.
  6. Artem_N

    Artem_N Artem N

    Blog Posts:
    0
    Joined:
    Mar 1, 2009
    Messages:
    74
    Ты нам-то не гони...
    Проблема лабы заключается в том, что там нет контента и обсуждений всякого интересного. А то, что люди обсуждают битхаки старого софта - это так, мелочи.
     
  7. Indy_

    Indy_ Well-Known Member

    Blog Posts:
    4
    Joined:
    Apr 29, 2011
    Messages:
    4,788
    f13nd

    5d.png f13nd,

    > опкод 0x5D

    Может я не правильно кодировку понял ?
    --- Сообщение объединено, Feb 19, 2022 ---
    Artem_N,

    > Ты нам-то не гони...

    В чём же мне гнать". Я этого столько порешал что тебе даже во сне не прийдёт. Давай сам, покажи что ты что то можешь.
     
  8. f13nd

    f13nd Well-Known Member

    Blog Posts:
    0
    Joined:
    Jun 22, 2009
    Messages:
    2,020
    Имелся в виду опкод псевдокода, не проца. Там заурядная композиция из выборки опкода и кейса с обработчиками, легко узнаваемая. Даже разбираться в самом псевдокоде не надо: команда, сравнивающая хеши, только под это и используется.
     
    Last edited: Feb 19, 2022
    TrashGen likes this.
  9. Indy_

    Indy_ Well-Known Member

    Blog Posts:
    4
    Joined:
    Apr 29, 2011
    Messages:
    4,788
    f13nd,

    > Там заурядная композиция

    Там это где, в сабж семпле ?

    А почему на своём ресурсе крэкми школьников не разбираешь и ничего не отписываешь ?

    Там же их много, обьясни плз. У вас там ведь своя команда.
     
  10. f13nd

    f13nd Well-Known Member

    Blog Posts:
    0
    Joined:
    Jun 22, 2009
    Messages:
    2,020
    Черным по-русски же написано:
     
  11. Artem_N

    Artem_N Artem N

    Blog Posts:
    0
    Joined:
    Mar 1, 2009
    Messages:
    74
    Ты гонишь в том плане, что тебе всё не нравится. Вот каждый первый форум для тебя - это нубы, "твой уровень" и вообще дураки. Вот что ты на новый сраклаб волну гонишь, например? Что тебе там ТАК СИЛЬНО не нравится?
    У меня к ним тоже как бы "претензии" есть: отсутствие контента, мёртвость, куча ссылок на забугор без перевода и всё такое. Да, был момент, когда я там немного с DX0 поцапался. Но мне мягко намекнули, что кибербулинг - не наш путь и мну успокоился, не лезу боле во всё это. В то же время, не мешаю обсуждать людям интересные им темы. И не тиражирую на весь рунет, что новый сраклаб - це днище. В отличие от.

    Upd: вот тема на дамаге: /threads/63176/ - я скачал, прочитал. У меня в голове не укладывается как подобное можно продавать и покупать. Но заметь: народ лайкает, пишет что-то в ответ...
     
    Last edited: Feb 19, 2022
  12. f13nd

    f13nd Well-Known Member

    Blog Posts:
    0
    Joined:
    Jun 22, 2009
    Messages:
    2,020
    Ох ты ж блин, ехешник с релоками. Вобщем IMAGE_BASE+3347 - кейс с обработчиками.
     
  13. Indy_

    Indy_ Well-Known Member

    Blog Posts:
    4
    Joined:
    Apr 29, 2011
    Messages:
    4,788
    Artem_N,

    > Что тебе там ТАК СИЛЬНО не нравится?

    Где на кл учитывая этот ник DX0 - так у меня вообще не то что эмоции, а когнитивная система начинает ломаться. Школьник с понтами поломал форум это ппц, При этом все там это понимают. Я это понять не могу. Я пол жизни положил на это всё, а там ебать школьник с отладчиком юзермод.)))
     
  14. f13nd

    f13nd Well-Known Member

    Blog Posts:
    0
    Joined:
    Jun 22, 2009
    Messages:
    2,020
    Он почти как ты, только без 10 лет наяривания на ядро нт. Такие же спешиал олимпиксы устраивает: вон говорит смотри 5-байтный sib нарисовал на картинке, всё про интел знаю.
     
  15. Rel

    Rel Well-Known Member

    Blog Posts:
    2
    Joined:
    Dec 11, 2008
    Messages:
    5,317
    Этот тот, о которым ты говорил, что он троллит получше меня? До сих пор не могу поверить, что меня кто-то превзошел.

    Как ты думаешь, интереснее всего было бы скрыть огромный свитч? Зачехлить его в хеш-таблицу указателей на обработчики? Там номера опкодов рандомные, можно было бы массив из 256 указателей создать, те, которые соответствуют действующим опкодам заполнить указателями на обработчики, те, которые не соответствуют никакому из опкодов можно заполнить нагенеренными мусорными обработчиками.
     
  16. f13nd

    f13nd Well-Known Member

    Blog Posts:
    0
    Joined:
    Jun 22, 2009
    Messages:
    2,020
    Если ты совсем не видишь где и какие возможности ты оставляешь реверсёру, то пожалуй вообще не стоит пениться. Побольше бесполезного рандома, чтоб всё было в цэшной парадигме мышления и главное чтоб одна-единственная булева переменная отличала успех от неуспеха. В конечном счете все равно программные протекторы гавно, какой смысл стараться?
     
    TrashGen likes this.
  17. Indy_

    Indy_ Well-Known Member

    Blog Posts:
    4
    Joined:
    Apr 29, 2011
    Messages:
    4,788
    f13nd,

    > мотри 5-байтный sib нарисовал на картинке,''

    Да, по какой то причине всплеск по школоте прошёл. У вас там какие то нуби и вот у Rel, тоже. По мойму эти все ресурсы подлежат выпилу, так было и будет.

    Ты тут общаешься, не там у вас просто потому что ты это понимаешь, а во вторых понимаешь сам уровень. Я перед тем как от туда уйти сказал что это не уровень в такой команде быть, впрочем как и на xss. Когда у школьника эйфория ну тогда увы, там обсуждать нечего.
     
  18. Rel

    Rel Well-Known Member

    Blog Posts:
    2
    Joined:
    Dec 11, 2008
    Messages:
    5,317
    Как какой смысл? По фану, такое бывает, когда есть мотивация. Не сидеть же на жопе ровно и делать вид, что все задачи решил и теперь ничего не хочешь от жизни.

    Ну окей, как бы ты сделал обработку условных переходов в байт-коде в принципе? Тут простая стековая ВМ, которая делает условный переход в зависимости от булевого значения на верхушке стека.
    --- Сообщение объединено, Feb 19, 2022 ---
    Главное, чтобы Индий не подлежал самовыпилу, а ресурсы приходят и уходят, это нормально. Ну и важно, чтобы ресурсы не были "аверскими и ментовскими".
     
    Research likes this.
  19. f13nd

    f13nd Well-Known Member

    Blog Posts:
    0
    Joined:
    Jun 22, 2009
    Messages:
    2,020
    Я и не вспомню щас сколько раз ты уходил со старого кл, васм у тебя был петушиным ресурсом и вообще всё вокруг гадко и противно. Вот именно такое точно было и вероятно даже будет.
     
  20. ormoulu

    ormoulu Well-Known Member

    Blog Posts:
    0
    Joined:
    Jan 24, 2011
    Messages:
    1,206
    Можно поинтересоваться, в чем вообще практический смысл сабжевой задачи? ТС понравилось ловить восторги детворы с иксесеса? Хотелось уесть Инде? Или есть более нормальное применение?
     
    Indy_ likes this.