• XSS.stack #1 – первый литературный журнал от юзеров форума

Как эффективно чистить рантайм C++?

не плохо платит
Сомнительно. Понятное дело, что ему нужен тематический контент хорошего качества. Но не берутся в расчёт сорцы, а это странно, так как именно они самый дорогой товар во всей этой теме. (Не считая конечно же первопричину сорцов - бизнес темы, под которую пилятся сорцы, но такое не продаётся зачастую, а если и продаётся то за хорошую тему там сказочные цифры, по этому в расчёт это не берем). Как правило, на 99% всех вкусностей в теме приходятся как раз сорцы, но их наличие не оценивается финансово вообще никак, только их описание, что они делают, за 1000 знаков 700руб... Вот и получается что будут писать те, кто не смог продать свои сорцы более выгодно. А не смогли, потому что либо не имели необходимой ценности(абстрактный конь в вакууме) либо писались вполне конкретно, но неполноценны из-за того, что познания автора в конкретной бизнес модели скудны, от чего сорцы не покрывают нужд для рубки капусты на этой теме и требуют значительной доработки. Либо у автора полу наработки, ни разу не продакшн реди.
Тогда уж по белой пойти работать, даже джуном больше получишь, чем с этой инициативы админа, в которой, к слову, контент джуна никому интересен не будет и будет осуждаться(мол зачем ты кого то учишь, если сам плаваешь). А ребятам взрослее, кому есть что рассказать, такие деньги просто не интересны, поскольку их заработок дейли превышает заработок с написанной статьи х2-х3.
Если резюмировать, то по данной инициативе можно будет видеть статьи:
-Джунов, которые пытаются кого то научить, сами при этом не разбираются
-Абстрактные проекты в вакууме. Вроде почитать можно, но не впихду, не в красную армию. Со статьей пусть будет, а без неё как бы и не надо. Читать то форумчанам что то нужно, привлекать трафик на форум...
- Редко. Недоработки, допилив которые, можно будет что то поиметь.
Увы, но это так.
Я кстати знаю как это все исправить, чтобы эта инициатива была поистине годной для участников и с большим импактом для форума. Вроде уже где то на форуме писал, как сделать это.
Платформа контента, только по нашей теме и основа это не видео(как на ютубе), а текст. Где каждый автор сможет назначить цену за свой контент под хайдом. 1/4 часть контента открыта. За остальное нужно заплатить(как на хакере +-). Модеры видят контент, оценивают его, пишут отзыв, это все поощряется процентом с продаж контента и модеру и форуму. Все транзакции осуществляются посредством форумной крипты с холдом средств на вывод(для избежания возможности обмана). Покупатели контента это сами форумчане и гости форума.
 
Я кстати знаю как это все исправить, чтобы эта инициатива была поистине годной для участников и с большим импактом для форума. Вроде уже где то на форуме писал, как сделать это.
Платформа контента, только по нашей теме и основа это не видео(как на ютубе), а текст. Где каждый автор сможет назначить цену за свой контент под хайдом. 1/4 часть контента открыта. За остальное нужно заплатить(как на хакере +-). Модеры видят контент, оценивают его, пишут отзыв, это все поощряется процентом с продаж контента и модеру и форуму. Все транзакции осуществляются посредством форумной крипты с холдом средств на вывод(для избежания возможности обмана). Покупатели контента это сами форумчане и гости форума.
Это будет помойка, в идеальном мире все было бы круто конечно, но не у нас, прибежет куча инфо-цыганей, прибежит куча опять же таких же джунов которые ничего не знают, но захотят что-то поиметь, тоже самое что и продавать псевдо обучения, данный контент нельзя будет оценить, еще интереснее начнется когда часть пользователей будет говорить что это круто, а остальная что это говно, и еще куча мелких деталей которые приведут к еще большему цирку, в котором по настоящему интересные статьи полностью затеряются
 
Это будет помойка, в идеальном мире все было бы круто конечно, но не у нас, прибежет куча инфо-цыганей, прибежит куча опять же таких же джунов которые ничего не знают, но захотят что-то поиметь, тоже самое что и продавать псевдо обучения, данный контент нельзя будет оценить, еще интереснее начнется когда часть пользователей будет говорить что это круто, а остальная что это говно, и еще куча мелких деталей которые приведут к еще большему цирку, в котором по настоящему интересные статьи полностью затеряются
Я не про схемы и бизнесы говорил. А про сорцы, реверс, эксплуатацию, поиск уязвимостей и методики. Все это легко премодерировать. И все что связано с малварью и веб уязвимостями. Думаю в этой сфере тяжело быть инфоцыганом. Тут сразу все проверяется, работает или нет. Плюс модеры, фильтрующие поступающий контент, каждый в своём домене и получающий за подобную фильтрацию и рецензию процент. Плюс разбивать контент на планки: для начинающих/средний/эксперт. Соответственно контент для начинающих не может стоить много, как и контент уровня эксперт слишком мало. Такой вот антимонопольный комитет.
Плюс учитывай, что если контент субъективно для какого то читателя ни о чем, он больше просто не купит его у данного автора.
Как вариант еще, сделать кнопку для авторов «продать сразу». Цену назначает администрация на своё усмотрение, оценивая на сколько сможет перепродать себе в +. Таким образом администрация полностью выкупает контент сразу и тут же его продаёт по той же модели, но как бы от своего имени, берет на себя ответственность по отбиву в плюс. Вариант для тех, кто хочет получить фикс оплату сразу за хороший контент. Плюс администрация может сама назначать кейсы, то есть на какие темы писать, (какие по их мнению будут востребованы и отобьются).
 
Последнее редактирование:
Убираешь функция из кода, смотришь какой детект ушел, потом делаешь выходы из функции чтобы определить точное место детекта, или вырезаешь из нее куски. АПИ, циклы, работа со строками, ресурсы все это палится.
Каждый АВ любит что то своё палить в первую очередь.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Для эффективной чистки нужно знать какие детекты вообще бывают и на что ставятся. Может быть детект просто на цикл)
Рад был услышать ответ от криптора!) Спасибо. Детект на цикл? Впервые слышу такое. Там кстати, было три цикла фор (в одном for). Хз детектит на это... А как узнать какие детекты бывают и на что ставятся, или почитать об этом. Щас добавлю мусорный код, создал стаб, строки шифруются, осталось апи функции скрыть (для реверсоров чтоб тяжело жить), антиэмуляцию добавил. Так, получается я просто вызываю return 0 в функции по очереди, смотрю, меняю код и снова рантайм чекаю? А вообще, можно добиться такого из рефакторинга? Т.е. просто поменяв логику, перместив функции, добавив пару лишних проверок, данных и т.д.?
 
Пожалуйста, обратите внимание, что пользователь заблокирован
ТС, тебе же написали, меняй лучше названия функций и трешгень, но главное - руками, чтобы энтропия была в норме :)
Какой вопрос, такой и ответ
Принял) прост мб кому-то еще есть что-то добавить. Хочу услышать мнение многих, ну, для статистики))
 
А как узнать какие детекты бывают и на что ставятся, или почитать об этом.
Гугл + тесты, опыт. Чаще детект является собирательным значением из поинтов которые ты набираешь. Ну например 3 поинта = детект. 1 поинт за кривой импорт, 1 за строку и 1 за карту (порядок) вызова АПИ.

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

Так, получается я просто вызываю return 0 в функции по очереди, смотрю, меняю код и снова рантайм чекаю?
Чаще лучше вырезать куски как сказали выше. Скажем если код за return 0 вызывает какую-то АПИ за которую добавляется поинт к детекту то она может остаться в таблице импорта твоего файла.

А вообще, можно добиться такого из рефакторинга? Т.е. просто поменяв логику, перместив функции, добавив пару лишних проверок, данных и т.д.?
Может да, а может нет. Каждый случай индивидуален)

P.S. Смена имён функций не поможет, это тебя троллируют. Ну если только эти функции не являются экспортируемыми.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Гугл + тесты, опыт. Чаще детект является собирательным значением из поинтов которые ты набираешь. Ну например 3 поинта = детект. 1 поинт за кривой импорт, 1 за строку и 1 за карту (порядок) вызова АПИ.


От реверсеров не поможет, а вот от ав очень даже, при постановке детекта они учитывают таблицу импорта очень и очень. Но в импорте должны быть какие-то безобидные функции, совсем без них это тоже подозрительно))


Чаще лучше вырезать куски как сказали выше. Скажем если код за return 0 вызывает какую-то АПИ за которую добавляется поинт к детекту то она может остаться в таблице импорта твоего файла.


Может да, а может нет. Каждый случай индивидуален)

P.S. Смена имён функций не поможет, это тебя троллируют. Ну если только эти функции не являются экспортируемыми.
Благодарю за развернутый ответ! Скрытие апи хотел сделать особенно на шелэксекюд или крейтпроцесс. И да, изучая тему заметил, что если убрать все апи из таблицы импорта, то будет даже хуже. Как идея есть (трешгеном), как ты и сказал, вызывать безобидные функции. Значит, как аналог можно ли вместо return вызвать экзитпроцесс? Хотя да, лучше всего просто из функции убрать код. Придется на динчике купить тарифный план за 300$... чтоб рантайм тестить
 
как аналог можно ли вместо return вызвать экзитпроцесс?
Можно но это спасёт только от эмуляции твоего кода за ExitProcess, поинты за импорт АПИ что вызывается после ExitProcess никуда не денутся.
 
Рад был услышать ответ от криптора!) Спасибо. Детект на цикл? Впервые слышу такое. Там кстати, было три цикла фор (в одном for). Хз детектит на это... А как узнать какие детекты бывают и на что ставятся, или почитать об этом. Щас добавлю мусорный код, создал стаб, строки шифруются, осталось апи функции скрыть (для реверсоров чтоб тяжело жить), антиэмуляцию добавил. Так, получается я просто вызываю return 0 в функции по очереди, смотрю, меняю код и снова рантайм чекаю? А вообще, можно добиться такого из рефакторинга? Т.е. просто поменяв логику, перместив функции, добавив пару лишних проверок, данных и т.д.?
Один цикл может сделать эмуляцию кода для АВ невозможной) Поэтому и цепляются, могут и на условие детект поставить. Вообще сейчас редко детект идет чисто на код. Отслеживается логика программы, выявляются важные куски кода + логика работы кода и ставится детект. Код почистил, а логика прежняя, будешь ловить детект за детектом) Как пример у меня, был детект на получения нуля в регистре, то есть пишу 0 в регистр, получаю детект. Причем неважно каким способом, цикл, сдвиги, и тд, если в итоге будет 0, получаешь детект.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Один цикл может сделать эмуляцию кода для АВ невозможной) Поэтому и цепляются, могут и на условие детект поставить. Вообще сейчас редко детект идет чисто на код. Отслеживается логика программы, выявляются важные куски кода + логика работы кода и ставится детект. Код почистил, а логика прежняя, будешь ловить детект за детектом) Как пример у меня, был детект на получения нуля в регистре, то есть пишу 0 в регистр, получаю детект. Причем неважно каким способом, цикл, сдвиги, и тд, если в итоге будет 0, получаешь детект.
принял! Спасибо за ответ. Кое-что новое почерпнул для себя. Да, как раз думал о том, чтоб логику регулярно менять. Или как вариант для комерса например, сделать билд с несколькими вариантами логики, обфусикации, трешгена, антиэмуля. Т.е. при каждом билде, билдер создает уникальный билд с разными параметрами. Например, вариация логики программы допустим 5, трешгена допускаем 10, обфусикации строк допускаем 10, антиэмуль тоже 10. Комбинируя их, можно какое-то время получать уникальный билд, а после можно и у тя закрпитовать (для надежности) и будет уже хороший фуд. Кстати, как аверы смотрят на то, что код собирает данные какие-либо в памяти. Т.е. выделяется память, заполняется нулями, записываются туда данные и отправляют на гейт. Тут по-моему будет палиться жестко. Хз этот вариант. Но есть скажем вариант в случайно папке в темп создать случайный файл и его отправлять на гейт. Я привел пример простого ратника, который по команде высылает данные на сервер.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
еще не понятно как чистить рантайм стилера например, он по-любому должен получить команды с сервера (будто сокеты голые или http). Ведь логика одна, сделать запрос, получить данные и сделать что-то. Как в таком случае можно изменить логику? По-любому делается запрос. Как вариант, задержать запрос. Не вижу тут выхода :(
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Это сложная тема, и так в двух словах тяжело объяснить, более того - процесс чистки сорцев это в некотором роде шаманство, т.к. нет четкого алгоритма вида "сделай так - и будет чисто". Даже когда сорцы твои, ты сидишь, экспериментируешь. Часто заказчики достают этим, типа "надо к завтра убрать нод", как будто это кучу песка убрать, ну что такого.. Чистка - процесс такой, и творческий и технический, и конечно же, может ничего не получится, хоть как не старайся.

Для начала , нужно иметь хотя бы базовые понятия о виндовс разработке, низкоуровневом кодинге и так далее, т.е. как это все работает на самом низком уровне , как аверы ловят софт. Выше писали много приколов на тему морфинга имени переменной в нативе. Потому что на уровне ассемблера этого всего нет, соответственно такие "чистки" бессмысленны (и еще один момент к тому, почему я всегда советую учиться с Си и Асма, потому что лоу левел дает понимание сути).

Далее, как именно палится софт? Грубо говоря, детектов есть несколько видов, самое простое это банальная сигнатура, как пример что это такое, можно глянуть Yara-rules, изредка это просто строка (в крабов такое было, аверы палили ссылку на какой-то говномем). В теории, сигнатурный детект должен убирать криптор, на практике же есть хуета типа говнод32, которая сканирует память, а там ваш файлик, и опять детект. Как ищутся сигнатурные детекты - разбивают файл на части , проверяют авером эти куски, отсеивают.. Вроде на покойном vxlab.info была статья, или на факаве, не помню. Но это самое простое и тупое. Дальше, эвристик - т.е. логика, по сумме балов (такая-то апи, такая-то строка, делает то и это). Эвристик часто идет впаре с эмулятором - это виртуальная машина (условно говоря),визор, эмулятор, называйте как хотите, который берет эту вашу малвару и крутит у себя, пытаясь построить графы поведения, т.е. что за чем пойдет, какие вызовы апи, какие действия. На тему обходов эмуляторов многие пробуют разные вещи, вида делать разные бессмысленные и/или тяжелые действия , ну там выделять память, циклы, создавать и читать из файлов, короче как нибудь обойти виртуалку авера (или понять, что мы под ней и завершить свою работу). Раньше было проще, многие аверы даже не умели эмулить РЕВ или коды ошибок апи, сейчас же все изменилось в худшую для нас сторону. Но пробовать можно. Проактивка - палево чисто по действиям, вида бот лезет в инет или там пишет в файл Х или еще что. С этим ничего не сделать, по крайней мере в масс малвари.

Теперь касаемо конкретной софтины. Палево может быть в импорте - поэтому нормальная малварь юзает динамический импорт, а так генерит фейковый, важно по уму генерить, не так что скажем WSAconnect есть, а WSAstartup нет, ну т.е. логика должна быть; строки - или добавлять какую-то ерунду , аверы на нее навешают детект и потом удалять (послания аверам, стихи Пушкина, етц), или опять же, все строки морфить каждый раз другим ключом (в С++ это намного проще, в Си придется заморочится сторонним скриптом). По коду - хоть тут скептически относятся к морферу сорцев, но в некоторых случаях с них есть толк, ну вида есть код там call func1, call func2, call func3 , причем функция1 начинается с цикла на 55 элементов - вот вам и детект. Если поменять местами или вставить какой-то левый мусор (вызов еще 1 функции, еще 1 цикл или разбить этот на два) - детект можно убрать.

Я конечно не гуру в чистках, но делал примерно так - свой РЕ лоадер / крипт у кого-то с форума, в криптуемом софте банально ведете лог (т.е. делаю то - строка такая, делаю это - строка такая). Софт запускается, лог пишется в файл или дбгвьюв, на каком этапе авер его съел - смотрите, что можно сделать. Это не поможет от аверов со сканом памяти, но все же. Аналогично, можно разбить файл на отдельные процедуры (если стиллер - поиск файлов хрома, чтение, отстук, получения задания) и смотреть, кого схавает авер, но это не особо достоверная вещь (+ сложная, т.к. часто в проекте юзаются какие-то глобальные переменные и т.д.).
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Это сложная тема, и так в двух словах тяжело объяснить, более того - процесс чистки сорцев это в некотором роде шаманство, т.к. нет четкого алгоритма вида "сделай так - и будет чисто". Даже когда сорцы твои, ты сидишь, экспериментируешь. Часто заказчики достают этим, типа "надо к завтра убрать нод", как будто это кучу песка убрать, ну что такого.. Чистка - процесс такой, и творческий и технический, и конечно же, может ничего не получится, хоть как не старайся.

Для начала , нужно иметь хотя бы базовые понятия о виндовс разработке, низкоуровневом кодинге и так далее, т.е. как это все работает на самом низком уровне , как аверы ловят софт. Выше писали много приколов на тему морфинга имени переменной в нативе. Потому что на уровне ассемблера этого всего нет, соответственно такие "чистки" бессмысленны (и еще один момент к тому, почему я всегда советую учиться с Си и Асма, потому что лоу левел дает понимание сути).

Далее, как именно палится софт? Грубо говоря, детектов есть несколько видов, самое простое это банальная сигнатура, как пример что это такое, можно глянуть Yara-rules, изредка это просто строка (в крабов такое было, аверы палили ссылку на какой-то говномем). В теории, сигнатурный детект должен убирать криптор, на практике же есть хуета типа говнод32, которая сканирует память, а там ваш файлик, и опять детект. Как ищутся сигнатурные детекты - разбивают файл на части , проверяют авером эти куски, отсеивают.. Вроде на покойном vxlab.info была статья, или на факаве, не помню. Но это самое простое и тупое. Дальше, эвристик - т.е. логика, по сумме балов (такая-то апи, такая-то строка, делает то и это). Эвристик часто идет впаре с эмулятором - это виртуальная машина (условно говоря),визор, эмулятор, называйте как хотите, который берет эту вашу малвару и крутит у себя, пытаясь построить графы поведения, т.е. что за чем пойдет, какие вызовы апи, какие действия. На тему обходов эмуляторов многие пробуют разные вещи, вида делать разные бессмысленные и/или тяжелые действия , ну там выделять память, циклы, создавать и читать из файлов, короче как нибудь обойти виртуалку авера (или понять, что мы под ней и завершить свою работу). Раньше было проще, многие аверы даже не умели эмулить РЕВ или коды ошибок апи, сейчас же все изменилось в худшую для нас сторону. Но пробовать можно. Проактивка - палево чисто по действиям, вида бот лезет в инет или там пишет в файл Х или еще что. С этим ничего не сделать, по крайней мере в масс малвари.

Теперь касаемо конкретной софтины. Палево может быть в импорте - поэтому нормальная малварь юзает динамический импорт, а так генерит фейковый, важно по уму генерить, не так что скажем WSAconnect есть, а WSAstartup нет, ну т.е. логика должна быть; строки - или добавлять какую-то ерунду , аверы на нее навешают детект и потом удалять (послания аверам, стихи Пушкина, етц), или опять же, все строки морфить каждый раз другим ключом (в С++ это намного проще, в Си придется заморочится сторонним скриптом). По коду - хоть тут скептически относятся к морферу сорцев, но в некоторых случаях с них есть толк, ну вида есть код там call func1, call func2, call func3 , причем функция1 начинается с цикла на 55 элементов - вот вам и детект. Если поменять местами или вставить какой-то левый мусор (вызов еще 1 функции, еще 1 цикл или разбить этот на два) - детект можно убрать.

Я конечно не гуру в чистках, но делал примерно так - свой РЕ лоадер / крипт у кого-то с форума, в криптуемом софте банально ведете лог (т.е. делаю то - строка такая, делаю это - строка такая). Софт запускается, лог пишется в файл или дбгвьюв, на каком этапе авер его съел - смотрите, что можно сделать. Это не поможет от аверов со сканом памяти, но все же. Аналогично, можно разбить файл на отдельные процедуры (если стиллер - поиск файлов хрома, чтение, отстук, получения задания) и смотреть, кого схавает авер, но это не особо достоверная вещь (+ сложная, т.к. часто в проекте юзаются какие-то глобальные переменные и т.д.).
Спасибо за развернутый ответ квейк!) Нашел что-то новое
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх