я запутался

Тема в разделе "WASM.BEGINNERS", создана пользователем Acrobat, 1 мар 2010.

  1. Acrobat

    Acrobat New Member

    Публикаций:
    0
    Регистрация:
    1 мар 2010
    Сообщения:
    23
    перебирая куча исходников крипторов... (90% не компилятся даже, компилятор masm) с трудом представил себе самый простой алгоритм защиты.
    в тупик меня завела другая проблема, когда я добавляю новую секцию, туда нужно что то впихнуть (код распаковщика), как его сгенерировать ?
    естественно с ОЕР, для начала хотя б сам код возврата на ОЕР
     
  2. GoldFinch

    GoldFinch New Member

    Публикаций:
    0
    Регистрация:
    29 мар 2008
    Сообщения:
    1.775
    WASM.CRYPTO это значит раздел про крипторы?
     
  3. Acrobat

    Acrobat New Member

    Публикаций:
    0
    Регистрация:
    1 мар 2010
    Сообщения:
    23
    дай ссылку на правельную ветку, темку удалите тогда
     
  4. UnderCtl

    UnderCtl New Member

    Публикаций:
    0
    Регистрация:
    12 фев 2010
    Сообщения:
    16
    > естественно с ОЕР, для начала хотя б сам код возврата на ОЕР

    Эмм, jmp <OEP> ?

    > дай ссылку на правельную ветку,

    думаю, на васме нет веток про крипторы =\
     
  5. djmans

    djmans New Member

    Публикаций:
    0
    Регистрация:
    27 дек 2006
    Сообщения:
    312
    >как его сгенерировать ?
    генератором кода... типо masm, fasm...
     
  6. Acrobat

    Acrobat New Member

    Публикаций:
    0
    Регистрация:
    1 мар 2010
    Сообщения:
    23
    как реализовать джамп, открытам текстом же не написать ) Оп коды ?
     
  7. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    Элементрно Ватсон. Вы путаете/не знаете, что есть криптор "сидящий" в теле защищенной программы и программа-криптор, которая его туда "сажает". Собственно прога и не обязательна : вы может в любом хекс-редакторе с дизассемблером ручками его добавить. Тоже самое можно сделать программно. Для этого нужно хорошо понимать структуру PE-EXE. Ну а чтоб чужое компилировать, надо самому изучить ассемблер, т.к. обычно в статьях дается только "тело" криптовщика и нужные заголовки/хвосты надо добавлять :)
     
  8. Acrobat

    Acrobat New Member

    Публикаций:
    0
    Регистрация:
    1 мар 2010
    Сообщения:
    23
    дак вот пробую сначало ручками добавить новую цекцию, ручками меняю EP, размер секции естественно с учётом выравнивания, дак вот ступор, где взять сам бинарный код, естественно масм просто джамп не скомпилирует, вот как я сюда попал)
    пересмотрел исходники, так там есть сразу и алгоритм "шыфрования" (пусть xor) и сразу же обратный алгоритм, как я понял програма копирует из себя код декриптора ? (поправте если не прав, если оно так то как его достать, желательно не пример а сам алгоритм)
    сейчас моя цель сделать программу, которая будет добавлять в ехе файл цекцию с джампом на оригинальный ЕР (вроде должно работать) а уже дальше мудрить с антиотладкой, тд.тп.
     
  9. l_inc

    l_inc New Member

    Публикаций:
    0
    Регистрация:
    29 сен 2005
    Сообщения:
    2.566
    Acrobat
    Если на данный момент проблема только в прыжке, то вот.
     
  10. Acrobat

    Acrobat New Member

    Публикаций:
    0
    Регистрация:
    1 мар 2010
    Сообщения:
    23
    утро вечера мудренее, вот что получилось
    1. оригинальный файл (секции) http://piccy.info/view/580a777c8f4729e9abf3235f8f36a4c2/
    2. ОЕР - 9EC68 (rva) гдето в средине секции
    3. добавил новую секцию (.mike)
    3. вставил туда джамп, ждамп получился такой 68 68 EC 49 00 C3 в дебагере получилось PUSH .... RET (вроде как всё нормально)
    4. EP исправил на Virtual Offset новой секции (пробовал методом тыка) результат: http://i.piccy.info/i4/90/51/238ce5d500f4389cc49d489c6780.png
    5. запустил обрадовался, работает )

    проблема появилась другая, когда в дебагер кидаю оригинальный файл, все отлично, когда кидаю новый файл.... получаю окошко
    [​IMG]
    но файл всё равно работает, что я сделал не правильно ? (скорее всего что то забыл еще подправить ?)
     
  11. FatMoon

    FatMoon New Member

    Публикаций:
    0
    Регистрация:
    28 ноя 2002
    Сообщения:
    954
    Адрес:
    Russia
    Это нормально. Подавляющее большинство сжатых или прошедших через крипторы файлов ведут себя точно так же.
     
  12. pr0mix

    pr0mix New Member

    Публикаций:
    0
    Регистрация:
    30 июл 2008
    Сообщения:
    107
    но файл всё равно работает, что я сделал не правильно ? (скорее всего что то забыл еще подправить ?)
    точно не скажу, но возможно, EP перебит на секцию, отличную от (1-ой?) кодовой секции, либо посмотри поля BaseOfCode, BaseOfData и т.п. поля - должны быть скорректированы верно. Пока все, дальше будет видно.
     
  13. Sunzer

    Sunzer Member

    Публикаций:
    0
    Регистрация:
    25 май 2008
    Сообщения:
    256
    А PE заголовок перенастраивать не пробывал?
     
  14. Acrobat

    Acrobat New Member

    Публикаций:
    0
    Регистрация:
    1 мар 2010
    Сообщения:
    23
    я так и не разобрал что там перенастраивать, пробовал увеличивать SizeOfCode но ничего не изменилось
    интересует алгоритм добавление своих API (без примеров, просто схема на словах)
    пробую перед джампом всунуть меседж бокс, только вот сразу вопрос что нужно брать в качестве вводных параметров, нужно еще в DATA добавить строчки (caption, message) ?
     
  15. Flint_ta

    Flint_ta New Member

    Публикаций:
    0
    Регистрация:
    25 май 2008
    Сообщения:
    312
    Не обязательно в data, можно и в свою же секцию. Для добавления апи можно расширить существующую директорию импорта, но это не айс, лучше создать новую в новой секции, туда "скопипастить" старую (естественно пофиксить все оффсеты придется) + добавить messagebox.
    P.S. А вообще тут кажется сорцы тулзы есть Code Snippet Creator от Икзелиона, она как раз добавляет импорт к уже существующему.
     
  16. l_inc

    l_inc New Member

    Публикаций:
    0
    Регистрация:
    29 сен 2005
    Сообщения:
    2.566
    Acrobat
    А с увеличением SizeOfCode захватили свою секцию с новой EP? Потому как Olly как раз так и проверяет это: попадает ли хоть один байт секции с EP в пределы между BaseOfCode и BaseOfCode + SizeOfCode.
     
  17. pr0mix

    pr0mix New Member

    Публикаций:
    0
    Регистрация:
    30 июл 2008
    Сообщения:
    107
    если на примере криптора - то гораздо лучше создать свой файл максимально похожим на оригинал (будь то от борладн,визуал студии и др), в него запихнуть криптованный файл, а уже после подгружать в памяти. При этом такие херни, как табличка импорта и прочее - все создается свое (фэйк). Сдвигать и прочее не придется
     
  18. Acrobat

    Acrobat New Member

    Публикаций:
    0
    Регистрация:
    1 мар 2010
    Сообщения:
    23
    "скопипастить" таблицу импорта значит переместить их в новую секцию + добавить нужны АPI, и в DataDirectory поправить адрес на новую таблицу ? старую таблицу забить нулями ? таблицу експорта можно не трогать ?
    Не обязательно в data, можно и в свою же секцию.
    а как же характеристики секции ? или не влияет ?
    то гораздо лучше создать свой файл максимально похожим на оригинал
    меня пока это меньше всего волнует, нету пока такой задачи
    научусь добавлять апи, и использовать их, будет для меня очередное достижение :)
    не закрытый вопрос остался как же генерировать код.... пробовать его скомпилировать в другой програме и оттуда вырезать ? как же крипторы их генерят (сорцы смотрел, но всёравно так и не понял, он получается есть в коде готовый) ?
     
  19. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Acrobat
    По мойму рано вы за крипторы взялись. Качественные весьма сложны, там и пермутация и виртуальные машины.
     
  20. Acrobat

    Acrobat New Member

    Публикаций:
    0
    Регистрация:
    1 мар 2010
    Сообщения:
    23
    да пока не хочу ничего криптовать) разбираюсь (простодля разбора взял исходники с крипторов, а там много чего интересного)
    просто мои знания с института не совпадают с действительностю, вот и сижу мучаюсь
    соглашусь конечно, возможно и рано, но всё таки пока хочу знать сами способы (в инете всё расбросано очень)