Закриптовать dll (для ex4)

Тема в разделе "WASM.BEGINNERS", создана пользователем Vktorio, 6 дек 2018 в 02:19.

  1. Vktorio

    Vktorio New Member

    Публикаций:
    0
    Регистрация:
    Четверг
    Сообщения:
    3
    Всем доброго здоровья!
    Стоит задача максимально закриптовать mql4-бинарь (*.ex4) от реверсинга.
    Я так понимаю что это лучше сделать с помощью вынесения основных функций в dll, так как сам ex4 сейчас достаточно легко вскрывать научились.

    Поделитесь, пожалуйста опытом как лучше криптовать dll-ку: криптером, после вынесения функций в нее или максимально обфусцировать и виртуализировтаь код в самой дллке. Если критпером, то подскажите хороший, недорогой криптер (может и бесплатный :acute:)

    Кстати, может ктото делал подобное)?
    Заранее благодарен за ответ :angel:
     
  2. q2e74

    q2e74 Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    119
    ext4 -> linux -> не сложно спуститься в kernel mode. Уже очень многих отсеет. Обфускация не поможет, а вот свой интерпретатор(своя виртуальная машина) с раскиданными антиотладочными гадостями, кровушки попьёт. Но это вам придется сильно почитать, и настроиться не на один месяц работы до результата. Надежнее физический токен, вроде смарт-карты. А если результат нужен уже сейчас, то ищите уже готовый протектор с автором, т.к. купив в слепую, можно словить не мало трудностей с упаковкой исполняемого файла. Упаковать вы его упакуете, а вот то, что он на разных клиентах встанет и будет работать - далеко не факт.
    --- Сообщение объединено, 6 дек 2018 в 07:36 ---
    Сорри за мой бред про линукс, не увидел mql4 и dll. Но, в принципе, да какая разница. Прикиньте, сколько люди будут готовы отдать за взлом, хватит на работу спеца? Если нет, то и протекторы вроде temida (https://www.oreans.com/themida.php) подойдут. Почитайте вот эту ветку, вроде ваш случай https://www.mql5.com/en/forum/130774.
     
    Последнее редактирование: 6 дек 2018 в 07:24
    Vktorio нравится это.
  3. superakira

    superakira Active Member

    Публикаций:
    0
    Регистрация:
    2 июн 2008
    Сообщения:
    391
    vmprot и будет вам хорошо
     
    Indy_ и Vktorio нравится это.
  4. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    3.863
    пусть и несколько глупый вопрос, но всё же.. а криптовать зачем???
     
  5. Indy_

    Indy_ Well-Known Member

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

    Это не конкретный термин в данном случае, а общий. Они обычно означают одно и тоже, так как этими понятиями манипулируют без понятия. Он не сможет вам ответить зачем криптовать, а будет ссылаться на исходный пост :)

    Вопрос изначально смысла не имеет, так это реверсят далеко не ньюби.
     
    UbIvItS нравится это.
  6. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    3.863
    так о чём и речь: если прога реально годная == её расковыряют, а иначе всем пофиг + все си извраты роняют скорость работы той же длл-ки :)
     
  7. q2e74

    q2e74 Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    119
    Если грамотно JaCarta прикрутить, то как ты взломаешь?
     
  8. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    3.863
    если у тебя основная часть проги пашет на облаке, то (конечно) реверсинг тут идёт Лесом-де Садом. Но для кучи юзверей очень важно иметь именно офлайн версию. + облачные решения тоже могут сливаться варезниками в паблик и тамо ужо собирают офлайн билды.
     
  9. q2e74

    q2e74 Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    119
    UbIvItS, я про оффлайновые апаратные токены. Чип смарт-карты запечатан в разные формы. Это же не hasp ключик первой волны.

    Вот, кстати, какую часть проги надежнее было бы отдать на откуп такому ключу, интересно мнение, интересно было бы послушать.
     
  10. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    3.863
    ну-так, вся прога опять же в офлайне и при надобности её расковыряют. к тому же, у таких решений может появляться куча косяков при (например) обновление оси == вынька 10 и без того склонна к юмору опосля "оч-ну-ного" апдейта :) самым лучшим средством борьбы с пиратством является разработка аппаратно-программных комплексов + они могут показывать куда-лучшие скорости работы и быть платформа-фри. То бишь на оси запускается клиент, а основные расчёты идут на со-железке.
     
  11. Fail

    Fail Active Member

    Публикаций:
    0
    Регистрация:
    14 мар 2012
    Сообщения:
    449
    Если я не ошибаюсь(гуглить лень:)) - "mql4-бинарь (*.ex4)" - это какой то псевдокод для метатрейдера - эта такая приложуха для торговле на форексе и прочей лабуде. Вангую, что товарисчъ разработал супер-мега-крутой алгос для частотного трейдинга, который заработает миллиарды своему обладателю, но хочет его продавать за 100$ ^_^
     
    UbIvItS и Indy_ нравится это.
  12. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    3.863
    https://www.lifewire.com/ex4-file-2621147
    ФЪ точку :laugh1::laugh2::laugh3:
     
  13. q2e74

    q2e74 Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    119
    О, вы не знаете эту публику. Это же такой фетиш, иметь кучу индикаторов и играться с их комбинациями. Так что именно такая стратегия и позволит заработать миллиарды, на около бижревых индикаторных фетишистах.
     
  14. Rel

    Rel Well-Known Member

    Публикаций:
    0
    Регистрация:
    11 дек 2008
    Сообщения:
    1.769
    если это какой-то высокоуровневый байт-код типа CLR или JVM байт-кода, то такую вещь одно удовольствие реверсить... в принципе эти байт-коды обфусцируются до какого-то вида, там имена классов и функций переименовываются, константные данные перешифровываются, многие обфускаторы применяют control flow flattening или трансляцию в ВМ... но если нет готового решения для этого MQL4 байт-кода, то свой обфускатор пилить для своего алгоритма - это как из пушки по воробьям стрелять... нативный код реверсить посложнее, так что ценную логику можно вынести туда и накрыть сверху какой-нить защитой... опять же писать свой обфускатор для нативного кода, если нет в этом опыта - бесполезно, куда проще купить какой-нить VMProtect или Themida, если это целесообразно... вывести логику в облако не вариант, если я правильно понял о чем идет речь, погуглив об этом 10 минут...
     
  15. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    3.863
    а подробней, пожалуйста.
     
  16. Rel

    Rel Well-Known Member

    Публикаций:
    0
    Регистрация:
    11 дек 2008
    Сообщения:
    1.769
    ну заимбеддить интерпретатор байт-кода в сервак - не такая тривиальная задача обычно... если всю логику реализовать в сервере на другом языке, а потом делать https://docs.mql4.com/ru/common/webrequest - то это наверное возможно, но опять же смысл использовать MQL4 тогда? не проще тогда все вместе сразу запилить на каком-нить питоне, и держать всю логику у себя на сервере, а клиенту предоставлять либо веб-интерфейс, либо гуишку на каком-нить киви или пикьют...
     
  17. Indy_

    Indy_ Well-Known Member

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

    > ну заимбеддить интерпретатор байт-кода в сервак - не такая тривиальная задача обычно...

    Так всё сетевое окружение работает ведь на интерпретаторах. Это же скрипты.
     
  18. Rel

    Rel Well-Known Member

    Публикаций:
    0
    Регистрация:
    11 дек 2008
    Сообщения:
    1.769
    MQL4 интерпретатор...
     
  19. f13nd

    f13nd Active Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    332
    Ну да, все исходные данные передаешь пхп-скрипту пост-запросом, а вся логика в нем. Простенько и куда лучше чем любой протектор. Даже авторизацию можно соорудить с лицензиями на определенный срок.
     
  20. Vktorio

    Vktorio New Member

    Публикаций:
    0
    Регистрация:
    Четверг
    Сообщения:
    3
    Всем давшим подсказки - благодарю!
    Сейчас я остановился на выборе протектора - VMProtect, Themida или Enigma.
    У кого был опыт реверсинга и защиты)) - что сложнее поддается?

    Да, я тоже это предложил заказчику, это один из наиболее хороших методов защиты, но он в судя по всему, в 95% не спасает от таких вот людей https://8161.uk/vzlom/
    Все в конечном итоге упирается в цену конечного продукта. Нужно так ее сбалансировать чтоб проще было купить чем ломать ;)