Это копия, сохраненная 18 марта 2017 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Попытался прикрутить антиэмуляцию, но лоадер все равно высаживает на измену. WinMain лоадера:
http://ideone.com/ueefFh
Как сделать без палева?
любой упакованный екзешник в том же процесс эксплорере цветом показывается
запускаем его и любое подозрительное говно выпиливается на раз
Тогда что должна делать программа, которая считается вирусом? Отковыривать драйвера всех устройств? Полиморфик-метаморф, выводящий на экран хуец и закрывающий браузер?
то же что и биологический вирус: внедряется в другие программы и размножается
>Если инжект и настройку контекста
Это. RunPE перезапускает свой процесс с другой начинкой. Из-за этого у меня возникли проблемы с запуском кодеса, который создает неубиваемый процесс (спавнится два процесса, которые друг за другом следят).
>Если полноценный РЕ лодырь, то сам писал или взял готовый из интернетов?
Сначала пытался использовать лоадер Грейта. http://winlock.ru/viewtopic.php?id=1540
Что это вообще за пиздец? Специально выложили такой код, чтобы его надо было переписывать? Потому что он даже не компилится, а после правки возвращаются нулевые хэндлы, и вообще там память сначала освобождается, а потом используется.
Где можно раздобыть рабочий лоадер?
Хочу сделать макрос типа #define MUSOR WinAPiFunc() и вставлять его после каждой строчки. Меняю функцию - сбиваются сигнатуры. Кроме того, сделаю шифрование и расшифровку RunPE кода, потому что он сразу попадет в базы.
Помогло объявить ее volatile. Однако теперь касперский ругается. Надо проверить запуск без шифрования. Использовал алгоритм XTEA.
> криптовать себе анус ратники
"криптовать ратники" в 2016 году означает делать так называемый серверный полиморфизм
как то там закрывают экзешники сейчас только мудаки
лол. криптую одной конторе ее поделие на регулярной основе. не ратник конечно, но и не белый софт. ну и где теперь твой б-г, а? а? а?
ну дык есть спрос, дак делай, это же бизнес
токо писали же выше - все упакованные экзешники палятся на раз, даже тупыми способами - в том же proccess exp руссиновича отдельным цветом выделяются
ах, да, скорей всего это какой-то софт, связанный с играми, чит или бот, так ведь?
>ну дык есть спрос, дак делай, это же бизнес
спрос есть, но уже спадает
>токо писали же выше - все упакованные экзешники палятся на раз
палят поделки уровня ОП-хуя, которые через runpe работают. мне же платят деньги за то, чтобы ни один авер не вопил при запуске билда
>ах, да, скорей всего это какой-то софт, связанный с играми, чит или бот, так ведь?
ноуп
нах те это надо, написали же что рыночек помирает
"серверный полиморфизм" в гугле лень набрать?
>мне же платят деньги за то, чтобы ни один авер не вопил при запуске билда
Как запускаешь? Писал собственный лоадер?
>"серверный полиморфизм" в гугле лень набрать?
причем тут серверный полиморфизм? это тот-же крипт, прост билд криптуется на серваке и выдается постоянно новым.
в любом случае все эти техники придется осваивать.
энивей, полиморфизм уже не так канает, а вот хороший антиэмуль написать, не каждый осилит
Зависть. Надо мне переписать лойдер Грейта, надеюсь, с ним можно что-то сделать.
А передача управления на шеллкод, который делает раскриптовку секций, не катит?
Объясни. Понимаю работку криптора как расшифровка образа и запуск в памяти или передача управления на код, который расшифровывает все секции и передает управление на оригинальную точку входа.
>Накидайте статей по написанию обфускаторов сишного или асм кода.
Если ты знаешь цешечку и уж тем более асм, то этот вопрос, как минимум, глупый, ибо написать примитивный обфускатор исходнников дело пары вечеров.
>написать примитивный обфускатор исходнников дело пары вечеров
Это толстый траленг? Выглядит как задача, в которой требуется строить синтаксическое дерево. Я вообще думал начать писать морфер ассемблерного кода, который рандомно заменяет, например, call CreateFile на mov eax, CreateFile / call eax
Печаль. На ксакепе стали появляться статьи о техниках нулевых годов, как раз в то время, когда они устарели.
>Я вообще думал начать писать морфер ассемблерного кода
бред. все делается макросами на том же фасме.
>например, call CreateFile на mov eax, CreateFile / call eax
нинужно. авер на оба варианта будет реагировать одинаково.
Тебе нужно понять, что глупо запутывать аверов, нужо быть максимально похожим на белый софт. В этом плане тебе поможет умный генератор треш кода.
>В этом плане тебе поможет умный генератор треш кода.
Вот это мне интересно. Сначала я хотел сделать генератор мусора через дефайны, но так редко кто делает. Каков алгоритм замусоривания кода? Дизассемблировать стаб, построить связный список инструкций, и, проходя по нему, выделять память, куда писать заранее заготовленный мусор случайным выбором?
Зашифрование своего RunPE-кода хочу сделать так: в функцию RunPE вставляю метки начала и конца при помощи __asm nop nop nop nop и во время билда шифрую RunPE тем же ключом, которым он расшифровывается.
Саму нагрузку я шифрую XTEA, который повышает энтропию. Имеет ли смысл зашифрованный XTEA код кодировать Base64 для снижения энтропии?
>Сначала я хотел сделать генератор мусора через дефайны, но так редко кто делает. Каков алгоритм замусоривания кода? Дизассемблировать стаб, построить связный список инструкций, и, проходя по нему, выделять память, куда писать заранее заготовленный мусор случайным выбором?
У меня все макросами на фасме оформлено. Поэтому я треш код генерирую при компилировании стаба.
>Зашифрование своего RunPE-кода хочу сделать так: в функцию RunPE вставляю метки начала и конца при помощи __asm nop nop nop nop и во время билда шифрую RunPE тем же ключом, которым он расшифровывается.
Расшифровать не забудь.
>Саму нагрузку я шифрую XTEA, который повышает энтропию. Имеет ли смысл зашифрованный XTEA код кодировать Base64 для снижения энтропии?
Ваще похуй.
У меня была идея написать статью и выложить в свободный доступ, про современные тенденции криптописания. А то, что есть в интернете уже протухло блядь на стадии написания оных. Но мне лень, блять, так что спрашивай что-то конкретное.
Пиши давай.
Почему протухло? Я читал, что генерация мусора тоже слабо помогает, потому что ав-движки подсчитывают статистику вызовов и используют цепи Маркова для анализа.
Как сейчас криптуют? Как это пишется с нуля? Что знать надо?
Алсо, как криптовать неубиваемые приложения, которые запускают 2...12 процессов, следящих друг за другом, и запускают еще 1..12 процессов при завершении одного из них? RunPE для этого не подходит из-за принципа работы. Получается бесконечный перезапуск всех процессов.
Можно ли продать беспалевную криптовку? Каким образом это сделать? Просто регаешься на сплоите, создаешь тему, и школьники платят тебе за криптовку ратников для своих подружек?
http://ideone.com/x5pnh1
Хочешь залить на вирустотал? 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
Хочу сделать протект кода так, чтобы без шифрования из ассемблерной вставки происходил переход на вторую ассемблерную вставку (в конец функции) для обхода зашифрованного кода. При расшифровании надо как-то патчить дальность перехода.
Вот еще: улучшал протект функции.
Главная программа: http://ideone.com/KDVVz1
Шифрование между метками: http://ideone.com/KOYU4M
Не знаю, что спросить.
1. Как делаются крипторы в общем случае? Как сделать наименьший стаб для легкой чистки?
2. Как реализуется RunPE для x64, какие там изменения по сравнению с x86?
3. Какими средствами делается полный FUD? Используют ли шифрование/расшифрование в рантайме частей стаба для сбивания сигнатур на наиболее важные функции?
4. Как продавать крипт и не опозориться на весь эксплоит? Что нужно учесть в своем крипторе для работы с любым софтом?
5. Какие подводные камни с TSL и почему об этом пишут при продаже крипторов?
Есть подводные камни с софтом, который стартует вместе с системой. В таких случаях пользователь обычно не двигает мышкой довольно долго.
Ну, таким методом можно какие-нибудь дропперы криптовать.
Что плохого в этой реализации?
https://youtu.be/3KV6e3Ns8g8
>1. Как делаются крипторы в общем случае? Как сделать наименьший стаб для легкой чистки?
Стаб, антиэмуль, загрузчик.
Наименьший стаб элементарно, все что тебе для этого надо - базонезависимый код.
>2. Как реализуется RunPE для x64, какие там изменения по сравнению с x86?
Последний раз тебе говорю, RunPE для лохов, PE Loader для пацанов. Пишется лоадер для х86, а дальше добавляются нужные структуры для х64, импорт-хуимпорт и прочая дичь.
>3. Какими средствами делается полный FUD? Используют ли шифрование/расшифрование в рантайме частей стаба для сбивания сигнатур на наиболее важные функции?
Берешь нужный тебе авер и исследуешь, по каким именно критериям он палит твой билд, потом добавляешь этот способ обхода в загрузчик. Ну и писать регулярно апи-антиэмули, либо разработать более-менее универсальный(какой? а вот в этом сам разберись).
>4. Как продавать крипт и не опозориться на весь эксплоит? Что нужно учесть в своем крипторе для работы с любым софтом?
Не использовать RunPE. Криптор должен поддерживать все, что сейчас в моде, а также ФУД и постоянная поддержка.
>5. Какие подводные камни с TSL и почему об этом пишут при продаже крипторов?
TLS, а не TSL. Это такая штука, которая отвечает за память потоков, и без чего не обходится ни одна прога написанная на delphi. А подводные камни в том, что если твой криптор не будет поддерживать работу с tls, то и софт, который его использует, не будет работать.
>Последний раз тебе говорю, RunPE для лохов, PE Loader для пацанов
Что можно почитать о написании своего лоадера?
тебе по треду уже написали и не раз, что рынок сужается, продать ты свое поделие врят ли сможешь
качественный дроппер напиши ну или server-side полиморфизм осваивай, тоже полезно
будешь "криптовать" свое поделие дома и по сети просто обновлять всю нагрузку и все, с какой-то периодичностью
>тебе по треду уже написали и не раз, что рынок сужается, продать ты свое поделие врят ли сможешь
Печально, я ради этого взялся задрачивать, ну и просто охуенное ощущение, когда твоя программа, наконец, стартует из памяти.
>качественный дроппер напиши
Как сделать качественно? Тоже использовать антиэмуляцию, детект песочниц, замусоривание исходников api-вызовами перед компиляцией?
опять же, нужны нехуевые знания, чтобы уметь сделать хотя бы просто более-менее работающий криптор, или там суметь сделать полиморфный вирус (сейчас и вообще никто это не делает), или сделать руткит и то что будет работать в kernel mode
для этого нужно быть не только программистом, но и исследователем и реверсинженером, это очень сложно и затратно по времени
и имея только навыки кодера, ты это не сделаешь, в то время как написать что-то просто аккуратно и относительно незаметно работающее в user mode, то что общается по сети через http через настройки дефолтного браузера - это да, ты сможешь сделать
для начала напиши обычный дроппер (вообще без никакого скрытия в системе) который может забрать полезную нагрузку через http с фиксированного сервака и нормально проинсталлировать ее в систему
даже это, если делать с нуля, займет у тебя пару месяцев
а потом начинай потихоньку усовершенствовать его
>даже это, если делать с нуля, займет у тебя пару месяцев
Писал программу, которая копирует себя в папку Roaming и прописывается в Run. Это, видимо, уровень дно, а не "нормально проинсталлироваться в системе"?
Что такого можно два месяца делать в программе, которая просто скачивает файл и запускает его?
Инди хуесосит базонезависимось
Во вторых это какой то нубский треш - функа которая аналог GPA, ну и что дальше, базонезависим - так GPA тоже. Автор есно не понимает что базонезависимость это большое зло, так как данные от кода не отличимы. А для такого кода современные технологии(автоматика) применяться не могут.
Нормальным людям хэцкерская хуйня перестаёт быть интересной лет в пятнадцать.
А если ты об ней узнал только в 27?
Школьники.
Никак, ты бы еще на стеке код выполнял бы.
А чего хорошего, когда на десятке по дефолту выполнение кода на стеке заблочено вообще.
сейчас за блек в россии сажают
причем сажают и кодеров
положим написал ты относительно безобидный софт что на андроиде работает с смс
но конечно же ты знал для чего его будут использьзовать
тебя найдут, и пойдешь ты сразу по нескольким статьям, тк припишут группу, а группа за собой потянет и мошенничество в особо крупных и прочее
и все, отправился лет на 8
Двачую тебя. Мать, когда ещё следаком была, говорила, что все чаще в нагрузку дают подобные дела. Самое смешное, что кодеры писали за штуку-две баксов в месяц код, который большим дядям десятки миллионов долларов приносил. Угадай, кто потом попадает на сгущенку, а кто находится вне юрисдикции РФ.
Поэтому надо работать на зарубеж. Или уезжать на Запад, а софт делать для рашки.
Что-то все хуево. https://www.virustotal.com/ru/file/2c3a3aed2021b6b65ab98ff99fb777362dcc743f4146ff03880899353f66a697/analysis/1480619099/
Кодес:
https://mega.nz/#!ZlJGSIoC!BxcTOn89ezvHpPMXvXLuKil_RgIEHy7Q4qKLMvnvZYU
В самом начале было 20 детектов. Когда я везде натыкал макросы MUSOR, детект снизился до 11. Потом я хотел улучшить энтропию кодовой секции и вместо шифрования XTEA использовал ксор с константой. Но это увеличило детекты на 7. Некоторые антивирусы, видимо, запускают мой криптор в песочнице, остальные обламываются на антиэмуляции и палят по сигнатурам.
Я прочитал, что сигнатуры сейчас делают на все, что угодно: на поля хедеров, таблицу импорта, и т.п., поэтому просто разбавлять код мусором помогает не сильно. Как уменьшить палево?
Если выкину из импорта почти все функции и буду доставать их из кернеля, это может уменьшить детект?
Опять пустой стаб, состоящий только из секции кода. Расширил секцию кода и дописал в ее конец зашифрованный софт. Теперь 14 детектов несмотря на то, что стаб ничего не делает.
Откуда детекты?
>Откуда детекты?
>Тебе нужно понять, что глупо запутывать аверов, нужо быть максимально похожим на белый софт
Ресурсы, импорт, вызовы АПИ, все это должно быть реализовано так, как в простом софте.
С авастом и его evo-gen ты конечно поебешься знатно.
>Ресурсы
В стабе ресурсов нет.
>импорт
Вызов системных апи сделал путем получения их адресов из кернеля. В таблице импорта остались безобидные функции вроде ZeroMemory и CreateFile.
>вызовы АПИ
Как в простом софте вызываются апи? Что не так у меня?
Еще в моем стабе плохо то, что секция кода записываемая. Если кинуть нагрузку в ресурсы, а не в секцию .text, количество детектов уменьшится? Какие подводные камни при таком подходе?
>Еще в моем стабе плохо то, что секция кода записываемая
А, нет, это я уже исправил. Но нагрузка дописывается в .text.
Почему высокая энтропия это плохо? Что она собой представляет? В теории информации энтропия - это математическое ожидание сообщений из источника. То есть нечто наиболее вероятное. Почему высокая вероятность чего-то это плохо при детекте?
Потому что при высокой энтропии считается что это сжатые/шифрованные данные/код.
У меня почему-то после шифрования ксором с константой файл в олли начал определяться как упакованный. Когда шифровал XTEA, такого детекта не было несмотря на то, что в XTEA используется сеть Фейстеля, которая за 64 раунда делает из данных кашу.
>В стабе ресурсов нет.
А должны быть
>Вызов системных апи сделал путем получения их адресов из кернеля.
Это все надо делать в лодере
>Как в простом софте вызываются апи?
msg db 'text', 0
stdcall [MessageBoxA], 0, msg, 0, MB_OK
>Что не так у меня?
Прочитай мои комментарии еще раз. Если не дойдет читай стоя и вслух как мантру перед тем, как лечь спать. Я уже все тебе разжевал, осталось за тебя только код написать.
>Еще в моем стабе плохо то, что секция кода записываемая.
Зачем ты пишешь в кодовую секцию?ты что, ебанутый? Что тебе мешает скопировать ее в выделенную память и там расшифровать?
>Если кинуть нагрузку в ресурсы
Да хоть в задницу аллаха ее запихни. Главное скопируй ее в память и там расшифровывай ее.
>Если выкину из импорта почти все функции и буду доставать их из кернеля, это может уменьшить детект?
Это может его увеличить.
Обычный ксор легко снимается если в файле есть последовательности нулевых байт (а они есть). Для изучения энтропии сделай гистограмму следующего типа:
int hist[256]
Пробегайся по шифрованым данным и для каждого байта x делай hist[x]++. Потом сравни две гистограммы для кода обычного файла и криптованого. Примерно так делают АВ.
>Это все надо делать в лодере
В чем разница между стабом и лоадером? Посмотри мой код. У меня стаб - программа, состоящая только из секции кода. При запуске она читает то, что дописано в конец .text, копирует в память, расшифровывает и запускает. Запуск через RunPE. В процедуре RunPE адреса нужных API берутся из кернеля.
Попробую кидать нагрузку в ресуры и посмотрю на результат. Сейчас у меня палится даже пустой стаб, из которого оптимизатор выкинул все, кроме WinMain, в котором есть только ret.
>Почему мой ав не детектит его поведенческим анализом?
Сдетектит когда ты попытаешься выполнить CreateProcess.
https://www.virustotal.com/ru/file/702db04de2388852e813ef15bc84dd73e4c3c449e7f7d17e200d43dc18336aa9/analysis/1481286260/
Одижаемо сдетектила авира, у которой паранойя на крипторы, и нод32. У нода тоже программы запускаются в песочнице как у авиры?
https://www.virustotal.com/ru/file/64d4025cf4bcb8e43193bc4deab3f606c2a8bca499ee6345ce860b140df3c34f/analysis/1481287677/
Неплохой результат. Теперь надо обмазаться статьями по обходу этих двух ав и нормализовать энтропию.
Уменьшил детект по импорту и энтропии. Вместо шифрования использовал ascii85, который увеличивает нагрузку на 25% и кодирует байты в текст.
Как вкатиться в полиморфизм? Хочу начать хотя бы с морфинга хелловорлда с гуи.
Изучал масм и смотрел исходник полиморфного криптора. Мне не совсем понятна идея. Там стаб дизассемблируется и строится какой-то связный список который, видимо, содержит инструкции. Затем для одного поля каждого узла выделяется память и что-то происходит. Используется ГСЧ для генерации мусора. Тот говнокод я плохо понял.
Между инструкциями в связном спике вставляется рандомный мусор? Как потом это все записывается в секцию кода? Как ее увеличить и не переусложнить построение заново структуры файла, чтобы секция кода не налезала на данные?
>Уменьшил детект по импорту и энтропии.
Ты же понимаешь, надеюсь, что как только твой зверь пойдет гулять в интернет и попадет в руки дятлов АВ индустрии, то будет детект, возможно и по импорту. Сможешь ли ты быстро перестроить его?
>смотрел исходник полиморфного криптора.
Какого? Morphine?
>Изучал масм
Я про асм в принципе, а не синтаксис и компилятор
>Мне не совсем понятна идея
В старые времена, когда были распространены вирусы, делалось это так. В зараженном файле была секция с кодом вируса, причем в каждом новой exe файле данный код был разный.
Сейчас же идея полиморфа состоит в том, что каждый новый билд криптора должен иметь минимум повторений кодовой секции с прошлым билдом.
>Используется ГСЧ для генерации мусора
Нахуй ГСЧ? Все делается на стадии компиляции билда, а не при его работе.
>Тот говнокод я плохо понял.
Сюда кинь, я поясню
>Между инструкциями в связном спике вставляется рандомный мусор?
Если хочешь использовать трешген, то да.
>Как потом это все записывается в секцию кода?
На стадии компиляции макросами. Изучи наконец инструмент с которым ты работаешь.
> Как ее увеличить и не переусложнить построение заново структуры файла, чтобы секция кода не налезала на
Не лезь, блядь, в исходный файл. Он должен оставаться девственно чистым, ты же, блядь, не протектор пишешь.
>Какого? Morphine?
>Сюда кинь, я поясню
Вот этот криптор: http://rgho.st/7MVlSq6YJ
>Сейчас же идея полиморфа состоит в том, что каждый новый билд криптора должен иметь минимум повторений кодовой секции с прошлым билдом.
Как это реализуется?
>На стадии компиляции макросами. Изучи наконец инструмент с которым ты работаешь.
Я пишу на си. Похоже, на си макросами можно сделать мало что.
Секции правильно мапятся в участок памяти, выделенный по базовому адресу, но выполнить код в секции .text не получается, вылетает ошибка доступа несмотря на то, что я выделяю память с атрибутом EXECUTE. Почему так?
Посмотрел в олли. Вроде, понятно. Надо что-то сделать с таблицей импорта, потому что адреса функций неправильные.
>Надо что-то сделать с таблицей импорта, потому что адреса функций неправильные.
Тебе нужно перестроить таблицу импорта.
>Не совсем понимаю, как проставляются атрибуты секций. В каких сочетаниях они могут использоваться? Все их сочетания перебирать?
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
Что тут непонятного?
>Тебе нужно перестроить таблицу импорта.
Ладно, буду читать Криса о PE-формате.
То есть просто разместить виртуальный имидж по адресу в поле BaseAddress недостаточно? Перестраивание таблицы импорта может оказаться таким сложным, что в результате патчинга потрутся соседние данные и придется перекраивать весь образ?
>Что тут непонятного?
В кулхацкерских экзешниках бывают нестандартные сочетания флагов. Их игнорировать?
>То есть просто разместить виртуальный имидж по адресу в поле BaseAddress недостаточно?
нет
>Перестраивание таблицы импорта может оказаться таким сложным, что в результате патчинга потрутся соседние данные и придется перекраивать весь образ?
Там нет ничего сложного. Если ты не долбаеб, то ты не будешь лезть дальше IMAGE_DIRECTORY_ENTRY_IMPORT.
>В кулхацкерских экзешниках бывают нестандартные сочетания флагов. Их игнорировать?
Для начала сделай так, чтобы без проблем запускался хотя бы калькулятор. А дальше тестируй свой лодырь на всем, что тебе попадется, что не будет работать суй в отладчик и смотри где падает и исправляй.
>нет
Почему тогда работает RunPE, который делает все то же самое, не перестраивая импорт, но в другом процессе?
RunPE работает с инициализированным процессом, ты работаешь с образом который сам инициализируешь
Что происходит при инициализации процесса? Почему при запуске имиджа методом RunPE импорт оказывается заполненным, если сама процедура этим не занимается?
Единственное, что делает RunPE-код, это заменяет структуру CONTEXT в новом процессе, а в этой структуры хранятся только значения регистров процессора, в которых лежат BaseAddress, PEB и что-то еще.
Ты заебал, хуле ты тупишь-то?
CreateProcess полностью проецирует образ в память, а ты просто передаешь контекст приложения.
>CreateProcess полностью проецирует образ в память
Это делает runpe-код, который копирует заголовки и размещает секции по заданному адресу. Точно так же, как в загрузчике, который я начал писать.
http://paste.ofcode.org/ihgXnwjGU3u67VbJaAvAbh
Поэтому я и спрашиваю, почему удается запустить образ, если он проецируется вручную, а импорт не настраивается.
Бампану тред, чтобы не тонул. У меня ФСБшники компы конфисковали, не знаю даже, что будут искать на икспертизе.
Зато после того, как ко мне нагрянули ФСБшники, у меня появилась мотивация развиваться дальше. Жизнь за пределами моей квартиры полное дерьмо, и нужно развиваться, чтобы не быть среди всего этого скота.
Угу, на древнем ноуте приятеля с виртуалки и через впн.
>ФСБшники компы конфисковали
Конфисковали или забрали на экспертизу?
И вообще как такое получилось?
>>907599
Забрали на экспертизу. Статью не сообщили, но предположительно 282.
Алсо, делюсь бояном: https://pentest.blog/art-of-anti-detection-1-introduction-to-av-detection-techniques/
Надеюсь, компы вернут, сгухи не будет, а я задрочусь всласть по этому ресёрчу. Алсо, для крипта надо будет написать перестановочный шифр, который не повышает энтропию, а не юзать неудобный ascii85.
Автоматику можно сделать на си, или это делается только на масм + xTG?
>2017
>Россия
>Надеюсь, компы вернут, сгухи не будет, а я задрочусь всласть по этому ресёрчу
Обосрался вприсядку с этой маньки
>СОЗДАЛ НА МЕЙЛРУ ТРЕД ПРО КРИПТОР
>@
>НА СЛЕДУЮЩИЙ ДЕНЬ ПРИШЛИ ЧЕКИСТЫ С ОБЫСКОМ И ИЗЪЯЛИ КОМПЫ
>@
>АНОНИМНОЕ ОБЩЕНИЕ, ДОБРО ПОЖАЛОВАТЬ СНОВА
ты из провинции?
по видимому, в отделе не выполнили план к концу года, вот и взяли пустышку в оборот
где полное
разве нельзя выидывать свое говно через анонимайзеры типа тора и прочяя хуита? я просто нуб Пацаны
если доведут дело до суда, то административка, очень врят ли условка
оправдательного приговора не будет, тк не в россии их не выносят почти
ну и на карандаш ты уже поставлен, поэтому как-то монетизировать свои знания врят ли получится
чо за изык?
Хороший - значит самописный, очевидно жи.
Но по открытым стандартам.
Например хэш никому не нужен. А хэш хэша с солью - нужен всем.
https://www.ziscan.com/result.php?scan=14840794688982
Показываю код:
Стаб:
http://paste.ofcode.org/3a7vN4iygmgagAiDyujH2bi
Определения:
http://paste.ofcode.org/gYfMiiDZZ7ySkrsrKwkuiX
По чему здесь мог произойти детект?
Я выкинул много функций из таблицы импорта и получаю их адреса про помощи GetProcAddress из кернеля, но это понизило детект только на 1. Как импрувнуть недетектируемость? Вызывать функции по хэшу при помощи парсинга PEB?
Или дело в хорошей антиэмульке?
Шифруй имена библиотек, и перед тем как получить через getprocadress расшифровывай. Примерно так: getprocadrr(k32, xor_dec("KenJeb&4,'*7", "12345")
Запиливаю ноимпорт-вызовы по хэшу функции. http://paste.ofcode.org/fZgvNcU2fRENNGiUQpWJ62
Нахождение в библиотеке реализовано. Как сделать вызов функции с неизвестный числом аргументов по хэшу? Аргументы перечислить смог при помощи встроенных средства си, а как их пихать в стек перед вызовом? Как потом сделать вызов?
>Может тебе неочевидно почему у тебя забрали пекарню?
Один раз писал гадости одной тян, и меня слили. Это было полгода назад. Мне предъявили скрины переписки. Я не думаю, что это из-за сабжа треда, хотя приход товарищей-капитанчиков совпал с обсуждением в дурове дела, связанного с одной софтиной. На следующий день пришли.
Ты меня конечно извини, но увидев такую хуйню кто-то может крысануть чисто по фану, просто потому что может.
Ладно, я, пожалуй, съебу отсюда. Напоследок вопрос: как окончательно почистить таблицу импорта? Я убрал оттуда все вызов, относящиеся к RunPE, но там еще куча системных апи от всяких GetModulePath (как-то так), GetSystemInfoA, VirtualAlloc откуда-то (я ее пытался сделать ноимпорт), VirtualQuery.
>как окончательно почистить таблицу импорта?
ты либо тупой, либо слепой.
Еще раз говорю, пустая таблица имопрта, это первый вектор детекта.
Тут на форуме разработчики говорят, что вообще не используют импорт в троянах.
Тогда какие именно апи надо вычищать из импорта, а какие оставлять? И зачем писатели троянов возятся с импортом, если троян потом все равно криптуется? Каким должен быть импорт криптора? Смотреть на импорт легального ПО и делать похоже?
Вот чувак ответил, что вообще всегда делает пустой импорт. Кого слушать?
Какие еще функции должны быть в крипторе? Нужен ли антидебаг и антипесочницы для того, чтобы крипт жил дольше? Если да, то куда их втыкать? В начало каждой функции или только в начало точки входа?
в начале точке входа. могу порекомендовать также создать поток, где постоянная проверка на дебагерры и т.д.
Хорошая идея. Протестил такой антидебаг.
Но добавились три детекта по коду антидебага: детект по получению PEB от какой-то говноконторы, динамический детект. Как правильно использовать антиэмуляцию? Авер ведь эмулирует все функции, которые видит, поэтому делать антиэмуляцию только в StubEntry() недостаточно? Надо в каждой функции сделать хотя бы противоэмуляционный цикл, тратящий время?
>детект по получению PEB от какой-то говноконторы, динамический детект
Частично решил проблему. Детект был по бесконечному циклу, в котором проверялось наличие отладчиков. Просто сделал динамический вызов процедур по хэшу, и 3 детекта отвалились.
Wait, oh shi- Только что стаб закончил анализироваться на зискане, и детектов нет ВООБЩЕ.
Но все же интересно: авер эмулирует все функции друг за другом? Надо делать в каждой функции антиэмуляцию?
Охуительно. Только ебучий софос палит RunPE-код по сигнатурам. Надо срочно переписывать его в виде шеллкода. Шеллкод LoadPE я пока не осилю.
Попробуй Themida/Winlicense.
Это копия, сохраненная 18 марта 2017 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.