Друзья, я тут немного упарываюсь виртуализацией (в плане реализации ЯП и обфускации, а не в плане всяких Виртуалбоксов или ВмВари), в качестве упражнения сделал небольшую крекмишу. Она спрашивает пароль у пользователя и проверяет его по хешу, сверяя с константой. На этапе компиляции процедура, спрашивающая и проверяющая пароль пользователя, компилируется в байт-код, а узлы AST-дерева процедуры подменяются на вызов ВМ с передачей байт-кода в нее. Таким образом, виртуализация происходит на этапе компиляции, в принципе без серьезных изменений оригинального кода. Сам байт-код немного рандомизируется, немного разбавляется мусорным кодом (собрал вам по несколько семплов для каждого цпу и системы, чтобы можно было посмотреть рандомизацию). Сам код ВМ для простоты не обфусцируется, всегда (во всех семплах) лежит в одном и том же месте, опять же, чтобы было проще смотреть. Если кому интересно посмотреть и потыкать, милости прошу. Я думаю, что проще всего решить крекмишу (если кому интересно это сделать), занопив одну инструкцию в байт-коде (заботливо сделал вам специальный NOP опкод для этого, хотя ВМ вполне обошлась бы без него). От сабжа хочу услышать мнение спецов в реверсинге, типа что понравилось, что не понравилось в этих семплах. Ну и можно в принципе потереть за виртуализацию в плане обфускации, послушать поучительных историй о том, как спецовые реверсеры подходят к анализу/взлому кода закрытого виртуализацией, какие защиты и чем элитные, а чем нет и так далее. ЗЫ: на спецовую спецовость семплы не претендуют, таки я же магл, сами понимаете, чем богаты, тем и рады. ЗЗЫ: наверное, могут быть баги, я, конечно, протестил, но вендовую часть гонял под вайном, так что хз.
Rel, На кл отпиши там сейчас школьная активность, втыкают отладчиком во всё подряд. Юзер отладчиком. --- Сообщение объединено, 18 фев 2022 --- Пришлось долго искать, тут функция поиска не работает. Вот тема тс https://wasm.in/threads/protektor-dlja-net-pe.33289/#post-409560 где он пытался что то с протектором сделать, я кучу времени потратил на разбор, в конце оказалось что он даже и не пытался решить задачу которую решить невозможно. Спасибо хотя бы сказал, но увы.
Не знаю, регаться там ради одной темы, наверное, особо смысла не имеет. Одно к другому вообще не имеет никакого отношения, но я рад, что ты научился пользоваться поиском.
Rel, Тебе понравится там твоего уровня реверс и всякие крэкми которые можно пачками решать по покрытию. Заодно там неплохо их потролишь, рекомендую туда попиши. Очень интересно посмотреть на это.
Ого, за несколько лет каментов на каменты какие-то признаки творчества. Хз что тут покрывать визорами. Втыкается отладчиком логбряк на опкоды шайтан-машины (в win32_1.exe .00F73347), при помощи цветных закладок выясняется, что опкод 0x5D используется единожды примерно под конец. Конструкция: Код (Text): .00F7387C CMP EDX,EAX .00F7387E SETE DL прям таки напрашивается на xor edx,edx/inc edx. И как бы результат предсказуемый успех.
Ты нам-то не гони... Проблема лабы заключается в том, что там нет контента и обсуждений всякого интересного. А то, что люди обсуждают битхаки старого софта - это так, мелочи.
f13nd f13nd, > опкод 0x5D Может я не правильно кодировку понял ? --- Сообщение объединено, 19 фев 2022 --- Artem_N, > Ты нам-то не гони... В чём же мне гнать". Я этого столько порешал что тебе даже во сне не прийдёт. Давай сам, покажи что ты что то можешь.
Имелся в виду опкод псевдокода, не проца. Там заурядная композиция из выборки опкода и кейса с обработчиками, легко узнаваемая. Даже разбираться в самом псевдокоде не надо: команда, сравнивающая хеши, только под это и используется.
f13nd, > Там заурядная композиция Там это где, в сабж семпле ? А почему на своём ресурсе крэкми школьников не разбираешь и ничего не отписываешь ? Там же их много, обьясни плз. У вас там ведь своя команда.
Ты гонишь в том плане, что тебе всё не нравится. Вот каждый первый форум для тебя - это нубы, "твой уровень" и вообще дураки. Вот что ты на новый сраклаб волну гонишь, например? Что тебе там ТАК СИЛЬНО не нравится? У меня к ним тоже как бы "претензии" есть: отсутствие контента, мёртвость, куча ссылок на забугор без перевода и всё такое. Да, был момент, когда я там немного с DX0 поцапался. Но мне мягко намекнули, что кибербулинг - не наш путь и мну успокоился, не лезу боле во всё это. В то же время, не мешаю обсуждать людям интересные им темы. И не тиражирую на весь рунет, что новый сраклаб - це днище. В отличие от. Upd: вот тема на дамаге: /threads/63176/ - я скачал, прочитал. У меня в голове не укладывается как подобное можно продавать и покупать. Но заметь: народ лайкает, пишет что-то в ответ...
Artem_N, > Что тебе там ТАК СИЛЬНО не нравится? Где на кл учитывая этот ник DX0 - так у меня вообще не то что эмоции, а когнитивная система начинает ломаться. Школьник с понтами поломал форум это ппц, При этом все там это понимают. Я это понять не могу. Я пол жизни положил на это всё, а там ебать школьник с отладчиком юзермод.)))
Он почти как ты, только без 10 лет наяривания на ядро нт. Такие же спешиал олимпиксы устраивает: вон говорит смотри 5-байтный sib нарисовал на картинке, всё про интел знаю.
Этот тот, о которым ты говорил, что он троллит получше меня? До сих пор не могу поверить, что меня кто-то превзошел. Как ты думаешь, интереснее всего было бы скрыть огромный свитч? Зачехлить его в хеш-таблицу указателей на обработчики? Там номера опкодов рандомные, можно было бы массив из 256 указателей создать, те, которые соответствуют действующим опкодам заполнить указателями на обработчики, те, которые не соответствуют никакому из опкодов можно заполнить нагенеренными мусорными обработчиками.
Если ты совсем не видишь где и какие возможности ты оставляешь реверсёру, то пожалуй вообще не стоит пениться. Побольше бесполезного рандома, чтоб всё было в цэшной парадигме мышления и главное чтоб одна-единственная булева переменная отличала успех от неуспеха. В конечном счете все равно программные протекторы гавно, какой смысл стараться?
f13nd, > мотри 5-байтный sib нарисовал на картинке,'' Да, по какой то причине всплеск по школоте прошёл. У вас там какие то нуби и вот у Rel, тоже. По мойму эти все ресурсы подлежат выпилу, так было и будет. Ты тут общаешься, не там у вас просто потому что ты это понимаешь, а во вторых понимаешь сам уровень. Я перед тем как от туда уйти сказал что это не уровень в такой команде быть, впрочем как и на xss. Когда у школьника эйфория ну тогда увы, там обсуждать нечего.
Как какой смысл? По фану, такое бывает, когда есть мотивация. Не сидеть же на жопе ровно и делать вид, что все задачи решил и теперь ничего не хочешь от жизни. Ну окей, как бы ты сделал обработку условных переходов в байт-коде в принципе? Тут простая стековая ВМ, которая делает условный переход в зависимости от булевого значения на верхушке стека. --- Сообщение объединено, 19 фев 2022 --- Главное, чтобы Индий не подлежал самовыпилу, а ресурсы приходят и уходят, это нормально. Ну и важно, чтобы ресурсы не были "аверскими и ментовскими".
Я и не вспомню щас сколько раз ты уходил со старого кл, васм у тебя был петушиным ресурсом и вообще всё вокруг гадко и противно. Вот именно такое точно было и вероятно даже будет.
Можно поинтересоваться, в чем вообще практический смысл сабжевой задачи? ТС понравилось ловить восторги детворы с иксесеса? Хотелось уесть Инде? Или есть более нормальное применение?