Вопрос по Visual Studio C++

Тема в разделе "LANGS.C", создана пользователем Guest, 14 ноя 2006.

  1. Quantum

    Quantum Паладин дзена

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    Proteus
    фасм, насм, новые версии gas - все умеют пихать сырые данные из файла. Одни масм с тасмом отстали от жизни :)
     
  2. gazlan

    gazlan Member

    Публикаций:
    0
    Регистрация:
    22 май 2005
    Сообщения:
    414
    CRC16 ... и дальше вверх

    Вызывать через функцию: prolog+epilog
    Если память не изменяет, в дизасме Artefact'a (словарик от w*w.rsdsoft.com) видно было полно вызовов само-(де)шифрующихся функций (примитивно, через ROL/ROR)

    только смысл такого шифрования ?

    1. в дампе видно сразу - глаз спотыкается
    2. дешифруется моментом - xref на дешифровку + rip кода
     
  3. censored

    censored New Member

    Публикаций:
    0
    Регистрация:
    5 июл 2005
    Сообщения:
    1.615
    Адрес:
    деревня "Анонимные Прокси"
    А что если глянуть в сторону virstr от з0мбика?
     
  4. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    gazlan
    Неудобно будет использовать в прогe IS_9A1FEC23. Желательно осмысленное имя строки.

    В чём смысл вообще? В бинарике не видно. В дампе будет только часть, которые на момент дампа раскриптованы были. То, что "глаз спотыкается" - это верно, но дело ведь в уровне "защиты". Кому-то достаточно и этого.
     
  5. GMax

    GMax Member

    Публикаций:
    0
    Регистрация:
    3 июл 2006
    Сообщения:
    218
    В Masm32 можно так:

    Прекомпилятор MASM позволяет, Вам определять локальные
    переменные в макросе, просто как в обычной функции. Логические и математические операции в переменных поддерживаются, и не только - Вы можете также работать с каждым байтом из аргумента отдельно! Макросы
    позволяют Вам определять данные и имена функций динамически, и Вы можете даже определить макрос в макросе.
    Макросы дают возможность для создания всего того, чего Вы только можете придумать. Только макросами мы можем записать динамические данные - массивы данных, которые автоматически будут закодированы прекомпилятором. Посмотрим, что нам нужно сделать для этого:

    // Определяем Макрос
    // который берет целую строку, как аргумент
    EncryptText MACRO text:req
    LOCAL cipherByte
    cipherByte = 0AAh
    // Пройдите через каждый байт строки
    FORC plainByte, <&text>
    // Зашифровать их
    cipherByte = cipherByte xor '&plainByte'
    // И демпировать результат как байт данных
    db cipherByte
    ENDM
    db 0
    ENDM

    Теперь в исходном коде данные можно определять макросом:

    EncryptText < Обман не грех. Бог с верующими >

    И в скомпилированной версии, эти данные будут уже закодированы.
    Конечно во время исполнения Вы, должны декодировать его обратно, но полработы сделано средствами пре компилятора. Макросы являются очень эффективными манипуляторами данными.

    Как в Visual Studio C++ это сделать не знаю, но может можно
    всетаки родственные пакеты.
     
  6. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    GMax
    Нельзя. В VC встроенный асм не поддерживает макро. Разве что подключить внешний объектник с криптованными строками.
     
  7. Quantum

    Quantum Паладин дзена

    Публикаций:
    0
    Регистрация:
    6 янв 2003
    Сообщения:
    3.143
    Адрес:
    Ukraine
    IceStudent
    GMax скорее имел в виду не ассемблерные макросы, а сишные, но и они тут бессильны.

    Зато можно написать препроцессор для VC и включить его в процесс сборки. Примеры можно найти в гугле.
     
  8. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    Quantum
    Хм.. Думаю, скрипт в pre-build event как-то проще.
     
  9. khv_test

    khv_test New Member

    Публикаций:
    0
    Регистрация:
    30 июн 2004
    Сообщения:
    135
    Вот пример только для BCC + че было у зомби тож для bcc
     
  10. Guest

    Guest Guest

    Публикаций:
    0
    Че та на аттач НОДик кричит, ну это пох.. попробую, всем спасибо за поддержку, рабочую версию криптинга обязательно предоставлю для обзора. Просто огромное количество идей.