Этого треда уже нет.
Это копия, сохраненная 18 марта 2017 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
27 Кб, 720x480
Пишем криптор всем двачем #874884 В конец треда | Веб
Делаю криптор. Есть загрузчик, состоящий только из секции кода. Эта секция расширяется, и в ее конец записывается зашифрованный PE-имидж. При запуске лоадера этот имидж копируется в буфер, расшифровывается и запускается при помощи PE-загрузчика. Запуск работает, но билд палится антивирусом.

Попытался прикрутить антиэмуляцию, но лоадер все равно высаживает на измену. WinMain лоадера:

http://ideone.com/ueefFh

Как сделать без палева?
883535945196
#2 #874895
кому это говно надо вообще в 2016
любой упакованный екзешник в том же процесс эксплорере цветом показывается
запускаем его и любое подозрительное говно выпиливается на раз
874902
#3 #874902
>>874895

>кому это говно надо вообще в 2016


Лол. Походи по вирусным форумам.
875097
#4 #874921
Сделал антиэмуляцию при помощи выделения и освобождения дохуиллиона маленьких блоков памяти.
#5 #875073
Бамп. Хочу сделать интерфейс для криптора, писать буду на чистом winapi. Чтобы провести время с пользой, хочу использовать шаблон MVC для отделения интерфейса от логики. Можно ли это сделать в оболочке криптора и как?
#6 #875074
Реквестирую статьи о написании гуя с использованием MVC. Пишу на си.
#7 #875097
>>874902
последний вирус был написан лет пятнадцать назад, если не раньше
875142
#8 #875142
>>875097
darkcomet
875168
#9 #875168
>>875142
это ратник
875181
#10 #875181
>>875168
Тогда что должна делать программа, которая считается вирусом? Отковыривать драйвера всех устройств? Полиморфик-метаморф, выводящий на экран хуец и закрывающий браузер?
875210
#11 #875210
>>875181
то же что и биологический вирус: внедряется в другие программы и размножается
#12 #875666
Загрузчик что из себя представляет? Если инжект и настройку контекста, то не нужно. Если полноценный РЕ лодырь, то сам писал или взял готовый из интернетов?
875675
#13 #875675
>>875666

>Если инжект и настройку контекста


Это. RunPE перезапускает свой процесс с другой начинкой. Из-за этого у меня возникли проблемы с запуском кодеса, который создает неубиваемый процесс (спавнится два процесса, которые друг за другом следят).

>Если полноценный РЕ лодырь, то сам писал или взял готовый из интернетов?


Сначала пытался использовать лоадер Грейта. http://winlock.ru/viewtopic.php?id=1540
Что это вообще за пиздец? Специально выложили такой код, чтобы его надо было переписывать? Потому что он даже не компилится, а после правки возвращаются нулевые хэндлы, и вообще там память сначала освобождается, а потом используется.

Где можно раздобыть рабочий лоадер?
875721
#14 #875681
Еще вопрос. Как поддерживать криптор FUD простыми средствами?
Хочу сделать макрос типа #define MUSOR WinAPiFunc() и вставлять его после каждой строчки. Меняю функцию - сбиваются сигнатуры. Кроме того, сделаю шифрование и расшифровку RunPE кода, потому что он сразу попадет в базы.
#15 #875711
мочераторы, забанте опа-пидора
#16 #875721
>>875675

>Где можно раздобыть рабочий лоадер?


Купить.
/тред
#17 #875726
Хех, добавил зашифрование и расшифрование PE-имиджа и целый час искал баг, который заключался в том, что функции расшифрования передавалось огромное значение размера имиджа. Оказалось, что оптимизация по размеру я уменьшил стаб на си до 2-х кило выкинула переменную 0xDEADFADE, которая заменяется на реальный размер при билде.
Помогло объявить ее volatile. Однако теперь касперский ругается. Надо проверить запуск без шифрования. Использовал алгоритм XTEA.
875733
#18 #875727
И еще почему-то компилятор выкинул мою функцию антиэмуляции. __forceinline поможет ее сохранить с включенной оптимизацией?
875733907590
#19 #875732
Как же красиво выглядит в олли дебагере расшифровка и запуск.
875733
0 Кб, 512x512
#20 #875733
>>875726
>>875727
>>875732
Шизик, съеби уже.
875739
#21 #875739
>>875733

>0Кб


Лол, а ты неплох.
875746
0 Кб, 512x512
#22 #875746
>>875739

>0Кб


Как что-то.
#23 #875748
А, ясно, это очередной проеб анонимной культуры.
875751
0 Кб, 512x512
#24 #875751
>>875748

>анонимной культуры.


>анонимной


>культуры.


Ананизмус, please.
#25 #876035
N0AY7B1P
0 Кб, 512x512
#26 #876036
#27 #876092
О, анон, поясни за крипторы. Хочу криптовать себе анус ратники и быть тру хакером. За деньги покупать дорого, хочу сам в это дело вкатиться. Что надо делать и какие подводные?
876176
#28 #876176
>>876092

> криптовать себе анус ратники


"криптовать ратники" в 2016 году означает делать так называемый серверный полиморфизм
как то там закрывают экзешники сейчас только мудаки
876188
#29 #876188
>>876176
лол. криптую одной конторе ее поделие на регулярной основе. не ратник конечно, но и не белый софт. ну и где теперь твой б-г, а? а? а?
876200876201
#30 #876200
>>876188
ну дык есть спрос, дак делай, это же бизнес
токо писали же выше - все упакованные экзешники палятся на раз, даже тупыми способами - в том же proccess exp руссиновича отдельным цветом выделяются
876215
#31 #876201
>>876188
ах, да, скорей всего это какой-то софт, связанный с играми, чит или бот, так ведь?
876295
#32 #876215
>>876200

>ну дык есть спрос, дак делай, это же бизнес


спрос есть, но уже спадает

>токо писали же выше - все упакованные экзешники палятся на раз


палят поделки уровня ОП-хуя, которые через runpe работают. мне же платят деньги за то, чтобы ни один авер не вопил при запуске билда

>ах, да, скорей всего это какой-то софт, связанный с играми, чит или бот, так ведь?


ноуп
876295876367
#33 #876295
>>876215
>>876201
Так как вкатиться, господа?
876307
#34 #876307
>>876295
куда?
876322
#35 #876322
>>876307
в криптостроение
876361
#36 #876361
>>876322
нах те это надо, написали же что рыночек помирает
"серверный полиморфизм" в гугле лень набрать?
876372
#37 #876367
>>876215

>мне же платят деньги за то, чтобы ни один авер не вопил при запуске билда


Как запускаешь? Писал собственный лоадер?
876374
#38 #876372
>>876361

>"серверный полиморфизм" в гугле лень набрать?


причем тут серверный полиморфизм? это тот-же крипт, прост билд криптуется на серваке и выдается постоянно новым.
в любом случае все эти техники придется осваивать.
энивей, полиморфизм уже не так канает, а вот хороший антиэмуль написать, не каждый осилит
876382
#39 #876374
>>876367

>Писал собственный лоадер?


йеп. х86, х86_64, базонезависимый.
876380
#40 #876380
>>876374
Зависть. Надо мне переписать лойдер Грейта, надеюсь, с ним можно что-то сделать.
А передача управления на шеллкод, который делает раскриптовку секций, не катит?
876383
#41 #876382
>>876372

>а вот хороший антиэмуль написать, не каждый осилит


Нетапи же не эмулируются.
#42 #876383
>>876380
помоему ты не понимаешь базовых принципов работы криптора
876385
#43 #876385
>>876383
Объясни. Понимаю работку криптора как расшифровка образа и запуск в памяти или передача управления на код, который расшифровывает все секции и передает управление на оригинальную точку входа.
876388877888
#44 #876388
>>876385

>работу

#45 #876400
Накидайте статей по написанию обфускаторов сишного или асм кода.
876672876778
#46 #876672
>>876400

>Накидайте статей по написанию обфускаторов сишного или асм кода.


Если ты знаешь цешечку и уж тем более асм, то этот вопрос, как минимум, глупый, ибо написать примитивный обфускатор исходнников дело пары вечеров.
876766
#47 #876766
>>876672

>написать примитивный обфускатор исходнников дело пары вечеров


Это толстый траленг? Выглядит как задача, в которой требуется строить синтаксическое дерево. Я вообще думал начать писать морфер ассемблерного кода, который рандомно заменяет, например, call CreateFile на mov eax, CreateFile / call eax
877055
#48 #876778
>>876400
кто ж тебе будет писать статьи
если этим сейчас зарабатывают
876781
#49 #876781
>>876778
Печаль. На ксакепе стали появляться статьи о техниках нулевых годов, как раз в то время, когда они устарели.
#50 #877055
>>876766

>Я вообще думал начать писать морфер ассемблерного кода


бред. все делается макросами на том же фасме.

>например, call CreateFile на mov eax, CreateFile / call eax


нинужно. авер на оба варианта будет реагировать одинаково.

Тебе нужно понять, что глупо запутывать аверов, нужо быть максимально похожим на белый софт. В этом плане тебе поможет умный генератор треш кода.
877089
#51 #877089
>>877055

>В этом плане тебе поможет умный генератор треш кода.


Вот это мне интересно. Сначала я хотел сделать генератор мусора через дефайны, но так редко кто делает. Каков алгоритм замусоривания кода? Дизассемблировать стаб, построить связный список инструкций, и, проходя по нему, выделять память, куда писать заранее заготовленный мусор случайным выбором?

Зашифрование своего RunPE-кода хочу сделать так: в функцию RunPE вставляю метки начала и конца при помощи __asm nop nop nop nop и во время билда шифрую RunPE тем же ключом, которым он расшифровывается.

Саму нагрузку я шифрую XTEA, который повышает энтропию. Имеет ли смысл зашифрованный XTEA код кодировать Base64 для снижения энтропии?
877870
#52 #877870
>>877089

>Сначала я хотел сделать генератор мусора через дефайны, но так редко кто делает. Каков алгоритм замусоривания кода? Дизассемблировать стаб, построить связный список инструкций, и, проходя по нему, выделять память, куда писать заранее заготовленный мусор случайным выбором?


У меня все макросами на фасме оформлено. Поэтому я треш код генерирую при компилировании стаба.

>Зашифрование своего RunPE-кода хочу сделать так: в функцию RunPE вставляю метки начала и конца при помощи __asm nop nop nop nop и во время билда шифрую RunPE тем же ключом, которым он расшифровывается.


Расшифровать не забудь.

>Саму нагрузку я шифрую XTEA, который повышает энтропию. Имеет ли смысл зашифрованный XTEA код кодировать Base64 для снижения энтропии?


Ваще похуй.
#53 #877888
>>876385
У меня была идея написать статью и выложить в свободный доступ, про современные тенденции криптописания. А то, что есть в интернете уже протухло блядь на стадии написания оных. Но мне лень, блять, так что спрашивай что-то конкретное.
877896877899907525
#54 #877896
>>877888
Пиши давай.
Почему протухло? Я читал, что генерация мусора тоже слабо помогает, потому что ав-движки подсчитывают статистику вызовов и используют цепи Маркова для анализа.
Как сейчас криптуют? Как это пишется с нуля? Что знать надо?
#55 #877899
>>877888
Алсо, как криптовать неубиваемые приложения, которые запускают 2...12 процессов, следящих друг за другом, и запускают еще 1..12 процессов при завершении одного из них? RunPE для этого не подходит из-за принципа работы. Получается бесконечный перезапуск всех процессов.
#56 #878963
Бамп. Лениво было заниматься криптором, зато протестил его на нескольких больших приложениях. Надо бы еще протестить на комете, но мне лень.

Можно ли продать беспалевную криптовку? Каким образом это сделать? Просто регаешься на сплоите, создаешь тему, и школьники платят тебе за криптовку ратников для своих подружек?
45 Кб, 300x311
#57 #879062
Инкрементным подходом от простого к сложному разрабатываю шифрование РанПЕ функции.

http://ideone.com/x5pnh1
881987
53 Кб, 600x399
#58 #881981
ОП, пидр. Где наработки?
881987882003
#59 #881987
>>881981
Хочешь залить на вирустотал? http://rgho.st/7pySjHy4J Пароль xxx

Впрочем, похуй, все равно надо переделывать очень много. Вот здесь делаю шифрование кода RunPE >>879062
Ключ для расшифрования буду вычислить каким-нибудь антиэмуляционным кодом, в котором апихи возвращают правильное значение только под виндой, типа такого:

mov ebx, 0xC0000005
neg ebx
add ebx, realep
invoke NtReleaseMutant, 0x7B
add ebx, eax
jmp ebx
int 3

Хочу сделать протект кода так, чтобы без шифрования из ассемблерной вставки происходил переход на вторую ассемблерную вставку (в конец функции) для обхода зашифрованного кода. При расшифровании надо как-то патчить дальность перехода.
#60 #882003
>>881981
Вот еще: улучшал протект функции.

Главная программа: http://ideone.com/KDVVz1
Шифрование между метками: http://ideone.com/KOYU4M
126 Кб, 819x644
#61 #882467
Анон, ну где ты? Спросил код и съебался.
882528
#62 #882528
>>882467
Тут. Спрашивай конкретные вещи. Просто вести дискуссию мне лень
882611
#63 #882611
>>882528
Не знаю, что спросить.
1. Как делаются крипторы в общем случае? Как сделать наименьший стаб для легкой чистки?
2. Как реализуется RunPE для x64, какие там изменения по сравнению с x86?
3. Какими средствами делается полный FUD? Используют ли шифрование/расшифрование в рантайме частей стаба для сбивания сигнатур на наиболее важные функции?
4. Как продавать крипт и не опозориться на весь эксплоит? Что нужно учесть в своем крипторе для работы с любым софтом?
5. Какие подводные камни с TSL и почему об этом пишут при продаже крипторов?
883160
#64 #882650
Когда-то давно читал про интересный способ антиэмуляции - расшифровывать код после того как пользователь сдвинул курсор мыши на n-пикселей.
882662
#65 #882662
>>882650
Есть подводные камни с софтом, который стартует вместе с системой. В таких случаях пользователь обычно не двигает мышкой довольно долго.
882674
#66 #882674
>>882662
Ну, таким методом можно какие-нибудь дропперы криптовать.
#67 #882678
Почему Инди хуесосит лоадер? https://fuckav.ru/showthread.php?p=157125#post157125
Что плохого в этой реализации?
122 Кб, 533x400
#68 #882715
Ебать, что же это тут открылось? Ололонабигаем! https://васм.рф/index.php

https://youtu.be/3KV6e3Ns8g8
#69 #883160
>>882611

>1. Как делаются крипторы в общем случае? Как сделать наименьший стаб для легкой чистки?


Стаб, антиэмуль, загрузчик.
Наименьший стаб элементарно, все что тебе для этого надо - базонезависимый код.

>2. Как реализуется RunPE для x64, какие там изменения по сравнению с x86?


Последний раз тебе говорю, RunPE для лохов, PE Loader для пацанов. Пишется лоадер для х86, а дальше добавляются нужные структуры для х64, импорт-хуимпорт и прочая дичь.

>3. Какими средствами делается полный FUD? Используют ли шифрование/расшифрование в рантайме частей стаба для сбивания сигнатур на наиболее важные функции?


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

>4. Как продавать крипт и не опозориться на весь эксплоит? Что нужно учесть в своем крипторе для работы с любым софтом?


Не использовать RunPE. Криптор должен поддерживать все, что сейчас в моде, а также ФУД и постоянная поддержка.

>5. Какие подводные камни с TSL и почему об этом пишут при продаже крипторов?


TLS, а не TSL. Это такая штука, которая отвечает за память потоков, и без чего не обходится ни одна прога написанная на delphi. А подводные камни в том, что если твой криптор не будет поддерживать работу с tls, то и софт, который его использует, не будет работать.
883284
#70 #883284
>>883160

>Последний раз тебе говорю, RunPE для лохов, PE Loader для пацанов


Что можно почитать о написании своего лоадера?
#71 #883299
И какой план изучения PE-лоадера можно придумать? Наверно, я напишу какой-нибудь виндовый хеллоуворлд без релоков, напишу загрузчик с базовым адресом повыше и буду пытаться правильно размещать заголовки по базовому адресу, копировать секции.
#72 #883337
даже интересно
тебе по треду уже написали и не раз, что рынок сужается, продать ты свое поделие врят ли сможешь
качественный дроппер напиши ну или server-side полиморфизм осваивай, тоже полезно
будешь "криптовать" свое поделие дома и по сети просто обновлять всю нагрузку и все, с какой-то периодичностью
883340883342
#73 #883340
>>883337

>тебе по треду уже написали и не раз, что рынок сужается, продать ты свое поделие врят ли сможешь


Печально, я ради этого взялся задрачивать, ну и просто охуенное ощущение, когда твоя программа, наконец, стартует из памяти.

>качественный дроппер напиши


Как сделать качественно? Тоже использовать антиэмуляцию, детект песочниц, замусоривание исходников api-вызовами перед компиляцией?
883343
#74 #883342
>>883337
опять же, нужны нехуевые знания, чтобы уметь сделать хотя бы просто более-менее работающий криптор, или там суметь сделать полиморфный вирус (сейчас и вообще никто это не делает), или сделать руткит и то что будет работать в kernel mode
для этого нужно быть не только программистом, но и исследователем и реверсинженером, это очень сложно и затратно по времени
и имея только навыки кодера, ты это не сделаешь, в то время как написать что-то просто аккуратно и относительно незаметно работающее в user mode, то что общается по сети через http через настройки дефолтного браузера - это да, ты сможешь сделать
#75 #883343
>>883340
для начала напиши обычный дроппер (вообще без никакого скрытия в системе) который может забрать полезную нагрузку через http с фиксированного сервака и нормально проинсталлировать ее в систему
даже это, если делать с нуля, займет у тебя пару месяцев
а потом начинай потихоньку усовершенствовать его
883350
#76 #883350
>>883343

>даже это, если делать с нуля, займет у тебя пару месяцев


Писал программу, которая копирует себя в папку Roaming и прописывается в Run. Это, видимо, уровень дно, а не "нормально проинсталлироваться в системе"?

Что такого можно два месяца делать в программе, которая просто скачивает файл и запускает его?
#77 #883362
https://fuckav.ru/showthread.php?p=157133#post157133

Инди хуесосит базонезависимось

Во вторых это какой то нубский треш - функа которая аналог GPA, ну и что дальше, базонезависим - так GPA тоже. Автор есно не понимает что базонезависимость это большое зло, так как данные от кода не отличимы. А для такого кода современные технологии(автоматика) применяться не могут.
#78 #883394
Похоже, настоящее программирование умерло. О чем-то низкоуровневом на форумах можно ждать ответа долго и все равно никто не ответит. Постинг низкий, людей мало. На форумах малварщиков сидят 3.5 топа, но там наиболее вероятно получить ответ на какой-либо вопрос.
883396
sage #79 #883396
>>883394
Нормальным людям хэцкерская хуйня перестаёт быть интересной лет в пятнадцать.
883397883449883622
#80 #883397
>>883396
Тогда кто пишет виртуальные машины?
883402883451
sage #81 #883402
>>883397

> криптор для винлокера


> виртуальные машины


Ты с темы-то не соскакивай.
#82 #883449
>>883396
А если ты об ней узнал только в 27?
#83 #883451
>>883397
Школьники.
#84 #883535
>>874884 (OP)
Никак, ты бы еще на стеке код выполнял бы.
883576
9 Кб, 478x376
#85 #883576
>>883535
Ты так говоришь, как будто это что-то плохое
883587
#86 #883587
>>883576
А чего хорошего, когда на десятке по дефолту выполнение кода на стеке заблочено вообще.
#87 #883622
>>883396
сейчас за блек в россии сажают
причем сажают и кодеров
положим написал ты относительно безобидный софт что на андроиде работает с смс
но конечно же ты знал для чего его будут использьзовать
тебя найдут, и пойдешь ты сразу по нескольким статьям, тк припишут группу, а группа за собой потянет и мошенничество в особо крупных и прочее
и все, отправился лет на 8
883667907674
sage #88 #883667
>>883622
Двачую тебя. Мать, когда ещё следаком была, говорила, что все чаще в нагрузку дают подобные дела. Самое смешное, что кодеры писали за штуку-две баксов в месяц код, который большим дядям десятки миллионов долларов приносил. Угадай, кто потом попадает на сгущенку, а кто находится вне юрисдикции РФ.
883870
sage #89 #883870
>>883667
Поэтому надо работать на зарубеж. Или уезжать на Запад, а софт делать для рашки.
#91 #885943
Анон, ты еще здесь?

Что-то все хуево. https://www.virustotal.com/ru/file/2c3a3aed2021b6b65ab98ff99fb777362dcc743f4146ff03880899353f66a697/analysis/1480619099/

Кодес:
https://mega.nz/#!ZlJGSIoC!BxcTOn89ezvHpPMXvXLuKil_RgIEHy7Q4qKLMvnvZYU

В самом начале было 20 детектов. Когда я везде натыкал макросы MUSOR, детект снизился до 11. Потом я хотел улучшить энтропию кодовой секции и вместо шифрования XTEA использовал ксор с константой. Но это увеличило детекты на 7. Некоторые антивирусы, видимо, запускают мой криптор в песочнице, остальные обламываются на антиэмуляции и палят по сигнатурам.

Я прочитал, что сигнатуры сейчас делают на все, что угодно: на поля хедеров, таблицу импорта, и т.п., поэтому просто разбавлять код мусором помогает не сильно. Как уменьшить палево?
#92 #885944
Вместо RunPE я буду делать LoadPE, но сейчас замена способа запуска не будет значить ничего. Слишком много палева.

Если выкину из импорта почти все функции и буду доставать их из кернеля, это может уменьшить детект?
886941
#93 #886014
Выкинул весь код из стаба, загрузил пустой ПЕшник на вирустотал. Четыре детекта.
Опять пустой стаб, состоящий только из секции кода. Расширил секцию кода и дописал в ее конец зашифрованный софт. Теперь 14 детектов несмотря на то, что стаб ничего не делает.

Откуда детекты?
886136
sage #94 #886136
>>886014

>Откуда детекты?


>Тебе нужно понять, что глупо запутывать аверов, нужо быть максимально похожим на белый софт


Ресурсы, импорт, вызовы АПИ, все это должно быть реализовано так, как в простом софте.
С авастом и его evo-gen ты конечно поебешься знатно.
886481
#95 #886481
>>886136

>Ресурсы


В стабе ресурсов нет.

>импорт


Вызов системных апи сделал путем получения их адресов из кернеля. В таблице импорта остались безобидные функции вроде ZeroMemory и CreateFile.

>вызовы АПИ


Как в простом софте вызываются апи? Что не так у меня?

Еще в моем стабе плохо то, что секция кода записываемая. Если кинуть нагрузку в ресурсы, а не в секцию .text, количество детектов уменьшится? Какие подводные камни при таком подходе?
886485886831
#96 #886485
>>886481

>Еще в моем стабе плохо то, что секция кода записываемая


А, нет, это я уже исправил. Но нагрузка дописывается в .text.

Почему высокая энтропия это плохо? Что она собой представляет? В теории информации энтропия - это математическое ожидание сообщений из источника. То есть нечто наиболее вероятное. Почему высокая вероятность чего-то это плохо при детекте?
886490
#97 #886490
>>886485
Потому что при высокой энтропии считается что это сжатые/шифрованные данные/код.
886505
#98 #886505
>>886490
У меня почему-то после шифрования ксором с константой файл в олли начал определяться как упакованный. Когда шифровал XTEA, такого детекта не было несмотря на то, что в XTEA используется сеть Фейстеля, которая за 64 раунда делает из данных кашу.
886948
63 Кб, 500x376
#99 #886831
>>886481

>В стабе ресурсов нет.


А должны быть

>Вызов системных апи сделал путем получения их адресов из кернеля.


Это все надо делать в лодере

>Как в простом софте вызываются апи?


msg db 'text', 0
stdcall [MessageBoxA], 0, msg, 0, MB_OK

>Что не так у меня?


Прочитай мои комментарии еще раз. Если не дойдет читай стоя и вслух как мантру перед тем, как лечь спать. Я уже все тебе разжевал, осталось за тебя только код написать.

>Еще в моем стабе плохо то, что секция кода записываемая.


Зачем ты пишешь в кодовую секцию?ты что, ебанутый? Что тебе мешает скопировать ее в выделенную память и там расшифровать?

>Если кинуть нагрузку в ресурсы


Да хоть в задницу аллаха ее запихни. Главное скопируй ее в память и там расшифровывай ее.
887016
#100 #886941
>>885944

>Если выкину из импорта почти все функции и буду доставать их из кернеля, это может уменьшить детект?


Это может его увеличить.
#101 #886948
>>886505
Обычный ксор легко снимается если в файле есть последовательности нулевых байт (а они есть). Для изучения энтропии сделай гистограмму следующего типа:
int hist[256]
Пробегайся по шифрованым данным и для каждого байта x делай hist[x]++. Потом сравни две гистограммы для кода обычного файла и криптованого. Примерно так делают АВ.
#102 #887016
>>886831

>Это все надо делать в лодере


В чем разница между стабом и лоадером? Посмотри мой код. У меня стаб - программа, состоящая только из секции кода. При запуске она читает то, что дописано в конец .text, копирует в память, расшифровывает и запускает. Запуск через RunPE. В процедуре RunPE адреса нужных API берутся из кернеля.

Попробую кидать нагрузку в ресуры и посмотрю на результат. Сейчас у меня палится даже пустой стаб, из которого оптимизатор выкинул все, кроме WinMain, в котором есть только ret.
#103 #889520
Бампану, пожалуй. Я понял, что надо делать. Кроме того, узнал, что должны быть приблизительно выполнены некоторые соотношения между размерами секций, потому что при файловом анализе маленькая кодовая секция и большая секция ресурсов вызывает подозрение. Кодовую секцию надо забивать умным мусором, в котором есть логика. То есть, если где-то объявлена переменная, она должна быть использована. Если функция вернула значение, его надо использовать. Для крипта попробую кодирование Base85. Сейчас разбираюсь с апи UpdateResources.
#104 #889522
Алсо, на основе манипуляций с ресурсами написал дроппер. Почему мой ав не детектит его поведенческим анализом? Это из-за NTFS-потока?
889920
#105 #889920
>>889522

>Почему мой ав не детектит его поведенческим анализом?


Сдетектит когда ты попытаешься выполнить CreateProcess.
#106 #891124
Попытался сделать стаб похожим на белый софт. Вместо 20 детектов теперь 6.

https://www.virustotal.com/ru/file/702db04de2388852e813ef15bc84dd73e4c3c449e7f7d17e200d43dc18336aa9/analysis/1481286260/

Одижаемо сдетектила авира, у которой паранойя на крипторы, и нод32. У нода тоже программы запускаются в песочнице как у авиры?
112 Кб, 834x1200
#107 #891138
Без нагрузки только два детекта от нода и авиры. Видимо, +4 детекта были из-за энтропии секции ресурсов.

https://www.virustotal.com/ru/file/64d4025cf4bcb8e43193bc4deab3f606c2a8bca499ee6345ce860b140df3c34f/analysis/1481287677/

Неплохой результат. Теперь надо обмазаться статьями по обходу этих двух ав и нормализовать энтропию.
891182
95 Кб, 604x533
#108 #891182
>>891138

>нода


Векторы по коду(апи) + импорт

>авиры


Импорт

Направление дал, развлекайся.
27 Кб, 562x669
#109 #894309
ОП-хуй, тред протухает. Пили наработки, заебал
894354
#110 #894354
>>894309
Хочешь барыжить наработками?
894375
42 Кб, 604x402
#111 #894375
>>894354
Мне интересно чего достиг оп, за все это время.
894400
#112 #894400
>>894375
Уменьшил детект по импорту и энтропии. Вместо шифрования использовал ascii85, который увеличивает нагрузку на 25% и кодирует байты в текст.

Как вкатиться в полиморфизм? Хочу начать хотя бы с морфинга хелловорлда с гуи.
894420895376
#113 #894420
>>894400
С изучения ассемблера. Как только освоишь, все вопросы сами отпадут
894428
#114 #894428
>>894420
Изучал масм и смотрел исходник полиморфного криптора. Мне не совсем понятна идея. Там стаб дизассемблируется и строится какой-то связный список который, видимо, содержит инструкции. Затем для одного поля каждого узла выделяется память и что-то происходит. Используется ГСЧ для генерации мусора. Тот говнокод я плохо понял.

Между инструкциями в связном спике вставляется рандомный мусор? Как потом это все записывается в секцию кода? Как ее увеличить и не переусложнить построение заново структуры файла, чтобы секция кода не налезала на данные?
895485
#115 #895376
>>894400

>Уменьшил детект по импорту и энтропии.


Ты же понимаешь, надеюсь, что как только твой зверь пойдет гулять в интернет и попадет в руки дятлов АВ индустрии, то будет детект, возможно и по импорту. Сможешь ли ты быстро перестроить его?
28 Кб, 604x378
#116 #895485
>>894428

>смотрел исходник полиморфного криптора.


Какого? Morphine?

>Изучал масм


Я про асм в принципе, а не синтаксис и компилятор

>Мне не совсем понятна идея


В старые времена, когда были распространены вирусы, делалось это так. В зараженном файле была секция с кодом вируса, причем в каждом новой exe файле данный код был разный.
Сейчас же идея полиморфа состоит в том, что каждый новый билд криптора должен иметь минимум повторений кодовой секции с прошлым билдом.

>Используется ГСЧ для генерации мусора


Нахуй ГСЧ? Все делается на стадии компиляции билда, а не при его работе.

>Тот говнокод я плохо понял.


Сюда кинь, я поясню

>Между инструкциями в связном спике вставляется рандомный мусор?


Если хочешь использовать трешген, то да.

>Как потом это все записывается в секцию кода?


На стадии компиляции макросами. Изучи наконец инструмент с которым ты работаешь.

> Как ее увеличить и не переусложнить построение заново структуры файла, чтобы секция кода не налезала на


Не лезь, блядь, в исходный файл. Он должен оставаться девственно чистым, ты же, блядь, не протектор пишешь.
895696
#117 #895696
>>895485

>Какого? Morphine?


>Сюда кинь, я поясню



Вот этот криптор: http://rgho.st/7MVlSq6YJ

>Сейчас же идея полиморфа состоит в том, что каждый новый билд криптора должен иметь минимум повторений кодовой секции с прошлым билдом.



Как это реализуется?

>На стадии компиляции макросами. Изучи наконец инструмент с которым ты работаешь.



Я пишу на си. Похоже, на си макросами можно сделать мало что.
#118 #897891
ОП здесь. Пишу свой ПЕ-загрузчик. http://ideone.com/s9mMcD

Секции правильно мапятся в участок памяти, выделенный по базовому адресу, но выполнить код в секции .text не получается, вылетает ошибка доступа несмотря на то, что я выделяю память с атрибутом EXECUTE. Почему так?
897896
#119 #897896
>>897891
Посмотрел в олли. Вроде, понятно. Надо что-то сделать с таблицей импорта, потому что адреса функций неправильные.
898254
#120 #897900
Не совсем понимаю, как проставляются атрибуты секций. В каких сочетаниях они могут использоваться? Все их сочетания перебирать?
#121 #898254
>>897896

>Надо что-то сделать с таблицей импорта, потому что адреса функций неправильные.


Тебе нужно перестроить таблицу импорта.

>Не совсем понимаю, как проставляются атрибуты секций. В каких сочетаниях они могут использоваться? Все их сочетания перебирать?


IMAGE_SCN_MEM_EXECUTE == PAGE_EXECUTE
IMAGE_SCN_MEM_READ == PAGE_READONLY
IMAGE_SCN_MEM_WRITE == PAGE_WRITECOPY
IMAGE_SCN_MEM_NOT_CACHED == PAGE_NOCACHE
Что тут непонятного?
898282898285
#122 #898282
>>898254

>Тебе нужно перестроить таблицу импорта.


Ладно, буду читать Криса о PE-формате.
То есть просто разместить виртуальный имидж по адресу в поле BaseAddress недостаточно? Перестраивание таблицы импорта может оказаться таким сложным, что в результате патчинга потрутся соседние данные и придется перекраивать весь образ?
898292
#123 #898285
>>898254

>Что тут непонятного?


В кулхацкерских экзешниках бывают нестандартные сочетания флагов. Их игнорировать?
#124 #898292
>>898282

>То есть просто разместить виртуальный имидж по адресу в поле BaseAddress недостаточно?


нет

>Перестраивание таблицы импорта может оказаться таким сложным, что в результате патчинга потрутся соседние данные и придется перекраивать весь образ?


Там нет ничего сложного. Если ты не долбаеб, то ты не будешь лезть дальше IMAGE_DIRECTORY_ENTRY_IMPORT.

>В кулхацкерских экзешниках бывают нестандартные сочетания флагов. Их игнорировать?


Для начала сделай так, чтобы без проблем запускался хотя бы калькулятор. А дальше тестируй свой лодырь на всем, что тебе попадется, что не будет работать суй в отладчик и смотри где падает и исправляй.
898325
#125 #898325
>>898292

>нет


Почему тогда работает RunPE, который делает все то же самое, не перестраивая импорт, но в другом процессе?
898328
#126 #898328
>>898325
RunPE работает с инициализированным процессом, ты работаешь с образом который сам инициализируешь
898335
#127 #898335
>>898328
Что происходит при инициализации процесса? Почему при запуске имиджа методом RunPE импорт оказывается заполненным, если сама процедура этим не занимается?
Единственное, что делает RunPE-код, это заменяет структуру CONTEXT в новом процессе, а в этой структуры хранятся только значения регистров процессора, в которых лежат BaseAddress, PEB и что-то еще.
898454
36 Кб, 604x358
#128 #898454
>>898335
Ты заебал, хуле ты тупишь-то?
CreateProcess полностью проецирует образ в память, а ты просто передаешь контекст приложения.
898458
#129 #898458
>>898454

>CreateProcess полностью проецирует образ в память


Это делает runpe-код, который копирует заголовки и размещает секции по заданному адресу. Точно так же, как в загрузчике, который я начал писать.

http://paste.ofcode.org/ihgXnwjGU3u67VbJaAvAbh

Поэтому я и спрашиваю, почему удается запустить образ, если он проецируется вручную, а импорт не настраивается.
903744
#130 #903744
>>898458
Допилил импорт с секциями?
905875
#131 #905875
>>903744
Бампану тред, чтобы не тонул. У меня ФСБшники компы конфисковали, не знаю даже, что будут искать на икспертизе.
#132 #905889
>>905875
Зато после того, как ко мне нагрянули ФСБшники, у меня появилась мотивация развиваться дальше. Жизнь за пределами моей квартиры полное дерьмо, и нужно развиваться, чтобы не быть среди всего этого скота.
sage #133 #905915
>>905875
Сидишь с калькулятора?
905990
#134 #905990
>>905915
Угу, на древнем ноуте приятеля с виртуалки и через впн.
#135 #907525
>>877888
Ты что охуел? Протухло у него блядь.
Шаришь- делись
#136 #907538
>>905875

>ФСБшники компы конфисковали


правда?
907602
#137 #907590
>>875727

extern
#138 #907599
>>905875

>ФСБшники компы конфисковали


Конфисковали или забрали на экспертизу?
И вообще как такое получилось?
907602
#139 #907602
>>907538
>>907599
Забрали на экспертизу. Статью не сообщили, но предположительно 282.

Алсо, делюсь бояном: https://pentest.blog/art-of-anti-detection-1-introduction-to-av-detection-techniques/

Надеюсь, компы вернут, сгухи не будет, а я задрочусь всласть по этому ресёрчу. Алсо, для крипта надо будет написать перестановочный шифр, который не повышает энтропию, а не юзать неудобный ascii85.
907612907662
#140 #907603
Кстати, чем обфусцировать функции авдетекта и расшифрования на си? Разбавлять код ассемблерными вставками руками?

Автоматику можно сделать на си, или это делается только на масм + xTG?
#141 #907612
>>907602

>2017


>Россия


>Надеюсь, компы вернут, сгухи не будет, а я задрочусь всласть по этому ресёрчу


Обосрался вприсядку с этой маньки
2768 Кб, Webm
#142 #907613

>СОЗДАЛ НА МЕЙЛРУ ТРЕД ПРО КРИПТОР


>@


>НА СЛЕДУЮЩИЙ ДЕНЬ ПРИШЛИ ЧЕКИСТЫ С ОБЫСКОМ И ИЗЪЯЛИ КОМПЫ


>@


>АНОНИМНОЕ ОБЩЕНИЕ, ДОБРО ПОЖАЛОВАТЬ СНОВА

907664
#143 #907662
>>907602
ты из провинции?
по видимому, в отделе не выполнили план к концу года, вот и взяли пустышку в оборот
907671
#144 #907664
>>907613
где полное
sage #145 #907671
>>907662

>ты из провинции?


Да. Мухосрань на 5к человек. Что мне грозит?
907675
#146 #907673
Сажа прилипла.
#147 #907674
>>883622
разве нельзя выидывать свое говно через анонимайзеры типа тора и прочяя хуита? я просто нуб Пацаны
#148 #907675
>>907671
если доведут дело до суда, то административка, очень врят ли условка
оправдательного приговора не будет, тк не в россии их не выносят почти
ну и на карандаш ты уже поставлен, поэтому как-то монетизировать свои знания врят ли получится
907677
#149 #907677
>>907675

>то административка


А конкретно какое может быть административное наказание?
907696
28 Кб, 616x363
#150 #907683
Блять, какой же ущербный ноут, с которого сижу. Как неудобно кодить. Здесь еще и курсор иногда сам переходит на строчку выше. Административка может быть в виде обязательных работ или конфискации орудия преступления?
907686
#151 #907686
>>907683
чо за изык?
#152 #907696
>>907677
щас любят общественные работы давать, лол
907701907715
#153 #907701
>>907696
Например, какие? Коллектором?
907716
#154 #907715
>>907696
уборщиком
че, не можешь погуглить что ли
907716
#155 #907716
#156 #908122
Где надыбать хороший криптор?
908147908331
#157 #908147
>>908122
Хороший - значит самописный, очевидно жи.
Но по открытым стандартам.

Например хэш никому не нужен. А хэш хэша с солью - нужен всем.
#158 #908331
>>908122
у ребят в отделе К
все самое свежее, на выбор
#159 #909546
ОП здесь. Добился детекта 4/35, криптовал комету.
https://www.ziscan.com/result.php?scan=14840794688982

Показываю код:

Стаб:

http://paste.ofcode.org/3a7vN4iygmgagAiDyujH2bi

Определения:

http://paste.ofcode.org/gYfMiiDZZ7ySkrsrKwkuiX

По чему здесь мог произойти детект?

Я выкинул много функций из таблицы импорта и получаю их адреса про помощи GetProcAddress из кернеля, но это понизило детект только на 1. Как импрувнуть недетектируемость? Вызывать функции по хэшу при помощи парсинга PEB?

Или дело в хорошей антиэмульке?
909600
#160 #909600
>>909546
Шифруй имена библиотек, и перед тем как получить через getprocadress расшифровывай. Примерно так: getprocadrr(k32, xor_dec("KenJeb&4,'*7", "12345")
909896
#161 #909896
>>909600
Запиливаю ноимпорт-вызовы по хэшу функции. http://paste.ofcode.org/fZgvNcU2fRENNGiUQpWJ62

Нахождение в библиотеке реализовано. Как сделать вызов функции с неизвестный числом аргументов по хэшу? Аргументы перечислить смог при помощи встроенных средства си, а как их пихать в стек перед вызовом? Как потом сделать вызов?
#162 #909904
Оп, ты, это, какого хуя тут до сих пор сидишь? Может тебе неочевидно почему у тебя забрали пекарню? Или я даун сделал неверный вывод? Но если я сделал вывод верный то ты просто необучаемый же.
909906
#163 #909906
>>909904

>Может тебе неочевидно почему у тебя забрали пекарню?


Один раз писал гадости одной тян, и меня слили. Это было полгода назад. Мне предъявили скрины переписки. Я не думаю, что это из-за сабжа треда, хотя приход товарищей-капитанчиков совпал с обсуждением в дурове дела, связанного с одной софтиной. На следующий день пришли.
909908
#164 #909908
>>909906
Ты меня конечно извини, но увидев такую хуйню кто-то может крысануть чисто по фану, просто потому что может.
909914
#165 #909914
>>909908
Ладно, я, пожалуй, съебу отсюда. Напоследок вопрос: как окончательно почистить таблицу импорта? Я убрал оттуда все вызов, относящиеся к RunPE, но там еще куча системных апи от всяких GetModulePath (как-то так), GetSystemInfoA, VirtualAlloc откуда-то (я ее пытался сделать ноимпорт), VirtualQuery.
909973
219 Кб, 750x1000
#166 #909973
>>909914

>как окончательно почистить таблицу импорта?


ты либо тупой, либо слепой.
Еще раз говорю, пустая таблица имопрта, это первый вектор детекта.
909979
#167 #909979
>>909973
Тут на форуме разработчики говорят, что вообще не используют импорт в троянах.
Тогда какие именно апи надо вычищать из импорта, а какие оставлять? И зачем писатели троянов возятся с импортом, если троян потом все равно криптуется? Каким должен быть импорт криптора? Смотреть на импорт легального ПО и делать похоже?
909984
#168 #909984
>>909979
Вот чувак ответил, что вообще всегда делает пустой импорт. Кого слушать?
#169 #911094
Импорт должен быть, можно разбавить еще фейковым
#170 #911562
Ок, с импортом разобрались. У меня 2 детекта.

Какие еще функции должны быть в крипторе? Нужен ли антидебаг и антипесочницы для того, чтобы крипт жил дольше? Если да, то куда их втыкать? В начало каждой функции или только в начало точки входа?
912376
#171 #912376
>>911562
в начале точке входа. могу порекомендовать также создать поток, где постоянная проверка на дебагерры и т.д.
913241
#172 #913241
>>912376
Хорошая идея. Протестил такой антидебаг.

Но добавились три детекта по коду антидебага: детект по получению PEB от какой-то говноконторы, динамический детект. Как правильно использовать антиэмуляцию? Авер ведь эмулирует все функции, которые видит, поэтому делать антиэмуляцию только в StubEntry() недостаточно? Надо в каждой функции сделать хотя бы противоэмуляционный цикл, тратящий время?
913332
#173 #913332
>>913241

>детект по получению PEB от какой-то говноконторы, динамический детект


Частично решил проблему. Детект был по бесконечному циклу, в котором проверялось наличие отладчиков. Просто сделал динамический вызов процедур по хэшу, и 3 детекта отвалились.

Wait, oh shi- Только что стаб закончил анализироваться на зискане, и детектов нет ВООБЩЕ.

Но все же интересно: авер эмулирует все функции друг за другом? Надо делать в каждой функции антиэмуляцию?
#174 #913334
https://www.ziscan.com/result.php?scan=14845890292941

Охуительно. Только ебучий софос палит RunPE-код по сигнатурам. Надо срочно переписывать его в виде шеллкода. Шеллкод LoadPE я пока не осилю.
#175 #944683
Бамп годному треду
#176 #944684
Бамп годному треду
#177 #944919
Посоны говорят, что крипторы дерьмо. Сейчас актуальна чистка исходников малвари и бинарей при помощи оффсет локатора.
944975
#178 #944975
>>944919
ну опу на это весь тред намекали
но он любитель восходить на эверест в одних труханах
#179 #945196
>>874884 (OP)
Попробуй Themida/Winlicense.
#180 #945264
Сап, добрые анончики, дайте напутствие и благославление коллеге. Что нужно подучить, в какую сторону посмотреть, чтобы добротно криптовать малварь под виндус? Основное я - это вэб макакинг, ибо кушать хочется... а вот хобби и душой плаваю я на просторах низкого уровня и всяких там регистров, битиков и байтиков. Для этого дела имеется следущее: Асм(фасм, насм)х86-64 ещё не все команды выучил и понимаю как правильно их пользоввать, но в процессе каждый день по 4 часа выделяю оч хо познать это дело, С++ более менее ООПчик тоже имеется ну при нужде буду доку дрочить, вообщем я из тех кто считает называтся кодером без низкоуровневых знаний и матана нини. Так вот, что я тогда PE формат учить? гугал и школьники на хацкерских форумах советуют.
#181 #945446
Надеюсь ОПа посадят лет на 5 в тюрячку. Такой скам должен сидеть под шконкой и питаться баландой. Белые люди двигают человечество вперед. Руснявый гной, вроде ОПа, срет людям жесткие диски и вымогает шекели.
946262
#182 #946262
#183 #948317
Бамп
Тред утонул или удален.
Это копия, сохраненная 18 марта 2017 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски