О крипте...

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by DartPhoenix, 28 May 2015.

  1. DartPhoenix

    DartPhoenix Elder - Старейшина

    Joined:
    15 Sep 2013
    Messages:
    1,108
    Likes Received:
    8,495
    Reputations:
    25
    Заранее извиняюсь за слишком пространный пост, но хотелось бы найти ответы на вопросы дабы не изобретать велосипеды заново.

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

    1. Что нужно положить в секцию .code ? Саму прогу есессно шифруем и нет особой проблемы затолкать ее к примеру в ресурсы. Но не вызывает ли такой PE подозрений ? Думаю вызывает. Отсюда я вижу такие выходы:
    * либо использовать уже готовый PE в котором слегка исправлять его поведение в разных местах и направлять аверов на фейковый код, пусть анализируют.
    * либо генерировать мусор достаточно достоверный, с вызовами API и желательно с релоками. Но это процесс не быстрый, поэтому было-бы чудесно как-то постепенно улучшать продукт и не помереть с голодухи :)
    ========
    Вопрос собственно в том, можно ли юзать чужой PE-шник как контейнер для своего и насколько это нереально заниматься поддержкой такого крипта ? И есть ли ссыль на годный трэшген ?

    2. Насколько актуален размер файла для потенциального покупателя (в среднем) ? Скажем у меня это никогда не вызывало особенных затруднений, поэтому заюзать чужой PE-шник и не видится большой проблемой. Но я думаю набрать пару человек, не больше которым предоставлять услуги крипта... и собссно над этим моментом надо задуматься.

    3. Когда заказывают крипт dll. Осведомлены ли люди что палится все банально по таблице экспорта, поэтому надо как-то либо менять имена в экспорте, либо импорт по ординалам либо... (и тут полет мысли) ?

    4. Если я еще не сошел с ума, то я думаю что "как скоро крипт спалится" зависит больше от источника инсталлов, ибо как ни криптуй но по банальному хешу MD5 тебя прибьют. И как этот вопрос решается с заказчиками ? Ну если конечно ты помигиваешь консольными окошками, палишься парой аверов и в таком духе - это влияет, но я помигивать не буду :)

    UPD: 4 - Дошло. Как до жирафа но дошло :) Видимо имеется ввиду что палится когда какой-то Вася Пупкин криптует локер или глючное УГ, которое вылетает выбрасывая красивые сообщения об ошибках.
     
    #1 DartPhoenix, 28 May 2015
    Last edited: 28 May 2015
  2. #colorblind

    #colorblind Moderator

    Joined:
    31 Jan 2014
    Messages:
    637
    Likes Received:
    246
    Reputations:
    42
    Внимание! Все написанное ниже - точка зрения диванного аналитика! Если у вас легко возгорающаяся нижняя чакра, лучше не читать!

    А кто запрещает? Конечно можно, только вот увеличит ли это детект, хз.
    C:\masm\projects\trashgen
    Все пабликовые полиметаморфные двиги давно в базах, следовательно и их вы(-хлоп/-сер) там же. Хотите генерить хороший трэш - придумайте свою концепцию и свою реализацию.
    Одному местному юзеру с ником из 3х букв, нужно было уложиться в 15кб. хз откуда такие ограничения, но факт был.
     
  3. DartPhoenix

    DartPhoenix Elder - Старейшина

    Joined:
    15 Sep 2013
    Messages:
    1,108
    Likes Received:
    8,495
    Reputations:
    25
    Ок. Спс. Я поэтому и взъерошился что паблик юзать никуда не годится. Есть куча сорцов, но мусор прямо скажем не мечта. Вот вчера вечером на удачу слил некий Krypton - так там без сурцов GenerateRubbishCode в плагинах, но тоже совсем не то что хочется... Поэтому вот и думаю делать пока как делал для себя, потом или пилить двиг или нанять архаровцев чтобы занимались ручным и не морщить мозк. Качество лучше чем метаморфы с пермутаторами потому что сгенерено своим таксказать потом и кровью :) Но если люди криптуют по 5 раз в день - я же с ума сойду...

    (offtop)
    Ибо обычно наделаешь себе штук 5 заготовок и неделю отдыхаешь обновляя раз в 2 дня, а вчера как почитал что творится на площадках с этими кидалами/не кидалами - аж закипел. Нету коммерческой жилки ищо. Не нарастил :)
    Просто раньше мне не было дела до коммерца ибо им занимался другой чел, но чел уехал чуть севернее ЮСА и работать вместе не удобно ни ему ни мне. ВотЪс осваиваюсь :)
     
  4. #colorblind

    #colorblind Moderator

    Joined:
    31 Jan 2014
    Messages:
    637
    Likes Received:
    246
    Reputations:
    42
    Лучше посадите одного на зарплату и пусть пилит/поддерживает двиг.
     
  5. DartPhoenix

    DartPhoenix Elder - Старейшина

    Joined:
    15 Sep 2013
    Messages:
    1,108
    Likes Received:
    8,495
    Reputations:
    25
    Ну вот примерно так и думаю. Попробую взять парочку заказов чтобы их криптовать да посмотреть самому что-да-как. Тогда можно взять человека и обучить. Пусть пользу приносит и мне и людям :) Ибо как-то было дело искали месяца полтора, потом еще столько же боролись с тем, что он как баран упрется во что-то и долбит... долбит... Постоянно присматривать надо :) Через 3 месяца плюнули и решили крипт делать по очереди, меньше мороки :)))
     
  6. sn0w

    sn0w Статус пользователя:

    Joined:
    26 Jul 2005
    Messages:
    1,023
    Likes Received:
    1,309
    Reputations:
    327
    для вов64 надо обнулить директорию лоадконфига, для чисто 64 -
    RtlAddFunctionTable


    о, представляю масштабы ожидающей вас ебли по разработке и внедрению - если хотите продукт до ума довести ессна) у нас уже дошло до того что оператором должен быть как минимум сискодер - потому как столько наворотили - шопесец)
     
    DartPhoenix likes this.
  7. DartPhoenix

    DartPhoenix Elder - Старейшина

    Joined:
    15 Sep 2013
    Messages:
    1,108
    Likes Received:
    8,495
    Reputations:
    25
    Такая же фигня была :))) Изначально вообще правили лодер ручками на уровне исходника, причем 5 минут делов и FUD, а dll паковали Фемидой и тоже коцали. Но в целом привыкли, понаписывали батников и оно какбэ даже удобно было. Чел причем писал на Delphi а я на Си. + у него свои либы к этому Delphi несчастному, и всю эту хрень надо было еще попробовать заинсталлить чтобы хоть что-то скомпилилось :) А кодер что пришел... ну скажем из касты "боевых" но не вкурил во все. Пытался что-то свое мутить, тоже на Delphi плевался, но не понять человеку что там уже такого намучено что только переписать все с нуля :) И вот не могу понять до сих пор боевой он был или просто слов нахватался умных. Вроди и правильно все говорит, но чего-то у него не получалось вообще. И жалко было отправить восвояси и платить за здорово живешь не хотелось :(

    Вот начиная с начала думаю как-то хоть попытаться навязать все в едином стиле, никаких богомерзких Дельфинов и сразу берусь за крипт. "Пользовательская часть" есть, но без полезной нагрузки. Думаю нагрузить соксами сначала. Пока конечно есть на хлеб насущный да с маслом, но надо разворачиваться помаленьку.
     
  8. DartPhoenix

    DartPhoenix Elder - Старейшина

    Joined:
    15 Sep 2013
    Messages:
    1,108
    Likes Received:
    8,495
    Reputations:
    25
    Кстати краем уха слышал тут от одних что они крипт прямо на уровне компилера замутили. Или выделываются или не совсем. Но прямо аж задумался о метакомпиляторах. Открыл матчасть и закрыл сразу. Никаким удобством там и не пахнет. Опять придется вернуться к батникам и танцам с бубнами. ВотЪ попробуем пошаманить более классическими методиками.
     
  9. sn0w

    sn0w Статус пользователя:

    Joined:
    26 Jul 2005
    Messages:
    1,023
    Likes Received:
    1,309
    Reputations:
    327
    llvm обфускация это - когда скомпиленный код разбавляется всякой херней, да тоже юзаем) а без этого никак, особенно в случае крупной клиентуры.
     
  10. DartPhoenix

    DartPhoenix Elder - Старейшина

    Joined:
    15 Sep 2013
    Messages:
    1,108
    Likes Received:
    8,495
    Reputations:
    25
    Да ну. Я думаю пару-тройку постоянных взять, дабы окупить кодера который ими займется. И заодно попробовать его поднатаскать в менее тривиальных вещах. Ибо вдвоем нам некогда было заниматься менторством, а одному... ну его в баню. Собссно тоже выход :) Поэтому тяжелая артилерия пока не нужна. Главное чтобы держалось пару дней, автоапдейт стоит - мне больше и не надо.

    Как-то стремно начинать только :) Вообще никогда не общался с заказчиками и даже не интересовался. А это как посмотрел... у них и сленг незнакомый. Эти как их... "элитные прокси". Хм. Похоже на рекламу зубной пасты для ТП. Напиши по людски что за прокси... откуда они вообще и в чем элитность. Потому что у большого брата тоже элитные стоят, но я не хочу такие прокси :)
     
  11. sn0w

    sn0w Статус пользователя:

    Joined:
    26 Jul 2005
    Messages:
    1,023
    Likes Received:
    1,309
    Reputations:
    327
    ну в этой теме как и в любом бизнесе должна быть организация, менеджмент итд. так что хз. на какой выхлоп то рассчитываете? я вот за 2 года поднял столько сколько не поднял за предыдущие 5 на работе в миру)) сейчас вот стратегически планируем на мобильные девайсы ориентироваться, хотя непонятно что предложит венда10, может даже и забьем на андроид)
     
  12. DartPhoenix

    DartPhoenix Elder - Старейшина

    Joined:
    15 Sep 2013
    Messages:
    1,108
    Likes Received:
    8,495
    Reputations:
    25
    Это просто для организации себе всего, чтобы не покупать. И просто чтобы оно окупилось как-то. Носочки хорошие нужны всегда, и чистый екзе тоже. Плюс если нужна какая-то нестандартная фича - не было проблем ее реализовать. Покупать... ну в целом можно, но куда удобнее пнуть кого-то кто на тебя работает :) А мобильную платформу еще не юзал. Подумываю конечно, но тут бы закрепиться сначала чтобы был простор для экспериментов.

    В целом на крейсерской скорости 12-15 узлов вполне достаточно чтобы особо не перетруждаться. Но до крейсерской скорости надо еще разогнаться :)
     
  13. sn0w

    sn0w Статус пользователя:

    Joined:
    26 Jul 2005
    Messages:
    1,023
    Likes Received:
    1,309
    Reputations:
    327
    да никто в своём уме свои технологии не продаст, разве только они не гуан)
    ну чтож желаю тебе упешно влиться в биз - и как там в поговорке, - дело и труд всё перетрут ;) ну и конечно мануалы курить тоже надо, а дельфиговнокодеров гони нах)
     
    DartPhoenix likes this.
  14. DartPhoenix

    DartPhoenix Elder - Старейшина

    Joined:
    15 Sep 2013
    Messages:
    1,108
    Likes Received:
    8,495
    Reputations:
    25
    Пасиб. Удача сопутствует дерзким :)
     
    sn0w likes this.